国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

大數(shù)據(jù) | HBase基本工作原理

這篇具有很好參考價值的文章主要介紹了大數(shù)據(jù) | HBase基本工作原理。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前文回顧:MapReduce基本原理

目錄

??HBase基本介紹

??HBase的設(shè)計目標和功能特點

??HBase在Hadoop中的生態(tài)環(huán)境

??HBase的數(shù)據(jù)模型

??邏輯數(shù)據(jù)模型

??物理存儲格式

??HBase基本構(gòu)架

??HBase數(shù)據(jù)存儲管理方法

??HBase子表數(shù)據(jù)存儲與子表服務(wù)器

??HBase數(shù)據(jù)的訪問

??HBase數(shù)據(jù)記錄的查詢定位


??HBase基本介紹

HBase 是一種分布式、可擴展、支持海量數(shù)據(jù)存儲的 NoSQL(not only SQL) 數(shù)據(jù)庫。

??HBase的設(shè)計目標和功能特點

Hadoop主要是實現(xiàn)批量數(shù)據(jù)的處理,并且通過順序方式訪問數(shù)據(jù)。要查找數(shù)據(jù)必須搜索整個數(shù)據(jù)集,如果要進行隨機讀取數(shù)據(jù),壓根就不支持。即Hadoop僅適合存儲大批量的數(shù)據(jù),進行順序化讀取數(shù)據(jù),并不支持隨機讀取數(shù)據(jù)操作。

  • 針對HDFS缺少結(jié)構(gòu)化半結(jié)構(gòu)化數(shù)據(jù)存儲訪問能力的缺陷,提供一個分布式數(shù)據(jù)管理系統(tǒng),解決大規(guī)模的結(jié)構(gòu)化和半結(jié)構(gòu)化數(shù)據(jù)存儲訪問問題
  • 提供基于列存儲模式的大數(shù)據(jù)表管理能力。可存儲管理數(shù)十億以上的數(shù)據(jù)記錄,每個記錄可包含百萬以上的數(shù)據(jù)列。
  • HBase試圖提供隨機和實時的數(shù)據(jù)讀寫訪問能力。
  • 具有高可擴展性、高可用性、容錯處理能力、負載平衡能力、以及實時數(shù)據(jù)查詢能力。

??HBase在Hadoop中的生態(tài)環(huán)境

  • 構(gòu)建于分布式文件系統(tǒng)HDFS之上。HBase的數(shù)據(jù)(底層數(shù)據(jù))實際上是放在HDFS里的。
  • 為上層應(yīng)用提供結(jié)構(gòu)化半結(jié)構(gòu)化海量數(shù)據(jù)存儲訪問能力。

大數(shù)據(jù) | HBase基本工作原理

  • 可與MapReduce協(xié)同工作,為MapReduce提供數(shù)據(jù)輸入輸出,以完成數(shù)據(jù)的并行化處理。

大數(shù)據(jù) | HBase基本工作原理

??HBase的數(shù)據(jù)模型

??邏輯數(shù)據(jù)模型

HBase是一個分布式多維表,表中的數(shù)據(jù)通過:一個行關(guān)鍵字(row key),一個列關(guān)鍵字(column family + column name),一個時間戳(time stamp)進行索引和查詢定位。

  • region
    • 類比于關(guān)系型數(shù)據(jù)庫的表概念。不同的是,HBase 定義表時只需要聲明列族,不需要聲明具體的列。這意味著,往 HBase 寫入數(shù)據(jù)時,字段可以動態(tài)、按需指定。因此,和關(guān)系型數(shù)據(jù)庫相比,HBase 能夠輕松應(yīng)對字段變更的場景。
  • 行關(guān)鍵字
    • HBase一張表可以有上億行記錄,每一行都是由一個行關(guān)鍵字來標識的。和關(guān)系型數(shù)據(jù)庫中的主鍵不同,HBase的row key只能是一個字段而不可以是多個字段的組合。
    • HBase保證對所有行按照row key進行字典排序。也就是說,HBase保證相鄰row key的行在存儲時必然是相鄰存放的。(row key是最大長度為64KB的byte數(shù)組,實際應(yīng)用中長度一般為10bytes~100bytes。由于HBase只允許單字段的row key,因此在實際應(yīng)用中需要時經(jīng)常把多個字段組合成一個復(fù)合row key。)
  • 列族和列名
    • HBase每張表都有一個或者多個列族。列族必須在使用表之前定義。
    • 從本質(zhì)來說,HBase的列族就是一個容器。HBase表中的每個列,都必須歸屬于某個列族。
    • 列名都以列族作為前綴,列如courses:history,courses:math都屬于courses這個列族。
    • 在具體實現(xiàn)上,一張表中的不同列族是分開獨立存放的。就是說,如果有兩個列族family1和family2,那么在HDFS存儲時,family1是一組文件,family2是另外一組文件,兩者不能混合存儲。
    • HBase的訪問控制、磁盤和內(nèi)存的使用統(tǒng)計等都是在列族層面進行的。
    • 在每個列族中,可以存放很多的列,而每行每列族中的列數(shù)量是可以不同的,數(shù)量可以很大。簡單來說,可以認為每行每列族中保存的是一個Map映射表。
  • 時間戳
    • HBase中每個存儲單元都保存著同一份數(shù)據(jù)的多個版本。版本通過時間戳來索引。
    • 每個存儲單元中,不同版本的數(shù)據(jù)按照時間戳的大小倒序排序,即最新的數(shù)據(jù)排在最前面。這樣在讀取時,將先讀取到最新的數(shù)據(jù)(時間戳可以由HBase(當(dāng)數(shù)據(jù)寫入時自動用當(dāng)前系統(tǒng)時間)賦值,也可以由用戶顯示賦值。如果應(yīng)用程序要避免數(shù)據(jù)版本沖突,可以自己生成具有唯一性的時間戳。)

大數(shù)據(jù) | HBase基本工作原理

優(yōu)秀網(wǎng)圖

大數(shù)據(jù) | HBase基本工作原理

??物理存儲格式

  • 對于HBase來說,它根本不認為存在行列這樣的概念,在實現(xiàn)時只認為存在鍵值對這樣的概念。鍵值對的存儲是排序的,行概念是通過相鄰的鍵值對比較而構(gòu)建出來的。
  • 也就是說,HBase在物理實現(xiàn)上并不存在傳統(tǒng)數(shù)據(jù)庫中的二維表概念。因此二維表中字段值的空洞,對于HBase來說在物理實現(xiàn)上并不存在,而不是所謂的值為null。
  • 按列存儲的稀疏行/列矩陣。物理存儲格式上按邏輯模型中的行進行分割,并按照列族存儲。

  • 值為空的列不予存儲,節(jié)省存儲空間。

優(yōu)秀網(wǎng)圖

大數(shù)據(jù) | HBase基本工作原理

??HBase基本構(gòu)架

由一個MasterServer和一組子表數(shù)據(jù)區(qū)服務(wù)器RegionServer構(gòu)成,分別存儲邏輯大表中的部分數(shù)據(jù)

大數(shù)據(jù) | HBase基本工作原理

  • HBase Master:Master是HBase集群的主控服務(wù)器,負責(zé)集群狀態(tài)的管理維護。Master可以有多個,但只有一個是活躍的(負責(zé)人里的真正老大。
    • 為Region Server分配Region。
    • 負責(zé)Region Server的負載均衡。
    • 發(fā)現(xiàn)失效的Region Server并重新分配其上的Region。
    • HDFS上的垃圾文件回收。
    • 處理schema更新請求。
  • HBase Region Server:Region Server是HBase具體對外提供服務(wù)的進程。
    • Region Server維護Master分配給它的Region,處理對這些Region的I/O請求。
    • Region Server負責(zé)切分在運行過程中變得過大的Region。

大數(shù)據(jù) | HBase基本工作原理

  • 當(dāng)一個新的子表服務(wù)器注冊時,主服務(wù)器讓新的子表服務(wù)器裝載子表。
  • 若主服務(wù)器與子表服務(wù)器連接超時,那么子表服務(wù)器將自動停止,并重新啟動;而主服務(wù)器則假定該子表服務(wù)器已死機,將其上的數(shù)據(jù)轉(zhuǎn)移至其它子表服務(wù)器,將其上的子表標注為空閑,并在重新啟動后另行分配使用。

??HBase數(shù)據(jù)存儲管理方法

??HBase子表數(shù)據(jù)存儲與子表服務(wù)器

大表被分為很多個子表(Region),每個子表存儲在一個子表服務(wù)器RegionServer上

大數(shù)據(jù) | HBase基本工作原理

每個子表中的數(shù)據(jù)區(qū)Region由很多個數(shù)據(jù)存儲塊Store構(gòu)成,而每個Store數(shù)據(jù)塊又由存放在內(nèi)存中的memStore和存放在文件中的StoreFile構(gòu)成。

  • 每個列族就存儲在一個Store中。
  • StoreFile以Hfile格式保存在HDFS上。

大數(shù)據(jù) | HBase基本工作原理

大數(shù)據(jù) | HBase基本工作原理

  • 每個表一開始只有一個Region,隨著數(shù)據(jù)不斷插入表,Region不斷增大。當(dāng)一個Region增大到一個閾值(由參數(shù)hbase.hregion.max.filesize指定,但這個閾值其實不是限制每個Region大小的,而是限制每個Store大小的)的時候,原來的Region會被分裂成兩個新的Region(從而保證Region不會過大)。
  • 隨著表中的行數(shù)不斷增多,Region的數(shù)目也會逐漸增多。
  • 多個region共享一個日志(串行)

大數(shù)據(jù) | HBase基本工作原理

??HBase數(shù)據(jù)的訪問

  • 當(dāng)客戶端需要進行數(shù)據(jù)更新時,先查到子表服務(wù)器,然后向子表提交數(shù)據(jù)更新請求。提交的數(shù)據(jù)并不直接存儲到磁盤上的數(shù)據(jù)文件中,而是添加到一個基于內(nèi)存的子表數(shù)據(jù)對象memStore中,當(dāng)memStore中的數(shù)據(jù)達到一定大小時,系統(tǒng)將自動將數(shù)據(jù)寫入到文件數(shù)據(jù)塊StoreFile中。(就和抽血檢測似的,抽滿一板統(tǒng)一提交去檢測)

  • 每個文件數(shù)據(jù)塊StoreFile最后都寫入到底層基于HDFS的文件中(Hfile)

  • 需要查詢數(shù)據(jù)時,子表先查memStore。如果沒有,則再查磁盤上的StoreFile。每個StoreFile都有類似B樹的結(jié)構(gòu),允許進行快速的數(shù)據(jù)查詢。StoreFile將定時壓縮,多個壓縮為一個。

  • 兩個小的子表可以進行合并。

??HBase數(shù)據(jù)記錄的查詢定位

  • 描述所有子表和子表中數(shù)據(jù)塊的元數(shù)據(jù)都存放在專門的元數(shù)據(jù)表中,并存儲在特殊的子表中。子表元數(shù)據(jù)會不斷增長,因此會使用多個子表來保存。
  • 所有元數(shù)據(jù)子表的元數(shù)據(jù)都保存在根子表中。主服務(wù)器會掃描根子表,從而得到所有的元數(shù)據(jù)子表位置,再進一步掃描這些元數(shù)據(jù)子表即可獲得所尋找子表的位置。
  • 元數(shù)據(jù)子表采用三級索引結(jié)構(gòu)

大數(shù)據(jù) | HBase基本工作原理

根子表->用戶表的元數(shù)據(jù)表->用戶表

大數(shù)據(jù) | HBase基本工作原理

  1. 按表的名字排序
  2. 大表里的行是按role-key作為代表
  3. 每個region里的第一行的role-key作為代表

參考教材:《深入理解大數(shù)據(jù):大數(shù)據(jù)處理與編程實現(xiàn)》

參考博客:HBase簡介文章來源地址http://www.zghlxwxcb.cn/news/detail-437746.html

到了這里,關(guān)于大數(shù)據(jù) | HBase基本工作原理的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • RabbitMQ基本概念和工作原理

    目錄 RabbitMQ的基本概念 RabbitMQ的工作原理 RabbitMQ的交換機類型 RabbitMQ的實現(xiàn)原理 RabbitMQ的消息確認機制 RabbitMQ的消息持久化機制 RabbitMQ的事務(wù) RabbitMQ的消息分發(fā)流程 RabbitMQ的消息分發(fā)機制 RabbitMQ實現(xiàn)RPC的機制 RabbitMQ是一個功能強大的開源消息隊列中間件,具有許多基本概念。

    2024年02月09日
    瀏覽(18)
  • postman的工作原理與基本用法

    ? ? ? ?postman是一個用于調(diào)試HTTP請求的工具,有友好的界面助于分析、構(gòu)造HTTP請求并分析響應(yīng)數(shù)據(jù)。在實際工作中開發(fā)和測試基本都用這款工具進行接口調(diào)試。 ? ? ? ?postman的工作原理可以理解成一個瀏覽器,可模擬瀏覽器、APP原生等客戶端向服務(wù)器發(fā)送接口請求,并獲取

    2024年02月06日
    瀏覽(18)
  • 【白話模電3】BJT基本工作原理

    目錄 1、NPN和PNP 2、BJT的工作機理 3、從放大到飽和 4、通用三級管的參數(shù) 4.1電壓參數(shù) 4.2電流參數(shù) 4.3損耗參數(shù) 參考資料: 上節(jié)我們知道PN結(jié)半導(dǎo)體具有單相導(dǎo)電的性能,但是由PN結(jié)構(gòu)成的各種二極管(Diode)器件的單相導(dǎo)電性是沒辦法進行主動控制的,因此這類器件也稱為被動

    2023年04月20日
    瀏覽(19)
  • HTTPS協(xié)議詳解:基本概念與工作原理

    個人主頁: insist--個人主頁?????? 本文專欄 :網(wǎng)絡(luò)基礎(chǔ)——帶你走進網(wǎng)絡(luò)世界 本專欄會持續(xù)更新網(wǎng)絡(luò)基礎(chǔ)知識,希望大家多多支持,讓我們一起探索這個神奇而廣闊的網(wǎng)絡(luò)世界。 目錄 一、HTTPS協(xié)議的基本概念

    2024年02月10日
    瀏覽(23)
  • HBase基礎(chǔ)知識(一):HBase簡介、HBase數(shù)據(jù)模型與基本架構(gòu)

    HBase基礎(chǔ)知識(一):HBase簡介、HBase數(shù)據(jù)模型與基本架構(gòu)

    HBase是一種分布式、可擴展、支持海量數(shù)據(jù)存儲的NoSQL數(shù)據(jù)庫。 邏輯上,HBase的數(shù)據(jù)模型同關(guān)系型數(shù)據(jù)庫很類似,數(shù)據(jù)存儲在一張表中,有行有列。但從HBase的底層物理存儲結(jié)構(gòu)(K-V)來看,HBase更像是一個 multi-dimensionalmap 。 1.2.1HBase邏輯結(jié)構(gòu) 字典序:按位比較。 下圖是一張表

    2024年02月03日
    瀏覽(20)
  • 淺談路由器基本結(jié)構(gòu)與工作原理

    淺談路由器基本結(jié)構(gòu)與工作原理

    目錄 一、結(jié)構(gòu) 1.1 輸入端口 1.2 交換結(jié)構(gòu) 1.3 輸出端口 1.4 路由選擇處理器 二、輸入端口處理和基于目的地轉(zhuǎn)發(fā) 三、交換 四、輸出端口處理 五、何時出現(xiàn)排隊 5.1 輸入排隊 5.2 輸出排隊 ????????下圖是一個通用路由器體系結(jié)構(gòu)的總體試圖視圖,其主要由輸入端口、交換結(jié)構(gòu)

    2024年03月19日
    瀏覽(28)
  • DDoS緩解的基本工作原理和關(guān)鍵功能

    DDoS緩解的基本工作原理和關(guān)鍵功能

    DDoS 緩解是指成功保護目標服務(wù)器或網(wǎng)絡(luò)以抵御分布式拒絕服務(wù) (DDoS) 攻擊的過程,目標受害者可以使用專門設(shè)計的網(wǎng)絡(luò)設(shè)備或基于云的保護服務(wù)緩解傳入的威脅。 ? 由于網(wǎng)絡(luò)構(gòu)成的基本邏輯,導(dǎo)致在線破壞者在拒絕服務(wù)的策略上占據(jù)優(yōu)勢,他們可以通過讓您的業(yè)務(wù)離線幾分

    2024年02月09日
    瀏覽(17)
  • 什么是MPLS,簡述MPLS工作的基本原理?

    什么是MPLS,簡述MPLS工作的基本原理?

    什么是MPLS: 1,MPLS (Multi-Protocol Label Switching) 即多協(xié)議標記交換。屬于第三代網(wǎng)絡(luò)架構(gòu),是新一代的IP高速骨干網(wǎng)絡(luò)交換標準。MPLS的核心思想:邊緣的路由,核心的交換。 2,MPLS整合了第三層路由和第二層轉(zhuǎn)發(fā)為統(tǒng)一的系統(tǒng),通過對數(shù)據(jù)包進行標記交換,從而縮短傳送的延遲時

    2024年02月11日
    瀏覽(17)
  • BERT模型基本理念、工作原理、配置講解(圖文解釋)

    BERT模型基本理念、工作原理、配置講解(圖文解釋)

    BERT是Birdirectional Encoder Representation from Transformers的縮寫,意為多Transformer的雙向編碼器表示法,它是由谷歌發(fā)布的先進的嵌入模型,BERT是自然語言處理領(lǐng)域的一個重大突破,它在許多自然語言處理任務(wù)中取得了突出的成果,比如問答任務(wù),文本生成,句子分類等等,BERT成功的

    2023年04月18日
    瀏覽(18)
  • Git簡介與工作原理:了解Git的基本概念、版本控制系統(tǒng)和分布式版本控制的工作原理

    Git簡介與工作原理:了解Git的基本概念、版本控制系統(tǒng)和分布式版本控制的工作原理

    ???? 博主 libin9iOak帶您 Go to New World.??? ?? 個人主頁——libin9iOak的博客?? ?? 《面試題大全》 文章圖文并茂??生動形象??簡單易學(xué)!歡迎大家來踩踩~?? ?? 《IDEA開發(fā)秘籍》學(xué)會IDEA常用操作,工作效率翻倍~?? ???? 希望本文能夠給您帶來一定的幫助??文章粗淺,敬

    2024年02月16日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包