形成热点的原因
主要是因为数据插入进去的时候是按顺序加数据的。
数据分裂以后还是在一个store上面,就会形成读写热点。
没有走索引全表扫描的情况。
定位热点
如果有热点,那么它的查询语句应该是比较多的,容易在这个地方找到对应的热点问题。
写热点的处理
上面的SHARD_ROW_ID_BITS为4对应下面的4 bits,表示打散的程度,程度太大会增大RPC的压力,PRE_SPLIT_REGIONS是预分区数目。 这是没有给主键的情况。
下面有主键的情况。
索引的打散
建表的时候预先在每一个store生成对应的region,如果默认是off的情况是数据插入的时候才会生成。
写热点的问题发现
在第三步的时候如果发现建表有问题那么用下面的步骤处理数据
索引的打散
读热点
索引顺序增长的情况,比如时间索引。
问题描述
这个是用自增主键创建的表。
用随机主键建表以后的效果
注意,AutoRandom 仅支持主键列,唯一索引列尚不支持,目前也没有支持计划。AUTO_RANDOM
关键字后可以指定 Shard Bits 数量,默认为 5。
建表的相关参数配置
AUTO_RANDOM | PingCAP 文档中心