如何在数据库中连续“移动”lat / lon对?

时间:2011-04-22 00:40:35

标签: database cron geolocation rdbms launchd

我正在设计一个项目,我将在数据库中存储(可能有数十万个)lat / lon对。这些对与其他数据相关联。问题在于,除了用户操纵这些数据外,我还希望这些位置随时间而变化。我最初的本能是设置一个cron作业,每天将每个纬度/经度调整一定量,但我意识到这样的操作会非常低效。

那么,关于如何有效地调整一堆纬度/经度对的任何想法?到目前为止,我最好的想法是将“最后更改”的时间戳与每对关联,并且每隔几秒就会运行一个进程,使用最旧的时间戳抓取n(可能订购100?1000?)对,调整这些对并更新时间。这样我就不断移动少量数据,而不是每天移动一次压倒性的数据。不过,我仍然不相信这是最好的方式。

提前致谢!

2 个答案:

答案 0 :(得分:1)

将添加到每个对的数量存储在其他位置,而不是直接使用数据库中的值,每当您在检索时添加此存储的偏移量,并在插入时将其减去。

答案 1 :(得分:0)

你的直觉是正确的,这可能是逐渐调整纬度经度的最佳方式。更新查询不应该太费力地破坏服务器,而且你不动 - 只是改变?