sharding-sphere - Distributed database middleware

  •        92

Distributed database middleware ecosphere

https://github.com/sharding-sphere/sharding-sphere
http://shardingsphere.io

Dependencies:

com.google.guava:guava:18.0
org.slf4j:slf4j-api:1.7.7
org.slf4j:jcl-over-slf4j:1.7.7
org.codehaus.groovy:groovy:2.4.5
org.yaml:snakeyaml:1.16
io.netty:netty-all:4.1.16.Final
commons-codec:commons-codec:1.10
javax.transaction:jta:1.1
com.atomikos:transactions:4.0.4
com.atomikos:transactions-jta:4.0.4
com.atomikos:transactions-jdbc:4.0.4
org.apache.curator:curator-framework:2.10.0
org.apache.curator:curator-client:2.10.0
org.apache.curator:curator-recipes:2.10.0
io.grpc:grpc-netty:1.7.0
io.grpc:grpc-protobuf:1.7.0
io.grpc:grpc-stub:1.7.0
com.github.rholder:guava-retrying:2.0.0
io.opentracing:opentracing-util:0.30.0
org.projectlombok:lombok:1.16.4
org.springframework:spring-context-support:[4.3.6.RELEASE,5.0.0.M1)
org.springframework.boot:spring-boot-starter:[1.5.0.RELEASE,2.0.0.M1)
org.springframework.boot:spring-boot-configuration-processor:[1.5.0.RELEASE,2.0.0.M1)

Tags
Implementation
License
Platform

   




Related Projects

radon - RadonDB is an open source, cloud-native MySQL database for building global, scalable cloud services

  •    Go

RadonDB is an open source, Cloud-native MySQL database for unlimited scalability and performance. RadonDB is a cloud-native database based on MySQL,and architected in fully distributed cluster that enable unlimited scalability (scale-out), capacity and performance. It supported distributed transaction that ensure high data consistency, and leveraged MySQL as storage engine for trusted data reliability. RadonDB is compatible with MySQL protocol, and sup-porting automatic table sharding as well as batch of automation feature for simplifying the maintenance and operation workflow.

sharding-sphere-example - Sharding-Sphere examples

  •    Java

Sharding-Sphere example. Please do not use dev branch to run your example, example of dev branch is not released yet.

octopus - Database Sharding for ActiveRecord

  •    Ruby

Octopus is a better way to do Database Sharding in ActiveRecord. Sharding allows multiple databases in the same rails application. While there are several projects that implement Sharding (e.g. DbCharmer, DataFabric, MultiDb), each project has its own limitations. The main goal of octopus project is to provide a better way of doing Database Sharding. The api is designed to be simple as possible. Octopus focuses on the end user, giving the power of multiple databases but with reliable code and flexibility. Octopus is compatible with Rails 4 and Rails 5.

Vitess - Database clustering system for horizontal scaling of MySQL

  •    Go

Vitess is a database clustering system for horizontal scaling of MySQL through generalized sharding. By encapsulating shard-routing logic, Vitess allows application code and database queries to remain agnostic to the distribution of data onto multiple shards. With Vitess, you can even split and merge shards as your needs grow, with an atomic cutover step that takes only a few seconds. Vitess has been a core component of YouTube's database infrastructure since 2011, and has grown to encompass tens of thousands of MySQL nodes.


Citus - Scalable PostgreSQL for multi-tenant and real-time workloads

  •    C

Citus is a distributed database that scales across commodity servers using transparent sharding and replication. Citus extends the underlying database rather than forking it, giving developers and enterprises the power and familiarity of a relational database. As an extension, Citus supports new PostgreSQL releases, and allows you to benefit from new features while maintaining compatibility with existing PostgreSQL tools.

Cobar - Proxy for sharding databases and tables

  •    Java

Cobar is a proxy for sharding databases and tables,compatible with MySQL protocal and MySQL SQL grama,underlying storage only support MySQL for support foreground business more simple,stable,efficient and safety。

weaver - An Advanced HTTP Reverse Proxy with Dynamic Sharding Strategies

  •    Go

Weaver is a Layer-7 Load Balancer with Dynamic Sharding Strategies. It is a modern HTTP reverse proxy with advanced features. Weaver uses etcd as a control plane to match the incoming requests against a particular route config and shard the traffic to different backends based on some sharding strategy.

Bagri - XML/Document DB on top of distributed cache

  •    Java

Bagri is a Document Database built on top of distributed cache solution like Hazelcast or Coherence. The system allows to process semi-structured schema-less documents and perform distributed queries on them in real-time. It scales horizontally very well with use of data sharding, when all documents are distributed evenly between distributed cache partitions.

Lindb - Distributed Time Series Database

  •    Go

LinDB is an open-source Time Series Database which provides high performance, high availability and horizontal scalability. LinDB takes a lot of best practice of TSDB and implements some optimizations based on the characteristics of time series data. Unlike writing a lot of Continuous-Query for InfluxDB, LinDB supports rollup in specific interval automatically after creating the database. Moreover, LinDB is extremely fast for parallel querying and computing of distributed time series data.

Spider - Data Sharding and Partitioning for MySQL

  •    C

Spider is the first step when accessing a remote database and a storage engine that updates and improves upon the existing architecture of MySQL. Spider supports database transaction. In addition Spider allows an unlimited amount of users to quickly access the MySQL database. Spider supports MySQL partitioning. Spider operates as a "cluster" acting as a single system that supports unlimited parallel processing.

Vitess - Database clustering system for horizontal scaling of MySQL

  •    Go

Vitess is a database clustering system for horizontal scaling of MySQL through generalized sharding. By encapsulating shard-routing logic, Vitess allows application code and database queries to remain agnostic to the distribution of data onto multiple shards. With Vitess, you can even split and merge shards as your needs grow, with an atomic cutover step that takes only a few seconds.

CUBRID - RDBMS Optimized for Web

  •    C++

CUBRID is a relational database management system highly optimized for Web Applications, especially when complex web services process large amount of data and generate huge concurrent requests. CUBRID is being developed in C/C++. Includes HA, online incremental backup, Replication, Load balancing, Sharding, Caching and other features. It supports JDBC, PHP, ODBC/.NET, Ruby & Python APIs.

MaxScale - An intelligent database proxy

  •    C++

The MariaDB Corporation MaxScale is an intelligent proxy that allows forwarding of database statements to one or more database servers using complex rules, a semantic understanding of the database statements and the roles of the various servers within the backend cluster of databases. It extends the high availability, scalability, and security of MariaDB Server while at the same time simplifying application development by decoupling it from underlying database infrastructure.

Kong - The Microservice API Gateway

  •    Lua

Kong is a cloud-native, fast, scalable, and distributed Microservice Abstraction Layer (also known as an API Gateway, API Middleware or in some cases Service Mesh). Backed by the battle-tested NGINX with a focus on high performance, Kong was made available as an open-source platform in 2015. Under active development, Kong is used in production at thousands of organizations from startups, Global 5000 and Government organizations.

ringpop-go - Scalable, fault-tolerant application-layer sharding for Go applications

  •    Go

Ringpop is a library that brings cooperation and coordination to distributed applications. It maintains a consistent hash ring on top of a membership protocol and provides request forwarding as a routing convenience. It can be used to shard your application in a way that's scalable and fault tolerant.to install remaining golang dependencies and install the pre-commit hook.

incubator-shardingsphere-example - Sharding-Sphere examples

  •    Java

ShardingSphere example. Please do not use dev branch to run your example, example of dev branch is not released yet.

redis-shard - Redis sharding client library

  •    Python

A Redis sharding implementation. Redis is great. It's fast, lightweight and easy to use. But when we want to store a mass of data into one single instance, we may encounter some problems such as performance degradation and slow recovery and we need to scale it.





We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.