我应该使用什么样的数据模型来存储历史数据?
我正在使用 RoR 来测试设备和omniauth 集成。 我现在有一个模型,其中包含一个用户以及属于该用户的 FacebookUser 和 TwitterUser。
我现在可以将来自 Graph API 或 Twitter API 的数据存储在我的对象中,但我的问题是关于历史数据的。如果我想做一种 twittercounter.com 并存储关注者、推文等的历史记录。最好的做法是什么?
什么样的数据模型?我应该多久更新一次数据以及我应该保留哪些部分?
感谢您的帮助。
I'm hacking around with RoR to test devise and omniauth integration.
I now have a model with a User and a FacebookUser and TwitterUser that belong to a User.
I can now store data from the Graph API or Twitter API in my objects, but my question is about historical data. If I want to do a kind of twittercounter.com and store history of followers, tweets, etc. What is the best practice to do that ?
What kind of data model ? How often should I update the data and what part should I keep ?
Thanks for your help.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
首先,您永远不应该存储更新行的完整副本。
一般来说,您很可能会坚持使用像版本控制系统那样保存更改的方法:保存操作和差异。
有一种将表的历史记录保存在另一个表中的模型。您只需稍作修改即可在您的应用程序中实现它。您可以在这篇精彩读物中找到更多内容。
First of all, you should never store a complete copy of an updated row.
In general, most likely you'll stick with approach that implies saving changes as revision control systems do: saving action and differences.
There is a model of saving history of table in another table. You can implement it in your app with little modifications. You can find more in this great read.