Uploaded image for project: 'Comdev GSOC'
  1. Comdev GSOC
  2. GSOC-212

Apache ShardingSphere: Develop an external tool to convert YAML configuration into DistSQL scripts

    XMLWordPrintableJSON

Details

    Description

      Apache ShardingSphere

       
      Apache ShardingSphere is positioned as a Database Plus, and aims at building a standard layer and ecosystem above heterogeneous databases. It focuses on how to reuse existing databases and their respective upper layer, rather than creating a new database. The goal is to minimize or eliminate the challenges caused by underlying databases fragmentation.
      Pagehttps://shardingsphere.apache.org
      Githubhttps://github.com/apache/shardingsphere 

      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/

      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 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
      • 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.

      Relevant Skills

       
      1. Master JAVA language
      2. Understand the schema configurations of ShardingSphere-Proxy
      3. Understand DistSQL RDL 

      Mentor

      Longtao Jiang, Committer of Apache ShardingSphere, jianglongtao@apache.org
      Chengxiang Lan, Committer of Apache ShardingSphere, lanchengxiang@apache.org

       
       

      Attachments

        Activity

          People

            Unassigned Unassigned
            jianglongtao Longtao Jiang
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: