NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

Sharding-JDBC 1.3.0 发布——支持读写分离

  • 2016-05-31
  • 本文字数:802 字

    阅读完需:约 3 分钟

今年 1 月 18 日,当当的分布式数据库中间层 Sharding-JDBC 正式开源。经过近半年的潜心打磨,Sharding-JDBC 于六一前夕正式发布 1.3.0 里程碑版本。

Sharding-JDBC 源于当当应用框架 ddframe 的关系型数据库访问模块 dd-rdb,主要功能是使数据库分库分表访问透明化。项目定位为轻量级 Java 中间件,采用 JDBC 层协议封装,可以理解为增强版的 JDBC,适用于绝大部分 Java ORM 框架和使用标准 SQL 的数据库。

Sharding-JDBC 在当前开源数据库中间件百花齐放,但稳定易用产品不多的大环境下,有效弥补了关键功能缺失痛点。这里回顾一下 Sharding-JDBC 发布了 4 个里程碑版本:

  • 1.0.0 分库分表:
    1. 提供灵活的函数式分片规则配置,可支持 =,BETWEEN,IN 等操作符分片;
    2. 完善的 SQL 支持,对 LIMIT,聚合,分组,排序,OR 等 SQL 均可解析和多结果集归并。
  • 1.1.0 配置易用性:
    1. 提供 Spring 命名空间简化配置;
    2. 提供 Yaml 配置,为不使用 Spring 的开发者提供同样简便的配置方式。
  • 1.2.0 最大努力送达型柔性事务
    1. 通过同步和异步尝试,在弱 XA 的基础上更近一步,提供最大努力送达型柔性事务保证数据的最终一致性;
    2. 更贴近于原生事务的 TCC 型柔性事务也将于不久之后发布。
  • 1.3.0 读写分离
    1. 提供读写分离数据源,可简便的与分片数据源相结合,便于实现分片 + 主从的完美数据库配置方式;
    2. 最大限度提供数据一致性保障。如:
      1. 同一线程内如有写库操作,读取操作即路由至主库;
      2. 提供 Hint 方式强制主库路由。

Sharding-JDBC 将持续更新,完善分布式数据库中间层缺失的其他功能。目前已在计划中的功能包括分布式主键,TCC 柔性事务,数据迁移,HA,元数据注册管理等。同时也会在 SQL 解析的性能,SQL 的兼容性,配置的易用性等方面不断优化。

在六一来临之际,希望 Sharding-JDBC 能为与数据分片苦苦奋斗的一线攻城狮们送上一份儿童节礼物,为你们提供清爽的解决方案,分担工作的压力。希望技术人员永远保持一颗快乐的童心。

附:Sharding-JDBC github 地址

2016-05-31 19:395806
用户头像

发布了 25 篇内容, 共 25.4 次阅读, 收获喜欢 118 次。

关注

评论

发布
暂无评论
发现更多内容

安卓工控主板通信接口有哪些呢?

双赞工控

安卓主板 工控主板

如何利用FL Studio编曲--入门级

懒得勤快

中国做ipfs公司排名?挖ipfs排名前三的公司是?ipfs矿机哪家最好?

中国做ipfs公司排名 ipfs矿机哪家最好 挖ipfs排名前三的公司是

久等了!【Innovation 2021】网易应用创新开发者大赛正式开赛!

网易云信

开源 架构 开发者 网易 语言 & 开发

强化学习中,Q-Learning与Sarsa的差别有多大?

行者AI

强化学习

PyFlink 开发环境利器:Zeppelin Notebook

阿里云大数据AI技术

关于数据库应用的一些思考

石云升

数据库 8月日更

Python代码阅读(第18篇):变形词判断

Felix

Python 编程 Code Programing 阅读代码

你真的了解二叉树吗?(手撕算法篇)

有道技术团队

二叉树 网易有道

Linux内核内存管理:地址转换和MMU

Linux服务器开发

操作系统 内存管理 Linux内核 内核开发 地址转换

Filecoin价格今日行情:filecoin价格还能怎么走?

区块链 分布式存储 IPFS filecoin价格 filecoin行情

深入了解现代web浏览器(第一部分)

GKNick

每天学习 10 个实用Javascript代码片段(六)

devpoint

mathjs 加密函数 随机数 8月日更

Baetyl推动边云融合 点亮智能物联网

百度大脑

人工智能 开源

为什么Kafka的数据不写了?

BUG侦探

DNS gopack Linux操作系统

neo4j 安装与基本操控

escray

学习 neo4j 8月日更

python通过PyQt5实现登录界面

Python研究者

8月日更

比特币矿池如何触底反弹?比特币矿企的未来出路在哪里?

CECBC

HTTP接口测试基础【FunTester框架教程】

FunTester

自动化测试 教程 接口测试 测试框架 FunTester

业界首个高性能交互式自动标注工具——EISeg正式开源!

百度大脑

人工智能 开源

从技术到服务,小鹅通成功的「底层逻辑」是什么?

ToB行业头条

英特尔的碳中和版图

科技新消息

如何认知新技术?区块链技术和应用

百度开发者中心

区块链 最佳实践 方法论

filecoin挖矿教程?filecoin挖矿收益如何?

区块链 分布式存储 IPFS filecoin挖矿 filecoin收益

区块链技术如何在涉诉信访中显身手

CECBC

仓储执行系统(WES)

申扬科技

WCS wms WES 仓储执行系统

服务全球用户,EMQ X Cloud 新增欧洲部署支持

EMQ映云科技

服务器 mqtt 部署与维护 Cloud emq

网络攻防学习笔记 Day116

穿过生命散发芬芳

网络安全 8月日更

新思科技软件组成分析解决方案获得Forrester Wave认可

InfoQ_434670063458

新斯科技 Forrester 软件组成分析

如何搭建SpringcloudAlibaba基础环境(一)

不焦躁的程序员

Java 微服务

阿里大牛肝出的443页TCP/IP协议趣谈笔记,竟然在GitHub标星27k+

Java 编程 架构 面试 架构师

Sharding-JDBC 1.3.0发布——支持读写分离_Java_张亮_InfoQ精选文章