查看 Atlas Search 搜索索引语法
Atlas Search 可以通过不同的方式对数据进行索引。定义 Atlas Search 索引时,您可以指定一个特定分析器或多个分析器来索引某些字段。要了解详情,请参阅使用分析器处理数据。您还可以对某些字段进行索引并省略其他字段,或者可以动态对集合中的所有字段进行索引。要了解更多信息,请参阅定义字段映射。您可以通过Atlas 用户界面、 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 "analyzers": [ <custom-analyzer> ], 9 "storedSource": <boolean> | { 10 <stored-source-definition> 11 }, 12 "synonyms": [ 13 { 14 "name": "<synonym-mapping-name>", 15 "source": { 16 "collection": "<source-collection-name>" 17 }, 18 "analyzer": "<synonym-mapping-analyzer>" 19 } 20 ] 21 } 22
选项
字段 | 类型 | 必要性 | 说明 |
---|---|---|---|
analyzer | 字符串 | Optional | |
analyzers | 自定义分析器数组 | Optional | 指定在该索引中使用的自定义分析器。 |
mappings | 必需 | 指定如何在该索引的不同路径中对字段进行索引。 | |
mappings.dynamic | 布尔 | Optional | |
mappings.fields | 文档 | 可选的 | |
searchAnalyzer | 字符串 | Optional | |
storedSource | 布尔值或存储的源定义 | Optional | 使用 returnedStoredSource 选项指定要存储的文档字段,以便在查询时查找。您可以在 Atlas Search 上存储所有数据类型的字段。值可以是以下值之一:
如果省略,则默认值为 注意
|
synonyms | 同义词映射定义数组 | Optional | 要在索引中使用的同义词映射。要了解更多信息,请参阅在 Atlas Search 索引中定义同义词映射。 注意一个索引定义只能具有一个同义词映射。 |