2023學年完整公開課版Hive的存儲類型_第1頁
2023學年完整公開課版Hive的存儲類型_第2頁
2023學年完整公開課版Hive的存儲類型_第3頁
2023學年完整公開課版Hive的存儲類型_第4頁
2023學年完整公開課版Hive的存儲類型_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

Hive的存儲類型1.理解行存儲

2.理解列存儲

3.掌握PAX混合存儲1.行存儲

2.列存儲

3.PAX混合存儲Facebook曾在2010ICDE(IEEEInternationalConferenceonDataEngineering)會議上介紹了數(shù)據(jù)倉庫Hive。Hive存儲海量數(shù)據(jù)在Hadoop系統(tǒng)中,提供了一套類數(shù)據(jù)庫的數(shù)據(jù)存儲和處理機制。它采用類SQL語言對數(shù)據(jù)進行自動化管理和處理,經(jīng)過語句解析和轉(zhuǎn)換,最終生成基于Hadoop的MapReduce任務(wù),通過執(zhí)行這些任務(wù)完成數(shù)據(jù)處理。圖1顯示了Hive數(shù)據(jù)倉庫的系統(tǒng)結(jié)構(gòu)。

HIVE存儲的介紹基于MapReduce的數(shù)據(jù)倉庫在超大規(guī)模數(shù)據(jù)分析中扮演了重要角色,對于典型的Web服務(wù)供應(yīng)商,這些分析有助于它們快速理解動態(tài)的用戶行為及變化的用戶需求。數(shù)據(jù)存儲結(jié)構(gòu)是影響數(shù)據(jù)倉庫性能的關(guān)鍵因素之一。Hadoop系統(tǒng)中常用的文件存儲格式有支持文本的TextFile和支持二進制的SequenceFile等,它們都屬于行存儲方式。Facebook工程師發(fā)表的RCFile:

《A

Fast

and

Spaceefficient

Data

Placement

Structure

in

MapReduce

based

Warehouse

Systems》一文,介紹了一種高效的數(shù)據(jù)存儲結(jié)構(gòu)——RCFile(Record

Columnar

File),并將其應(yīng)用于Facebook的數(shù)據(jù)倉庫Hive中。與傳統(tǒng)數(shù)據(jù)庫的數(shù)據(jù)存儲結(jié)構(gòu)相比,RCFile更有效地滿足了基于MapReduce的數(shù)據(jù)倉庫的四個關(guān)鍵需求,即Fast

data

loading、Fast

query

processing、Hive數(shù)據(jù)倉庫的系統(tǒng)結(jié)構(gòu)基于Hadoop系統(tǒng)行存儲結(jié)構(gòu)的優(yōu)點在于快速數(shù)據(jù)加載和動態(tài)負載的高適應(yīng)能力,這是因為行存儲保證了相同記錄的所有域都在同一個集群節(jié)點,即同一個HDFS塊。不過,行存儲的缺點也是顯而易見的,例如它不能支持快速查詢處理,因為當查詢僅僅針對多列表中的少數(shù)幾列時,它不能跳過不必要的列讀取;此外,由于混合著不同數(shù)據(jù)值的列,行存儲不易獲得一個極高的壓縮比,即空間利用率不易大幅提高。盡管通過熵編碼和利用列相關(guān)性能夠獲得一個較好的壓縮比,但是復雜數(shù)據(jù)存儲實現(xiàn)會導致解壓開銷增大。行存儲行存儲在HDFS上按照列組存儲表格的例子。在這個例子中,列A和列B存儲在同一列組,而列C和列D分別存儲在單獨的列組。查詢時列存儲能夠避免讀不必要的列,并且壓縮一個列中的相似數(shù)據(jù)能夠達到較高的壓縮比。然而,由于元組重構(gòu)的較高開銷,它并不能提供基于Hadoop系統(tǒng)的快速查詢處理。列存儲不能保證同一記錄的所有域都存儲在同一集群節(jié)點,例如圖2的例子中,記錄的4個域存儲在位于不同節(jié)點的3個HDFS塊中。因此,記錄的重構(gòu)將導致通過集群節(jié)點網(wǎng)絡(luò)的大量數(shù)據(jù)傳輸。盡管預先分組后,多個列在一起能夠減少開銷,但是對于高度動態(tài)的負載模式,它并不具備很好的適應(yīng)性。除非所有列組根據(jù)可能的查詢預先創(chuàng)建,否則對于一個查詢需要一個不可預知的列組合,一個記錄的重構(gòu)或許需要2個或多個列組。再者由于多個組之間的列交疊,列組可能會創(chuàng)建多余的列數(shù)據(jù)存儲,這導致存儲利用率的降低。

列存儲列存儲PAX存儲模型(用于Data

Morphing存儲技術(shù))使用混合存儲方式,目的在于提升CPU

Cache性能。對于記錄中來自不同列的多個域,PAX將它們放在一個磁盤頁中。在每個磁盤頁中,PAX使用一個迷你頁來存儲屬于每個列的所有域,并使用一個頁頭來存儲迷你頁的指針。類似于行存儲,PAX對多種動態(tài)查詢有很強的適應(yīng)能力。然而,它并不能滿足大型分布式系統(tǒng)對于高存儲空間利用率和快速查詢處理的需求,原因在于:首先,PAX沒有數(shù)據(jù)壓縮的相關(guān)工作,這部分與Cache優(yōu)化關(guān)系不大,但對于大規(guī)模數(shù)據(jù)處理系統(tǒng)是非常關(guān)鍵的,它提供了列維度數(shù)據(jù)壓縮的可能性;其次,PAX不能提升I/O性能,因為它不能改變實際的頁內(nèi)容,該限制使得大規(guī)模數(shù)據(jù)掃描時不易實現(xiàn)快速查詢處理;再次,PAX用固定的頁

溫馨提示

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

評論

0/150

提交評論