ShardingSphere-JDBC:数据分片实战篇
前言
本文主要是实现了一个基于JavaAPI调用ShardingSphere-JDBC实现数据分片 。
数据分片
数据分片是指按照某个维度将存放在单一数据节点中的数据分散地存放在多个数据节点或表中 , 来达到提升性能瓶颈以及可用性的目的 。
数据分片的核心手段就是对关系型数据库进行分库和分表 。
创建数据库和数据表
首先我们创建两个库 , 分别是ds0 , ds1 , 在ds0中创建一个表t_order0 , 在ds1中创建一个表t_order1 。
在表中有三个字段:
order_id , 订单编号 , 主键 , 用于分表策略的键
【ShardingSphere-JDBC:数据分片实战篇】user_id , 用户编号 , 用于分库策略的键
remarks , 备注
建表语句
CREATETABLE`t_order0`(
`order_id`bigintNOTNULLCOMMENT'订单号 , 主键',
`user_id`bigintNOTNULLCOMMENT'用户ID',
`remarks`varchar(50)COLLATEutf8mb4_german2_ciDEFAULTNULLCOMMENT'备注',
PRIMARYKEY(`order_id`)
)ENGINE=InnoDBDEFAULTCHARSET=utf8mb4COLLATE=utf8mb4_german2_ciCOMMENT='订单表';
CREATETABLE`t_order1`(
`order_id`bigintNOTNULLCOMMENT'订单号 , 主键',
`user_id`bigintNOTNULLCOMMENT'用户ID',
`remarks`varchar(50)COLLATEutf8mb4_german2_ciDEFAULTNULLCOMMENT'备注',
PRIMARYKEY(`order_id`)
)ENGINE=InnoDBDEFAULTCHARSET=utf8mb4COLLATE=utf8mb4_german2_ciCOMMENT='订单表';
测试数据
文章图片
文章图片
操作步骤
我们利用ShardingSphere-JDBC实现分库分表的操作步骤如下:
配置真实数据源
配置t_order表规则
配置分库策略
配置分表策略
配置分片策略
获取数据源
执行操作语句
引入Maven依赖
注意:示例代码的数据库连接池为Druid , 可根据业务场景更换为其他主流数据库连接池 。 
文章图片
规则配置
ShardingSphere-JDBC的JavaAPI通过数据源集合、规则集合以及属性配置组成 。 以下示例是根据user_id取模分库,且根据order_id取模分表的2库2表的配置 。 
文章图片
按照我们插入的参数“order_id=1&user_id=1”的条件 , 我们应该会查到ds1库t_order1的数据 , 测试数据如下:
文章图片
结果果然如此 , 说明我们做的这个小demo是ok的 , 下一篇文章我会带领大家深入源码 , 探究ShardingSphere-JDBC是如何做到分库分表的!
写在最后
好兄弟可以点赞并关注我的公众号“javaAnswer” , 全部都是干货 。 
文章图片
- 创业|八成互联网电视非法采集用户数据, 彩电企业怎么办?
- 新书推荐 │ 大数据算法设计与分析
- |一招教你入门数据可视化!
- 固态硬盘|PCI-E 4.0新选择,西部数据WD_BLCK SN770固态硬盘体验
- 原神|原神:说好数据互通的,为什么自己不能用电脑玩?多数人都没注意
- 客户端|多平台分析618数据,看清家居人未来方向!
- 芯片|芯片数据出炉!情况出现反转,美企们坐不住了
- 网络安全|数据安全的三大特性!重要性和意义!
- 海尔|唯品会京东的618数据中,一个“反常”现象被忽视了
- 数据资产管理和数据治理是什么关系?
