gpt4 book ai didi

lucene - 使用 Lucene 提高基于位置的搜索的性能

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

我将 Lucene 用于使用 .net 的求职门户。
我在以下用例中面临一些与性能相关的问题。
用例是:
在找工作时,用户可以选择工作地点(例如:亚特兰大,GA)并选择径向距离(例如 50 英里)。从 Lucene 返回工作搜索结果所需的时间非常长。

仅供引用,我们正在维护一个 sql server 2005 数据库,我们在其中存储基于美国和加拿大的城市、州、经度和纬度。(共包含约 100 万条记录)。

无论如何我可以提高这个基于位置的求职的表现吗?

最佳答案

基本上,您有两种类型的搜索参数:文本和空间。
您可能可以使用一种类型来过滤从另一种类型获得的结果。
例如,对于在佐治亚州亚特兰大附近寻找 .NET 开发人员工作的人
您可以首先检索所有 .NET 开发人员作业并过滤位置,
或检索亚特兰大周围的所有工作并过滤 .NET 开发人员的工作。
我相信第一个应该更快。
您还可以将工作地点直接存储在 Lucene 中,并将它们合并到搜索中。
一个粗略的草案是:
索引:
1. 当您收到新的“通缉”广告时,使用数据库查找其地理位置。
2. 将该位置存储为广告文档中的 Lucene 字段。
恢复:
1. 根据文本匹配检索所有作业。
2. 使用几何计算来查找用户地点和工作地点之间的距离。
3. 根据距离筛选工作。

Lucene in Action有一个在精神上相似的空间搜索的例子。 A second edition正在制作中。另外,请查看 Sujit Pal's suggestions for spatial search with LucenePatrick O'Leary's framework .还有LocalluceneLocalSolr ,但我不知道他们有多成熟。

关于lucene - 使用 Lucene 提高基于位置的搜索的性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1030887/

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