保存位置位置充斥数据库

时间:2012-10-11 00:10:03

标签: android database-design gps gis

我开发了一个andoroid应用程序,用于保存跑步者赛道。 因为它是一个正在运行的应用程序,我需要每10秒报告一次位置。 这意味着lang lat每10秒保存为设备上sqlite的本地副本 并使用webservice调用在Web服务器上。

该应用程序的目的是显示每个特定时间的确切位置 以及人的速度。

我的朋友和我安装了应用程序3周,几乎每天都使用它几个小时 我的数据库充斥着大约6,000,000条记录 - 每条记录都有记录 我将无法继续运行它,因为服务器的空间将会结束。

有没有其他方法可以保存原型或任何其他架构或算法 让我知道人在轨道的任何一点和他的速度的确切位置?

2 个答案:

答案 0 :(得分:0)

你不应该只有: 3(周)* 7(天)* 3(小时)* 60(分钟)* 6(间隔10秒)=每位跑者22680条记录?

一种方法可能是将运行数据存储为字符串,并按照“运行”(或每小时一次,或n分钟)以db存储一条记录

字符串可以格式化为仅存储起始位置和偏移量,如:“36.234234234,-114.3434434,0.004,0.006,0.002,0.000 ......

答案 1 :(得分:0)

有多种方法可以减少跟踪日志的空间需求。基本上你可以将附近的位置聚类和过滤到一个点,并且alsomif记录器在两个或多个后续读取的同一点上停留,你可以在位置记录上增加一个计数器,而不是创建一个新的。

时间戳记开头,跳过其余部分,您可以计算时间信息,因为阅读是按固定间隔完成的。

您可以查看以下pdf以获取更多信息。

[http://www.activelivingresearch.org/files/DataReduction_GPS_Workshop.pdf]