查看 Atlas Search 搜索索引语法
Atlas Search 可以通过不同的方式对数据进行索引。在定义 Atlas Search 索引时,您可以指定一个特定分析器或多个分析器以对某些字段进行索引。要了解更多信息,请参阅使用分析器处理数据。您还可以对某些字段进行索引并忽略其他字段,或者可以动态对集合中的所有字段进行索引。要了解更多信息,请参阅 定义字段映射。您可以通过 Atlas UI、Atlas Search API、Atlas CLI、mongosh
或 驱动程序 定义 Atlas Search 索引。
本页介绍了 Atlas Search 索引的 JSON 语法和字段。
语法
1 { 2 "mappings": { 3 "dynamic": <boolean>, 4 "fields": { <field-definition> } 5 } 6 } 7
1 { 2 "analyzer": "<analyzer-for-index>", 3 "searchAnalyzer": "<analyzer-for-query>", 4 "mappings": { 5 "dynamic": <boolean>, 6 "fields": { <field-definition> } 7 }, 8 "numPartitions": 4, 9 "analyzers": [ <custom-analyzer> ], 10 "storedSource": <boolean> | { 11 <stored-source-definition> 12 }, 13 "synonyms": [ 14 { 15 "name": "<synonym-mapping-name>", 16 "source": { 17 "collection": "<source-collection-name>" 18 }, 19 "analyzer": "<synonym-mapping-analyzer>" 20 } 21 ] 22 } 23
选项
字段 | 类型 | 必要性 | 说明 |
---|---|---|---|
| 字符串 | Optional | |
| 自定义分析器数组 | Optional | 指定在该索引中使用的自定义分析器。 |
| 必需 | 指定如何在该索引的不同路径中对字段进行索引。 | |
| 布尔 | Optional | |
| 文档 | 可选的 | |
| 字符串 | Optional | |
| int | Optional | 指定文档计数超过 20 亿时要创建的子索引数量。以下值是有效的: 要使用索引分区,您必须在集群中部署搜索节点。 重要
|
| 布尔值或存储的源定义 | Optional | 使用 returnedStoredSource 选项指定要存储的文档字段,以便在查询时查找。您可以在 Atlas Search 上存储所有数据类型的字段。值可以是以下值之一:
如果省略,则默认值为 要了解更多信息,请参阅在 Atlas Search 索引中定义存储的源字段。 |
| 同义词映射定义数组 | Optional |