用于存储Internet使用统计数据的Django模型
我正在编写一个基于Django的小型前端来收集和绘制互联网使用统计数据 目前,我们从ISP获得每月文本文件,显示每5分钟间隔的平均字节/秒。例如:用于存储Internet使用统计数据的Django模型,django,models,data-visualization,Django,Models,Data Visualization,我正在编写一个基于Django的小型前端来收集和绘制互联网使用统计数据 目前,我们从ISP获得每月文本文件,显示每5分钟间隔的平均字节/秒。例如: Date Time In Out 28.03.2010 00:00:00 204304 228922 28.03.2010 00:05:00 104231 222998 28.03.2010 00:10:00 264292 210194 28.03.2010 00:15:00 212982 213048 2
Date Time In Out
28.03.2010 00:00:00 204304 228922
28.03.2010 00:05:00 104231 222998
28.03.2010 00:10:00 264292 210194
28.03.2010 00:15:00 212982 213048
28.03.2010 00:20:00 90543 139082
28.03.2010 00:25:00 71620 175556
28.03.2010 00:30:00 65382 207898
28.03.2010 00:35:00 68676 213925
28.03.2010 00:40:00 62974 204304
28.03.2010 00:45:00 54341 208427
28.03.2010 00:50:00 98822 155641
我们将这些数字乘以300(5x60),得到每个5分钟块的总字节输入/输出
(我真的很好奇,为什么ISP会给我们这样的平均字节/秒,而不是给我们在5分钟的时间间隔内消耗的总字节数?对任何知情的人来说,这有什么技术基础吗?)
然后,把这些数据汇总起来,得到每天或每小时的总数,并用图表表示出来,就相当简单了
我的问题很简单——在Django中,存储这些数据的有效模型是什么
输入/输出的总字节数实际上不属于单个时间点,它涵盖一个时段。将每个数据点存储为开始和结束时间,然后存储总字节输入/输出,这有多大意义?这样做感觉更干净,但仅仅存储一个日期/时间并假设它是在它之前/之后的五分钟间隔内(老实说,我甚至不确定这两个时间中的哪一个是)是否不好
或者有没有更聪明/高效的方法来存储这些数据?最终的结果是我们想要做一些事情,比如绘制每小时或每天(或任意时间段)的总数,以及绘制实际流量等
我试图找到一种有效的存储数据的方法,这也很容易查询上述统计数据
还有,我们可以在这里使用哪些特别好的可视化/统计数据
干杯,
VictorRRDTool设计用于存储和绘制此类数据
如果您查看pypi,也可以使用两种不同的python包装器。RRDTool基本上是为存储和绘制此类数据而设计的
如果您查看pypi,也可以使用两种不同的python包装器,我会考虑使用一些非关系的东西来存储它们,例如Redis或MongoDB。两者都有很好的python客户端lib,我会考虑使用一些非关系的东西来存储它们,比如Redis或MongoDB。两者都有很好的python客户机LIB可用。