每个网页视图的数据库条目(分析)

时间:2012-06-12 11:56:35

标签: java sql playframework

我正在玩(学习经验),使用Play编写分析系统!框架(2)(爪哇),

我想编写有效的代码,因此我很难决定以下内容:

对于页面到达的每个视图,都会添加一条记录,指定网站(example.org),页面(/index.html)和查看日期。你可以猜到,行数将是巨大的。 为了使用数据,我选择网站为“example.org”的所有行,循环结果以构建一个哈希映射,其中包含日期和该日期的视图数量,然后使用它来构建图形。

必须有更好的方法来做到这一点,

例如,不是每个视图都有一行,而是更新现有记录,将一个视图添加到记录中。

任何帮助将不胜感激。

谢谢

2 个答案:

答案 0 :(得分:0)

您可以在WHERE子句中添加更多条件(如日期),然后可以对结果执行Count。这样您就可以直接获得数据库的结果。

查询看起来像:

 SELECT COUNT(*) 
 FROM YOUR_TABLE
 WHERE SITE = 'thesite'
       AND DATE = '<date>'
 GROUP BY SITE, DATE

答案 1 :(得分:0)

  

必须有更好的方法来做到这一点,

Web服务器记录HTML请求。大多数分析系统都使用Web服务器日志。

既然您提到要学习这些内容,那么您将以最灵活的方式收集统计数据。

我唯一的建议是从您的Web应用程序正在写入的统计信息表中删除所有索引。制作统计信息表的副本以生成统计信息。该副本将具有所有必要的索引。

这样,您可以获得最快的写入次数,因为没有要更新的索引。

如果需要,您可以在写表上使用主索引或聚簇索引。