用来配置水平切分,以及水平切分规则
name:取名要唯一,最好能通过名字进行描述。
columns:是分片列,必须是表中存在的列,mycat根据这个列计算,确定当前数据要存放在哪个分片,每一个要分片的表都要定义一个分片列,分片列的选择关系到日后的查询性能和查询逻辑
algorithm:指定表的分片算法,取<function>的name属性
function的name同样要在整个配置文件中是唯一的,并具有一定象征意义的
count代表分片节点数的总和,这里的意思是将表分成四份
分片算法:
简单取模
哈希取模是对分片列进行哈希后取模
分片枚举是根据某项枚举值进行分片(比如异地生活,根据不同地区id把数据分别存储在不同的片上,使用mycat进行数据路由)
字符串范围取模分片:比如根据很长的字符串的前几位来分片
简单取模、哈希无法认为决定数据分片,枚举分片可以:
type:
0.整数型
非0.字符串
defaultNode:
>=0.启用默认节点
<0.不启用默认节点
有时候要截取分片列特定长度字符作为分片依据,如订单号后五位、姓名前缀:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。