分库分表
一颗小陨石
除非我不想赢,不然没人能让我输
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Mycat(三)——几种分片规则 分库 一致性hash的原理及使用
Mycat分片规则取模在前面演示分表的时候,使用了取模的方式实现。取模的话是根据节点个数进行,会有一些弊端,如:hash不均匀,生成的分布式id未必是连续的id,因此大概率可能会有很多id被hash到同一个节点;扩容需要rehash。假如有3个节点,一个id被id%3 hash到了第一个节点,如果进行扩容,增加一个实例,那么再对这个id进行hash,id%4,可能就到了另外一个节点,这样的话就无法查询到这个id的数据信息。分库这里使用两组主从实例。master-01——slave01m原创 2020-08-09 10:18:11 · 2220 阅读 · 1 评论 -
Mycat(二)——分布式ID生成策略
当我们分表分库后,就不可以使用数据库的自增id了,否则肯定会出现id一样的数据。因此就需要使用分布式ID生成策略进行id的生成。mycat序列号(文件)在mycat中提供了全局序列号:在sequence_conf.properties文件中:# 表示使用过的历史分段(一般无特殊需要可不配置)GLOBAL_SEQ.HISIDS= # 最小ID值GLOBAL_SEQ.MINID=1001# 最大ID值GLOBAL_SEQ.MAXID=1000000000# 当前ID值。GLOBAL_S原创 2020-08-08 22:47:58 · 883 阅读 · 0 评论 -
Mycat(一)——基本概念和使用
在介绍mycat前,先看一下数据库拆分的几种常见的方式:数据库拆分就是指通过某种特定的条件,将我们存放在同一个数据库中的数据分散存放到多个数据库(主机)上面,以达到分散单台设备负载的效果垂直拆分优点◆ 数据库的拆分简单明了,拆分规则明确;◆ 应用程序模块清晰明确,整合容易;◆ 数据维护方便易行,容易定位;缺点◆ 部分表关联无法在数据库级别完成,需要在程序中完成,存在跨库join的问题,对于这类的表,就需要去做平衡,是数据库让步业务,共用一个数据源,还是分成多个库,业务之间通过接口来做调用原创 2020-08-08 22:42:12 · 1022 阅读 · 0 评论
分享