hbase的系統表
hbase:namespace 儲存了hbase中的所有namespace的資訊
hbase:meta 儲存了hbase中所有的region的資訊,包括rowkey範圍,region所在的regionserver的位址。
hbase:meta 在zookeeper中,進入zookeeper中檢視
讀的流程:
1、連線zookeeper,找到meta表所在的regionserver的位址
2、訪問對應的regionserver,讀meta表的資訊
3、通過命令找到rowkey對應的region,得到region的名稱
4、訪問region所在的regionserver
5、訪問對應store 讀記憶體(memstore cache) storefile
寫的流程:
1、連線zookeeper,找到meta表所在的regionserver的位址
2、訪問對應的regionserver,讀meta表的資訊
3、通過命令找到rowkey對應的region,得到region的名稱
4、訪問region所在的regionserver
5、正常情況
wal(hlog),write ahead log
memstore
flush:將記憶體中的資料進行溢寫到磁碟變成storefile
compact:將多個storefile進行合併,變成乙個大檔案 等到多個store中的storefile的和達到一定閾值,後進行split(region的等分成兩個region,又master分配,當前region消失)
HBase讀寫資料流程
客戶端現在要插入一條資料,rowkey r000001,這條資料應該寫入到table表中的那個region中呢?1 客戶端要連線zookeeper,從zk的 hbase 節點找到 hbase meta 表所在的regionserver host port 2 regionserver 掃瞄 hbas...
HBASE讀寫資料流程
客戶端請求寫資料首先會向zookeeper中的leader傳送寫資料的請求 在請求成功後leader會向客戶端傳送meta表的位置,告訴客戶端meta表在哪台regsion server上面 解析出meta表中的資料後,會向對應的regsion server機器傳送寫資料請求,請求成功後會在向該機器...
HDFS讀寫資料流程
步驟 1 客戶端通過 distributed filesystem 模組向namenode請求上傳檔案,namenode檢查目標檔案是否已存在,父目錄是否存在。2 namenode返回是否可以上傳。3 客戶端請求第乙個 block 上傳到哪幾個 datanode 伺服器上。4 namenode返回3...