Hi Liang,
What you mentioned is related to what I am working on now [1]. Thanks for your proposal, which makes me have some new ideas. Maybe I can consider putting `SchemaContexts` into `shardingsphere-kernel`. Please leave me some time for your proposal. Best, Trista [1] https://github.com/apache/shardingsphere/issues/5593 Juan Pan (Trista) Senior DBA & PPMC of Apache ShardingSphere(Incubating) E-mail: panj...@apache.org On 05/17/2020 19:59,zhangli...@apache.org<zhangli...@apache.org> wrote: Hi All, Very happy to see our new modules settle down, they look like excellent. I want talk about maybe we still missing a module which should process database kernal related. This thread [1] discussed we need a new module to put runtime context and meta data, they are belong to the new module. I have no good name of the new module yet, I just call it `shardingsphere-kernel`. The `shardingsphere-kernel` should include: ``` shardingsphere-kernel -- shardingsphere-context -- shardingsphere-pluggable -- shardingsphere-query-optimizer -- shardingsphere-transaction ``` - The module `shardingsphere-context` can process runtime context like thread[1] said. - The module `shardingsphere-pluggable` can process the main flow of parse, route, rewrite, execute and merge of pluggable with features. - The module `shardingsphere-query-optimizer` is a new feature which process SQL Query Optimizer. I prefer use Apache Calcite to improve us. We still sent the SQL to backend databases if the SQL can be executed into underlying databases fine, but we need to recognize some SQL (like subquery, join query cross actual databases, etc.) which can not execute to databases directly, and use Apache Calcite to handle them. - The module `shardingsphere-transaction` is another database kernel, we can just move current shardingsphere-transaction to there. Any advice? [1] https://lists.apache.org/thread.html/rfb98778a0be6ef98be43a5177cdc4672469905b089bd1d1f8047e4da%40%3Cdev.shardingsphere.apache.org%3E ------------------ Liang Zhang (John) Apache ShardingSphere & Dubbo