Din*_*amy 5 n-gram elasticsearch term-vectors
根据弹性搜索文档,https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-termvectors.html,术语向量只能应用于文档。有什么方法可以在索引级别应用它。
我的用例是在应用英语停用词过滤器后计算添加到索引的所有文档中存在的字段(类型:字符串,基本上是一个句子)中所有 uni、bi 和 trigram 的频率。
谢谢。
小智 3
使用分片中所有文档的术语向量存储一些统计数据(为什么不索引?...继续阅读)。
要使其发挥作用,您必须为要分析的字段启用 term_vectors。最好的方法是在设置映射时将 term_vectors 添加到字段定义中,因为计算是在索引时完成的,这可以加快术语向量检索的速度。
然后,在检索术语向量时,只需添加“term_statistics”参数,ttf 就会包含在输出中。看这个例子:
GET /twitter/_doc/1/_termvectors { "fields" : ["text"], "offsets" : true, "payloads" : true, "positions" : true, "term_statistics" : true, "field_statistics" : true }
但是,请注意,如果索引使用多个分片,则 term_vectors 和依赖于 term_vectors 的“更像这样”查询并不准确。说不是这样的!
术语和字段统计不准确。不考虑已删除的文档。仅检索所请求文档所在分片的信息。因此,术语和字段统计数据仅用作相对度量,而绝对数字在此上下文中没有任何意义。
如果您想要准确的统计数据,则必须将索引设置为单个分片,这违背了使用弹性搜索的目的,因为您无法对单个分片进行集群。另一位 Stackoverflow 提交者也落入了这个陷阱。如果有人知道解决方案,请发帖。
| 归档时间: |
|
| 查看次数: |
3214 次 |
| 最近记录: |