MongoDB进阶与实战:微服务整合、性能优化、架构管理
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

4.2 单键、复合索引

在MongoDB中,我们可以对集合中的某个字段或某几个字段创建索引,以book实体为例,代码如下:

4.2.1 单字段索引

如果经常使用标题(title)这个字段进行搜索,我们可以为它创建一个单字段的索引,代码如下:

这里的“title:1”中的1表示索引采用的是升序排列。然而,在单字段的索引中,使用升序和降序并没有什么差别。

当然,我们也可以对内嵌的文档字段创建索引,比如根据作者的名称进行索引,代码如下:

4.2.2 复合索引

复合索引是多个字段组合而成的索引,其性质和单字段索引类似。但不同的是,复合索引中字段的顺序、字段的升降序对查询性能有直接的影响,因此在设计复合索引时则需要考虑不同的查询场景。

如果需要频繁地查询某分类下的book文档排名,那么可以按照分类、收藏数量创建一个复合索引,代码如下: