数据分片 #
配置项说明 #
命名空间:http://shardingsphere.apache.org/schema/shardingsphere/sharding/sharding-5.1.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 (?) | 属性 | 默认分布式序列策略名称 |
default-sharding-column (?) | 属性 | 默认分片列名称 |
<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 环境中使用行表达式标识符建议使用 $->{...}
。