如何存储日志数据?

时间:2012-02-06 07:23:51

标签: mysql logging

我已经构建了应用程序,它随机填充,我想收集各种我希望在图表中显示的统计数据。我的问题是我不知道如何将数据存储在数据库中,除了将每个日志写入新行,这看起来非常低效。

示例数据(平均5分钟):

  • 用户数
  • 在线用户数
  • 行动次数

存储此信息的最佳方式是什么?我是否需要一个单独的表来记录我正在记录的东西,或者它们都可以进入一个表中?

1 个答案:

答案 0 :(得分:2)

通常您不需要保留所有时间的全分辨率数据,您可以定期将其重新处理为较低分辨率的数据以节省空间。例如,您可以存储一天的全分辨率(平均5分钟),但会定期将该数据重新平均为1小时箱/ 1天箱/ 1个月箱/等,同时还会剔除数据。

这使您可以获得所需的数据,以便在不同的时间范围(小时,天,周,月等)上显示活动的精美图表,同时将行数限制为应用程序所需的行数。

还有出色的应用程序来存储和显示时间序列数据。我会想到MRTGRRDTool。请参阅本教程以获得美食: rrdtutorial