gpt4 book ai didi

performance - Sphinx中 `@geodist`排序/搜索是如何实现的?

转载 作者:行者123 更新时间:2023-12-03 07:44:19 26 4
gpt4 key购买 nike

@geodist 搜索是否使用任何类型的地理空间索引(如 R 树)来提高性能?

我对 anchor 恒定并且每个文档都有自己的以弧度存储的纬度/经度对的情况感兴趣。

我试图从 Sphinx 源代码中找出它,但未能找到任何空间索引的提及。如果地理空间搜索不使用索引,那么性能如何保证?

如果未提供关键字,Sphinx 是否会进行全面扫描?

背景:我们有一个包含 100 多个短条目的数据集。一些新添加的项目将存储纬度/经度。每天都会添加数百万条条目。我预测大约 5-10% 的新添加条目将包含位置信息。

我们的目标是针对诸如“获取 anchor 周围 100 米半径内的所有条目”、“获取 anchor 周围 100 个最近的条目”等查询的支持位置的条目实现空间搜索,无论是否使用关键字搜索。

一些谷歌搜索返回this forum thread这建议使用基于网格的人工索引来确保性能。现在还是这样吗?

最佳答案

不,sphinx 没有任何内置的地理空间索引 - 因此是使用图 block 的原因(用于制作基本的地理空间索引:)

它实际上只是对每一行进行球面距离计算 - 全表扫描。它相当快,因为​​属性都保存在内存中。

检查来源: http://codesearch.google.com/#vqMBzkK4ih0/src/sphinxexpr.cpp&exact_package=git://github.com/squadette/sphinxsearch.git&q=cos%20sphinxsearch&type=cs&l=1186

sphinx 论坛上讨论此问题的最新帖子 http://sphinxsearch.com/forum/view.html?id=8644

关于performance - Sphinx中 `@geodist`排序/搜索是如何实现的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4819588/

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