《云計算(第三版)》第2章-Google云計算原理與應用(四)剖析_第1頁
《云計算(第三版)》第2章-Google云計算原理與應用(四)剖析_第2頁
《云計算(第三版)》第2章-Google云計算原理與應用(四)剖析_第3頁
《云計算(第三版)》第2章-Google云計算原理與應用(四)剖析_第4頁
《云計算(第三版)》第2章-Google云計算原理與應用(四)剖析_第5頁
已閱讀5頁,還剩57頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

《云計算》第三版配套PPT課件電子工業(yè)出版社《云計算(第三版)》配套課件第2章of64Google云計算原理與應用(四)《云計算》第三版配套PPT課件目錄2.1

G

o

o

g

l

e文件系統(tǒng)G

F

S2.2分布式數(shù)據(jù)處理M

a

p

R

e

d

u

c

e2.3分布式鎖服務C

h

u

b

b

y2.4分布式結構化數(shù)據(jù)表B

i

g

t

a

b

l

e2.5分布式存儲系統(tǒng)M

e

g

a

s

t

o

r

e2.6大規(guī)模分布式系統(tǒng)的監(jiān)控基礎架構Dapper2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)P

o

w

e

r

D

r

i

l

l

2.9

G

o

o

g

l

e應用程序引擎of64數(shù)據(jù)本身不會產(chǎn)生價值只有經(jīng)過分析才有可能產(chǎn)生價值of64《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具Dremel2.7.1產(chǎn)生背景2.7.2數(shù)據(jù)模型2.7.3嵌套式的列存儲2.7.4查詢語言與執(zhí)行2.7.5性能分析2.7.6小結《云計算》第三版配套PPT課件產(chǎn)生背景2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l優(yōu)點:便攜MapReduce缺點:效率低Google的團隊結合其自身的實際需求,借鑒搜索引擎和并行數(shù)據(jù)庫的一些技術,開發(fā)出了實時的交互式查詢系統(tǒng)Dremel。5

of64《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

lDremel支持的典型應用Web文檔的分析Android市場的應用安裝數(shù)據(jù)的跟蹤Google產(chǎn)品的錯誤報告Google圖書的光學字符識別欺詐信息的分析Google地圖的調(diào)試Bigtable實例上的tablet遷移Google分布式構建系統(tǒng)的測試結果分析磁盤I/O信息的統(tǒng)計Google數(shù)據(jù)中心上運行任務的資源監(jiān)控Google代碼庫的符號和依賴關系分析6

of64of64《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具Dremel2.7.1產(chǎn)生背景2.7.2數(shù)據(jù)模型2.7.3嵌套式的列存儲2.7.4查詢語言與執(zhí)行2.7.5性能分析2.7.6小結《云計算》第三版配套PPT課件兩方面的技術支撐兩方面的技術支撐另一方面:統(tǒng)一的數(shù)據(jù)存儲格式一方面:統(tǒng)一的存儲平臺實現(xiàn)高效的數(shù)據(jù)存儲,Dremel使用的底層數(shù)據(jù)存儲平臺是GFS存儲的數(shù)據(jù)才可以被不同的平臺所使用2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l8

of64《云計算》第三版配套PPT課件兩方面的技術支撐關系數(shù)據(jù)庫用關系模型進行建模,其數(shù)據(jù)存儲方式有兩種:早期:行存儲(面向記錄的存儲)晚期:列存儲,以屬性為單位,每次存儲一個屬性,應用時將需要的屬性重新組裝成原始的記錄缺點:很多數(shù)據(jù)之間沒有嚴格關系,無法用關系模型進行很好地建模嵌套數(shù)據(jù)模型(GOOGLE采用)Dremel第一次在嵌套數(shù)據(jù)模型基礎上實現(xiàn)列存儲優(yōu)點:處理時只需要使用涉及的列數(shù)據(jù);更利于數(shù)據(jù)的壓縮。9

of642.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l面向記錄和面向列的存儲Google的Dremel是第一個在嵌套數(shù)據(jù)模型基礎上實現(xiàn)列存儲的系統(tǒng)。好處一:處理時只需要使用涉及的列數(shù)據(jù)好處二:列存儲更利于數(shù)據(jù)的壓縮10

of64《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l嵌套模型的形式化定義原子類型(Atomic

Type)原子類型允許的取值類型包括整型、浮點型、字符串等記錄類型(Record

Type)記錄類型則可以包含多個域記錄型數(shù)據(jù)包括三種類型:必須的(Required)、可重復的(Repeated)以及可選的(Optional)11

of64《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l嵌套結構的模式和實例符合該模式的兩條記錄文檔的模式(Schema)定義利用該數(shù)據(jù)模型,可以使用Java語言,也可以使用C++語言來處理數(shù)據(jù),甚至可以用Java編寫的MapReduce程序直接處理C++語言產(chǎn)生的數(shù)據(jù)集。這種跨平臺的優(yōu)良特性正是Google所需要的。12

of64《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具Dremel2.7.1產(chǎn)生背景2.7.2數(shù)據(jù)模型2.7.3嵌套式的列存儲2.7.4查詢語言與執(zhí)行2.7.5性能分析2.7.6小結of64《云計算》第三版配套PPT課件問題:對圖2-41中的r1的‘en-us’和‘en’,單純記錄下來無法判斷這兩個值對應的是r1中的那個位置,因為r1中Name.Language.Code屬性出現(xiàn)了3次解決辦法:Dremel定義了兩個變量:r(重復深度)和d(定義深度)14

of642.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l《云計算》第三版配套PPT課件圖2-41中Name.Language.Code出現(xiàn)了三次en-us’,‘en’和‘en-gb’Name.Language.Code中可重復的字段有兩個:Name,Language,因此Code的可重復深度的取值可能為0,1,2,其中0表示一個新紀錄的開始。en-us的重復深度:0

(Name和Language沒重復,表示一個新紀錄)en的重復深度:2(Language出現(xiàn)了第2次,Language在Name.Language.Code路徑中位置第二)en-gb的重復深度:1(Name重復,Name在Name.Language.Code路徑中位置第1)注意:第二個Name在r1中沒有包含任何Code值,為了確定出現(xiàn)在第三個Name中而不是第二個,系統(tǒng)會添加一個NULL值在’en’和‘en-gb’之間重復深度記錄的是該列的值是在哪一個級別上重復的15

of642.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l《云計算》第三版配套PPT課件定義深度:值的路徑中有多少個可以不被定義的字段(可選和重復)實際是有定義的路徑Name.Language.Country的定義深度的可能取值:0,1,2,3在r1中共有4個定義:‘us’,‘NULL’,‘NULL’和‘gb’定義深度分別為3,2,1,316

of642.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l數(shù)據(jù)結構的無損表示帶有重復深度和定義深度的r1與r2的列存儲重復深度主要關注的是可重復類型,而定義深度同時關注可重復類型和可選類型(optional)每一列最終會被存儲為塊(Block)的集合,

每個塊包含重復深度和定義深度且包含字段值。17

of64《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l計算重復和定義深度的基礎算法高效的數(shù)據(jù)編碼Dremel利用圖中算法創(chuàng)建一個樹狀結構樹的節(jié)點為字段的writer,它的結構與模式中的字段層級匹配。核心的想法是只在字段writer有自己的數(shù)據(jù)時執(zhí)行更新,非絕對必要時不嘗試往下傳遞父節(jié)點狀態(tài)。子節(jié)點writer繼承父節(jié)點的深度值。

當任意值被添加時,子writer將深度值同步到父節(jié)點。18

of64《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l數(shù)據(jù)重組Dremel數(shù)據(jù)重組方法的核心思想是為每個字段創(chuàng)建一個有限狀態(tài)機(FSM),讀取字段值和重復深度,然后順序地將值添加到輸出結果上。19

of64《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l20

of642.

7

海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l

《云計算》第三版配套PPT課件數(shù)據(jù)重組當前FSM寫入值下一個重復深度值動作DocId(開始)100跳轉(zhuǎn)至Links.BackwardLinks.BackwardNULL0跳轉(zhuǎn)至Links.ForwardLinks.Forward201停留在Links.ForwardLinks.Forward401停留在Links.ForwardLinks.Forward600跳轉(zhuǎn)至Name.Language.CodeName.Language.Codeen-us2跳轉(zhuǎn)至Name.Language.CountryName.Language.Countryus2跳轉(zhuǎn)至Name.Language.CodeName.Language.Codeen1跳轉(zhuǎn)至Name.Language.CountryName.Language.CountryNULL1跳轉(zhuǎn)至Name.UrlName.Urlhttp://A1跳轉(zhuǎn)至Name.Language.CodeName.Language.CodeNULL1跳轉(zhuǎn)至Name.Language.CountryName.Language.CountryNULL1跳轉(zhuǎn)至Name.UrlName.Urlhttp://B1跳轉(zhuǎn)至Name.Language.CodeName.Language.Codeen-gb0跳轉(zhuǎn)至Name.Language.CountryName.Language.Countrygb0跳轉(zhuǎn)至Name.UrlName.UrlNULL

r1的完整數(shù)據(jù)重0

組過程結束21

of64《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l數(shù)據(jù)重組如果具體的查詢中不是涉及所有列,而是僅涉及很少的列的話,上述數(shù)據(jù)重組的過程會更加便利,下圖中僅僅涉及DocId和Name.Language.Country的有限狀態(tài)機。22

of64《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l數(shù)據(jù)重組核心的思想如下:設置t為當前字段讀取器的當前值f所返回的下一個重復深度。在模式樹中,找到它在深度t的祖先,然后選擇該祖先節(jié)點的第一個葉子字段n。由此得到一個FSM狀態(tài)變化(f,t)->n。23

of64有限狀態(tài)機的構造算法of64《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具Dremel2.7.1產(chǎn)生背景2.7.2數(shù)據(jù)模型2.7.3嵌套式的列存儲2.7.4查詢語言與執(zhí)行2.7.5性能分析2.7.6小結《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l查詢語言與執(zhí)行Dremel的SQL查詢輸入的是一個或多個嵌套結構的表以及相應的模式,而輸出的結果是一個嵌套結構的表以及相應的模式。嵌套子查詢記錄內(nèi)聚合top-kjoins自定義函數(shù)…

…25

of64《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l查詢語言與執(zhí)行Dremel利用多層級服務樹(multi-level

service

tree)的概念來執(zhí)行查詢操作根服務器接受客戶端發(fā)出的請求,讀取相應的元數(shù)據(jù),將請求轉(zhuǎn)發(fā)至中間服務器。中間服務器負責查詢中間結果的聚集葉子服務器負責執(zhí)行數(shù)據(jù)來源26

of64《云計算》第三版配套PPT課件查詢語言與執(zhí)行Dremel中的數(shù)據(jù)都是分布式存儲的,因此每一層查詢涉及的數(shù)據(jù)實際都被水平劃分后存儲在多個服務器上。Dremel是一個多用戶系統(tǒng),因此同一時刻往往會有多個用戶進行查詢。查詢分發(fā)器有一個很重要參數(shù),它表示在返回結果之前一定要掃描百分之多少的tablet2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l27

of64of64《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具Dremel2.7.1產(chǎn)生背景2.7.2數(shù)據(jù)模型2.7.3嵌套式的列存儲2.7.4查詢語言與執(zhí)行2.7.5性能分析2.7.6小結《云計算》第三版配套PPT課件表名記錄數(shù)(億)規(guī)模(未壓縮,TB)域數(shù)目數(shù)據(jù)中心復制因子T185087270A3T224013530A3T340701200A3T4>1000010550B3T5>100002050B22.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l性能分析由于Dremel并不開源,我們只能通過Google論文中的分析大致了解其性能。Google的實驗數(shù)據(jù)集規(guī)模如下圖:29

of64《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l性能分析MR從面向記錄轉(zhuǎn)換到列狀存儲后性能提升了一個數(shù)量級(從小時到分鐘),而使用Dremel則又提升了一個數(shù)量級(從分鐘到秒)30

of64of64《云計算》第三版配套PPT課件2.7海量數(shù)據(jù)的交互式分析工具Dremel2.7.1產(chǎn)生背景2.7.2數(shù)據(jù)模型2.7.3嵌套式的列存儲2.7.4查詢語言與執(zhí)行2.7.5性能分析2.7.6小結64《云計算》第三版配套PPT課件32

of2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l小結Dremel和MapReduce并不是互相替代,而是相互補充的技術。在不同的應用場景下各有其用武之地。Drill的設計目標就是復制一個開源的Dremel,但是從目前來看,該項目無論是進展還是影響力都達不到Hadoop的高度。希望未來能出現(xiàn)一個真正有影響力的開源系統(tǒng)實現(xiàn)Dremel的主要功能并被廣泛采用。123《云計算》第三版配套PPT課件目錄2.1

G

o

o

g

l

e文件系統(tǒng)G

F

S2.2分布式數(shù)據(jù)處理M

a

p

R

e

d

u

c

e2.3分布式鎖服務C

h

u

b

b

y2.4分布式結構化數(shù)據(jù)表B

i

g

t

a

b

l

e2.5分布式存儲系統(tǒng)M

e

g

a

s

t

o

r

e2.6大規(guī)模分布式系統(tǒng)的監(jiān)控基礎架構Dapper2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)P

o

w

e

r

D

r

i

l

l

2.9

G

o

o

g

l

e應用程序引擎of64《云計算》第三版配套PPT課件2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)PowerDrill2.8.1產(chǎn)生背景與設計目標2.8.2基本數(shù)據(jù)結構2.8.3性能優(yōu)化2.8.4性能分析與對比of64《云計算》第三版配套PPT課件2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)P

o

w

e

r

D

r

i

l

l產(chǎn)生背景與設計目標用戶對于實時的交互式數(shù)據(jù)查詢和分析一直都有很高的要求一些數(shù)據(jù)探索場景:先向系統(tǒng)發(fā)出請求根據(jù)結果修正查詢內(nèi)容再次向系統(tǒng)發(fā)出新的查詢?nèi)绱朔磸汀璏apReduce無法實現(xiàn)這種程度的交互式查詢,Dremel在一定程度上(數(shù)據(jù)規(guī)模比較小的情況下)能實現(xiàn)隨著數(shù)據(jù)規(guī)模的增大和內(nèi)部對ad

hoc(即席查詢)查詢需求的增多,Google設計開發(fā)了新的交互式查詢系統(tǒng)PowerDrill35

of64《云計算》第三版配套PPT課件2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)P

o

w

e

r

D

r

i

l

l產(chǎn)生背景與設計目標ad

hoc(即席查詢)查詢是用戶根據(jù)自己的需求,靈活地選擇查詢條件,系統(tǒng)根據(jù)用戶的選擇生成相應的統(tǒng)計結果。通常的查詢在系統(tǒng)設計和實施時是已知的,在構建系統(tǒng)是通過建立索引,分區(qū)等技術來優(yōu)化查詢Ad

hoc查詢是用戶在使用時臨時產(chǎn)生的,系統(tǒng)無法優(yōu)化,需要通過其它手段來實現(xiàn)高效的ad

hoc查詢36

of64《云計算》第三版配套PPT課件2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)P

o

w

e

r

D

r

i

l

l產(chǎn)生背景與設計目標兩個假設結論絕大多數(shù)的查詢是類似和一致的;存儲系統(tǒng)中的表只有一小部分是經(jīng)常被使用的,絕大部分的表使用頻率不高。考慮兩方面的內(nèi)容如何盡可能在查詢中略去不需要的數(shù)據(jù)分塊;如何盡可能地減少數(shù)據(jù)在內(nèi)存中的占用,占用越少意味著越多的數(shù)據(jù)可以被加載進內(nèi)存中處理。PowerDrill整個系統(tǒng)實際分為三個部分Web

UI一個抽象層列式存儲37

of64of64《云計算》第三版配套PPT課件2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)PowerDrill2.8.1產(chǎn)生背景與設計目標2.8.2基本數(shù)據(jù)結構2.8.3性能優(yōu)化2.8.4性能分析與對比《云計算》第三版配套PPT課件2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)P

o

w

e

r

D

r

i

l

l基本數(shù)據(jù)結構列式存儲:減少查詢涉及的數(shù)據(jù)量;便于數(shù)據(jù)壓縮。關系數(shù)據(jù)庫通過索引來減少查詢中用到的數(shù)據(jù)量,但ad

hoc查詢場景中索引不起作用PowerDrill的解決方式是對數(shù)據(jù)進行分塊,巧妙設計塊數(shù)據(jù)的數(shù)據(jù)結構,使得查詢時可以確定那些塊不需要,可直接略去,大大減少了所需數(shù)據(jù)量39

of64《云計算》第三版配套PPT課件2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)P

o

w

e

r

D

r

i

l

l基本數(shù)據(jù)結構下圖闡述了PowerDrill采用的數(shù)據(jù)結構,簡單來說就是一個雙層數(shù)據(jù)字典結構。全局字典表存儲全局id和搜索關鍵字的對應關系3個塊的數(shù)據(jù)塊字典記錄的是塊id(chunk-id)和全局id的映射關系塊元素記錄的是塊中存儲數(shù)據(jù)的塊id(注意不是全局id)40

of64of64《云計算》第三版配套PPT課件2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)PowerDrill2.8.1產(chǎn)生背景與設計目標2.8.2基本數(shù)據(jù)結構2.8.3性能優(yōu)化2.8.4性能分析與對比《云計算》第三版配套PPT課件2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)P

o

w

e

r

D

r

i

l

l數(shù)據(jù)分塊傳統(tǒng)的索引對于PowerDrill的查詢場景作用不是很大,因此一個很自然的考慮就是對數(shù)據(jù)進行分塊,過濾查詢中不需要的數(shù)據(jù)塊來減少數(shù)據(jù)量背景常見的分區(qū)方法有范圍分區(qū)、散列分區(qū)等。PowerDrill實際采用的是一種組合范圍分區(qū)方法。方法領域?qū)<掖_定若干個劃分的域步驟利用這幾個域?qū)?shù)據(jù)進行劃分每個塊的行數(shù)達到閾值時就停止劃分局限PowerDrill采用的數(shù)據(jù)分塊方法簡單實用,但是由于域的確定需要領域?qū)<?,因此這種方法在實際使用中還有一定的局限性42

of64《云計算》第三版配套PPT課件2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)P

o

w

e

r

D

r

i

l

l數(shù)據(jù)編碼的優(yōu)化對于不同的塊,如果我們可以確定塊中不同值的數(shù)量,那么就可以根據(jù)這個數(shù)量值來選擇可變的比特位來記錄塊id統(tǒng)計一組數(shù)中不同值的個數(shù)有一個專有名詞,稱為“基數(shù)估計”對于小規(guī)模的數(shù)據(jù)集,可以比較容易地統(tǒng)計出精確的基數(shù)。但是在大數(shù)據(jù)的環(huán)境下,精確的基數(shù)統(tǒng)計非常耗時,因此能保證一定精度的基數(shù)估計就可以滿足實際的需求。基數(shù)估計的方法很多,大多利用了散列函數(shù)的一些特性,Google內(nèi)部使用的是一種稱為Hyperloglog的基數(shù)估計方法的變種。43

of64《云計算》第三版配套PPT課件2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)P

o

w

e

r

D

r

i

l

l全局字典優(yōu)化優(yōu)化中主要利用兩個特性全局字典是有序的排序后的數(shù)據(jù)常常有共同的前綴實際使用中為了進一步減少查詢中需要加載到內(nèi)存的全局字典,對全局字典又進行了分塊對每個全局字典塊還會維護一個布隆過濾器(bloom

filter)來快速確定某個值是否在字典中。44

of64《云計算》第三版配套PPT課件2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)P

o

w

e

r

D

r

i

l

l算法壓縮后剩余數(shù)據(jù)百分比編碼速度解碼速度GZIP13.4%21

MB/s118

MB/sLZO20.5%135

MB/s410

MB/sZippy/Snappy22.2%172

MB/s409

MB/s壓縮算法Google曾經(jīng)對一些主流的壓縮算法做過簡單的測試,如下圖:不管壓縮算法的解壓速度多快,總會消耗一定的物理資源與時間。對此PowerDrill采用了一種冷熱數(shù)據(jù)分別對待的策略。在冷熱數(shù)據(jù)切換策略中,比較常用的是LRU算法。PowerDrill開發(fā)團隊采用了啟發(fā)式的緩存策略來代替原始的LRU算法。45

of64《云計算》第三版配套PPT課件2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)P

o

w

e

r

D

r

i

l

lPowerDrill在實際生產(chǎn)環(huán)境中對數(shù)據(jù)分塊時選定的那幾個域按照字典序進行排序來得到重排的結果46

of640

1

00

1

11

0

0行的重排數(shù)據(jù)壓縮的算法有很多,比較常用的一種稱為游程編碼(Run-Length

Encoding,RLE),又稱行程長度編碼,其好處是壓縮和解壓縮都非常快。數(shù)據(jù)重排的過程等效于著名的TSP(旅行商)問題兩個等長字符串之間的漢明距離是兩個字符串對應位置的不同字符的個數(shù)of64《云計算》第三版配套PPT課件2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)PowerDrill2.8.1產(chǎn)生背景與設計目標2.8.2基本數(shù)據(jù)結構2.8.3性能優(yōu)化2.8.4性能分析與對比《云計算》第三版配套PPT課件2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)P

o

w

e

r

D

r

i

l

l我們比較關注的兩組數(shù)據(jù)在查詢過程中,平均92.41%的數(shù)據(jù)被略去5.02%的數(shù)據(jù)會直接被緩存命中一般僅須掃描2.66%的數(shù)據(jù)即可得到查詢結果超過70%的查詢是不需要從磁盤訪問任何數(shù)據(jù)的這些查詢的平均訪問延遲大約是25秒96.5%的查詢需要訪問的磁盤量不超過1GB48

of64《云計算》第三版配套PPT課件2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)P

o

w

e

r

D

r

i

l

l性能分析與對比訪問數(shù)據(jù)量(GB)延遲時間(s)49

of64《云計算》第三版配套PPT課件2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)P

o

w

e

r

D

r

i

l

lPowerDrillDremel處理非常大量的數(shù)據(jù)集分析少量的核心數(shù)據(jù)集設計目標設計理念處理的數(shù)據(jù)來自外存處理的數(shù)據(jù)盡可能地存于內(nèi)存未進行數(shù)據(jù)分區(qū),分析時要掃描所有需要的列使用了組合范圍分區(qū),分析時可以跳過很多不需要的分區(qū)數(shù)據(jù)通常不需要加載,增加數(shù)據(jù)很方便數(shù)據(jù)需要加載,增加數(shù)據(jù)相對不便PowerDrill與Dremel的對比50

of64《云計算》第三版配套PPT課件目錄2.1

G

o

o

g

l

e文件系統(tǒng)G

F

S2.2分布式數(shù)據(jù)處理M

a

p

R

e

d

u

c

e2.3分布式鎖服務C

h

u

b

b

y2.4分布式結構化數(shù)據(jù)表B

i

g

t

a

b

l

e2.5分布式存儲系統(tǒng)M

e

g

a

s

t

o

r

e2.6大規(guī)模分布式系統(tǒng)的監(jiān)控基礎架構Dapper2.7海量數(shù)據(jù)的交互式分析工具D

r

e

m

e

l2.8內(nèi)存大數(shù)據(jù)分析系統(tǒng)P

o

w

e

r

D

r

i

l

l

2.9

G

o

o

g

l

e應用程序引擎of64《云計算》第三版配套PPT課件2.9

Google應用程序引擎2.9.1

G

o

o

g

l

e

A

p

p

E

n

g

i

n

e簡介

2.9.2應用程序環(huán)境2.9.3

G

o

o

g

l

e

A

p

p

E

n

g

i

n

e服務of64《云計算》第三版配套PPT課件什么是Google

App

Engineof64Google

App

Engine是一個由Python應用服務器群、Bigtable數(shù)據(jù)庫及GFS數(shù)據(jù)存儲服務組成的平臺,它能為開發(fā)者提供一體化的可自動升級的在線應用服務。Google

App

Engine可以讓開發(fā)人員在Google的基礎架構上運行網(wǎng)絡應用程序。在Google

App

Engine中,用戶可以使用域上

的免費域名為應用程序提供服務,也可以使用Google企業(yè)應用套件從自己的域為它提供服務。可以免費使用Google

App

Engine。注冊一個免費賬戶即可開發(fā)和發(fā)布應用程序,而且不需要承擔任何費用和責任。Google

App

Engine6455

of《云計算》第三版配套PPT課件2.9

G

o

o

g

l

e應用程序引擎Google

App

Engine的整體架構前端和靜態(tài)文件

負責將請求轉(zhuǎn)發(fā)給應用服務器并進行負載均衡和靜態(tài)文件的傳輸應用服務器能同時運行多個應用的運行時(Runtime)服務器群

提供了一些服務,主要有Mem/view5/M01/27應用管理節(jié)點

主of64《云計算》第三版配套PPT課件2.9

Google應用程序引擎2.9.1

G

o

o

g

l

e

A

p

p

E

n

g

i

n

e簡介

2.9.2應用程序環(huán)境2.9.3

G

o

o

g

l

e

A

p

p

E

n

g

i

n

e服務《云計算》第三版配套PPT課件2.9

G

o

o

g

l

e應用程序引擎動態(tài)網(wǎng)絡服務功能。能夠完全支持常用的網(wǎng)絡技術。具有持久存儲的空間。在這個空間里平臺可以支持一些基本操作,如查詢、分類和事務的操作。具有自主平衡網(wǎng)絡和系統(tǒng)的負載、自動進行擴展的功能??梢詫τ脩舻纳矸葸M行驗證,并且支持使用Google賬戶發(fā)送郵件。有一個功能完整的本地開發(fā)環(huán)境,可以在自身的計算機上模擬Google

App

Engine環(huán)境。支持在指定時間或定期觸發(fā)事件的計劃任務。應用程序環(huán)境的特性12345657

of64《云計算》第三版配套PPT課件2.9

G

o

o

g

l

e應用程序引擎沙盒的限制用戶的應用程序只能通過Google

App

溫馨提示

  • 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

提交評論