Elasticsearch:计算一个术语在每个文档中出现的频率
Elasticsearch: Count how often a term is in each document
对于条目,我可以使用术语向量 api 轻松找出特定术语的使用频率。
现在我想知道一个术语在我的索引的每个文档中出现的频率。
term | ID1 | ID2 | ID3 | ID4 [...]
'hello' | 2 | 4 | 0 | 12 [...]
除了搜索我的术语并为每个结果调用 termvector 之外,是否有better/more 有效的方法来获取此统计信息?
您可以使用脚本来实现这一点。
遵循文档 here and here。
在 scripted field 上也有一个好主意,它可以帮助您在每个文档中获得额外的字段。
示例查询 -
{
"query": {
"match": {
"provider": "qbox"
}
},
"script_fields": {
"test1": {
"script": "_index['provider']['qbox'].tf()"
}
}
}
其中 provider 是字段,qbox 是值。
对于条目,我可以使用术语向量 api 轻松找出特定术语的使用频率。
现在我想知道一个术语在我的索引的每个文档中出现的频率。
term | ID1 | ID2 | ID3 | ID4 [...]
'hello' | 2 | 4 | 0 | 12 [...]
除了搜索我的术语并为每个结果调用 termvector 之外,是否有better/more 有效的方法来获取此统计信息?
您可以使用脚本来实现这一点。 遵循文档 here and here。 在 scripted field 上也有一个好主意,它可以帮助您在每个文档中获得额外的字段。
示例查询 -
{
"query": {
"match": {
"provider": "qbox"
}
},
"script_fields": {
"test1": {
"script": "_index['provider']['qbox'].tf()"
}
}
}
其中 provider 是字段,qbox 是值。