我们都是知道数据库的数据都是存储在磁盘上的,当我们程序启动起来的时候,就相当于一个进程运行在了机器的内存当中。但是磁盘的io效率是远不如内存的,所有查找数据的快慢直接影响程序运行的效率。那索引为啥要用B+Tree的数据结构呢?如果我们简单的想的话,想要快速的查找到数据,感觉hash表是最快的,根据key,hash到某个槽位上,直接一次查找就可以准确的找到数据的位置,这多快呀。但是我们在做业务时,往往只需要一条的数据需求很少,大部分的需求都是根据一定的条件查询一部分的数据,这个时候hash显示不是很合适。那我们是不是把高度变矮就可以了呢?

MySQL使用B+Tree当索引的优势有哪些

MySQL使用B+Tree当索引的优势有哪些

MySQL使用B+Tree当索引的优势有哪些