数据分片

配置项说明

命名空间:http://shardingsphere.apache.org/schema/shardingsphere/sharding/sharding-5.0.0.xsd

<sharding:rule />

名称类型说明
id属性Spring Bean Id
table-rules (?)标签分片表规则配置
auto-table-rules (?)标签自动化分片表规则配置
binding-table-rules (?)标签绑定表规则配置
broadcast-table-rules (?)标签广播表规则配置
default-database-strategy-ref (?)属性默认分库策略名称
default-table-strategy-ref (?)属性默认分表策略名称
default-key-generate-strategy-ref (?)属性默认分布式序列策略名称

<sharding:table-rule />

名称类型说明
logic-table属性逻辑表名称
actual-data-nodes属性由数据源名 + 表名组成,以小数点分隔。多个表以逗号分隔,支持inline表达式。缺省表示使用已知数据源与逻辑表名称生成数据节点,用于广播表(即每个库中都需要一个同样的表用于关联查询,多为字典表)或只分库不分表且所有库的表结构完全一致的情况
actual-data-sources属性自动分片表数据源名
database-strategy-ref属性标准分片表分库策略名称
table-strategy-ref属性标准分片表分表策略名称
sharding-strategy-ref属性自动分片表策略名称
key-generate-strategy-ref属性分布式序列策略名称

<sharding:binding-table-rules />

名称类型说明
binding-table-rule (+)标签绑定表规则配置

<sharding:binding-table-rule />

名称类型说明
logic-tables属性绑定表名称,多个表以逗号分隔

<sharding:broadcast-table-rules />

名称类型说明
broadcast-table-rule (+)标签广播表规则配置

<sharding:broadcast-table-rule />

名称类型说明
table属性广播表名称

<sharding:standard-strategy />

名称类型说明
id属性标准分片策略名称
sharding-column属性分片列名称
algorithm-ref属性分片算法名称

<sharding:complex-strategy />

名称类型说明
id属性复合分片策略名称
sharding-columns属性分片列名称,多个列以逗号分隔
algorithm-ref属性分片算法名称

<sharding:hint-strategy />

名称类型说明
id属性Hint 分片策略名称
algorithm-ref属性分片算法名称

<sharding:none-strategy />

名称类型说明
id属性分片策略名称

<sharding:key-generate-strategy />

名称类型说明
id属性分布式序列策略名称
column属性分布式序列列名称
algorithm-ref属性分布式序列算法名称

<sharding:sharding-algorithm />

名称类型说明
id属性分片算法名称
type属性分片算法类型
props (?)标签分片算法属性配置

<sharding:key-generate-algorithm />

名称类型说明
id属性分布式序列算法名称
type属性分布式序列算法类型
props (?)标签分布式序列算法属性配置

算法类型的详情,请参见内置分片算法列表内置分布式序列算法列表

注意事项

行表达式标识符可以使用 ${...}$->{...},但前者与 Spring 本身的属性文件占位符冲突,因此在 Spring 环境中使用行表达式标识符建议使用 $->{...}