3 云計算配套ppt之三第2章 google云計算原理與應用二_第1頁
3 云計算配套ppt之三第2章 google云計算原理與應用二_第2頁
3 云計算配套ppt之三第2章 google云計算原理與應用二_第3頁
3 云計算配套ppt之三第2章 google云計算原理與應用二_第4頁
3 云計算配套ppt之三第2章 google云計算原理與應用二_第5頁
已閱讀5頁,還剩51頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、of 56電子工業(yè)云計算(第三版)配套課件云 計 算(第三版)CLOUD COMPUTING Third Edition第 2 章Google云計算原理與應用(二)主編:教授電子工業(yè)云計算(第三版)配套課件 本套PPT下載地址:/list.aspx?cid=20云計算的紅寶書書籍購買地址:/item.html?itemID=1469775685&p=-1(包郵且有教授親筆簽名)微信掃描二維碼關注云計算頭條2教授、博導、學科帶頭人,清華大學博士?,F(xiàn)任中國云計算專家咨詢委員會中國信息協(xié)會大數(shù)據(jù)分會副會長、工業(yè)與信息化部

2、云計算研究中心專家。主持完成科研項目25項,發(fā)表論文80余篇,出版專業(yè)書籍15本。獲部級科技進步、二等獎4項、三等獎4項。主編了國內(nèi)第一本云計算教材云計算和第一本云計算編程書籍實戰(zhàn)Hadoop。創(chuàng)辦了知名的中國云計算()和中國大數(shù)據(jù)()網(wǎng)站。曾率隊奪得2002 PennySort國際計算機排序比賽冠軍,兩次奪得全國高校科技比賽最高獎,并三次奪得清華大學科技比賽最高獎。榮獲“全軍十大學習成才標兵”(排名第一)、南京“十大杰出青年”、江蘇省“333高層次人才培養(yǎng)工程”中青年科學技術帶頭人、清華大學“學術新秀”等稱號。云計算第三版配套PPT課件of

3、 56目錄2 . 12 . 22 . 32 . 42 . 5Google文件系統(tǒng)GFS分布式數(shù)據(jù)處理Map Reduce分布式鎖服務Chubby分布式結構化數(shù)據(jù)表Bigtable分布式存儲系統(tǒng)Megastore2 . 6 大規(guī)模分布式系統(tǒng)的監(jiān)控基礎架構Dapper2 . 72 . 82 . 9海量數(shù)據(jù)的交互式分析工具Dremel內(nèi)存大數(shù)據(jù)分析系統(tǒng)Power DrillGoogle應用程序引擎2 . 3分布式鎖服務Chubby初步了解Chubby云計算第三版配套PPT課件C h u b b y 是G o o g l e 設計的提供粗粒度鎖服務的一個文件系統(tǒng), 它基于松耦合分布式系統(tǒng),解決了分布的

4、一致性問題。of556Google內(nèi)部還使用Chubby進行名字服務(Name Server)Chubby作為一個穩(wěn)定的存儲系統(tǒng)存儲包括元數(shù)據(jù)在內(nèi)的小數(shù)據(jù)通過使用Chubby的鎖服務,用戶可以確保數(shù)據(jù)操作過程中的一致性云計算第三版配套PPT課件of 562.3 分布式鎖服務Chubby2 . 3 . 12 . 3 . 22 . 3 . 32 . 3 . 42 . 3 . 52 . 3 . 6Paxos算法Chubby系統(tǒng)設計Chubby中的Paxos Chubby文件系統(tǒng)通信協(xié)議正確性與性能2 . 3分布式鎖服務ChubbyPaxos算法云計算第三版配套PPT課件of756三個 節(jié)點三個條件每

5、次只批準一個決議learners獲取并使用已經(jīng)通過的決議acceptors批準決議proposers提出決議只有決議確定被批準后learners才能獲取這個決議決議只有在被proposers提出后才能批準2 . 3分布式鎖服務Chubby系統(tǒng)的約束條件云計算第三版配套PPT課件 p1:每個acceptor只接受它得到的第一個決議。 p2:一旦某個決議得到通過,之后通過的決議必須和該決議保持一致。p2a:一旦某個決議v得到通過,之后任何acceptor再批準的決議必須是v。p2b:一旦某個決議v得到通過,之后任何proposer再提出的決議必須是v。p2c:如果一個編號為n的提案具有值v,那么存

6、在一個“多數(shù)派”,要么它們中沒有誰批準過編號小于n的任何提案,要么它們進行的最近一次批準具有值v。of856為了保證決議的唯一性,acceptors也要滿足一個約束條件:當且僅當 acceptors沒有收到編號大于n的請求時,acceptors 才批準編號為n的提案。2 . 3分布式鎖服務Chubby一個決議分為兩個階段云計算第三版配套PPT課件1準備階段2批準階段of956當proposers接收到acceptors 中的這個“多數(shù)派”的回復后, 就向回復請求的acceptors發(fā)送accept請求,在符合acceptors 一方的約束條件下,acceptors收到accept請求后即批準這

7、個請求。proposers選擇一個提案并將它的編號設為n將它發(fā)送給acceptors中的一個“多數(shù)派”acceptors 收到后,如果提案的編號大于它已經(jīng)回復的所有消息,則acceptors將自己上次的批準回復給proposers,并不再批準小于n的提案。云計算第三版配套PPT課件of 562.3 分布式鎖服務Chubby2 . 3 . 12 . 3 . 22 . 3 . 32 . 3 . 42 . 3 . 52 . 3 . 6Paxos算法Chubby系統(tǒng)設計Chubby中的Paxos Chubby文件系統(tǒng)通信協(xié)議正確性與性能2 . 3分布式鎖服務ChubbyChubby的設計目標主要有以下

8、幾點云計算第三版配套PPT課件of115663支持緩存機制支持通報機制5高擴展性支持粗粒度的建議性鎖服務2服務信息的直接存儲4高可用性和高可靠性12 . 3分布式鎖服務ChubbyChubby的基本架構Chubby單元的五個服務器云計算第三版配套PPT課件遠程過程調(diào)用客戶端進程主服務器of1256客 戶 端 應用程序Chubby程序率服務器端服務器一端稱為Chubby單元,一般是由五個稱為副本(Replica)的服務器組成的,這五個副本在配置上完全一致,并且在系統(tǒng)剛開始時處于對等地位。客 戶 端 應用程序Chubby程序率客戶端在客戶這一端每個客戶應用程序都有 一 個 Chubby 程 序 庫

9、 (Chubby Library),客戶端的所有應用都是通過調(diào)用這個庫中的相關函數(shù)來完成的。云計算第三版配套PPT課件of 562.3 分布式鎖服務Chubby2 . 3 . 12 . 3 . 22 . 3 . 32 . 3 . 42 . 3 . 52 . 3 . 6Paxos算法Chubby系統(tǒng)設計Chubby中的Paxos Chubby文件系統(tǒng)通信協(xié)議正確性與性能2 . 3分布式鎖服務Chubby單個Chubby副本結構云計算第三版配套PPT課件Chubby協(xié)議RPCChubby客戶端網(wǎng)絡副本網(wǎng)絡文件傳輸快照互換(Sanpshot exchange)Paxos協(xié)議文件I/O本地文件系統(tǒng)快照

10、of1456日志Chubby容錯的數(shù)據(jù)庫(Fault-tolerant DB)容錯的日志(Fault-tolerant Log)2 . 3分布式鎖服務Chubby容錯日志的API副本1值客戶端云計算第三版配套PPT課件副本2副本3應用程序構架值值值Paxos協(xié)議of1556響應響應響應Paxos提交云計算第三版配套PPT課件of 562.3 分布式鎖服務Chubby2 . 3 . 12 . 3 . 22 . 3 . 32 . 3 . 42 . 3 . 52 . 3 . 6Paxos算法Chubby系統(tǒng)設計Chubby中的Paxos Chubby文件系統(tǒng)通信協(xié)議正確性與性能2 . 3分布式鎖服務

11、Chubby單調(diào)遞增的64位編號云計算第三版配套PPT課件內(nèi)容生成號2文件內(nèi)容修改時該號增加。Content Generation Number3鎖生成號Lock Generation Number鎖被用戶持有時該號增加。A C L 生成號4ACL名被覆寫時該號增加。ACL Generation Numberof17561實例號I n s t a n c eN u m b e r新節(jié)點實例號必定大于舊節(jié)點的實例號。2 . 3分布式鎖服務Chubby云計算第三版配套PPT課件常用的句柄函數(shù)及作用of1856函 數(shù) 名 稱作用Open()打開某個文件或者目錄來創(chuàng)建句柄Close()關閉打開的句柄,

12、后續(xù)的任何操作都將中止Poison()中止當前未完成及后續(xù)的操作,但不關閉句柄GetContentsAndStat()返回文件內(nèi)容及元數(shù)據(jù)GetStat()只返回文件元數(shù)據(jù)ReadDir()返回子目錄名稱及其元數(shù)據(jù)SetContents()向文件中寫入內(nèi)容SetACL()設置ACL名稱Delete()如果該節(jié)點沒有子節(jié)點的話則執(zhí)行刪除操作Acquire()獲取鎖Release()釋放鎖GetSequencer()返回一個sequencerSetSequencer()將sequencer和某個句柄進行關聯(lián)CheckSequencer()檢查某個sequencer是否有效云計算第三版配套PPT課件

13、of 562.3 分布式鎖服務Chubby2 . 3 . 12 . 3 . 22 . 3 . 32 . 3 . 42 . 3 . 52 . 3 . 6Paxos算法Chubby系統(tǒng)設計Chubby中的Paxos Chubby文件系統(tǒng)通信協(xié)議正確性與性能2 . 3分布式鎖服務ChubbyChubby客戶端與服務器端的通信過程云計算第三版配套PPT課件of20562 . 3分布式鎖服務Chubby可能出現(xiàn)的兩種故障云計算第三版配套PPT課件of21562主服務器出錯1客戶端租約過期云計算第三版配套PPT課件of 562.3 分布式鎖服務Chubby2 . 3 . 12 . 3 . 22 . 3 .

14、 32 . 3 . 42 . 3 . 52 . 3 . 6Paxos算法Chubby系統(tǒng)設計Chubby中的Paxos Chubby文件系統(tǒng)通信協(xié)議正確性與性能2 . 3分布式鎖服務Chubby正確性與性能云計算第三版配套PPT課件of2356性能優(yōu)化提高主服務器默認的租約期、使用協(xié)議轉(zhuǎn)換服務將Chubby協(xié)議轉(zhuǎn)換成較簡單的協(xié)議、客戶端一致性緩存等安全性采用的是ACL形式的安全保障措施。只要不被覆寫,子節(jié)點都是直接繼承父節(jié)點的ACL名一致性每個Chubby單元是由五個副本組成的,這五個副本中需要選舉產(chǎn)生一個主服務器,這種選舉本質(zhì)上就是一個一致性問題2 . 3分布式鎖服務ChubbyChubby

15、 的 ACL 機制云計算第三版配套PPT課件of2456用戶chinacloud提出向文件CLOUD中寫入內(nèi)容的請求。CLOUD首先讀取自身的寫ACL名fun,接著在fun中查到了chinacloud這一行記錄,于是返回信息允許chinacloud對文件進行寫操作,此時chinacloud才被允許向CLOUD寫入內(nèi)容。其他的操作和寫操作類似。云計算第三版配套PPT課件of 56目錄2 . 12 . 22 . 32 . 42 . 5Google文件系統(tǒng)GFS分布式數(shù)據(jù)處理Map Reduce分布式鎖服務Chubby分布式結構化數(shù)據(jù)表Bigtable分布式存儲系統(tǒng)Megastore2 . 6 大規(guī)

16、模分布式系統(tǒng)的監(jiān)控基礎架構Dapper2 . 72 . 82 . 9海量數(shù)據(jù)的交互式分析工具Dremel內(nèi)存大數(shù)據(jù)分析系統(tǒng)Power DrillGoogle應用程序引擎25云計算第三版配套PPT課件of 562.4 分布式結構化數(shù)據(jù)表Bigtable2 . 4 . 12 . 4 . 22 . 4 . 32 . 4 . 42 . 4 . 52 . 4 . 6設計動機與目標數(shù)據(jù)模型 系統(tǒng)架構 主服務器 子表服務器性能優(yōu)化2 . 4分布式結構化數(shù)據(jù)表BigtableBigtable 的設計動機云計算第三版配套PPT課件213需要存儲的數(shù)據(jù)種類繁多商用數(shù)據(jù)庫無法滿足需求海量的服務請求of2756包括U

17、RL、網(wǎng)頁內(nèi)容、用戶的個性化設置在內(nèi)的數(shù)據(jù)都是Google需要經(jīng)常處理的一方面現(xiàn)有商用數(shù)據(jù)庫的設計著眼點在于其通用性。 另一方面對于底層系統(tǒng)的完全掌控會給后期的系統(tǒng)維護、升級帶來極大的便利Google運行著目前世界上最繁忙的系統(tǒng),它每時每刻處理的客戶服務請求數(shù)量是普通的系統(tǒng)根本無法承受的2 . 4分布式結構化數(shù)據(jù)表BigtableBigtable 應達到的基本目標云計算第三版配套PPT課件B i g t a b l e 是為了滿足一系列G o o g l e 產(chǎn)品而并非特定產(chǎn)品的存儲要求。根據(jù)需要隨時可以加入或撤銷服務器確保幾乎所有的情況下系統(tǒng)都可用底層系統(tǒng)的簡單性既可以減少系統(tǒng)出錯的概率,也

18、為上層應用的開發(fā)帶來便利of2856簡單性高可用性很強的可擴展性廣泛的適用性云計算第三版配套PPT課件of 562.4 分布式結構化數(shù)據(jù)表Bigtable2 . 4 . 12 . 4 . 22 . 4 . 32 . 4 . 42 . 4 . 52 . 4 . 6設計動機與目標數(shù)據(jù)模型 系統(tǒng)架構 主服務器 子表服務器性能優(yōu)化2 . 4分布式結構化數(shù)據(jù)表BigtableBigtable數(shù)據(jù)的存儲格式云計算第三版配套PPT課件of3056Bigtable的存儲邏輯可以表示為:(row:string, column:string, time:int64)stringBigtable是一個分布式映射表,

19、表中的數(shù)據(jù)通過一個行關鍵字(Row Key)、一個列關鍵字(Column Key)以及一個時間戳(Time Stamp)進行索引2 . 4分布式結構化數(shù)據(jù)表Bigtable云計算第三版配套PPT課件行時間戳Bigtable的行關鍵字可以是任意的字符串,但是大小不能夠超過64KB表中數(shù)據(jù)都是根據(jù)行關鍵字進行排序的,排序使用的是詞典序同一地址域的網(wǎng)頁會被存儲在表中的連續(xù)位置倒排便于數(shù)據(jù)壓縮,可以大幅提高壓縮率Google的很多服務比如網(wǎng)頁檢索和用戶的個性化設置等都需要保存不同時間的數(shù)據(jù),這些不同的數(shù)據(jù)版本必須通過時間戳來區(qū)分。Bigtable中的時間戳是64位整型數(shù),具體的賦值方式可以用戶自行定義

20、of3156列將其組織成所謂的列族(Column Family)族名必須有意義,限定詞則可以任意選定組織的數(shù)據(jù)結構清晰明了,含義也很清楚族同時也是Bigtable中訪問控制(Access Control)的基本單元云計算第三版配套PPT課件of 562.4 分布式結構化數(shù)據(jù)表Bigtable2 . 4 . 12 . 4 . 22 . 4 . 32 . 4 . 42 . 4 . 52 . 4 . 6設計動機與目標數(shù)據(jù)模型 系統(tǒng)架構 主服務器 子表服務器性能優(yōu)化2 . 4分布式結構化數(shù)據(jù)表BigtableBigtable 基本架構云計算第三版配套PPT課件執(zhí)行元數(shù)據(jù)操作及負載平衡執(zhí)行Open()

21、操作處理數(shù)據(jù)處理數(shù)據(jù)處理數(shù)據(jù)負責元數(shù)據(jù)存儲及主服務器的選擇負責故障處理及監(jiān)控保存子表數(shù)據(jù)及日志of3356ChubbyGFSGoogle WorkQueueBigtable 子表服務器Bigtable 子表服務器Bigtable子表服務器Bigtable 主服務器Bigtable 客戶端Bigtable 客戶端程序庫2 . 4分布式結構化數(shù)據(jù)表BigtableBigtable 中 Chubby 的主要作用云計算第三版配套PPT課件of3456保存B i g t a b l e 的模式信息及訪問控制列表。作用三獲取子表的位置信息。作用二選取并保證同一時間內(nèi)只有一個主服務器( M a s t e

22、rS e r v e r )。作用一云計算第三版配套PPT課件of 562.4 分布式結構化數(shù)據(jù)表Bigtable2 . 4 . 12 . 4 . 22 . 4 . 32 . 4 . 42 . 4 . 52 . 4 . 6設計動機與目標數(shù)據(jù)模型 系統(tǒng)架構 主服務器 子表服務器性能優(yōu)化2 . 4分布式結構化數(shù)據(jù)表Bigtable云計算第三版配套PPT課件新子表分配子表服務器狀態(tài)監(jiān)控主服務器 分割完成之后子服務器需要向主服務發(fā)出一個。 子服務器之間的負載均衡of3656主服務器必須對子表服務器的狀態(tài)進行監(jiān)控,以便及時檢測到服務器的加入或撤銷創(chuàng)建新表、表合并以及較大子表的分裂都會產(chǎn)生一個或多個新子表

23、。當一個新的子表產(chǎn)生時,主服務器通過一個加載命令將其分配給一個空間足夠的子表服務器。2 . 4分布式結構化數(shù)據(jù)表BigtableBigtable 中 Chubby 的主要作用云計算第三版配套PPT課件從Chubby中獲取一個獨占鎖,確保同一時間只有一個主服務器與所有的活躍子表服務器取得聯(lián)系以便了解所有子表的分配情況步驟 2步驟 4通過掃描元數(shù)據(jù)表(Metadata Table),發(fā)現(xiàn)未分配的子表并將其分配到合適的子表服務器步驟 1步驟 3掃描服務器目錄,發(fā)現(xiàn)目前活躍的子表服務器of3756云計算第三版配套PPT課件of 562.4 分布式結構化數(shù)據(jù)表Bigtable2 . 4 . 12 . 4

24、 . 22 . 4 . 32 . 4 . 42 . 4 . 52 . 4 . 6設計動機與目標數(shù)據(jù)模型 系統(tǒng)架構 主服務器 子表服務器性能優(yōu)化2 . 4分布式結構化數(shù)據(jù)表BigtableSSTable 格式的基本示意SSTable是Google為Bigtable設計的內(nèi)部數(shù)據(jù)存儲格式。所有的SSTable文件都存儲在GFS上,用戶可以通過鍵來查詢相應的值。云計算第三版配套PPT課件of3956SSTable索引64KB塊64KB塊2 . 4分布式結構化數(shù)據(jù)表Bigtable子表實際組成不同子表的SSTable可以共享每個子表服務器上僅保存一個日志文件Bigtable規(guī)定將日志的內(nèi)容按照鍵值進行

25、排序每個子表服務器上保存的子表數(shù)量可以從幾十到上千不等,通常情況下是100個左右云計算第三版配套PPT課件of4056SSTable索引64KB塊64KB塊SSTable索引64KB塊64KB塊日志2 . 4分布式結構化數(shù)據(jù)表Bigtable子表地址組成Bigtable系統(tǒng)的內(nèi)部采用的是一種類似B+樹的三層查詢體系云計算第三版配套PPT課件用戶表1其他元數(shù)據(jù)子表根子表(元數(shù)據(jù)表中第一條記錄) Chubby文件用戶表Nof41562 . 4分布式結構化數(shù)據(jù)表BigtableBigtable 數(shù)據(jù)存儲及讀/寫操作云計算第三版配套PPT課件較新的數(shù)據(jù)存儲在內(nèi)存中一個稱為內(nèi)存表(Memtable)的有

26、序緩沖里,較早的數(shù)據(jù)則以SSTable格式保存在GFS中。內(nèi)存讀操作 讀和寫操作有很大的差異性 GFS寫操作SSTable 文件of4256子表日志內(nèi)存表2 . 4分布式結構化數(shù)據(jù)表Bigtable三種形式壓縮之間的關系云計算第三版配套PPT課件 內(nèi)存表次壓縮次壓縮 內(nèi)存表SSTable 內(nèi)存表 合并壓縮主壓縮of4356SSTableSSTableSSTableSSTableSSTable云計算第三版配套PPT課件of 562.4 分布式結構化數(shù)據(jù)表Bigtable2 . 4 . 12 . 4 . 22 . 4 . 32 . 4 . 42 . 4 . 52 . 4 . 6設計動機與目標數(shù)據(jù)模

27、型 系統(tǒng)架構 主服務器 子表服務器性能優(yōu)化2 . 4分布式結構化數(shù)據(jù)表Bigtable局部性群組Bigtable允許用戶將原本并不存儲在一起的數(shù)據(jù)以列族為單位,根據(jù)需要組織在一個單獨的SSTable中,以構成一個局部性群組。云計算第三版配套PPT課件內(nèi)容語言排名n.wwwSSTableSSTableof4556對于一些較小的且會被經(jīng)常讀取的局部性群組,明顯地改善讀取效率。用戶可以只看自己感興趣的內(nèi)容。2 . 4分布式結構化數(shù)據(jù)表Bigtable壓縮壓縮可以有效地節(jié)省空間,Bigtable中的壓縮被應用于很多場合。首先壓縮可以被用在構成局部性群組的SSTable中,可以選擇是否對個人的局部性群組的SSTable進行壓縮。云計算第三版配套PPT課件12of4656采取Zippy技術進行快速壓縮,它在一個16KB大小的掃描窗口內(nèi)尋找重復數(shù)據(jù),這個過程非

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論