資料儲存_HBase基本內容
阿新 • • 發佈:2020-10-09
Hbase核心的原理和機制
列式儲存
1.概念: 列式儲存-以列為單位聚合資料 Hbase以列式儲存的格式在磁碟儲存資料
2.目的: 高效的檢索和更新
3.基於這樣的假設:
對於特定的查詢,不是所有的值都是必須的,尤其是在分析型資料庫中,所以減少I/O
基於列式儲存更惡意大幅度提高壓縮比,有利於返回結果時降低頻寬的消耗
4.使用場景:
比較適合鍵值對的資料儲存以及有序資料的儲存
Hbase基本介紹
基本概念 資料模型 儲存模型 物理模型 壓縮 讀寫效能 原子的操作-讀-寫-修改 加鎖 等待 死鎖 負載均衡 故障恢復 元件: 主伺服器 Region伺服器 客戶端 分散式協調器: Zookeeper 構成: 表 Table 列簇 column family 行 Row rowkey 列 column 單元格 cell 時間戳 timestamp region 操作: 沒有提供查詢資料的特定域語言,比如沒有提供SQL語言 API: 建立表/增加列族 刪除表/刪除列族 修改表和列族元資料 查詢 底層原理: 檔案結構: HFile 檔案 MemStore 預寫日誌 Write-ahead log WAL 刪除標記
Hbase詳細介紹
基本命令: list put get scan delete disable drop exit
批量處理
行鎖: row lock Bytes類
高階特性: filter comparator
設計
1.行鍵設計:Row key設計
高表 tall-narrow table
寬表 flat-wide table
處理方式:
將行鍵時間序列
將行鍵隨機化
2.版本管理
Hbase配置
選擇作業系統、檔案系統,執行模型 1.配置Hbase: conf/hbase-env.sh conf/hbase-site.xml 2.叢集監控 3.效能優化 分配區快取 垃圾回收優化 壓縮 snappy 優化拆分和合並 region熱點
Hbase資料結構
Hbase中使用 LSM樹 Log-Structure Merge Tree 。 相關使用Btree 以及 B+tree 查詢和傳輸
HFile 檔案格式