大數(shù)據(jù)培訓(xùn)_Hbase為什么容量大速度快
引言Hbase被譽(yù)為超級大型分布式的數(shù)據(jù)庫,適合于存儲大表數(shù)據(jù)(表的規(guī)??梢赃_(dá)到數(shù)十億行以及數(shù)百萬列),并且對大表數(shù)據(jù)的讀、寫訪問可以達(dá)到實(shí)時級別。為什么Hbase可以存儲那么大量的數(shù)據(jù)呢,為什么Hbase這么大型的數(shù)據(jù)可以實(shí)時讀取。
Hbase介紹Hbase是一個面向列、可伸縮、高可靠性、高性能的分布式存儲系統(tǒng),同時也叫做分布式的數(shù)據(jù)庫。利用Hbase技術(shù)可在廉價PC Server上搭建起大規(guī)模結(jié)構(gòu)化存儲集群。Hbase的目標(biāo)是存儲并處理大型的數(shù)據(jù),更具體來說是僅需使用普通的硬件配置,就能夠處理由成千上萬的行和列所組成的大型數(shù)據(jù)。
Hbase 架構(gòu)
?
Habse寫數(shù)據(jù)流程① 客戶端發(fā)起請求
② 通過ZooKeeper尋找到meta表所在RegionServer
③ meta表中記載著各個User Region信息(rowkey范圍,所在RegionServer),通過meta表尋找所要寫入的Region所在RegionServer
④ 請求按RegionServer和Region打包發(fā)送到Region所在RegionServer,由該RegionServer具體處理數(shù)據(jù)寫入
habse讀數(shù)據(jù)流程① 客戶端發(fā)起請求
② 通過ZooKeeper尋找到meta表所在RegionServer
③ meta表中記載著各個User Region信息(rowkey范圍,所在RegionServer),通過rowkey查找meta表,獲取所要讀取的Region所在RegionServer
④ 請求發(fā)送到該RegionServer,由其具體處理數(shù)據(jù)讀取
⑤ 數(shù)據(jù)讀取返回到客戶端
為什么Hbase可以存儲那么大量的數(shù)據(jù)呢利用Hadoop HDFS(Hadoop Distributed File System)作為其文件存儲系統(tǒng),提供實(shí)時讀寫的分布式數(shù)據(jù)庫系統(tǒng)。
?
從上圖了解到,如果你掌握了hadoop中的hdfs分布式文件系統(tǒng),就很容易理解hbase為什么能存儲大量的數(shù)據(jù)。Hbase本身就是利用hadoop中的hdfs作為它的存儲系統(tǒng)。
為什么Hbase這么大型的數(shù)據(jù)可以實(shí)時讀取
?
很明顯habse是把一個超級大的表,進(jìn)行分割成一塊一塊的數(shù)據(jù),然而這一塊一塊都會帶著rowkey,把這一塊一塊的數(shù)據(jù)存儲到hadoop中的datanode數(shù)據(jù)節(jié)點(diǎn)中,這樣我們就保證大數(shù)表的數(shù)據(jù)被分成一個一個很小的表,從而數(shù)據(jù)庫要讀一個小表,那是多么簡單的事情,所以超級大表實(shí)現(xiàn)秒級也是可能的。
985大學(xué) 211大學(xué) 全國院校對比 專升本