成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

你應該知道的HBase基礎,都在這兒了

大數據
2006 年10 月Google 發布三架馬車之一的《Bigtable:A Distributed Storage System for Strctured Data》論文之后,Powerset 公司就宣布 HBase 在 Hadoop 項目中成立,作為子項目存在。今天,螞蟻金服的南俊從基礎開始講起,希望有助于增強大家在實際業務中對 HBase 的理解。

阿里妹導讀:2006 年10 月Google 發布三架馬車之一的《Bigtable:A Distributed Storage System for Strctured Data》論文之后,Powerset 公司就宣布 HBase 在 Hadoop 項目中成立,作為子項目存在。后來,在2010 年左右逐漸成為 Apache 旗下的一個***項目。可能是實際應用中包裝得太好,很多人對于 HBase 的認識止步于 NoSQL 。今天,螞蟻金服的南俊從基礎開始講起,希望有助于增強大家在實際業務中對 HBase 的理解。

一、 HBase 簡介 

​你應該知道的 HBase 基礎,都在這兒了

HBase 名稱的由來是由于其作為 Hadoop Database 存在的,用來存儲非結構化、半結構化數據。 

​你應該知道的 HBase 基礎,都在這兒了

要想知道 HBase 的用途,就需要看一看其在 Apache 的 Hadoop 生態系統中的位置,可以看到 HBase 是構建在 HDFS 之上的,這是由于 HBase 內部管理的文件全部都是存儲在 HDFS 當中的。同時,MapReduce 這個計算框架在 HBase 之上又提供了高性能的計算能力來處理海量數據。此外還有一些像 Pig、Hive 用來提供高層語言的支持。還有 Sqoop 用來完成傳統數據庫到 HBase 之間的數據遷移。類似衍生出來的新技術還有很多,有興趣的同學可以自己去了解一下。 

​你應該知道的 HBase 基礎,都在這兒了

Google 的三架馬車 BigTable、GFS、MapReduce 現在在開源社區中都能找到對應的實現。HBase 就是 Bigtable 的開源實現,當然這句話不是完全正確,因為兩者之間還是有些差異的。但是主要還是基于 BigTable 這個數據模型開發的,因此也是具有 Key-Value 特征的,同時也就具有 Bigtable 稀疏的、面向列的這些特性。

也是由于 HBase 利用 HDFS 作為它的文件系統,因此它也具有 HDFS 的高可靠性和可伸縮性。和 Hadoop 一樣,HBase 也是依照橫向擴展,通過不斷地通過添加廉價的服務器來增加計算和存儲的能力。BigTable 利用 Chubby 來進行協同服務,HBase 則是利用 Zookeeper 來對整個分布式系統進行協調服務。正是因為通過HDFS 的高可靠可伸縮性,以及應用了 Bigtable 的稀疏的面向列的這些高效的數據組織形式。所以 HBase 才能如此地適合大數據隨機和實時讀寫。

二、 HBase 基本概念

這里介紹一下 HBase 的一些基本概念: 

​你應該知道的 HBase 基礎,都在這兒了

RowKey(行鍵),顧名思義也就是我們在關系型數據庫中常見的主鍵,它是Unique 的,在 HBase 中這個主鍵可以是任意的字符串,其***長度是64K,在內部存儲中會被存儲為字節數組,HBase 表中的數據是按照 RowKey 的字典序排列的,例如很多索引的實現,包括地理空間索引很大程度就是依賴這個特性。

不過也要注意一個點,現實當中期望排序是1、2、3、4...10,而在 HBase 中1 后面緊跟的會是10。因此,在設計行鍵的時候一定要充分地利用字典序這個特性,將一下經常讀取的行存儲到一起或者靠近,減少Scan 的耗時,提高讀取的效率。這里一定要說的一點是,行鍵設計真的很重要,例如做組合行鍵時將時間排前面,導致寫熱點(曾經踩過的坑,記憶猶新)。

Column Family(列族),它是由若干列構成,是表 Schema 的一部分,所以需要在創建表的時候就指定好。但也不是所表創建完之后就不能更改列族,只是成本會比較大,因此不建議更改。HBase 中可允許定義的列族個數最多就20多個。列族不僅僅能夠幫助我們構建數據的語義邊界,還能有助于我們設置某些特性,比如可以指定某個列族內數據的壓縮形式。一個列族包含的所有列在物理存儲上都是在同一個底層的存儲文件當中。

Column (列),一般都是從屬于某個列族,跟列族不一樣,列的數量一般的沒有強限制的,一個列族當中可以有數百萬個列,而且這些列都可以動態添加的。這也是我們常說的 HBase 面向列的優點,不像傳統的關系型數據庫,調整一下 Schema 都需要擔心對于生產的影響。

Version Number(版本號),HBase 中每一列的值或者說是每個單元格的值都是具有版本號的,默認使用的系統當前的時間戳,精確到毫秒。當然也可以是用戶自己顯式地設置,我們是通過時間戳來識別不同的版本,因此如果要自己設置的話,也要保證版本號的唯一性。用戶也可以指定保存指定單元格的*** N 個版本,或者某個時間段的版本,這個是可以在配置中配置的。一個單元格里面是數據是按照版本號降序的。也就是說***寫入的值會被***讀取。

Cell(單元格),一個單元格就是由前面說的行鍵、列標示、版本號唯一確定的,這里說的列標示包括列族和列名。Cell 中的數據是沒有類型的,全部都是字節碼。

三、HBase 表邏輯視圖 

​你應該知道的 HBase 基礎,都在這兒了

由于 HBase 表的一個單元格是由多維決定的,我這里嘗試用一個二維的電子表格來展示。可以結合前面說的 HBase 的基本概念來理解。可以看到通過二維表格來展示一個成績表,中間有很多單元格是空的,整體看起來很稀疏,需要說明的是在 HBase 的實際存儲中這些空的單元格并不占存儲。 

​你應該知道的 HBase 基礎,都在這兒了

四、HBase 表物理視圖

物理視圖比較復雜,下面以圖來展示一個 HBase 表從宏觀到微觀到物理存儲。盡量以最簡單到方式展示物理視圖的幾個層次。

表的橫向切分(TableRegion) 

​你應該知道的 HBase 基礎,都在這兒了

Region 的分裂 

​你應該知道的 HBase 基礎,都在這兒了

Region 的分布 

​你應該知道的 HBase 基礎,都在這兒了

Region 的存儲結構 

​你應該知道的 HBase 基礎,都在這兒了

一個 Region 是由一個或多個 Store 組成。每一個 Store 其實就是一個列族。每個Store 又是由一個 memStore 和 0 個或者多個 storeFile 組成。memStore 是存儲在內存中,storeFile 是存儲在 HDFS 中,有時候也稱作 HFile。數據都會先寫入memStore,一旦 memStore 超過給的的***值之后,HBase 就會將memStore 持久化為 storeFile。

五、HBase 集群結構 

​你應該知道的 HBase 基礎,都在這兒了

一個 HBase 集群一般由一個 Master 和多個 RegionServer 組成。

  • 客戶端庫:可以通過 HBase 提供的各式語言API 庫訪問集群。API 庫也會維護一個本地緩存來加快對 HBase 對訪問,比如緩存中記錄著 Region 的位置信息。
  • Maste 節點:主要為各個 RegionServer 分配 Region,負責 RegionServer 對負載均衡,管理用戶對于 Table 對 CRUD 操作。
  • RegionServer:維護 Region,處理對這些 Region 對IO 請求,負責切分在運行過程中變過大的 Region。
責任編輯:未麗燕 來源: 阿里云云棲社區
相關推薦

2019-04-19 08:25:13

HBase基礎Google

2019-01-24 08:19:17

云服務多云云計算

2013-05-27 09:33:13

Windows 8.1

2021-11-01 08:00:00

Java異常處理開發

2022-10-12 08:22:44

Guava工具Collection

2018-06-26 04:49:46

運營商流量漫游提速降費

2020-09-09 08:45:27

IOC容器高并發

2019-10-29 15:28:40

Refs組件前端

2021-07-06 05:23:05

軟件限免游戲Steam

2022-09-15 14:22:19

協作規范前后端

2021-12-09 08:16:40

JVM參數系統

2021-02-01 08:39:26

JTAG接口Jlink

2018-08-07 15:18:01

2017-08-25 12:06:36

Facebook

2017-08-28 16:40:07

Region切分觸發策略

2017-12-08 10:42:49

HBase切分細節

2018-11-28 10:39:01

5G網絡運營商

2020-06-02 07:00:00

會話安全黑客攻擊

2017-08-29 11:21:03

微軟

2020-01-02 10:13:46

Redis數據庫字符串
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 蜜桃综合在线 | 中文字幕一区二区在线观看 | 精品国产一区二区三区日日嗨 | 日韩日韩日韩日韩日韩日韩日韩 | 人操人人| 久久国产综合 | 在线看日韩 | 日韩欧美在线免费观看 | 国产精品美女www爽爽爽视频 | 欧美在线天堂 | 欧美一区二区免费在线 | 久久精品国产免费 | 亚洲国产欧美一区二区三区久久 | 亚洲三区视频 | 国产精品久久久久久亚洲调教 | 亚洲黄色片免费观看 | 黄片毛片在线观看 | www国产成人免费观看视频,深夜成人网 | 一区二区三区亚洲 | 在线精品亚洲欧美日韩国产 | 天天操夜夜操免费视频 | 一区二区在线不卡 | 欧美日韩不卡 | 久久亚洲国产 | 精品免费视频 | 欧美日韩黄 | 91在线精品视频 | 亚洲男女视频在线观看 | 国产成人aⅴ | 国产成人99久久亚洲综合精品 | 国产一区二区三区在线看 | 在线免费观看毛片 | 噜噜噜噜狠狠狠7777视频 | 欧美一区二区三区在线视频 | 久久久久久久久一区 | 国产一级特黄真人毛片 | 91av在线免费| 毛片在线免费 | 日本欧美国产在线观看 | av中文在线| 精品国产一区二区三区久久久四川 |