elasticsearch 使用Solr空间搜索在近时间范围内查找彼此最近的点
场景:我有一个带有位置记录的表,位置记录有一个时间戳和一个latlng字段,我需要找到最近的点,它们之间的最大距离为100米,时间范围为(比如)1小时
elasticsearch 使用Solr空间搜索在近时间范围内查找彼此最近的点,
elasticsearch,search,solr,
elasticsearch,Search,Solr,场景:我有一个带有位置记录的表,位置记录有一个时间戳和一个latlng字段,我需要找到最近的点,它们之间的最大距离为100米,时间范围为(比如)1小时 我试着用Solr的LatLonPointSpatialField索引latlng字段,然后在时间戳字段上做一些刻面,然后取latlng的每个点,用距离为0.01的点和做{!geofilt},但正如你所看到的,这将非常缓慢,因为我必须取每个点,并用时间戳范围来尝试。我需要做的就是在时间戳范围内找到最接近的点。我不知道是否有更好的方法,但我觉得Sol
我试着用Solr的LatLonPointSpatialField索引latlng字段,然后在时间戳字段上做一些刻面,然后取latlng的每个点,用距离为0.01的点和做{!geofilt},但正如你所看到的,这将非常缓慢,因为我必须取每个点,并用时间戳范围来尝试。我需要做的就是在时间戳范围内找到最接近的点。我不知道是否有更好的方法,但我觉得Solr中有一些东西可以帮助我解决问题,但我错过了。您试图做的是某种结果聚类,Solr确实必须这样做,但我怀疑它不会开箱即用。也许你可以为自己定制叉子
更有希望的方法是创建一个满足您所有需要的应用程序。我很有信心您拥有构建整个系统所需的所有功能。为了让htis更清晰,我想我需要将问题分解为更小的问题。第一个简单的问题是需要从多个latlng记录中找到彼此最近的点。第二种方法是根据时间戳对它们进行排序。