




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、HBase 簡介數(shù)據(jù)部:桂宇目錄HBase HBase 簡介簡介HBase HBase 體系結構體系結構HBase HBase 數(shù)據(jù)模型數(shù)據(jù)模型HBase HBase 提供的接口提供的接口HBaseHBase 優(yōu)化優(yōu)化HBase HBase 用途用途HBase簡介 Hadoop生態(tài)系統(tǒng)HBase 簡介 HBaseHBase是一個分布式的、多版本的、面向列是一個分布式的、多版本的、面向列的開源數(shù)據(jù)庫的開源數(shù)據(jù)庫 利用Hadoop HDFS作為其文件存儲系統(tǒng),提供高可靠性、高性能、列存儲、可伸縮、實時讀寫的數(shù)據(jù)庫系統(tǒng)。 利用Hadoop MapReduce來處理HBase中的海量數(shù)據(jù) 利用Zook
2、eeper作為協(xié)同服務。HBase 簡介 HBaseHBase中表的特點中表的特點 大:一個表可以有上億行,上百萬列(列多時,插入變慢) 面向列:面向列(族)的存儲和權限控制,列(族)獨立檢索。 稀疏:對于為空(null)的列,并不占用存儲空間,因此,表可以設計的非常稀疏。 每個cell中的數(shù)據(jù)可以有多個版本,默認情況下版本號自動分配,是單元格插入時的時間戳; HBase中的數(shù)據(jù)都是字符串,沒有類型;HBase 特點 強一致性 同一行數(shù)據(jù)的讀寫只在同一臺Region Server上進行 水平伸縮 Region的自動分裂以及Master的balance; 只用增加Datanode機器即可增加容量
3、; 只用增加Region Server機器即可增加讀寫吞吐量HBase 特點 行事務 同一行的列的寫入是原子的; Column Oriented + 三維有序 SortedMap(RowKey, List(SortedMap(Column, List(Value,Timestamp) ) ) rowKey (ASC) + columnLabel(ASC) + Version (DESC) - valueHBase 特點 支持有限查詢方式和一級索引 僅支持單行事務 僅支持三種查詢方式(single row key、range row key、scan all rows of table)【可通過
4、hive等實現(xiàn)多表關聯(lián)查詢】 僅基于row key的索引 高性能隨機寫 WAL (Write Ahead Log)HBase 特點 和Hadoop無縫集成 Hadoop分析后的結果可直接寫入HBase; 存放在HBase的數(shù)據(jù)可直接通過Hadoop來進行分析。HBase與RDBMS對比目錄HBase HBase 簡介簡介HBase HBase 體系結構體系結構HBase HBase 數(shù)據(jù)模型數(shù)據(jù)模型HBase HBase 提供的接口提供的接口HBaseHBase 優(yōu)化優(yōu)化HBase HBase 用途用途HBase 體系結構HBase 體系結構ClientClient 包含訪問HBase的接口并
5、維護cache來加快對HBase的訪問ZookeeperZookeeper 保證任何時候,集群中只有一個master 存貯所有Region的尋址入口。 實時監(jiān)控Region server的上線和下線信息。并實時通知給Master 存儲HBase的schema和table元數(shù)據(jù)MasterMaster 為Region server分配region 負責Region server的負載均衡 發(fā)現(xiàn)失效的Region server并重新分配其上的region 管理用戶對table的增刪改查操作Region Server Region Server Region server維護region,處理對這些
6、region的IO請求 Region server負責切分在運行過程中變得過大的region-ROOT-與.META.表 -ROOT-ROOT- 表包含.META.表所在的區(qū)域列表,該表只會有一個HRegion; Zookeeper中記錄了-ROOT-表的location .META.META. 表包含所有的用戶空間區(qū)域列表,以及RegionServer的服務器地址;Region定位16.META.表的一行在內存中大約占用1KB。并且每個region限制為128MB。那么此三層結構可以保存的region數(shù)目為:(128MB/1KB) * (128MB/1KB) = = 2(34)個region
7、目錄HBase HBase 簡介簡介HBase HBase 體系結構體系結構HBase HBase 數(shù)據(jù)模型數(shù)據(jù)模型HBase HBase 提供的接口提供的接口HBaseHBase 優(yōu)化優(yōu)化HBase HBase 用途用途邏輯視圖、物理視圖18HBase以表的形式存儲數(shù)據(jù)。表由行和列組成。列劃分為若干個列族(row family)邏輯視圖物理視圖HBase每個列族存儲為一個StoreHBase 數(shù)據(jù)表中一些關鍵概念 Row key鍵 Column Family列族 Cell qualifier列族修飾符(列) Timestamp時間戳 Region區(qū)域 鍵 Row keyRow key 表中行
8、的鍵是字節(jié)數(shù)組(最大長度是 64KB ) 任何字符串都可以作為鍵; 表中的行根據(jù)行的鍵值進行排序,數(shù)據(jù)按照Row key的字節(jié)序(byte order)排序存儲; 字典序對int排序的結果是1,10,100,11,12,13,14,15,16,17,18,19,2,20,21,9,91,92,93,94,95,96,97,98,99。要保持整形的自然序,行鍵必須用0作左填充 所有對表的訪問都要通過鍵 通過單個row key訪問 通過row key的range 全表掃描列族 Column FamilyColumn Family HBase表中的每個列都歸屬于某個列族,列族必須作為表模式(sche
9、ma)定義的一部分預先給出。如 create test, course; 列名以列族作為前綴,每個“列族”都可以有多個列成員(column);如course:math, course:english, 新的列族成員可以隨后按需、動態(tài)加入; 權限控制、存儲以及調優(yōu)都是在列族層面進行的; 同一列族成員最好有相同的訪問模式和大小特征; HBase把同一列族里面的數(shù)據(jù)存儲在同一目錄下,由幾個文件保存。單元格修飾符 Cell qualifierCell qualifier 通過列族:單元格修飾符,可以具體到某個列; 可以把單元格修飾符認為是實際的列名; 在列族存在,客戶端隨時可以把列添加到列族;時間戳T
10、imestampTimestamp 在HBase每個cell存儲單元對同一份數(shù)據(jù)有多個版本,根據(jù)唯一的時間戳來區(qū)分每個版本之間的差異,不同版本的數(shù)據(jù)按照時間倒序排序,最新的數(shù)據(jù)版本排在最前面。 時間戳的類型是 64位整型。 時間戳可以由HBase(在數(shù)據(jù)寫入時自動)賦值,此時時間戳是精確到毫秒的當前系統(tǒng)時間。 時間戳也可以由客戶顯式賦值,如果應用程序要避免數(shù)據(jù)版本沖突,就必須自己生成具有唯一性的時間戳。區(qū)域 RegionRegion HBase自動把表水平劃分成多個區(qū)域(region),每個region會保存一個表里面某段連續(xù)的數(shù)據(jù); 每個表一開始只有一個region,隨著數(shù)據(jù)不斷插入表,re
11、gion不斷增大,當增大到一個閥值的時候,region就會等分會兩個新的region; 當table中的行不斷增多,就會有越來越多的region。這樣一張完整的表被保存在多個Region 上。Cell單元格 由行和列的坐標交叉決定; 單元格是有版本的; 單元格的內容是未解析的字節(jié)數(shù)組; 由row key, column( = + ), version 唯一確定的單元。cell中的數(shù)據(jù)是沒有類型的,全部是字節(jié)碼形式存貯。鎖 HBase的寫操作是鎖行的,每一行都是一個原子元素,無論對行進行訪問的事務設計多少列,對行的更新都是原子的。都可以加鎖。這使得加鎖模型簡單化。HBase 中數(shù)據(jù)表的物理存儲方
12、式物理存儲 281、Table中的所有行都按照row key的字典序排列。2、Table 在行的方向上分割為多個HRegion。物理存儲 293、Region按大小分割的,每個表一開始只有一個region,隨著數(shù)據(jù)不斷插入表,region不斷增大,當增大到一個閥值的時候,HRegion就會等分會兩個新的HRegion。當able中的行不斷增多,就會有越來越多的HRegion。物理存儲 304 、HRegion是HBase中分布式存儲和負載均衡的最小單元。最小單元就表示不同的HRegion可以分布在不同的HRegion server上。但一個HRegion是不會拆分到多個server上的。物理存
13、儲 315 、HRegion雖然是分布式存儲分布式存儲的最小單元,但并不是存儲存儲的最小單元。事實上,HRegion由一個或者多個Store組成,每個store保存一個columns family。每個Strore又由一個memStore和0至多個StoreFile組成。如圖:StoreFile以HFile格式保存在HDFS上。物理存儲 32HFile的格式為:物理存儲 HFile分為六個部分:Data Block Data Block 段段:保存表中的數(shù)據(jù),這部分可以被壓縮 Meta BlockMeta Block段段 (可選的):保存用戶自定義的kv對,可以被壓縮。 File Info F
14、ile Info 段段:HFile的元信息,不被壓縮,用戶也可以在這一部分添加自己的元信息。 Data Block Index Data Block Index 段段:Data Block的索引。每條索引的key是被索引的 block的第一條記錄的key。 Meta Block IndexMeta Block Index段段 (可選的):Meta Block的索引。TrailerTrailer段段:這一段是定長的。保存了每一段的偏移量,讀取一個HFile時,會 首先讀取Trailer,Trailer保存了每個段的起始位置(段的Magic Number用來 做安全check),然后,DataBlock Index會被讀取到內存中,這樣,當檢索 某個key時,不需要掃描整個HFile,而只需從內存中找到key所在的block,通過一次磁盤io將整個 block讀取到內存中,再找到需要的keyData Block Index采用LRU機制淘汰。HFile的Data Block,Meta Block通常采用壓縮方式存儲,壓縮之后可以大大減少網(wǎng)絡IO和磁盤IO,隨之而來的開銷當然是需要花費cpu進行壓縮和解壓縮。目標Hfile的壓縮支持兩種方式:Gzip,Lzo。物理存儲 34HLog(WAL log)HLog文件就是一個普通的Hadoop Sequence File,S
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 租房補房協(xié)議書
- 考試培訓協(xié)議書
- 老人分攤協(xié)議書
- 終止醫(yī)保協(xié)議書
- 聯(lián)合共享協(xié)議書
- 遺產聲明協(xié)議書
- 幼兒園會計合同協(xié)議書
- 教培合伙人合同協(xié)議書
- 無責方自行協(xié)商協(xié)議書
- 生豬領養(yǎng)協(xié)議書
- 國有企業(yè)外派董監(jiān)事、高管人員管理辦法
- 檢驗人員訓練教材-QC技能手冊
- 2023-2024學年廣東省深圳市福田區(qū)八年級(下)期末數(shù)學試卷(含答案)
- 大數(shù)據(jù)可視化智慧樹知到期末考試答案章節(jié)答案2024年浙江大學
- 山東省濟南市歷城區(qū)2023-2024學年八年級下學期期末數(shù)學試題(無答案)
- 綠色建筑運行標識自評報告參考樣式
- 穴位貼敷法技術操作評分標準
- 污水處理設施環(huán)保管理培訓資料
- 2024年山西省中考英語試題(附答案)
- 防雷裝置檢測業(yè)務合同范本
- GB/T 43934-2024煤礦土地復墾與生態(tài)修復技術規(guī)范
評論
0/150
提交評論