概述
在 SequoiaDB 巨杉数据库中,涉及数据查询的操作都会用到执行计划,包括数据的查询、更新和删除操作。在集群部署模式下,请求主要由协调节点和数据节点协作完成处理。
协调节点的主要任务包括:
- 根据查询条件提取集合分区键,结合集合的编目信息确定需要下发请求的分区组
- 对各数据节点返回的结果集进行聚合(如排序等),并返回给客户端
数据节点的主要任务包括:
- 对请求进行解析,结合查询条件和排序字段,通过基于代价的估算选取合适的执行计划(全表扫描,或使用集合上的某个索引进行索引扫描)
- 调用存储引擎进行数据读取,并按要求进行数据处理(如排序)
- 将结果返回给协调节点
- 生成的执行计划可以被缓存,以供新的查询重用,提高查询性能
SequoiaDB 实现了 CBO,并且提供了灵活的执行计划缓存配置能力,用户可根据实际业务场景进行最优配置。
本章主要讲述执行计划相关的基本概念和原理,内容包含: