Longtao Jiang created COMDEV-447:
------------------------------------
Summary: Apache ShardingSphere: Develop an external tool to
convert YAML configuration into DistSQL scripts
Key: COMDEV-447
URL: https://issues.apache.org/jira/browse/COMDEV-447
Project: Community Development
Issue Type: Improvement
Components: GSoC/Mentoring ideas
Reporter: Longtao Jiang
h2. Apache ShardingSphere
Apache ShardingSphere is a distributed database middleware ecosystem, including
2 independent products, ShardingSphere JDBC and ShardingSphere Proxy presently.
They all provide functions of data sharding, distributed transaction, and
database orchestration.
{*}Page{*}:
[https://shardingsphere.apache.org|https://shardingsphere.apache.org/]
{*}Github{*}: [https://github.com/apache/shardingsphere]
h2. Background
Since version 5.0.0, ShrdingSphere provides its own management language:
DistSQL, which greatly facilitates users to manage distributed databases.
There are now many users who want to convert from legacy YAML configuration to
DistSQL, and we want to design a tool to help them. (For ShardingSphere-Proxy
only)
{*}More details{*}:
[https://shardingsphere.apache.org/document/current/en/concepts/distsql/]
h2. Task
Design and implement a command line tool that allows the user to enter a path
to a YAML configuration file and output a DistSQL script file.
This means that when a user uses the generated DistSQL script, it is possible
to create a configuration result equivalent to a YAML file.
We have provided a DistSQL for exporting schema configuration,
[which|https://github.com/apache/shardingsphere/issues/14807] is related to
this issue, to help you understand this issue.
* The tool should convert both datasources and rule configuration in YAML to
corresponding [DistSQL
RDL|https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-proxy/distsql/syntax/rdl/]
* The tool needs to run independently, but it can depend on the jar package of
ShardingSphere.
* When the tool starts, it is best to prompt the currently applicable
ShardingSphere version.
* It is best to use the Java language, so that the jar package provided by
ShardingSphere can be reused
*Notice:*
* There is currently no suitable module in the ShardingSphere repository for
standalone tools, so a new module needs to be added.
h2. Relevant Skills
1. Master JAVA language
2. Understand the [schema
configurations|https://github.com/apache/shardingsphere/tree/master/shardingsphere-proxy/shardingsphere-proxy-bootstrap/src/main/resources/conf]
of ShardingSphere-Proxy
3. Understand [DistSQL
RDL|https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-proxy/distsql/syntax/rdl/]
h3. Mentor
Longtao Jiang, Committer of Apache ShardingSphere, [email protected]
Chengxiang Lan, Committer of Apache ShardingSphere, [email protected]
--
This message was sent by Atlassian Jira
(v8.20.1#820001)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]