自2023年以來,關聯式資料庫用於資料儲存和維護有關問題的解決方案。大資料的出現後,好多公司實現處理大資料並從中受益,並開始選擇像 hadoop 的解決方案。
hadoop使用分布式檔案系統,用於儲存大資料,並使用mapreduce來處理。hadoop擅長於儲存各種格式的龐大的資料,任意的格式甚至非結構化的處理。
hadoop只能執行批量處理,並且只以順序方式訪問資料。這意味著必須搜尋整個資料集,即使是最簡單的搜尋工作。
當處理結果在另乙個龐大的資料集,也是按順序處理乙個巨大的資料集。在這一點上,乙個新的解決方案,需要訪問資料中的任何點(隨機訪問)單元。
應用程式,如hbase, cassandra, couchdb, dynamo 和 mongodb 都是一些儲存大量資料和以隨機方式訪問資料的資料庫。
hbase是建立在hadoop檔案系統之上的分布式面向列的資料庫。它是乙個開源專案,是橫向擴充套件的。
hbase是乙個資料模型,類似於谷歌的大表設計,可以提供快速隨機訪問海量結構化資料。它利用了hadoop的檔案系統(hdfs)提供的容錯能力。
它是hadoop的生態系統,提供對資料的隨機實時讀/寫訪問,是hadoop檔案系統的一部分。
人們可以直接或通過hbase的儲存hdfs資料。使用hbase在hdfs讀取消費/隨機訪問資料。 hbase在hadoop的檔案系統之上,並提供了讀寫訪問。
hdfs是適於儲存大容量檔案的分布式檔案系統。
hbase是建立在hdfs之上的資料庫。
hdfs不支援快速單獨記錄查詢。
hbase提供在較大的表快速查詢
它提供了高延遲批量處理;沒有批處理概念。
它提供了數十億條記錄低延遲訪問單個行記錄(隨機訪問)。
它提供的資料只能順序訪問。
hbase內部使用雜湊表和提供隨機接入,並且其儲存索引,可將在hdfs檔案中的資料進行快速查詢。
hbase是乙個面向列的資料庫,在表中它由行排序。表模式定義只能列族,也就是鍵值對。乙個表有多個列族以及每乙個列族可以有任意數量的列。後續列的值連續地儲存在磁碟上。表中的每個單元格值都具有時間戳。總之,在乙個hbase:
下面給出的表中是hbase模式的乙個例子。
rowide
column family
column family
column family
column family
col1
col2
col3
col1
col2
col3
col1
col2
col3
col1
col2
col312
3面向列的資料庫是儲存資料表作為資料列的部分,而不是作為行資料。總之它們擁有列族。
行式資料庫
列式資料庫
它適用於聯機事務處理(oltp)。
這樣的資料庫被設計為小數目的行和列。
面向列的資料庫設計的巨大表。
下圖顯示了列族在面向列的資料庫:
hbase無模式,它不具有固定列模式的概念;僅定義列族。
rdbms有它的模式,描述表的整體結構的約束。
它專門建立為寬表。 hbase是橫向擴充套件。
這些都是細而專為小表。很難形成規模。
沒有任何事務存在於hbase。
rdbms是事務性的。
它反規範化的資料。
它具有規範化的資料。
它用於半結構以及結構化資料是非常好的。
用於結構化資料非常好。
在hbase中,表被分割成區域,並由區域伺服器提供服務。區域被列族垂直分為「stores」。stores被儲存在hdfs檔案。下面顯示的是hbase的結構。
注意:術語「store」是用於區域來解釋儲存結構。
hbase有三個主要組成部分:客戶端庫,主伺服器和區域伺服器。區域伺服器可以按要求新增或刪除。
主伺服器是 -
區域只不過是表被拆分,並分布在區域伺服器。
區域伺服器擁有區域如下 -
需要深入**區域伺服器:包含區域和儲存,如下圖所示:
儲存包含記憶體儲存和hfiles。memstore就像乙個快取記憶體。在這裡開始進入了hbase儲存。資料被傳送並儲存在hfiles作為塊並且memstore重新整理。
HBase 1 HBase介紹和工作原理
hbase是乙個分布式的 面向列的開源資料庫,該技術 於 fay chang 所撰寫的google bigtable 乙個結構化資料的分布式儲存系統 就像bigtable利用了google檔案系統 file system 所提供的分布式資料儲存一樣,hbase在hadoop之上提供了類似於bigta...
HBase 1 HBase介紹和工作原理
hbase是乙個分布式的 面向列的開源資料庫,該技術 於 fay chang 所撰寫的google bigtable 乙個結構化資料的分布式儲存系統 就像bigtable利用了google檔案系統 file system 所提供的分布式資料儲存一樣,hbase在hadoop之上提供了類似於bigta...
hbase目錄介紹
hbase tmp 臨時目錄,當對表做建立和刪除操作時,會將表move到該目錄下,然後進行操作。hbase wals regionserver在處理資料插入和刪除的過程中記錄操作內容的一種日誌,在0.94叫.logs hbase data 預設情況下該目錄下有兩個目錄 hbase data defa...