mongodb的部分索引和稀疏索引

  • 部分索引(partial index)是稀疏索引(sparse index)的超集,也就是说,能用稀疏索引完成的事,用部分索引也能完成。
  • 两种索引理论上都可以让索引的尺寸(内存和硬盘占用)更小,另外也可以优化写操作的性能。
  • 部分索引可以根据不同的业务需求在同一个字段上建立不同的索引,可以达到最佳性能。而稀疏索引只能利用字段是否存在来决定是否索引该文档,灵活性上也差了一截。
  • 复合稀疏索引比较尴尬,比如建议a、b两个字段的复合稀疏索引,只要任意一个字段存在,就会被索引,显然不如部分索引可以实现仅a或仅b或仅a、b存在才索引更贴近需求。
  • 部分索引和稀疏索引都有可能不被查询器选用,所以要在确定使用某一个部分索引或稀疏索引的查询上用 hint
    指定使用的索引。
  • 建立部分索引或稀疏索引的时候强烈建议自定义索引名,索引名应当遵循编程中变量名的起名原则,指明索引的用途,便于维护,当读到代码中的 hint
    参数时也能够更好地理解。
  • 这篇文章不错, Using Partial and Sparse Indexes in MongoDB
赖勇浩的编程私伙局
我还没有学会写个人说明!
上一篇

2020快手年度内容报告:一年直播近14亿场 快手电商GMV达2041亿元

下一篇

“毅力号”隐藏的五个秘密

你也可能喜欢

评论已经被关闭。

插入图片