Elasticsearch 映射(mapping)
在Elasticsearch中,映射(mapping)用于定义索引中字段的数据类型和结构。它们是非常重要的,因为Elasticsearch依赖映射来理解如何索引和查询文档中的字段。
以下是创建Elasticsearch映射的基本语法:
PUT /index_name
{
"mappings": {
"properties": {
"field1": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"field2": {
"type": "date"
},
"field3": {
"type": "integer"
}
}
}
}
在这个例子中,我们创建了一个名为index_name
的索引,并定义了三个字段:field1
(包含文本内容,并且可以作为不分析的关键字搜索),field2
(日期类型),以及field3
(整数类型)。
更新映射:
PUT /index_name/_mapping
{
"properties": {
"field4": {
"type": "text"
}
}
}
在这个例子中,我们向已存在的index_name
索引中添加了一个新的字段field4
。
请注意,映射一旦设置,就不能更改现有字段的类型,除非重新索引数据。因此,在设计索引的映射时需要谨慎考虑字段的数据类型和需求。
评论已关闭