提供原生 JDBC 或 MyBatis + Spring 下的水平分库分表实现,支持:
- 分库分表下的 CRUD
- 事务支持
基于分片 modulo 的**,将用户 ID 对分片数 modulo size 取模,将用户映射到不同分片中,每个分片通过一张配置表决定存储于哪个分库中。
数据库名 | 类型 |
---|---|
hor-shard-center | **库 |
hor-shard-ds1 | 分库1 |
hor-shard-ds2 | 分库2 |
(1) center 库
user
业务表,用户信息
(2) shard 库
order_{modulo}
业务表,订单信息order_{modulo}
业务表,订单详情信息
运行 sql/initialize.sql
脚本,初始化库表。