您好,登錄后才能下訂單哦!
小編給大家分享一下大數據與Hbase的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
大數據在近幾年發展迅速,而實時計算也是一個重要的發展趨勢。不管是企業中的日志數據,還是傳感器、智能設備等等產生的數據,不計其數。
而這些數據中結構化的數據只占一小部分,大部分是非結構化的數據。這個時候,比如圖片視頻等就不能輕松的存儲在關系型數據庫中,而大數據是可以對各種類型的數據都可以進行處理的。
但關系型數據庫有幾點缺陷:
無法應對高并發的考驗,沒有辦法橫向擴展,事務一致性對性能的影響。
而Nosql數據庫,也就是Not Only Sql的縮寫。擴展性強,并發性能好,數據模型靈活。
Hbase,也就是Hadoop Database是一個高可靠、高性能、可伸縮的分布式數據庫。Hbase參考了谷歌的BigTable建模,使用HDFS作為底層存儲。使用Zookeeper作為協同服務組件。
Hbase使用Java編寫,還是一種NoSQL數據庫,這些特性決定了Hbase獨特的應用場景。
HBASE是一個數據庫----可以提供數據的實時隨機讀寫
HBASE與mysql、oralce、db2、sqlserver等關系型數據庫不同,它是一個NoSQL數據庫(非關系型數據庫)
Hbase的表模型與關系型數據庫的表模型不同:
Hbase的表沒有固定的字段定義;
Hbase的表中每行存儲的都是一些key-value對;
Hbase的表中有列族的劃分,用戶可以指定將哪些kv插入哪個列族;
Hbase的表在物理存儲上,是按照列族來分割的,不同列族的數據一定存儲在不同的文件中;
Hbase的表中的每一行都固定有一個行鍵,而且每一行的行鍵在表中不能重復;
Hbase中的數據,包含行鍵,包含key,包含value,都是byte[ ]類型,hbase不負責為用戶維護數據類型;
HBASE對事務的支持很差;
HBASE相比于其他nosql數據庫(mongodb、redis、cassendra、hazelcast)的特點:
Hbase的表數據存儲在HDFS文件系統中
從而,hbase具備如下特性:存儲容量可以線性擴展;數據存儲的安全性可靠性極高!
整個Hbase的入口,使用者通過客戶端操作Hbase。通過客戶端與HMaster和RegionServer進行通訊。管理類操作與HMaster通信,讀寫類操作與RegionServer通訊。
zookeeper負責管理Hbase中多個HMaster的選舉,服務器間狀態同步。
HMaster可以啟動多個,由zookeeper保證總有一個正常運行,其他作為備選。
HMaster主要負責Table和Region的管理工作。
HRegionServer主要負責響應用戶IO請求,向HDFS中讀寫數據。HRegionServer管理了一系列的HRegion對象。HRegion對應了Table中的一個Region。HRegion由多個HStore組成,HStore對用了Table中一個Column Family。
而且每個HRegionServer都有一個HLog對象,用于數據恢復。
生成索引,在查詢時通過對條件的拼接,迅速的查找到要查詢的數據。
不管是實時的推薦系統,還是日志的增量存儲,都是實時流式計算的一個應用。
通過將數據增量的存入Hbase,并在流式處理中實時查詢Hbase,結合歷史得到最終的分析結果。
以上是“大數據與Hbase的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。