开源中国

我们不支持 IE 10 及以下版本浏览器

It appears you’re using an unsupported browser

为了获得更好的浏览体验,我们强烈建议您使用较新版本的 Chrome、 Firefox、 Safari 等,或者升级到最新版本的IE浏览器。 如果您使用的是 IE 11 或以上版本,请关闭“兼容性视图”。
Sharding-JDBC首页、文档和下载 - 轻量级的关系型数据库中间件 - 开源中国社区
全部项目分类
Apache-2.0
Java 查看源码»
跨平台
当当网
亮_dangdang
分享
收藏
518 人收藏
收录时间:2016-01-27
Sharding-JDBC 详细介绍

Sharding-JDBC 是一个轻量级的关系型数据库中间件,提供分库分表、读写分离和柔性事务等功能。它直接封装 JDBC 协议,可以理解为增强版的 JDBC 驱动,旧代码迁移成本几乎为零。它使用客户端直连数据库,以 jar 包形式提供服务,无 proxy 代理层,无需额外部署,无其他依赖,DBA 也无需改变原有的运维方式。

Sharding-JDBC 是当当应用框架 ddframe 中,从关系型数据库模块 dd-rdb 中分离出来的数据库水平分片框架,实现透明化数据库分库分表访问。Sharding-JDBC 是继 dubbox 和 elastic-job 之后,ddframe 系列开源的第 3 个项目。

主要包括以下特点:

  • 可适用于任何基于 Java 的 ORM 框架,如:JPA, Hibernate, Mybatis, Spring JDBC Template 或直接使用 JDBC。

  • 可基于任何第三方的数据库连接池,如:DBCP, C3P0, BoneCP, Druid 等。

  • 理论上可支持任意实现 JDBC 规范的数据库。虽然目前仅支持 MySQL,但已有支持 Oracle,SQL Server 等数据库的计划。

  • 分片策略灵活,可支持等号,between,in 等多维度分片,也可支持多分片键。

  • SQL 解析功能完善,支持聚合,分组,排序,limit,or 等查询,并支持 Binding Table 以及笛卡尔积表查询。

  • 性能高。单库查询 QPS 为原生 JDBC 的 99.8%;双库查询 QPS 比单库增加94%。

架构图

Sharding-JDBC

选择将代码托管在码云
你还在等什么

可能是中国最大最好的代码托管平台


大家对 Sharding-JDBC 的评论 (全部 19 条评论)
{{repayCom.userName}}
亮_dangdang
编译不通过的是lombok的问题。
这里无法回答问题,有问题的同学可以提问
qinbo
sharding-jdbc和好的解决了分库分表的问题,并且支持大部分的sql已完全够用。而且比较灵活,有分表策略配置和分裤策略配置,开发文档也将的非常详细,清楚,并提供了demo,简单易用且实用性很好,大赞!!!--杭州开发
a280131919
有一个这样的sql
SELECT
    count(1)
    FROM sds where id in (select id from gtgt)
sds和gtgt都配置了rule规则,但是gtgt的不会生效,我看了下代码,是因为ParseContext的mergeCurrentConditionContext没有把subParseContext的同步合并,请问这个是因为什么?
fengjian
数据库扩容后,怎么迁移
Lemon_C
卵的
Sharding-JDBC 相关博客
顶部