gpt4 book ai didi

elasticsearch - Elasticsearch动态类型和not_analyse字段

转载 作者:行者123 更新时间:2023-12-03 01:52:14 24 4
gpt4 key购买 nike

我创建了一个像这样的动态模板,因为我有dynamic types:

{
"template": "test-*", //match any index that starts with 'test-'
"settings": {
"number_of_shards": 5
},
"mappings": {
"_default_": {
"_all": {
"enabled": false
},
"dynamic_templates": [
{
"test_id": {
"match": "test_id", // This is an Array of strings field ["a","b"]
"mapping": {
"type": "string",
"index": "not_analyzed"
}
}
},
{
"branch_id": {
"match": "branch_id", // This is Array of objects field [{"a": "b"}, {"c": "d"}]
"mapping": {
"type": "string",
"index": "not_analyzed"
}
}
}
]
}
}
}

示例文件:
{
"_index": "test-data13",
"_type": "025e179ccfd79cacd92f61bb17bddcf8abf83dc2",
"_id": "847",
"_version": 1,
"_score": 1,
"_source": {
"test_id": [
"test_id_test_10123" // disable indexing or full text search for this Array of string
],
"branch_id": [ // disable indexing or full text search for this Array of hashes
{
"1": "test_id_test_10123"
},
{
"2": "test_id_test_10124"
}
]
}
}

如何以不对带有值的 test_id字段和 branch_id字段进行索引或分析的方式更改此模板?如果值是一个Array和Object Array, not_analyzed可以工作吗?

最佳答案

index选项设置为no并将enabled设置为false应当确保未索引test_id数组和branch_id对象。

示例:

{
"template": "test-*",
"settings": {
"number_of_shards": 5
},
"mappings": {
"_default_": {
"_all": {
"enabled": false
},
"dynamic_templates": [
{
"test_id": {
"match": "test_id",
"mapping": {
"index": "no"
}
}
},
{
"branch_id": {
"match": "branch_id",
"mapping": {
"index": "no",
"enabled": false
}
}
}
]
}
}
}

关于elasticsearch - Elasticsearch动态类型和not_analyse字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39379434/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com