mycat之按日期分片

来源:互联网 发布:a5创业网源码 编辑:程序博客网 时间:2024/06/05 18:34


因为项目需要,所以这几天接触了下mycat,发现资料偏少。看到了分片规则时,对《mycat权威指南》中的按日期(天)分片有点疑惑,不知道分片后的实际效果是怎么样的?刚开始用的时候,插入数据还报错。再网友的帮助下,理解了日期分片的用法。

我的配置都是参照权威指南的,规则如下:


   图-1 分片规则


建表语句如下图:


  图-2 建表语句


插入语句如下:

insert into testtime(id, create_time) values(2, '2015-12-14');


执行语句后报错:


   图-3 sql报错

看到这个错误后,感觉很莫名其妙,没见过的错误。后面网友提示我, 分片规则中起始时间的设置很重要。因此我将起始时间设置为2015-12-01之后,再执行sql语句,就成功了。之后就是各种尝试。


  图-4 各种时间的尝试


从图-4中可以看出,图-3中的报错是因为create_time字段的时间值超过了分片的时间范围。根据尝试,我总结出了图-5的规律。第一个数据节点的时间范围最大,在起始时间的分区天数上下范围内都属于数据节点1的分片。



   图-5 按日期分片的规律

0 0
原创粉丝点击