Hash索引
格式:
是一串连续的数组
缺点:
- 利用hash存储的话需要将所有的数据文件添加到内存,比较耗费内存空间
- 如果所有的查询都是等值查询,那么hash确实很快,但是在企业或者实际工作环境中范围查找的数据更多,而不是等值查询,因此hash就不太适合了
排序:
hash的排序是按照hash表来的,想要范围查询必须查询有序的数组
B树
特点:
- 所有键值对分布在整颗树中
- 搜索有可能在非叶子节点结束,在关键字全集内做一次查找,性能逼近二分查找
- 每个节点最多拥有m个子树
- 根节点最少有2个子树
- 分支节点至少拥有m/2颗子树(除根节点和叶子节点外都是分支节点)
- 所有的叶子节点都在同一个节点,每个节点最多可以m-1key,并且以升序排列
