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.