有没有办法使用elasticsearch搜索另一个多边形内的多边形?
如果没有,是否可以使用Solr或其他系统?
答案 0 :(得分:2)
Elasticsearch上完全可能:
我只是在考虑自己实施它,我唯一担心的是在高流量网站上的表现,所以我们会看到会发生什么。
正如这篇文章不久之前,了解你最终做的事情会很有趣......
答案 1 :(得分:1)
非常确定ES不可能。
使用Solr +一些插件,我认为这是可能的,但我自己没有尝试过。 看看https://github.com/spatial4j/spatial4j
地理空间1知道的形状类形状:点,矩形, 圆,多边形(通过JTS)形状交叉逻辑,产生: 不相交,包含,内,交叉边界框区域计算
似乎spatial4J已经包含在Solr中。请参阅以下链接中的David Smiley的回复(Spatial4J的作者和Solr的提交者) How to install spatial4j into solr4
答案 2 :(得分:1)
使用Solr 4.3它就成了可能;我刚刚在几周前完成了它的工作,我对它非常兴奋。要了解如何使用新的Solr 4空间字段,请参阅:http://wiki.apache.org/solr/SolrAdaptersForLuceneSpatial4现在您可以使用“IsWithin”和“Contains”谓词了解新的内容。还有“IsDisjointTo”。根据你的问题,我不清楚你想要哪一个。想象一个由3部分组成的句子,其中第一部分/左部分是您的索引数据,然后是空间谓词,然后是您的查询形状。因此,如果要搜索查询形状为WITHIN的索引形状,请使用“IsWithin”。我正要更新维基以显示这些谓词。