我必须搜索一个包含许多化学和生物学分析符号和术语的索引。它包含许多用于各种分析方法的希腊字母。我想针对以下方面进行优化:
α
来找到alpha
。 Fe
来找到iron
。 我需要自己创建此映射吗?
最佳答案
我将使用synonyms token filter来映射您需要的所有100多个值。
PUT index
{
"settings" : {
"analysis" : {
"analyzer" : {
"synonyms" : {
"tokenizer" : "whitespace",
"filter" : ["synonym"]
}
},
"filter" : {
"synonym" : {
"type" : "synonym",
"synonyms" : [
"α => alpha",
"Fe => iron",
...
]
}
}
}
}
}
请注意,除了内联列出所有同义词以外,您还可以将它们存储在文件中,并使用
synonyms_path
设置指向它。