【发布时间】:2016-08-09 23:06:55
【问题描述】:
Solr 专家,非常感谢您就我的问题提供一些建议。
我想使用 Solr 构建一个多维空间,比如说 5 个维度。在这个空间中,应该有点,例如
P1 (0.3, 0.3, 0.3, 0.3, 0.3)
P2 (0.5, 0.5, 0.5, 0.5, 0.1)
P3 (0.5, 0.1, 0.1, 0.1, 0.1)
现在我想找到离给定点最近的点,例如
Px (0.5, 0.5, 0.5, 0.5, 0.5)
我试图找到有关多维空间搜索的可靠信息。但我找不到任何有帮助的东西。
在 Solr Wiki 中有一篇关于 Spatial Search 的文章。但他们只使用二维。
所以我的问题是:Solr 是否提供了多维空间搜索的功能?
【问题讨论】:
-
我认为 Solr 无法处理二维以上的任何内容。但它可以处理表达式,您可以尝试将在 N 维空间中查找最近邻居的多种方法中的一种调整为 solr 可以理解的东西,但我认为它不会很快工作。我可以看到它工作的唯一另一种方法是将 5 个维度划分为 wolframalpha.com/input/?i=permutations+of+5+elements+taken+by+2 并将所有 20 个字段作为距离,并找到所有字段总和最小的一个
-
我担心 Solr 不提供该功能。我认为将 5 个维度划分为排列的建议无法满足我们对性能的要求。不过,感谢您的宝贵回答。
-
这在 lucene 中受支持。我仍在试图弄清楚如何在 solr 中做到这一点。 solr-start.com/javadoc/solr-lucene/org/apache/lucene/document/…
标签: solr nearest-neighbor n-dimensional