Apache ShardingSphere 中文文档 5.0.01.5 结果归并 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 7.1.6 查询优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 7.1.7 解析引擎 . . . . . 234 正确性改写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234 优化改写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 7.1.10 执行引擎 的可插拔架构划分为 3 层,它们是:L1 内核层、L2 功能层、L3 生态层。 L1 内核层 是数据库基本能力的抽象,其所有组件均必须存在,但具体实现方式可通过可插拔的方式更换。主要包 括查询优化器、分布式事务引擎、分布式执行引擎、权限引擎和调度引擎等。 L2 功能层 用于提供增量能力,其所有组件均是可选的,可以包含零至多个组件。组件之间完全隔离,互无感知,多 组件可通过叠加的方式相互0 码力 | 385 页 | 4.26 MB | 1 年前3
Apache ShardingSphere 中文文档 5.1.12.5 结果归并 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 7.2.6 查询优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 7.2.7 解析引擎 . . . . . 236 正确性改写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236 优化改写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241 7.2.10 执行引擎 的可插拔架构划分为 3 层,它们是:L1 内核层、L2 功能层、L3 生态层。 L1 内核层 是数据库基本能力的抽象,其所有组件均必须存在,但具体实现方式可通过可插拔的方式更换。主要包 括查询优化器、分布式事务引擎、分布式执行引擎、权限引擎和调度引擎等。 3.4. 可插拔架构 16 Apache ShardingSphere document, v5.1.1 L2 功能层 用于提供增0 码力 | 409 页 | 4.47 MB | 1 年前3
Apache ShardingSphere 中文文档 5.1.02.5 结果归并 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 7.2.6 查询优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 7.2.7 解析引擎 . . . . . 231 正确性改写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 优化改写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236 7.2.10 执行引擎 的可插拔架构划分为 3 层,它们是:L1 内核层、L2 功能层、L3 生态层。 L1 内核层 是数据库基本能力的抽象,其所有组件均必须存在,但具体实现方式可通过可插拔的方式更换。主要包 括查询优化器、分布式事务引擎、分布式执行引擎、权限引擎和调度引擎等。 3.4. 可插拔架构 16 Apache ShardingSphere document, v5.1.0 L2 功能层 用于提供增0 码力 | 406 页 | 4.40 MB | 1 年前3
Apache ShardingSphere 中文文档 5.1.22.5 结果归并 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238 7.2.6 查询优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238 7.2.7 解析引擎 . . . . . 247 正确性改写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 优化改写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252 7.2.10 执行引擎 的可插拔架构划分为 3 层,它们是:L1 内核层、L2 功能层、L3 生态层。 L1 内核层 是数据库基本能力的抽象,其所有组件均必须存在,但具体实现方式可通过可插拔的方式更换。主要包 括查询优化器、分布式事务引擎、分布式执行引擎、权限引擎和调度引擎等。 3.4. 可插拔架构 16 Apache ShardingSphere document, v5.1.2 L2 功能层 用于提供增0 码力 | 446 页 | 4.67 MB | 1 年前3
Apache ShardingSphere 中文文档 5.2.04.5 结果归并 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332 7.4.6 查询优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332 7.4.7 解析引擎 . . . . . 341 正确性改写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341 优化改写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346 7.4.10 执行引擎 的可插拔架构划分为 3 层,它们是:L1 内核层、L2 功能层、L3 生态层。 L1 内核层 是数据库基本能力的抽象,其所有组件均必须存在,但具体实现方式可通过可插拔的方式更换。主要包 括查询优化器、分布式事务引擎、分布式执行引擎、权限引擎和调度引擎等。 L2 功能层 用于提供增量能力,其所有组件均是可选的,可以包含零至多个组件。组件之间完全隔离,互无感知,多 组件可通过叠加的方式相互0 码力 | 449 页 | 5.85 MB | 1 年前3
Apache ShardingSphere 中文文档 5.4.15 结果归并 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462 12.4.6 查询优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462 12.4.7 解析引擎 . . . . . 471 正确性改写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471 优化改写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476 12.4.10 执行引擎 4 Apache ShardingSphere document 2.3.1 L1 内核层 是数据库基本能力的抽象,其所有组件均必须存在,但具体实现方式可通过可插拔的方式更换。主要包 括查询优化器、分布式事务引擎、分布式执行引擎、权限引擎和调度引擎等。 2.3.2 L2 功能层 用于提供增量能力,其所有组件均是可选的,可以包含零至多个组件。组件之间完全隔离,互无感知,多 组件可通过叠0 码力 | 530 页 | 4.49 MB | 1 年前3
Apache ShardingSphere 中文文档 5.3.25 结果归并 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441 12.4.6 查询优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441 12.4.7 解析引擎 . . . . . 450 正确性改写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450 优化改写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455 12.4.10 执行引擎 4 Apache ShardingSphere document 2.3.1 L1 内核层 是数据库基本能力的抽象,其所有组件均必须存在,但具体实现方式可通过可插拔的方式更换。主要包 括查询优化器、分布式事务引擎、分布式执行引擎、权限引擎和调度引擎等。 2.3.2 L2 功能层 用于提供增量能力,其所有组件均是可选的,可以包含零至多个组件。组件之间完全隔离,互无感知,多 组件可通过叠0 码力 | 508 页 | 4.44 MB | 1 年前3
Apache ShardingSphere v5.5.0 中文文档5 结果归并 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488 12.4.6 查询优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488 12.4.7 解析引擎 . . . . . 497 正确性改写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497 优化改写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502 12.4.10 执行引擎 4 Apache ShardingSphere document 2.3.1 L1 内核层 是数据库基本能力的抽象,其所有组件均必须存在,但具体实现方式可通过可插拔的方式更换。主要包 括查询优化器、分布式事务引擎、分布式执行引擎、权限引擎和调度引擎等。 2.3.2 L2 功能层 用于提供增量能力,其所有组件均是可选的,可以包含零至多个组件。组件之间完全隔离,互无感知,多 组件可通过叠0 码力 | 557 页 | 4.61 MB | 1 年前3
Apache ShardingSphere 中文文档 5.0.0-alpha21 SQL 解析 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 执行器优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 SQL 路由 . . . . . . ShardingSphere document, v5.0.0-beta 3.1.5 内核剖析 ShardingSphere 的 3 个产品的数据分片主要流程是完全一致的。核心由 SQL 解析 => 执行器优化 => SQL 路由 => SQL 改写 => SQL 执行 => 结果归并的流程组成。 3.1. 数据分片 21 Apache ShardingSphere document, v5.0.0-beta 、聚合函数、 分页信息、查询条件以及可能需要修改的占位符的标记。 执行器优化 合并和优化分片条件,如 OR 等。 SQL 路由 根据解析上下文匹配用户配置的分片策略,并生成路由路径。目前支持分片路由和广播路由。 SQL 改写 将 SQL 改写为在真实数据库中可以正确执行的语句。SQL 改写分为正确性改写和优化改写。 SQL 执行 通过多线程执行器异步执行。 结果归并 将多个执行结果集归并以便于通过统一的0 码力 | 301 页 | 3.44 MB | 1 年前3
01 Sharding JDBC概览=> 执行器优化 => SQL路由 => SQL改写 => SQL执行 => 结果归并 的流程组成。 SQL解析 分为词法解析和语法解析。 先通过词法解析器将SQL拆分为一个个不可再分的单词。再使用语 法解析器对SQL进行理解,并最终提炼出解析上下文。 解析上下文包括表、选择项、排序项、 分组项、聚合函数、分页信息、查询条件以及可能需要修改的占位符的标记。 执行器优化 合并和优化分片条件,如OR等。 合并和优化分片条件,如OR等。 SQL路由 根据解析上下文匹配用户配置的分片策略,并生成路由路径。目前支持分片路由和广播路由。 SQL改写 将SQL改写为在真实数据库中可以正确执行的语句。SQL改写分为正确性改写和优化改写。 SQL执行 通过多线程执行器异步执行。 结果归并 将多个执行结果集归并以便于通过统一的JDBC接口输出。结果归并包括流式归并、内存归并和 使用装饰者模式的追加归并这几种方式。0 码力 | 6 页 | 781.70 KB | 1 年前3
共 12 条
- 1
- 2













