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

Reply via email to