我有一个事件数据库(在英国)和他们的邮政编码(邮政编码)。如何根据驾驶距离实时搜索结果?
用户将输入他们的邮政编码到网页中,然后按回车,一些真棒算法/系统将随后返回用户邮政编码的x英里驾驶距离内的事件列表。
这是可能的实时?
我考虑的解决方案是:
缓存(其中4100)邮政编码区域之间的所有距离和使用。由于邮编区域只有几英里,所以不太好,但现在可以。最大的问题是我需要大约8403000次旅行距离,谷歌地图有使用限制,Map Quest的API速度慢,不适合查找邮编,我不想对它进行DOS攻击。
缓存事件邮编和我的邮编区域列表之间的所有距离。仍然不完善,因为将会有1000个事件,并且在添加事件时查找距离将会花费太长时间。
限制在乌鸦飞行时在100或200英里范围内的旅程高速缓存的数量。我没有调查过这个,但考虑到英国的规模,它可以减少每次活动所需的旅程总数1/2或甚至2/3 ...哪个更好,但仍然需要很长时间来查找添加事件时。
存储某种邮政编码位置的图形,并显示下一个邮政编码区域的行程距离,并使用类似于A *的内容快速搜索关闭邮政编码。问题在于我没有时间/可用性来实现和托管这样的系统。
有没有更好的解决方案?我错过了明显的东西吗?
编辑: MapQuest似乎support driving distance search使用custom POI data sets。
不是proximity search的副本,因为我想驾驶距离接近,而不是纬度/经度接近度。
只是好奇,什么数据限制原来是客户的问题? – jharahush 2012-03-09 16:12:36
每天5000次搜索。尽管有另外一个想法,那就是当你添加一个事件(即找到最近的邮政编码)时可以反向搜索,这样可以达到5000次/天的限制。 – Jon 2012-03-12 15:32:10