1. 程式人生 > 實用技巧 >資料儲存_HBase基本內容

資料儲存_HBase基本內容

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 檔案格式