【发布时间】:2010-07-21 21:44:53
【问题描述】:
我想知道 Google Analytics 数据库的设计,他们如何处理每小时甚至几分钟的巨大价值。
假设他们有 1 亿用户,几乎每个用户每分钟都有 300 个计数器。对于一个用户,300 个计数器在一小时内有 18000 行。一天有 432K 行和近 300 万行。
我以为他们没有使用关系数据库,但不确定...
有什么建议吗?
问候,
【问题讨论】:
-
我很确定 Google 使用了一个名为 BigTable (en.wikipedia.org/wiki/BigTable) 的自定义开发数据库
-
google 说:#BigTable 是建立在 GFS(Google 文件系统)之上的分布式哈希机制。它不是关系数据库。它不支持连接或 SQL 类型查询。 # 它提供了查找机制来按键访问结构化数据。 GFS 存储不透明的数据,许多应用程序需要有结构的数据。从这个评论中,关键词很重要。查找机制仅针对一个键进行处理。似乎它里面有一个非常大的哈希表......