暑假周進度報告(五)

HBase 分佈式數據庫 容許幾千臺服務器去存儲海量文件::數據庫

HBase 的底層技術:文件存儲系統:HDFS 海量數據處理:Hadoop MapReduce 協同管理服務:Zookeeper緩存

HBase服務器

數據模型:把每一個存儲的值都存儲爲未經解釋的字符串架構

數據操做:都存在一張表裏分佈式

基於列存儲函數

只支持對行鍵的簡單索引oop

會保留舊的版本blog

藉助於整個分佈式集羣索引

數據倉庫產品Hive去訪問底層HBase當中的數據---HiveSQL字符串

HBase行鍵 列族  列限定符 時間戳  經過這四個元素去定位一個具體的數據

 

HBase的功能組件 :庫函數 (通常用於連接每一個客戶端)

Master服務器   :充當管家的做用

Region服務器:負責存儲不一樣的Region

 

 客戶端訪問數據時的「三級尋址」首先訪問ZooKeeper服務器,ZooKeeper文件記錄了-ROOT-表地址

,取出ROOT表地址,而後得到相應的.META.表 ,而後再從META表當中定位用戶數據表Region的位置信息,最終到達region服務器,把數據取出來,就是這樣一個三級尋址過程,並且爲了加速尋址,客戶端會緩存位置信息,同時,須要解決緩存失效問題(採用惰性解決機制,每次不去管它是否失效,反正只要緩存一次,後面訪問一直用此次緩存,直到用這些緩存查找數據發現沒法找到這時纔會再次經歷三級尋址過程,再把最新的Region id 這個位置緩存下來)。

 

  HBase當中的數據是藉助於Hadoop的HDFS去完成數據存儲的

HDFS是架構在底層的Hadoop集羣之上

Region服務器具體負責數據存儲和管理 Region就是具體用戶數據

 

 Zookeeper

 

 

 

 Master

 實例:建立一個表,表名稱爲tempTable,包含3個列族f1,f2和f3

create 'tempTable' , 'f1','f2','f3'

list命令:列出HBase中全部的表信息

一次只能爲一個表的一行數據裏的一個列添加數據

put  'tempTable' , 'r1', 'f1:c1','hello ,dblab' 列族下面的c1列添加數據

 

 

get:經過表名、行、列、時間戳、時間範圍和版本號來得到相應單元格的值

 

 若是你想去刪除一個表,必需要先讓這個表失效,disable 'tempTable'使整個表失效

而後再執行drop ‘tempTable’刪除表

相關文章
相關標籤/搜索