分片规定
分片规定配置的总入口。蕴含数据源配置、表配置、绑定表配置以及读写拆散配置等。
数据源配置
实在数据源列表。
表配置
逻辑表名称、数据节点与分表规定的配置。
数据节点配置
用于配置逻辑表与实在表的映射关系。可分为均匀分布和自定义散布两种模式。
- 均匀分布
指数据表在每个数据源内出现均匀分布的态势,例如:
db0
├── t_order0
└── t_order1
db1
├── t_order0
└── t_order1
那么数据节点的配置如下:
db0.t_order0, db0.t_order1, db1.t_order0, db1.t_order1
- 自定义散布
指数据表出现有特定规定的散布,例如:
db0
├── t_order0
└── t_order1
db1
├── t_order2
├── t_order3
└── t_order4
那么数据节点的配置如下:
db0.t_order0, db0.t_order1, db1.t_order2, db1.t_order3, db1.t_order4
分片策略配置
对于分片策略存有数据源分片策略和表分片策略两种维度。
- 数据源分片策略
对应于 DatabaseShardingStrategy。用于配置数据被调配的指标数据源。
- 表分片策略
对应于 TableShardingStrategy。用于配置数据被调配的指标表,该指标表存在与该数据的指标数据源内。故表分片策略是依赖与数据源分片策略的后果的。
两种策略的 API 完全相同。
自增主键生成策略
通过在客户端生成自增主键替换以数据库原生自增主键的形式,做到分布式主键无反复。