elasticsearch,Sorting,elasticsearch" /> elasticsearch,Sorting,elasticsearch" />

Sorting 对SQL Server和;弹性搜索

Sorting 对SQL Server和;弹性搜索,sorting,elasticsearch,Sorting,elasticsearch,我们正在使用ElasticSearch实现一个仅用于搜索的解决方案,以从SQL Server数据库中移除一些负载 我在这里遇到的问题是,当我在SQL Server上对文档进行排序时,其顺序与ElasticSearch中的顺序不同 结果: SQL Server排序为:-!#和@u0 1 a b ElasticSearch排序:!#&-0 1@A b 我排序的字段的映射: description": { "type": "nested", "properties": { "notA

我们正在使用ElasticSearch实现一个仅用于搜索的解决方案,以从SQL Server数据库中移除一些负载

我在这里遇到的问题是,当我在SQL Server上对文档进行排序时,其顺序与ElasticSearch中的顺序不同

结果:

SQL Server排序为:-!#和@u0 1 a b

ElasticSearch排序:!#&-0 1@A b

我排序的字段的映射:

description": 
{
  "type": "nested",
  "properties": {
    "notAnalyzed": 
    {
      "analyzer": "ipStrictAnalyzer",
      "type": "string"
    },
    "analyzed":
    {
      "analyzer": "ipAnalyzer",
      "type": "string"
    }
}
分析仪:

"ipStrictAnalyzer": 
{
  "filter": ["lowercase","trim","ipSynonym"],
  "type": "custom",
  "tokenizer": "ipStrictTokenizer"
}
标记器:

"ipStrictTokenizer": 
{
  "type": "keyword"
}
ipSynonym过滤器现在实际上只是一个带有空文件的同义词过滤器

"ipSynonym": 
{
  "type": "synonym",
  "synonyms_path": "synonyms.txt"
}
我发送的订单:

"sort": 
[
{
  "description.notAnalyzed": {
    "order": "desc"
  }
}
],
我们可以定制吗

提前感谢,,
Matthias。

由于弹性搜索排序取决于字段类型和分析器,请添加更多详细信息。这些信息足够吗?谢谢似乎
ipSynonym
过滤器正在改变搜索结果,因为正常排序应该与数据库排序匹配,因为两者都必须使用unicode(?)编码。我建议你删除过滤器和分析器。你能分享你的
ipSynonym
filter的定义吗?添加的信息。没有过滤器和分析仪,我没有时间进行测试。当我能做到这一点时,我会花时间。你能添加更多细节吗?弹性搜索排序取决于字段和分析器的类型。这些信息足够吗?谢谢似乎
ipSynonym
过滤器正在改变搜索结果,因为正常排序应该与数据库排序匹配,因为两者都必须使用unicode(?)编码。我建议你删除过滤器和分析器。你能分享你的
ipSynonym
filter的定义吗?添加的信息。没有过滤器和分析仪,我没有时间进行测试。我会花时间的,当我能做到这一点。