高手问答第 144 期 — 轻量级数据库中间层 Sharding-JDBC 深度解析

局长 发布于 2017/03/06 17:32
阅读 14K+
收藏 72

OSCHINA 本期高手问答(2017 年 3 月 7 日 — 3 月 13 日)我们请来了 @terrymanu (张亮) 和大家探讨分布式数据库中间层的适用场景和自研的选型过程。

@terrymanu  张亮,目前是当当架构部负责人。主要负责分布式中间件以及私有云平台的搭建。致力于开源,目前主导两个开源项目 Elastic-JobSharding-JDBC

基于关系型数据库的水平扩展方案有很多开源的解决方案,但成熟稳定的产品凤毛麟角。

当当自研的数据库中间层 Sharding-JDBC 在公司内部已广泛使用,并在开源社区推广且初见成果,获得 2016 年开源中国评选的最受欢迎国产开源软件第 17 名。目前的 Sharding-JDBC 已经历从初出茅庐到稳定运行,再到变革的关键点。

Sharding-JDBC 采用在 JDBC 协议层扩展分库分表,是一个以 jar 形式提供服务的轻量级组件,其核心思路是小而美的完成最核心的事情。

最初的 Sharding-JDBC 采用 Druid 做的 SQL 解析,而为了进一步提升性能,并做出更加出色的产品,新一代 Sharding-JDBC 采用自研 SQL 解析,将原有的 AST 语法树 + Vistor 模式,转变为更加轻量级的解析上下文 + Original SQL。

高手嘉宾将与大家探讨分布式数据库中间层的适用场景和自研的选型过程,并深度解析当当的开源产品 Sharding-JDBC 的整体架构、设计思路以及关键技术点。

本次问答包含以下内容:

  • Sharding-JDBC 解决了哪些问题
  • Sharding-JDBC 技术原理
  • 为什么需要使用 Sharding-JDBC
  • Sharding-JDBC 下一步规划

如果还有其他相关问题,不妨带着问题进入本期的高手问答 —— 轻量级数据库中间层 Sharding-JDBC 深度解析。

OSChina 高手问答一贯的风格,不欢迎任何与主题无关的讨论和喷子。

下面欢迎大家就分布式数据库中间层相关的问题向 @terrymanu  提问,请直接回帖提问,提问的时候请描述清楚具体的场景,以方便回答。

加载中
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部