【问题标题】:Custom sort analyser for Elastic search用于弹性搜索的自定义排序分析器
【发布时间】:2016-12-27 03:00:13
【问题描述】:

我们如何在索引到弹性搜索之前对标记进行排序。 例如。我要索引

 "a b" => "ab" 
 "b a" => "ab"
 "java language" => "javalanguage"
 "requirement analysis" => "analysisrequirement"

排序后,我们将连接我们用例的所有标记。

我们如何使用自定义排序分析器来实现这一点?

编辑:因此我们针对我们的用例在弹性搜索映射上应用了几个自定义分析器。例如。我们有

token
stemming
custom_words_concatenation

我想使用分析器对单词进行排序。如下图,

token
stemming
sort
custom_words_concatenation

【问题讨论】:

  • 这些标记是简单的字母还是单词?
  • 您提供的信息不足以理解您的用例。例如:您可以使用“boy apple”=>“appleboy”,您可能希望根据每个标记的字母顺序进行连接。添加/解释所有用例
  • @val 对单词进行排序...在标记化之后

标签: elasticsearch


【解决方案1】:

创建了一个自定义排序分析器。

链接githubhttps://github.com/ranjeet-floyd/plugin-sortchar.git

将输入字符串转换为 char[] 并使用 Arrays.sort 进行排序。

例如:

requirement analysis  =>  aaeeeiilmnnqrrsstuy
analysis requirement => aaeeeiilmnnqrrsstuy

【讨论】:

    猜你喜欢
    • 2017-06-26
    • 1970-01-01
    • 1970-01-01
    • 2016-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多