【发布时间】:2012-10-23 05:44:11
【问题描述】:
我有一个关于 GPS 跟踪应用程序的数据模型问题。当有人使用我们的应用程序时,它会每 5 秒保存一次纬度、经度、当前速度、时间戳和燃烧卡路里。锻炼完成后,锻炼的平均速度、总时间/距离和消耗的卡路里将存储在数据库中。到目前为止一切顺利..
我们还想要存储每 5 秒保存一次的数据,以便我们稍后可以利用它来绘制锻炼的图形/图表。
我们应该如何将这么多的数据存储在数据库中?如果有人跑了一个小时,一次锻炼可以包含 720 行。可能是单行中的序列化/gz 压缩数据数组。我知道这是不好的做法..
关系型一对/多对多模型将被撤消?我知道 MySQL 可以轻松处理大量数据,但我们正在谈论 720 * 锻炼 每周两次 * 7000 个用户 = 每周超过 1000 万行。 (当然,我们只能存储每 10 秒的数据以将行数减半,或者每 20 秒等……但随着时间的推移,它仍然会是大量数据+图表的准确性会降低)
你会怎么做? 提前感谢您的意见!
【问题讨论】:
-
这样的问题绝对应该在 Programmers.se 上提出,因为它们太宽泛,而且基于意见的方式无法支持 SO 格式。几乎任何以“最佳实践”开头的问题都可能被视为与本网站无关。看看my example question。另外,given answer 是对您自己的问题的一个有趣的观点,在这里提出。
-
@trejder 在引用其他网站时,通常值得指出的是cross-posting is frowned upon
-
@gnat 当然,你是对的。对我来说,“问那里”是如此明显,并且很容易缩小到“那里问,在这里删除”,以至于我经常忘记这一点。谢谢你指出这一点。
标签: mysql database mapping datamodel