有没有人知道Google Analytics中的数据是如何组织的?他们在处理海量数据时非常快速,这是什么类型的数据库结构?
有人知道Google Analytics中的数据是如何组织的吗?他们可以快速地从海量数据中进行复杂的选择,那么它使用的是什么样的数据库结构呢?请注意保留原文中的HTML标签。有没有人知道Google Analytics中的数据是如何组织的?他们在处理海量数据时非常快速,这是什么类型的数据库结构?
有人知道Google Analytics中的数据是如何组织的吗?他们可以快速地从海量数据中进行复杂的选择,那么它使用的是什么样的数据库结构呢?请注意保留原文中的HTML标签。http://www.advanced-web-metrics.com/blog/2007/10/16/what-is-urchin/
这段话的意思是:
[省略] ... 仍然使用专有数据库来存储报告数据,这使得自由查询有些受限,因为你必须使用Urchin开发的工具而不是更灵活的SQL工具。
http://www.urchinexperts.com/software/faq/#ques45
Urchin使用专有的平面文件数据库来存储报告数据。高性能的数据库架构可以有效地处理非常高流量的网站。该数据库架构的一些好处包括:
* Small database footprint approximately 5-10% of raw logfile size
* Small number of database files required per profile (9 per month of historical reporting)
* Support for parallel processing of load-balanced webserver logs for increased performance
* Databases are standard files that are easy to back up and restore using native operating system utilitiesv
有关Urchin的更多信息
http://www.google.com/support/urchin45/bin/answer.py?answer=28737
很久以前,我曾经使用过一款跟踪器,在他们的网站上讨论了数据规范化的问题:http://www.2enetworx.com/dev/articles/statisticus5.asp。谷歌发表的论文:“Chang, Fay等人。"Bigtable: A distributed storage system for structured data."ACM Transactions on Computer Systems (TOCS) 26.2(2008)。
Bigtable被60多个谷歌产品和项目使用,包括Google Analytics,Google Finance,Orkut,Personalized Search,Writely和Google Earth。
通过将维度隔离/分组到较小的立方体中,数据不会像将所有数据放入单个立方体中一样呈指数级爆炸增长。 缺点是并非所有数据组合都被允许。这一点我们知道是真实的。 例如,ga:transactionId和ga:eventCategory不能同时查询。
选择这种结构可以使数据集在经济和性能方面具有良好的可扩展性。
Google Analytics 运行在 'Mesa: Geo-Replicated, Near Real-Time, Scalable DataWarehousing' 上。 https://storage.googleapis.com/pub-tools-public-publication-data/pdf/42851.pdf
"Mesa 是一个高度可扩展的分析数据仓库系统,用于存储与 Google 的互联网广告业务相关的关键测量数据。"