雲計算背後的秘密(3) BigTable

2021-08-25 13:17:07 字數 1778 閱讀 2229

由於在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基於gfs分布式檔案系統和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的基本功能,官方站點是希望大家能多多關注。

bigtable正在為google六十多種產品和專案提供儲存和獲取結構化資料的支撐平台,其中包括有google print, orkut,google maps,google earth和blogger等,而且在google內部至少執行著500個bigtable集群。

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

支援多種資料結構,比如table,familie,group和coprocessor等。

基於分層目錄和行的細粒度的複製和許可權管理。

支援跨資料中心的強一致性和弱一致性控制。

基於paxos演算法的強一致性副本同步,並支援分布式事務。

提供許多自動化操作。

強大的擴充套件能力,能支援百萬臺伺服器級別的集群。

使用者可以自定義諸如延遲和複製次數等重要引數以適應不同的需求。

雲計算背後的秘密(2) GFS

由於週日linode在加州機房出現停電事故,所以這兩天peopleyun沒法訪問,在這裡向大家表示歉意 由於搜尋引擎需要處理海量的資料,所以google的兩位創始人larry page和sergey brin在創業初期設計一套名為 bigfiles 的檔案系統,而gfs 全稱為 google fil...

大資料播報 資料悄悄告訴你「私有雲背後的秘密」

資料1.未來24個月43.5 的企業級使用者將構建自己的私有雲 從私有雲目前部署和未來趨勢可以看出,有超過1 4的使用者已經部署了私有雲,而另有近1 3的使用者會在未來24個月內部署自己的私有雲,而這當中企業級使用者佔的比例明顯高於中小企業。如此看來,對於企業級使用者而言,未來私有雲仍然是企業雲計算...

雲計算牽手大資料 背後是IT與業務的融合

一年又一年,雲計算大會在中國走過第六個年頭,這六年裡也正是雲計算從進入中國,到逐漸被接受到開始落地的六年。2009年,第一屆大會還停留在討論雲計算領域和範疇 2010年,第二屆大會界定雲計算熱點技術和應用 2011年,第三屆大會討論與傳統運營商關係,分享雲計算實踐經驗 2012年,第四屆大會定義 雲...