HBase系列(二)NoSQL數據庫簡介與HBase基本簡介

NoSQL:

什麼是NoSQL?:

not only SQL —非關係型數據庫


  • 不遵循傳統RDBMS模型的數據庫
  • 數據是非關係的,且不使用SQL作爲主要查詢語言
  • 解決數據庫的可伸縮性可用性問題–快速擴容
  • 不針對原子性一致性問題–

NoSQL和關係型數據庫對比:


對比 NoSQL 關係型數據庫
常用數據庫 HBase,MongoDB,Redis Oracle,DB2,mysql
存儲格式 文檔,鍵值對,圖結構 表格式,行和列
存儲規範 鼓勵冗餘 規範性,避免重複-三大範式
存儲擴展 橫向擴展,分佈式 縱向擴展(橫向擴展有限)
查詢 非結構性語言 結構化語言
事務 不支持事務一致性 支持事務
性能 讀寫性能高 讀寫性能差
成本 簡單易部署,開源,成本低 成本高

NoSQL的特點:

  • 最終一致性—異步性-只有在最後才知道
  • 應用程序增加了維護一致性和處理事務等職責
  • 冗餘數據存儲

NoSQL的相關概念:

  • 三大基石

    • CAP&BASE&最終一致性

      CAP:一個分佈式系統不能同時滿足最終一致性可用性分區容錯性

      • 最終一致性 Consistency:任何一個讀操作總是讀取到之前完成的寫操作結果,不是強一致性,不能同時拿到。
      • 可用性 Availability:一直可以正常的做讀寫操作。簡單而言就是客戶端一直可以正常訪問並得到系統的正常響應。用戶角度來看就是不會出現系統操作失敗或者訪問超時等問題。----只要收到用戶的請求,服務器就必須給出迴應。
      • 分區容錯性 Partition tolerance :分佈式系統在遇到某節點或網絡分區故障的時候,仍然能夠對外提供滿足一致性和可用性的服務

    在這裏插入圖片描述

    HBase屬於CP範疇,所以我們在工作中更關注保護他的高可用性

NoSQL分類:

分類 舉例 典型應用場景
鍵值存儲數據庫 (key-value) Redis, MemcacheDB, Voldemort 內容緩存等
列存儲數據庫
(WIDE COLUMN STORE)
Cassandra, HBase 應對分佈式存儲的海量數據
文檔型數據庫 (DOCUMENT STORE) CouchDB, MongoDB Web應用(可看做鍵值數據庫的升級版)
圖數據庫
(GRAPH DB)
Neo4J, InfoGrid, Infinite Graph 社交網絡,推薦系統等,專注於構建關係圖譜

NoSQL和BI大數據的關係:

  • BI(Business Intelligence):商務智能
    • 一套完整的解決方案
    • BI應用涉及模型,模型依賴於模式
    • BI主要支持標準SQL,對NoSQL支持弱於關係型數據庫
  • NoSQL和大數據相關性較高:
    • 通常大數據場景採用列存儲數據庫
    • Hbase和Hadoop

HBase:

Hbase特點:

  • 數據訪問速度快
  • 支持隨機讀寫
  • 可擴展性

Hbase應用場景:

  • 增量數據-時間序列數據
    • 高容量-高速寫入
  • 信息交換-消息傳遞
    • 高容量-高速讀寫
  • 內容服務-web後端應用程序
    • 高容量-高速讀寫

Hbase物理架構具體劃分:

Hbase採用Master/Slave架構

物理架構圖:
在這裏插入圖片描述
在這裏插入圖片描述


一:HMaster的作用:

  • 是HBase集羣的主節點,可以配置多個,用來實現HA
  • 管理和分配Region
  • 負責RegionServer的負載均衡
  • 發現失效的RegionServer並重新分配期上的Region

二:RegionServer的作用:

負責管理維護Region

  • 一個RegionServer包含一個WAL,一個BlockCache和多個Region
  • 一個Region包含多個存儲區,每個存儲區對應一個列族

三:HStore的作用:

  • 一個存儲區由多個StoreFileMemFile組成
  • 一個StoreFile對應一個列簇

HBase邏輯架構:

  • Rowkey(行鍵)是唯一的並己排序
  • schema可以定義何時插入記錄
  • 每個row都可以定義自己的列,即使其他的row不使用
  • 使用唯一時間戳維護多個row版本
  • hbase數據全部以字節存儲

HBase數據管理:

  • 數據管理目錄:

  • HBase數據在HDFS上:

    meta在hmaster上

    root表在zookeeper上

HBase架構特點:

  • 強一致性
  • 自動切割
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章