Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 弹性搜索中的数组匹配_Arrays_Postgresql_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch - Fatal编程技术网 elasticsearch,Arrays,Postgresql,elasticsearch" /> elasticsearch,Arrays,Postgresql,elasticsearch" />

Arrays 弹性搜索中的数组匹配

Arrays 弹性搜索中的数组匹配,arrays,postgresql,elasticsearch,Arrays,Postgresql,elasticsearch,我一直在尝试重新编写一些声学ID代码,我试图找出ElasticSearch是否有一种模糊匹配int数组的方法。具体来说,假设我有我的搜索数组:{1,2,3},在ES中,我存储我的参考文档: 1: {3,4,5,6} 2: {1,1,1,2,4,3,4} 3: {6,7,8} 4: {1,1,2,3} 我希望得到4作为最佳匹配(它正好包含1,2,3),然后是2(它包含我的搜索,但其中有一个额外的int),然后是1(它有一个3),但不是3 当前的声学ID代码在postgres中使用一些定制的C代码

我一直在尝试重新编写一些声学ID代码,我试图找出ElasticSearch是否有一种模糊匹配int数组的方法。具体来说,假设我有我的搜索数组:
{1,2,3}
,在ES中,我存储我的参考文档:

1: {3,4,5,6}
2: {1,1,1,2,4,3,4}
3: {6,7,8}
4: {1,1,2,3}
我希望得到4作为最佳匹配(它正好包含1,2,3),然后是2(它包含我的搜索,但其中有一个额外的int),然后是1(它有一个3),但不是3

当前的声学ID代码在postgres中使用一些定制的C代码实现了这一点——如果它对上下文有用,可以在这里找到

实际上,我打算对这些数组中的~100GB进行索引,每个数组包含~100个整数。ES能否处理此类工作,并提供合理的性能水平

您是否尝试过向我们介绍Elasticsearch。此查询将返回所需的文档

但是,在整数数组上使用它将提供不同的排序,因为fieldnorm不会与整数字段一起存储。 要获得所需的排序,只需将整数数组存储为字符串数组并使用以下术语查询即可:

"query": {
    "terms": {
      "ids": [
        "1",
        "2",
        "3"
      ]
    }
  }