小组介绍
Kernel 小组主要负责 Apache ShardingSphere 社区内核模块的开发和维护,主要包括了内核模块的路由引擎、改写引擎、执行引擎和归并引擎,以及和内核密切相关的元数据加载、查询优化等功能。
下图展示了 Apache ShardingSphere 内核流程,主要包括了 路由引擎
、改写引擎
、执行引擎
和 归并引擎
。
-
路由引擎
:根据用户配置的各种规则,对数据源及表进行路由,得到路由上下文对象; -
改写引擎
:基于路由上下文对象,对用户输入的 SQL 进行改写,将逻辑 SQL 转换为物理 SQL,这一步包括了分片功能的表改写以及加解密功能的列改写,并生成改写上下文对象; -
执行引擎
:根据改写结果,将执行任务提交到底层 DB 执行,并获取到不同执行单元的结果集; -
归并引擎
:负责最终的结果归并处理,将执行引擎返回的真实数据归并成逻辑数据返回给用户;
Kernel 小组的主要目标是提升内核各个流程对于 数据分片
、读写分离
、加解密
等场景下的 SQL 支持度,同时收集来自社区的反馈,提升这些功能的易用性。此外,5.0.0 提供了强大的可插拔平台,基于可插拔架构内核,可以快速地开发出新的内核功能。欢迎大家积极参与,共同推动 Apache ShardingSphere 内核模块的发展。
核心成员
用户名 | GitHub |
---|---|
strongduanmu (组长) | strongduanmu |
tuichenchuxin | tuichenchuxin |
liguoping | liguoping |
cheese8 | cheese8 |
核心成员由组长提名,组员投票赞成通过
加入小组
只需点击左下角小铃铛,选择【关注】话题,并留下一条有趣的回复,即可快速加入小组。
加入小组后:
- 及时收到小组消息(任务发布、话题讨论、会议信息)
- 深度讨论技术话题,以最快的形式融入社区
- 有机会成为核心成员,直接以语音的方式参与小组会议,共同探讨小组发展方向
任务清单
新手任务
- 为 ShardingConditions 添加更多单元测试 (待认领)
- 为 EncryptAlgorithmMetaData, EncryptRule 和 EncryptTable 添加更多单元测试 (待认领)
中级任务
高级任务
TODO