mysql在B-Tree上创建伪哈希索引

  • 构建哈希的过程

mysql在B-Tree上创建伪哈希索引

  •  select过程

mysql在B-Tree上创建伪哈希索引

  • 长字符串下,构建索引可通过自定义哈希作为索引,本人通过实验,在3百多个数据记录的下,性能效果很明显,完全不是一个等级.以下为索引前后几种情况对比
  1. 无索引的url:直接通过无索引url

mysql在B-Tree上创建伪哈希索引

  1. 通过构建url的哈希索引:用bigint类型存储索引字段crc_url

在哈希索引下,几乎都是0秒完成.

mysql在B-Tree上创建伪哈希索引

 当然,如果直接使用url作为索引,即用B-Tree存储url存储的内容会很大.

题外话:

在where字句中,优化器会根据查询条件是否存在索引,优先进行索引查询. 如下为例子:

将无索引的url放在前面,跟放在后面,效果是一样的

mysql在B-Tree上创建伪哈希索引

 mysql在B-Tree上创建伪哈希索引

相关推荐