1)client向hregionserver傳送寫請求;
2)hregionserver將資料寫到hlog(write ahead log)。為了資料的持久化和恢復;
3)hregionserver將資料寫到記憶體(memstore);
4)反饋client寫成功。
1)當memstore資料達到閾值(預設是128m,老版本是64m),將資料刷到硬碟,將記憶體中的資料刪除,同時刪除hlog中的歷史資料;
2)並將資料儲存到hdfs中;
3)在hlog中做標記點。
1)當資料塊達到4塊,hmaster將資料塊載入到本地,進行合併;
2)當合併的資料超過256m,進行拆分,將拆分後的region分配給不同的hregionserver管理;
3)當hregionserver宕機後,將hregionserver上的hlog拆分,然後分配給不同的hregionserver載入,修改.meta;
4)注意:hlog會同步到hdfs。
1)client先訪問zookeeper,從meta表讀取region的位置,然後讀取meta表中的資料。meta中又儲存了使用者表的region資訊;
2)根據namespace、表名和rowkey在meta表中找到對應的region資訊;
3)找到這個region對應的regionserver;
4)查詢對應的region;
5)先從memstore找資料,如果沒有,再到storefile上讀(為了讀取的效率)。
1)管理使用者對table的增、刪、改、查操作;
2)記錄region在哪台hregion server上;
3)在region split後,負責新region的分配;
4)新機器加入時,管理hregion server的負載均衡,調整region分布;
5)在hregion server宕機後,負責失效hregion server 上的regions遷移。
1)hregion server主要負責響應使用者i/o請求,向hdfs檔案系統中讀寫資料,是hbase中最核心的模組。
2)hregion server管理了很多table的分割槽,也就是region。
1)hbase client使用hbase的rpc機制與hmaster和regionserver進行通訊
2)管理類操作:client與hmaster進行rpc;
3)資料讀寫類操作:client與hregionserver進行rpc。
大資料技術之HBase第3章 HBase資料結構
與nosql資料庫們一樣,row key是用來檢索記錄的主鍵。訪問hbase table中的行,只有三種方式 1.通過單個row key訪問 2.通過row key的range 正則 3.全表掃瞄 row key行鍵 row key 可以是任意字串 最大長度 是 64kb,實際應用中長度一般為 10...
大資料技術之Hive第5章 DML資料操作
1 語法 hive load data local inpath opt module datas student.txt overwrite into table student partition partcol1 val1,1 load data 表示載入資料 2 local 表示從本地載入資...
大資料HBase系列之HBase基本操作
hbase version hbase zkcli hbase shell 2.1 建立表 語法 create 表名 列族名 create student info 2.2 顯示所有表 語法 list 或 list 表名 list student 2.3 顯示表描述 語法 describe 表名 d...