文档数据库服务 DDS-创建和管理索引:索引分类

时间:2024-05-13 17:11:07

索引分类

索引分类

说明

默认索引

在创建集合期间,DDS在_id字段上创建唯一索引。该索引可防止客户端插入两个具有相同值的文档。你不能将_id字段上的index删除。

在分片群集中,如果您不使用_id字段作为分片键,应用程序需要确保_id字段中值的唯一性以防止错误。这通常是通过使用标准的自动生成的ObjectId来完成的。

单字段索引

除DDS定义的_id索引外,DDS还支持在文档的单个字段上创建用户定义的升序/降序索引。

对于单字段索引和排序操作,索引键的排序顺序(升序或降序)并不重要,因为DDS可以从任何方向遍历索引。

复合索引

DDS还支持多个字段上的用户定义索引,即复合索引。

复合索引中列出的字段的顺序具有重要意义。例如,如果一个复合索引由{userid: 1, score: -1}组成,索引首先按userid排序,然后在每个userid值内按score排序。

对于复合索引和排序操作,索引键的排序顺序(升序或降序)可以决定索引是否支持排序操作。

多键索引

DDS使用多键索引来索引存储在数组中的内容。如果索引包含数组值的字段,DDS为数组的每个元素创建单独的索引项。这些多键索引允许查询通过匹配数组的一个或多个元素来选择包含数组的文档。DDS自动决定是否创建一个多键索引,如果索引字段包含数组值,您不需要显式地指定多键类型。

support.huaweicloud.com/devg-dds/dds_devg_0020.html