数据库index

Index
Primary Index(用在key上)
格式是Block anchor: Block Pointer
每个Block只存第一个
Block anchor的值是这个field的值

Clustering index
排好序,非key field
因为有重复的anchor值,只记录这个anchor值第一次出现时对应的是哪个block

Secondary Index(on key field, unsorted)
Dense index: 一个entry对应一个record
有两层架构
1.第一层存distinct field值,和对应的block
2.第二层对应的block里有好几个pointer,因为这是non-key field的index,会有重复的,每个pointer指向对应的block位
总的来说,一个anchor值对应好几个pointer,每个pointer对应到record对应的block位置

Muti-level index
每一层存下一层block头的entry,到最终头部只有一个block

Dynamic Multi-level index(B+ trees)
每一层的每一个node都是half-full和complete-full之间,留下空间给增加和删除操作
增加:如果有一个node满了,就要分成两个node,这种splitting有可能向上级扩展
删除:如果删除之后小于一半满,就和旁边的node合并

bitmap index
表里每一个record每一个attribute可能的值创造一个index
比如说一个表里的gender栏里有男女,对应的gender index就是
0
1
0
1
1
1
bitmap的缺点,不能应用在频繁改变的数据上,可能牵一发而动全身。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值