我在想Google Analytics(分析)數據庫的設計,他們如何以小時爲單位處理巨大的價值,甚至在幾分鐘內。谷歌分析數據庫設計
比方說,他們有1億用戶,幾乎每個用戶每分鐘都有300個計數器。對於一個用戶,300個計數器在一小時內有18000行。有一天它是432K行和近300萬行。
我還以爲他們不使用關係數據庫,但不知道它...
是否有關於它的任何建議?
問候,
我在想Google Analytics(分析)數據庫的設計,他們如何以小時爲單位處理巨大的價值,甚至在幾分鐘內。谷歌分析數據庫設計
比方說,他們有1億用戶,幾乎每個用戶每分鐘都有300個計數器。對於一個用戶,300個計數器在一小時內有18000行。有一天它是432K行和近300萬行。
我還以爲他們不使用關係數據庫,但不知道它...
是否有關於它的任何建議?
問候,
你是對的,他們不使用關係數據庫。
高可擴展性總結了Google的架構here。它不直接討論分析,但它顯示了BigTable如何適應整個基礎架構。我不確定Google架構的詳細信息是否可用 - 正如文章中所說的「基礎架構可以成爲一種競爭優勢」 - 但我猜測它比常規數據模型更緊密地綁定到硬件實現上。
我敢肯定,谷歌使用定製開發的數據庫稱爲BigTable的(http://en.wikipedia.org/wiki/BigTable) – Kane 2009-09-15 10:20:37
谷歌表示: #的BigTable是建立在GFS之上的分佈式哈希機制(谷歌文件系統)。它不是一個關係數據庫。它不支持連接或SQL類型查詢。 #它提供查找機制來通過密鑰訪問結構化數據。 GFS存儲不透明的數據,許多應用程序需要具有結構數據。 從這個評論關鍵字是重要的。查找mechanishm只處理一個鍵。 似乎它裏面有一個非常大的HashTable ... – Melih 2009-09-15 11:46:40