Solr具有内置的"Analysis Screen",它有助于调试特定字段类型的标记化器和过滤器之间的相互作用:
ElasticSearch是否有一个类似的插件?具体来说,我希望看到每个过滤器的输入/输出,而不仅仅是分析链的最终结果。我在这方面非常密切地使用了谷歌,但没有找到任何东西。
https://www.found.no/play/#analysis包含我想要的功能(向下滚动到“myAnalyzer”),但不幸的是,这不是我可以在索引上运行的东西。但它表明这样的功能是可能的。
编辑:我知道有很多插件可以显示完整的过滤器链的输出,例如用户@Bass建议的kopf:
这不是我想要的!我希望看到每个过滤器的输出,而不仅仅是最终结果。
答案 0 :(得分:2)
OpenSource Connections的好人们制作了一个名为elyzer的独立工具。该工具将在分析过程的任何步骤(字符过滤器,标记器,标记过滤器)显示您的标记的状态,并且使用起来非常简单。
通过pip install elyzer
安装它非常简单,然后您可以将它用作命令行工具,例如
$ elyzer --es "http://localhost:9200" --index tmdb --analyzer english_bigrams --text "Mary had a little lamb"
TOKENIZER: standard
{1:Mary} {2:had} {3:a} {4:little} {5:lamb}
TOKEN_FILTER: standard
{1:Mary} {2:had} {3:a} {4:little} {5:lamb}
TOKEN_FILTER: lowercase
{1:mary} {2:had} {3:a} {4:little} {5:lamb}
TOKEN_FILTER: porter_stem
{1:mari} {2:had} {3:a} {4:littl} {5:lamb}
TOKEN_FILTER: bigram_filter
{1:mari had} {2:had a} {3:a littl} {4:littl lamb}
答案 1 :(得分:1)
我过去曾使用Inquisitor来测试标记器和过滤器。它位于Elasticsearch分析API之上,可以从Web前端使用。
您还应该尝试另一个名为elasticsearch-extended-analyze的插件,该插件返回与Solr分析页面相同的令牌级信息(尽管没有Web前端)。
答案 2 :(得分:-1)
是的,我们可以通过Elasticsearch来实现 - kopf.Elastic Search-KOPF是管理员工具。您将在命令提示符
中键入此命令bin / plugin --install lmenezes / elasticsearch-kopf / 1.1
如果您有任何疑问,请告诉我?答案 3 :(得分:-1)
Analyze API可用于测试分析仪。它不是那么漂亮,但能完成这项工作。
实施例
GET localhost:9200/_analyze
{
"tokenizer" : "keyword",
"token_filters" : ["lowercase"],
"char_filters" : ["html_strip"],
"text" : "this is a <b>test</b>"
}