Web Analytics的最佳数据存储

时间:2012-02-18 11:43:49

标签: mysql nosql analytics archive database-engine

我想编写一个自定义网络分析和行动跟踪解决方案,并将其用作反馈机制,例如。用于搜索或内容建议。

如果仅用于短期数据,我会使用一些具有有限数据保留的NOSQL引擎。但理想情况下,我希望保持悠久的历史。

我过去看过的一个不错的方法是使用mysql进行存储,每月一个表,旧表转换为MySQL ARCHIVE格式。为了浏览存档和聚合数据,实现了MySQL视图。

我的问题: Google Analytics等广告如何存储数据?在结构化数据库或其他东西。您建议以哪种方式避免长期记忆占用,同时保持查询可能性灵活?

(我不担心将速度写入数据库,这将在异步批处理中发生而不是实时)

2 个答案:

答案 0 :(得分:2)

Google使用自己的Big Table实施来存储其数据。如果您对大数据解决方案感兴趣并使用大数据,您应该看看这个。对于基于Google Big Table构建的开源实现,请查看Hbase / Hadoop。我会在一分钟内回复一些链接。

对此类数据进行的分析本身利用了map / reduce操作。

答案 1 :(得分:1)

我认为Urchin最初使用的是自定义的多维数据库,但我不确定Google Analytics是否仍在使用它。无论如何,分析系统通常使用基于Cube的模式进行快速OLAP浏览。

我知道Microsoft和Oracle在他们的数据库工具中有这种类型的功能,但它们非常昂贵。我不知道任何开源多维数据集数据库;但是,如果您使用的是Java,我认为Mondrian的工作方式相同,但使用关系数据库进行存储。