数据分片

优质
小牛编辑
133浏览
2023-12-01

配置入口

类名称:org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration

可配置属性:

名称数据类型说明默认值
tables (+)Collection<ShardingTableRuleConfiguration>分片表规则列表-
autoTables (+)Collection<ShardingAutoTableRuleConfiguration>自动化分片表规则列表-
bindingTableGroups (*)Collection<String>绑定表规则列表
broadcastTables (*)Collection<String>广播表规则列表
defaultDatabaseShardingStrategy (?)ShardingStrategyConfiguration默认分库策略不分片
defaultTableShardingStrategy (?)ShardingStrategyConfiguration默认分表策略不分片
defaultKeyGenerateStrategy (?)KeyGeneratorConfiguration默认自增列生成器配置雪花算法
shardingAlgorithms (+)Map<String, ShardingSphereAlgorithmConfiguration>分片算法名称和配置
keyGenerators (?)Map<String, ShardingSphereAlgorithmConfiguration>自增列生成算法名称和配置

分片表配置

类名称:org.apache.shardingsphere.sharding.api.config.ShardingTableRuleConfiguration

可配置属性:

名称数据类型说明默认值
logicTableString分片逻辑表名称-
actualDataNodes (?)String由数据源名 + 表名组成,以小数点分隔。
多个表以逗号分隔,支持行表达式
使用已知数据源与逻辑表名称生成数据节点,用于广播表或只分库不分表且所有库的表结构完全一致的情况
databaseShardingStrategy (?)ShardingStrategyConfiguration分库策略使用默认分库策略
tableShardingStrategy (?)ShardingStrategyConfiguration分表策略使用默认分表策略
keyGenerateStrategy (?)KeyGeneratorConfiguration自增列生成器使用默认自增主键生成器

自动分片表配置

类名称:org.apache.shardingsphere.sharding.api.config.ShardingAutoTableRuleConfiguration

可配置属性:

名称数据类型说明默认值
logicTableString分片逻辑表名称-
actualDataSources (?)String数据源名称,多个数据源以逗号分隔使用全部配置的数据源
shardingStrategy (?)ShardingStrategyConfiguration分片策略使用默认分片策略
keyGenerateStrategy (?)KeyGeneratorConfiguration自增列生成器使用默认自增主键生成器

分片策略配置

标准分片策略配置

类名称:org.apache.shardingsphere.sharding.api.config.strategy.sharding.StandardShardingStrategyConfiguration

可配置属性:

名称数据类型说明
shardingColumnString分片列名称
shardingAlgorithmNameString分片算法名称

复合分片策略配置

类名称:org.apache.shardingsphere.sharding.api.config.strategy.sharding.ComplexShardingStrategyConfiguration

可配置属性:

名称数据类型说明
shardingColumnsString分片列名称,多个列以逗号分隔
shardingAlgorithmNameString分片算法名称

Hint 分片策略配置

类名称:org.apache.shardingsphere.sharding.api.config.strategy.sharding.HintShardingStrategyConfiguration

可配置属性:

名称数据类型说明
shardingAlgorithmNameString分片算法名称

不分片策略配置

类名称:org.apache.shardingsphere.sharding.api.config.strategy.sharding.NoneShardingStrategyConfiguration

可配置属性:无

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

分布式序列策略配置

类名称:org.apache.shardingsphere.sharding.api.config.strategy.keygen.KeyGenerateStrategyConfiguration

可配置属性:

名称数据类型说明
columnString分布式序列列名称
keyGeneratorNameString分布式序列算法名称

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