gpt4 book ai didi

solr - Solr 3.4查询GeoHash字段性能问题

转载 作者:行者123 更新时间:2023-12-02 04:02:24 25 4
gpt4 key购买 nike

我使用的Solr 3.4索引为20M个文档,每个文档都带有纬度经度点。有一个预先存在的索引字段,该字段使用名为locLatLon的solr.LatLonType。我们正在尝试将此性能与solr.GeoHashField进行比较。我向我们的架构中添加了一个新字段,该字段使用名为locLatLon_geohash的GeoHash字段,该字段由locLatLon字段中的copyField填充。我对Solr索引进行了样本加载,在其中加载了一些文档,并且能够按两个字段进行搜索(我删除了实际的Solr服务器名称)

GeoHash查询:

http://solr_server:8983/solr/select/?q=*:*&fq={!bbox%20pt=34.1,-118.3574%20sfield=locLatLon_geohash%20d=10}

地理空间查询:
http://solr_server:8983/solr/select/?q=*:*&fq={!bbox%20pt=34.1,-118.3574%20sfield=locLatLon%20d=10}

从表面上看,这两个查询应返回非常相似的结果。地理空间查询耗时62ms,并返回179k文档。 geohash查询耗时34081ms,并返回121k文档。我不太担心返回的结果数,但我担心产生这些结果所花费的时间。

阅读有关GeoHash的信息后,似乎这种查询Solr的方法应该非常快,但实际上非常慢。

我尝试通过添加debugQuery = on查询参数来进行调试,但这并不能告诉我在不求助于源代码的情况下可以使用的任何内容。以下是Solr结果的摘要,仅包含结果过滤器查询。

GeoHash调试Solr输出:
<arr name="parsed_filter_queries">
<str>ConstantScore(frange(ghhsin(str(locLatLon_geohash),literal(9q5cfxwybswp))):[0 TO 10.0])</str>
</arr>

GeoSpatial调试Solr输出:
<arr name="parsed_filter_queries">
<str>+locLatLon_0_coordinate:[34.01006796645071 TO 34.18993203354929] +locLatLon_1_coordinate:[-118.46600561233814 TO -118.24879438766185]</str>
</arr>

问题:将GeoHash类型用于Solr时,我是否没有考虑到某些问题?还有什么我应该尝试调试的吗?

最佳答案

阅读对SOLR-2155的注释。附件补丁从未应用过,票证仍未解决,但是附件zip是具有此功能的插件,因此无需实际修补SOLR。该补丁应该允许在一个文档中索引多个点,但是它似乎也实现了与geohash匹配的前缀,以进行快速边界框搜索。

关于solr - Solr 3.4查询GeoHash字段性能问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9694551/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com