微軟對 Yahoo! 的收購持久戰可能讓很多人都新聞疲勞了。但今天看到的這個(gè)關(guān)于 Yahoo! 的技術(shù)新聞還是值得看一下的:Size matters: Yahoo claims 2-petabyte database is world"s biggest, busiest .Yahoo! 的 VP Waqar Hasan 在文中披露 Yahoo!的數據倉庫當前容量為 2PB.用于分析每月5億的用戶(hù)訪(fǎng)問(wèn)行為,每天處理 240 億次的事件,號稱(chēng)世界上單個(gè)最大、最忙的數據庫。
盡管有的數據倉庫容量要比雅虎的大。但那些 DB 或是存儲非關(guān)系性數據,或是存儲的壓縮后的原始數據,不能進(jìn)行即時(shí)分析,雅虎之前的也有數百 T 這樣的數據。眼下 Yahoo!數據倉庫存儲的是結構化、可分析的數據。預計下一年可能膨脹到數十 PB .eBay 號稱(chēng)數據總量有 6PB ,不過(guò)根據一些消息來(lái)看,單個(gè)最大的 DB 只有 1.4 PB.
Yahoo! 在 2005 年買(mǎi)了一家叫 Mahat Technologies 的初創(chuàng )公司(就是 Waqar Hasan 操刀的),這家公司以 PostgreSQL 數據庫為基礎,開(kāi)發(fā)了一個(gè)新型 DB,其特點(diǎn)是 基于列 的而不是基于行的模式。不難理解,這樣數據寫(xiě)入的速度會(huì )慢下來(lái),但是讀取的速度會(huì )快很多「去年的俠客行上,雷鳴在演講的時(shí)候講過(guò)他在百度的時(shí)候做的一個(gè)優(yōu)化的例子。和這個(gè)思想非常相似,所以當時(shí)我說(shuō)對我"有啟發(fā)"」。Yahoo! 買(mǎi)了之后,對該產(chǎn)品進(jìn)行了持續性的改進(jìn)(內部代號: ELCARO ?) ,比如壓縮,并行處理能力加強、優(yōu)化查詢(xún)等等特性的添加改進(jìn)。而針對使用者的接口仍是 PostgreSQL .這應該也算 PostgreSQL 在頂級企業(yè)又一個(gè)成功案例。
這么大的數據庫并沒(méi)有采用傳統的 SMP 架構構建,而是采用普通 PC 作集群(用了不到 1000 臺) .很明顯這是 Share Nothing 而不是 Share Storage 的 DB 集群。通過(guò)上述獨特的設計方式,能夠對此海量數據進(jìn)行有效的分析,這是個(gè)不小的技術(shù)革新,也是與 Google Map Reduce 完全不同的計算模式。
讓人感慨的是 關(guān)于世界上的超大數據庫 一文中羅列的數據,現在看起來(lái)已經(jīng)并不驚人了。以前總說(shuō)信息爆炸,這個(gè)時(shí)代剛剛來(lái)臨。
相關(guān)閱讀