我知道我们可以在创建索引时为尚未进入的字段设置架构。但是,是否可以为可能进入给定索引的未知字段设置默认架构。
用例: 我有一个DynamoDB表内容,它在AWS Elastic Search实例中编入索引。 DynamoDB表包含不应作为文本编制索引的标识符,并且可以接收弹性搜索模式以前未指定的新标识符。
问题是如果在DynamoDB项目中设置了一个新的String字段,它将默认在Elastic Search中编入索引,如下所示:
{
"mappings": {
"metadata": {
"properties": {
"my_new_field": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
}
}
}
}
}
虽然我希望新字段映射默认为
{
"mappings": {
"metadata": {
"properties": {
"my_new_field": {
"type": "keyword"
}
}
}
}
}
答案 0 :(得分:1)
您可以使用特定于您希望进入的某些索引或文档类型的新动态映射定义。 看看[这里] [1]:https://www.elastic.co/guide/en/elasticsearch/reference/current/dynamic-templates.html