What is Apache ShardingSphere?

The ecosystem to transform any database into a distributed database system, and enhance it with sharding, elastic scaling, encryption features & more.

Core Features

Data Sharding

ShardingSphere provides a distributed database solution based on the underlying database, which can scale computing and storage horizontally.

HA

Guarantee the HA of your distributed database cluster with ShardingSphere’s Operator on Kubernetes, and the native HA of your existing data sources.

Data Encryption

ShardingSphere provides a complete, transparent, secure, and low-cost data encryption solution.

Distributed Transaction

With a hybrid engine based on XA and BASE transactions, ShardingSphere provides distributed transaction capabilities on top of standalone databases, enabling data security across underlying data sources.

Data Migration

SharingSphere provides migration capabilities to help users migrate the data from other data sources, while simultaneously performing data sharding.

Shadow Database

In full-link online load testing scenarios, ShardingSphere supports data isolation in complex load testing scenarios through the shadow database function. Execute your load testing scenarios in a production environment without worrying about test data polluting your production data.

Read/Write Splitting

ShardingSphere provides flexible read/write splitting capabilities and can achieve read access load balancing based on the understanding of SQL semantics and the ability to perceive the underlying database topology.

Query Federation

ShardingSphere provides complex data query and analysis capabilities across data sources, simplifying the data aggregation from different data locations.

DistSQL

Operate and manage resources and rules seamlessly like a native database, thanks to Distributed SQL.

ShardingSphere Empowering Database Plus

Database Plus

The ShardingSphere community follows the Database Plus concept for distributed database systems, designed to build an ecosystem on top of fragmented heterogeneous databases.

The goal is to provide globally scalable and enhanced computing capabilities while maximizing the capabilities of the original database. Connect, Enhance and Pluggable are the three keywords that define the core values of Database Plus.

Cloud Native

The project’s ecosystem is multi-cloud and cloud native. Leveraging ShardingSphere’s Proxy and Operator on Kubernetes, you can natively take your database into the cloud.

High Performance

Virtually all databases are supported including MySQL, PostgreSQL, SQL Server, Oracle, openGauss or any other SQL-92 database.

Execute queries in parallel thanks to data sharding, and improve throughput & break performance bottlenecks.

Project Roadmap

1.x

Sharding-JDBC

Initial version, based on a JDBC driver, and for data sharding only.

2016
2.x

To Cluster

Can coordinate in a distributed environment, with ZooKeeper as registry center.

2017
3.x

Sharding-Proxy

Using a proxy to mock a database, compatible with all programming languages and database workbenches.

2018
4.x

Apache ShardingSphere

For Apache software foundation version, change the brand, and support more databases except MySQL

2019
5.x

To Pluggable

Micro kernel for pluggable oriented, everything is pluggable with 3 layers, add more features except sharding, such as encrypt.

2021
6.x

To Cloud

The ShardingSphere ecosystem is expanding to include cloud solutions with Helm Charts and Operator. Operator and Helm Charts allow you to deploy ShardingSphere on Kubernetes, including services such as AWS EKS, self-hosted Kubernetes, or minikube.

...
7.x

To Ecosystem

Provide Database Plus production, build a standard via DistSQL, and an ecosystem with a plugin oriented platform and features.

...
8.x

Planning

...