HBase知識點總結

2021-10-24 17:34:21 字數 1937 閱讀 4016

易擴充套件

高併發hbase

hmaster

hregionserver

負責storefile的合併

hlog

儲存在hdfs

hregion

store

mem store

storefile

hfile

client

其他元件

create 『user』, 『info』, 『data』

create 『user』, ,

插入資料

檢視表

scan 『user』

describe 『user』

獲取資料

獲取user表中row key為rk0001,info列族的name、age列標示符的資訊

獲取user表中row key為rk0001,info、data列族的資訊

獲取user表中row key為rk0001

列族為info,版本號最新5個的資訊

獲取user表中row key為rk0001,cell的值為zhangsan的資訊

獲取user表中row key為rk0001,列標示符中含有a的資訊

scan

查詢user表中列族為info的資訊

查詢user表中列族為info和data的資訊

查詢user表中列族為info、列標示符為name的資訊

查詢user表中列族為info、

列標示符為name的資訊,並且版本最新的5個

查詢user表中列族為info和data且列標示符中含有a字元的資訊

查詢user表中列族為info,rk範圍是[rk0001, rk0003)的資料

查詢user表中row key以rk字元開頭的

查詢user表中指定範圍的資料

修改資料

alter 『user』, 『delete』 => 『f1』

alter 『user』, name => 『f1』, method => 『delete』

刪除操作

drop

delete

delete 『user』, 『rk0001』, 『info:name』, 1392383705316

啟用表

乙個region就是乙個表的一段rowkey的資料集合。hbase設計中,當某個region太大的時候hbase會拆分它。

那麼為什麼要拆分region?因為當某個region太大的時候讀取效率太低了。想想我們為什麼從mysql、oracle轉移到nosql來?最根本的原因就是這些關係型資料庫把資料放到乙個地方,查詢的本質其實也就是遍歷key;而當資料增大到上億的時候同乙個磁碟已經無法應付這些資料的讀取了,因為遍歷一遍資料的時間實在太長了。我們用nosql的理由就是其能把大資料分拆到不同的機器上,然後就像查詢乙個完整的資料一樣查詢他們。但是當你的region太大的時候,此時這個region一樣會遇到跟傳統關係型資料庫一樣的問題,所以hbase會拆分region。這也是hbase的乙個優點,可以說hbase為「乙個會自動分片的資料庫」。

hbase是一種log-structured merge tree架構模式,hbase幾乎總是在做新增操作。當你新增乙個單元格的時候,hbase在hdfs上新增一條資料。當你修改乙個單元格的時候,hbase在hdfs又新增一條資料,只是版本號比之前那個大(或者你自己定義)。 當你刪除乙個單元格的時候,hbase還是新增一條資料!只是這條資料沒有value,型別為delete,這條資料叫墓碑標記 (tombstone)。真正的刪除發生在什麼時候,由於資料庫在使用過程中積累了很多增刪查改操作,資料的連續性 和順序性必然會被破壞。為了提公升效能,hbase每間隔一段時間都會進行一次合併(compaction),合併的物件為hfile檔案。另外隨著資料寫入不斷增多,flush次數也會不斷增多,進而hfile資料檔案就會越來越多。然而,太多資料檔案會導致資料查詢io次數增多,因此hbase嘗試著不斷對這些檔案進行合併。

Hbase的相關知識點

goole的三駕馬車 gfs 分布式的檔案系統 現在的hdfs mapreduce 分布式計算系統 現在的mapreduce bigtable 分布式的資料庫 現在的hbase hbase是乙個hadoop生態圈中的資料庫 分布式 主從架構 可擴充套件 動態擴容 能儲存大量資料 hdfs 對海量資料...

知識點總結

1,迴圈中的中斷 continue 跳出此次迴圈,繼續for迴圈 break 跳出當前for迴圈 return 跳出當前方法 2,字串的操作 componentseparatedbystring stringbyreplacingoccurencesofstring withstring iskin...

知識點總結

oncreate onstrat onresume onpause onstop onrestart ondestroy standard 啟動activity都會產生乙個新的activity 預設模式 singletop 啟動activity允許多個,但不允許重疊 singletask 只允許有乙...