Official Website: https://shardingsphere.apache.org/
| Stargazers Over Time | Contributors Over Time |
|---|---|
Apache ShardingSphere is positioned as a Database Plus, and aims at building a new criterion and ecosystem above multi-model databases. It focuses on how to reuse existing databases and their respective upper layer, rather than creating a new database.
The concepts at the core of the project are Link, Enhance and Pluggable.
Link:Flexible adaptation of database protocol, SQL dialect and database storage. It can quickly link applications and multi-mode heterogeneous databases quickly.Enhance:Capture database access entry to provide additional features transparently, such as: redirect (sharding, readwrite-splitting and shadow), transform (data encrypt and mask), authentication (security, audit and authority), governance (circuit breaker and access limitation and analyze, QoS and observability).Pluggable:Leveraging the micro kernel and 3 layers pluggable mode, features and database ecosystem can be embedded flexibily. Developers can customize their ShardingSphere just like building with LEGO blocks.
ShardingSphere became an Apache Top-Level Project on April 16, 2020.
For full documentation & more details, visit: https://shardingsphere.apache.org/document/current/en/overview/
For guides on how to get started and setup your environment, contributor & committer guides, visit: https://shardingsphere.apache.org/community/en/contribute/
π Mailing List. Best for: Apache community updates, releases, changes.
π GitHub Issues. Best for: larger systemic questions/bug reports or anything development related.
π GitHub Discussions. Best for: technical questions & support, requesting new features, proposing new features.
π Slack channel. Best for: instant communications and online meetings, sharing your applications.
π Twitter. Best for: keeping up to date on everything ShardingSphere.
β Version 5.0.0-beta: released, stable enough & anyone can sign up π
π Version 5.0.0-RC1
We are currently working towards our 5.0.0-RC1 milestone. Keep an eye on the milestones page of this repo to stay up to date.
Apache ShardingSphere includes 3 independent products: JDBC, Proxy & Sidecar (Planning). They all provide functions of data scale-out, distributed transaction and distributed governance, applicable in a variety of situations such as Java isomorphism, heterogeneous language and Cloud-Native.
A lightweight Java framework providing extra services at the Java JDBC layer. With the client end connecting directly to the database, it provides services in the form of a jar and requires no extra deployment and dependence.
π For more details, follow this link to the official website.
A transparent database proxy, providing a database server that encapsulates database binary protocol to support heterogeneous languages. Friendlier to DBAs, the MySQL and PostgreSQL version now provided can use any kind of terminal.
π For more details, follow this link to the official website.
ShardingSphere-JDBC adopts a decentralized architecture, applicable to high-performance light-weight OLTP applications developed with Java. ShardingSphere-Proxy provides static entry and all languages support, suitable for OLAP application and sharding databases management and operation.
Through the mixed use of ShardingSphere-JDBC & ShardingSphere-Proxy together with a unified sharding strategy by the same registry center, the ShardingSphere ecosystem can build an application system suitable to all kinds of scenarios.
π More details can be found following this link to the official website.
| Solutions/Features | Distributed Database | Data Security | Database Gateway | Stress Testing |
|---|---|---|---|---|
| Data Sharding | Data Encrypt | Multi-model Databases Supported | Shadow Database | |
| Readwrite-splitting | Row Authority (TODO) | SQL Dialect Translate (TODO) | Observability | |
| Distributed Transaction | SQL Audit (TODO) | |||
| Elastic Scale-out | SQL Firewall (TODO) | |||
| Highly Available |
Check out Wiki section for details on how to build Apache ShardingSphere and a full guide on how to get started and setup your local dev environment.
Β Β
Apache ShardingSphere enriches the CNCF CLOUD NATIVE Landscape.
