例如,如果我在许多计算机上进行计算“活动”并显示该活动的汇总,那么数据库将如何存储数据?
这个?似乎太简单了。我在想这个。
ACTIVITYID COUNT
---------- -----
答案 0 :(得分:6)
如果音量不会太大,我可能会创建一个表单独记录每个事件,使用@Turnkey建议的DateTime,以及可能记录它的机器等。
LOGID (PK) ACTIVITYID SOURCE DATELOGGED
---------- ---------- ------ ----------
这将使您能够运行查询以获取当前计数,还可以使用数据来确定某个时间段内的事件和/或来自特定计算机的事件。 ActivityID上的聚簇索引应该可以提供良好的查询性能,并且表格很窄,因此插入的成本不会太高。
答案 1 :(得分:3)
我认为实际活动会在日志记录表中创建至少具有ActivityId和ActivityDate的某种类型的记录。另一列可能是创建日志条目的计算机的标识符。
然后,您可以通过在指定时间段内汇总活动记录来创建计数。
地铁。
答案 2 :(得分:0)
是的,我担心这很简单,假设您只对每项活动发生的次数感兴趣。填充完该表后,您可以通过对计数和绘图进行排序,轻松创建histogram个结果。
答案 3 :(得分:0)
我认为您可以添加一个DateTime字段,以便您可以在特定时间间隔之间报告事件,或至少知道最后一次活动计数的时间。