All Projects → apache → Shardingsphere

apache / Shardingsphere

Licence: apache-2.0
Build criterion and ecosystem above multi-model databases

Programming Languages

java
68154 projects - #9 most used programming language
ANTLR
299 projects

Projects that are alternatives of or similar to Shardingsphere

shardingsphere-ui
Distributed database middleware
Stars: ✭ 41 (-99.73%)
Mutual labels:  shard, distributed-transactions, distributed-database, database-cluster, shardingsphere, distributed-sql-database
Tidb
TiDB is an open source distributed HTAP database compatible with the MySQL protocol
Stars: ✭ 29,871 (+99.29%)
Mutual labels:  distributed-transactions, sql, database, mysql, distributed-database
Citus
Distributed PostgreSQL as an extension
Stars: ✭ 5,580 (-62.77%)
Mutual labels:  sql, database, postgresql, distributed-database, database-cluster
Querybuilder
SQL query builder, written in c#, helps you build complex queries easily, supports SqlServer, MySql, PostgreSql, Oracle, Sqlite and Firebird
Stars: ✭ 2,111 (-85.92%)
Mutual labels:  sql, database, mysql, postgresql
Yugabyte Db
The high-performance distributed SQL database for global, internet-scale apps.
Stars: ✭ 5,890 (-60.7%)
Mutual labels:  sql, database, distributed-database, distributed-sql-database
Beekeeper Studio
Modern and easy to use SQL client for MySQL, Postgres, SQLite, SQL Server, and more. Linux, MacOS, and Windows.
Stars: ✭ 8,053 (-46.27%)
Mutual labels:  sql, database, mysql, postgresql
Evolve
Database migration tool for .NET and .NET Core projects. Inspired by Flyway.
Stars: ✭ 477 (-96.82%)
Mutual labels:  sql, database, mysql, postgresql
Sqlcheck
Automatically identify anti-patterns in SQL queries
Stars: ✭ 2,062 (-86.24%)
Mutual labels:  sql, database, mysql, postgresql
Db Dumper
Dump the contents of a database
Stars: ✭ 744 (-95.04%)
Mutual labels:  sql, database, mysql, postgresql
Goqu
SQL builder and query library for golang
Stars: ✭ 984 (-93.44%)
Mutual labels:  sql, database, mysql, postgresql
Nut
Advanced, Powerful and easy to use ORM for Qt
Stars: ✭ 181 (-98.79%)
Mutual labels:  sql, database, mysql, postgresql
Go Sqlbuilder
A flexible and powerful SQL string builder library plus a zero-config ORM.
Stars: ✭ 539 (-96.4%)
Mutual labels:  sql, database, mysql, postgresql
Qb
The database toolkit for go
Stars: ✭ 524 (-96.5%)
Mutual labels:  sql, database, mysql, postgresql
Electrocrud
Database CRUD Application Built on Electron | MySQL, Postgres, SQLite
Stars: ✭ 1,267 (-91.55%)
Mutual labels:  sql, database, mysql, postgresql
Scalardb
Universal transaction manager
Stars: ✭ 178 (-98.81%)
Mutual labels:  database, mysql, postgresql, distributed-database
Eralchemy
Entity Relation Diagrams generation tool
Stars: ✭ 767 (-94.88%)
Mutual labels:  sql, database, mysql, postgresql
Kangaroo
SQL client and admin tool for popular databases
Stars: ✭ 127 (-99.15%)
Mutual labels:  sql, database, mysql, postgresql
Franchise
🍟 a notebook sql client. what you get when have a lot of sequels.
Stars: ✭ 3,823 (-74.49%)
Mutual labels:  sql, database, mysql, postgresql
Jooq
jOOQ is the best way to write SQL in Java
Stars: ✭ 4,695 (-68.68%)
Mutual labels:  sql, database, mysql, postgresql
Graphjin
GraphJin - Build APIs in 5 minutes with GraphQL. An instant GraphQL to SQL compiler.
Stars: ✭ 1,264 (-91.57%)
Mutual labels:  sql, database, mysql, postgresql

ShardingSphere - Building a Criterion and Ecosystem Above Multi-Model Databases

Official Website: https://shardingsphere.apache.org/

License GitHub release Build Status codecov snyk Maintainability OpenTracing-1.0 Badge Skywalking Tracing CII Best Practices

Twitter Slack Gitter

Stargazers Over Time Contributors Over Time
Stargazers over time Contributor over time

ShardingSphere Overview

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.

Documentation:

EN doc CN doc

For full documentation & more details, visit: Docs

Contribution:

For guides on how to get started and setup your environment, contributor & committer guides, visit: Contribution Guidelines

Community & Support:

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

Status:

Version 5.0.0: released 🎉

🔗 For the release notes, follow this link to the relevant GitHub page.

🔜 Version 5.0.1

We are currently working towards our 5.0.1 milestone. Keep an eye on the milestones page of this repo to stay up to date.

Nightly Builds:

A nightly build of ShardingSphere from the latest master branch is available. The package is updated daily and is available here.

‼️ Notice:

Use this nightly build at your own risk! The branch is not always fully tested. The nightly build may contain bugs, and there may be new features added which may cause problems with your environment.

How it Works:

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.

ShardingSphere-JDBC

Maven Status

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.

ShardingSphere-Proxy

Download Docker Pulls

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.

Hybrid Architecture

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.

Solution

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

Roadmap

Roadmap

How to Build Apache ShardingSphere:

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.

Landscapes



  

Apache ShardingSphere enriches the CNCF CLOUD NATIVE Landscape.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].