我有一个名为search_text
的字段,它是一个全文搜索字段。
我使用ngrams索引这个字段,我想添加一个新的子字段search_text.words
,它将对整个单词进行索引。
我尝试实现此功能,但查询search_text.words
始终会返回0次点击。
我正在创建它:
"search_text" => {
"type" => "string",
"analyzer" => "ngram",
"search_analyzer" => "ngram_search",
"fields" => {
"words" => {"type" => "string",
"analyzer" => "ngram_search"}
}
}
我在这里有一个完整的演示:
https://www.dropbox.com/s/wwxm3qe0oxc2z5y/Slimmed%20ElasticSearch%20Text%20%281%29.html?dl=0
答案 0 :(得分:1)
查看您的Dropbox文件,我认为问题是映射类型称为search_variable
,而在批量查询中您使用的映射类型为test_type
。
因此永远不会应用映射。
如果您将批量查询更改为此内容,则可以使用
bulk_insert_items = items_to_insert.flat_map do |item|
[
{index: {_index: 'test_index', _type: 'search_variable'}},
item
]
end