5 Hbase

# 大綱:
* 認識 HBase
* HBase 架構
* HBase讀寫流程
 
定義:
*  HBase是一個高可靠性、高性能、面向列、可伸縮的分佈式存儲系統,利用Hbase 技術可在廉價PC Server 上搭建起大規模集羣。它是一個能夠隨機訪問的存儲和檢索數據的平臺。他不加以數據的類型。容許動態的,靈活的數據模型
 

Hbase基本概念架構

RowKey:是Byte array,是表中每條記錄的「主鍵」,方便快速查找,Rowkey的設計很是重要。
Column Family:列族,擁有一個名稱(string),包含一個或者多個相關列
Column:屬於某一個columnfamily,familyName:columnName,每條記錄可動態添加
Version Number:類型爲Long,默認值是系統時間戳,可由用戶自定義
Value(Cell):Byte array
 

Client負載均衡

包含訪問HBase的接口,並維護cache來加快對HBase的訪問,好比region的位置信息分佈式

Master性能

爲Region server分配regionspa

負責Region server的負載均衡設計

發現失效的Region server並從新分配其上的regionserver

管理用戶對table的增刪改查操做blog

Region Server接口

Regionserver維護region,處理對這些region的IO請求內存

Regionserver負責切分在運行過程當中變得過大的region

Zookeeper做用

經過選舉,保證任什麼時候候,集羣中只有一個master,Master與RegionServers 啓動時會向ZooKeeper註冊

存貯全部Region的尋址入口

實時監控Region server的上線和下線信息。並實時通知給Master

存儲HBase的schema和table元數據

默認狀況下,HBase 管理ZooKeeper 實例,好比, 啓動或者中止ZooKeeper

Zookeeper的引入使得Master再也不是單點故障

 

 

 
 物理存儲:
一、Table中全部行都按照row key的字典序排列;
二、Table在行的方向上分割爲多個Region;
三、Region按大小分割的,每一個表開始只有一個region,隨着數據增多,region不斷增大,當增大到一個閥值的時候,region就會等分會兩個新的region,以後會有愈來愈多的region;
四、Region是Hbase中分佈式存儲和負載均衡的最小單元,不一樣Region分佈到不一樣RegionServer上。
五、Region雖然是分佈式存儲的最小單元,但並非存儲的最小單元。Region由一個或者多個Store組成,每一個store保存一個columns family;每一個Strore又由一個memStore和0至多個StoreFile組成,StoreFile包含HFile;memStore存儲在內存中,StoreFile存儲在HDFS上。
# Hbase 的讀寫流程
 
相關文章
相關標籤/搜索