雲端運算背後的秘密(3)-BigTable

來源:互聯網
上載者:User

 

由於在Google的資料中心儲存PB級以上的非關係型資料時候,比如網頁和地理資料等,為了更好地儲存和利用這些資料,Google開發了一套資料庫系統,名為“BigTable”。

技術概覽

從技術來講,BigTable不是一個傳統的關係型的資料庫,也不支援類似關聯(join)這樣進階的SQL操作,取而代之的是多級映射的資料結構,並支援大規模資料處理、高容錯性和自我管理等特性,提供PB級的儲存能力,使用結構化的檔案來儲存資料,並整個叢集每秒可處理數百萬的讀寫操作。

什麼是多級映射的資料結構呢?就是一個稀疏的、多維的和排序的Map,每個Cell(儲存格)由行關鍵字、列關鍵字和時間戳記來進行三維定位.Cell的內容本身就是一個字串,比如,儲存每個網頁的內容。在中, 反向的URL “com.cnn.www”是這行的關鍵字,“contents”這列儲存了多個版本的網頁內容,每個版本都有一個時間戳記。BigTable還提供一個用於將多個相似的列整合至一起的Column Family(列組)機制,比如,下面“anchor”這個Column Family就有“anchor: cnnsi.com”和“anchhor:my.look.ca”這個兩個列。通過Column Family這個概念,使得表可以輕鬆地橫向擴充。

圖1. BigTable資料模型圖表

在結構上,BigTable基於GFSDistributed File System和Chubby分布式鎖服務。BigTable主要分為兩部分:其一是Master節點,用來處理中繼資料相關的操作並支援負載平衡。其二是Tablet節點,主要用於儲存資料庫的分區tablet,並提供相應的資料訪問,同時tablet是基於名為SSTable的格式,對壓縮有很好的支援。為其具體的架構圖:

圖2. BigTable架構圖

相關產品

和之前介紹的MapReduce和GFS一樣,BigTable在開源界也有很多類似的產品,最著名的兩個莫過於屬於Hadoop系列的Hbase和來自於Facebook的Cassandra。Hbase的特色在於其完全繼承了BigTable的設計,所以它在MapReduce和海量資料存放區這兩方面支援地非常好,而Cassandra的則更傾向於成為全功能型資料庫。除了這兩個產品之外,我個人也設計一款類BigTable的資料庫,名為YunTable,意為“雲時代的BigTable”,它的目標是做一個BigTable的精簡版,並使其更適合雲環境,現在已經發布其0.8版,本已基本實現BigTable的準系統,官方網站是http://code.google.com/p/yuntable/,希望大家能多多關注。

實際用例

BigTable正在為Google六十多種產品和項目提供儲存和擷取結構化資料的支撐平台,其中包括有Google Print, Orkut,Google Maps,Google Earth和Blogger等,而且在Google內部至少運行著500個BigTable叢集。

下一代的BigTable

隨著Google內部服務對需求的不斷提高和技術的不斷地發展,導致原先的BigTable已經無法滿足使用者的需求,而Google也正在開發下一代BigTable,名為“Spanner(扳手)”,它主要有下面這些BigTable所無法支援的特性:

    1. 支援多種資料結構,比如table,familie,group和coprocessor等。
    2. 基於分層目錄和行的細粒度的複製和許可權管理。
    3. 支援跨資料中心的強一致性和弱一致性控制。
    4. 基於Paxos演算法的強一致性副本同步,並支援分散式交易。
    5. 提供許多自動化操作。
    6. 強大的擴充能力,能支援百萬台伺服器層級的叢集。
    7. 使用者可以自訂諸如延遲和複製次數等重要參數以適應不同的需求。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.