【MySQL】为什么MySQL索引使用B+树而不用hash表和B树?(约192字)FullStackNomad这家伙很懒,什么都没有写...关注私信030 利用Hash需要把数据全部加载到内存中,如果数据量大,是一件很消耗内存的事,而采用B+树,是基于按照节点分段加载,由此减少内存消耗。 和业务场景有段,对于唯一查找(查找一个值),Hash确实更快,但数据库中经常查询多条数据,这时候由于B+数据的有序性,与叶子节点又有链表相连,他的查询效率会比Hash快的多。 b+树的非叶子节点不保存数据,只保存子树的临界值(最大或者最小),所以同样大小的节点,b+树相对于b树能够有更多的分支,使得这棵树更加矮胖,查询时做的IO操作次数也更少。 THE END免费专区后端面试题数据库 喜欢就支持一下吧点赞0 分享QQ空间微博QQ好友海报分享复制链接收藏
暂无评论内容