检索ElasticSearch文件分析令牌(Retrieve analyzed tokens fro

2019-08-02 19:37发布

试图访问我ElasticSearch文件分析/标记化文本。

我知道你可以使用分析API来分析根据您的分析模块任意文本。 所以,我可以从我的文档复制并粘贴数据到分析API来看看它是如何记号化。

这似乎是不必要的耗费时间,虽然。 有没有什么办法来指导ElasticSearch到返回的搜索结果中的标记化的文本? 我已经通过了文档看了看,没有发现任何东西。

Answer 1:

看看这个其他答案: elasticsearch -返回一个字段的标记 。 不幸的是,需要在飞行中重新分析使用提供的脚本所在领域的内容。
它应该能够编写一个插件来揭露这个功能。 该想法是将两个端点添加到:

  • 允许读了Lucene TermsEnum像Solr的TermsComponent确实,使自动建议太有用了。 请注意,它不会是每个文档,只是与词频和文档频率(有很多独特的方面可能昂贵)的指数每学期
  • 如果允许启用,像Solr的阅读词向量TermVectorComponent一样。 这将是每个文档,但需要存储词向量(你可以在你的映射配置它),并允许同时如果允许取回位置和偏移。


Answer 2:

这个问题是一个老豆蔻,但也许我认为一个额外的答案是必要的。

随着ElasticSearch 1.0.0 项向量API加入,让你在每个文档的基础引擎盖下直接访问令牌ElasticSearch商店。 API文档都不会在这个(仅在例子中提到)是很清楚,但为了工作,你必须在你的第一个指示API 映射定义要存储词向量与term_vector上的每个字段属性。



Answer 3:

您可能需要使用脚本,但是您的服务器应启用脚本。

curl 'http://localhost:9200/your_index/your_type/_search?pretty=true' -d '{
    "query" : {
        "match_all" : { }
    },
    "script_fields": {
        "terms" : {
            "script": "doc[field].values",
            "params": {
                "field": "field_x.field_y"
            }
        }
    }
}'

允许脚本的默认设置取决于弹性搜索版本,请检查出从官方文档。



文章来源: Retrieve analyzed tokens from ElasticSearch documents