我有一个待办事项列表应用程序(使用Django 1.5和MySQL),其中任务可以与另一个用户共享。因此,用户可以拥有个人任务和共享任务。共享任务将是一小部分(我猜大约占用户总任务的30%)
对于共享任务,我想保留一个日志,以便连接到该任务的用户可以知道谁做了哪些更改。 为此,我正在考虑为每个共享任务保留一个日志文件。每当任何用户进行更改时,它都会附加到该文件中。
我的问题是 - 我应该通过文件存储来实现,还是应该将其保存在数据库中?
请注意以下几点 -
提前致谢!
答案 0 :(得分:2)
以便连接到该任务的用户可以知道谁做了哪些更改
这会将有问题的数据从系统级日志记录更改为应用程序可见数据。因此,它可能属于应用程序的数据库。这样也可以更轻松地过滤日志数据以进行显示。例如,如果要显示项目X的所有历史事件,则可以轻松查询与Items表具有外键关系的数据库表。从文件中读取数据并手动过滤将是不必要的困难。
附注:“审计数据”或“历史数据”可能是一个更好的术语,以区别于系统日志记录,例如错误日志。
答案 1 :(得分:0)
文件系统也可以被认为是一个数据库,但在这里你主要是比较文件系统和MySQL,一个关系数据库。我会在关系数据库中执行此操作有几个原因:
如果您已经设置了关系数据库,我认为存储在文件系统上没有任何好处。