| 企服解答
HBase 基于 Google 的 BigTable 論文的開(kāi)源實(shí)現(xiàn),是建立的 HDFS之上,提供高可靠性、高性能、列存儲(chǔ)、可伸縮、實(shí)時(shí)讀寫(xiě)的分布式數(shù)據(jù)庫(kù)系統(tǒng)。
hbase是什么
HBase的特點(diǎn):
1、海量存儲(chǔ):可以存儲(chǔ)大批量的數(shù)據(jù)。
2、列(簇)式存儲(chǔ):hbase表的數(shù)據(jù)是基于列族進(jìn)行存儲(chǔ)的,列族是在列的方向上的劃分。
3、極易擴(kuò)展:底層依賴(lài)HDFS,當(dāng)磁盤(pán)空間不足的時(shí)候,只需要?jiǎng)討B(tài)增加 datanode節(jié)點(diǎn)服務(wù)(機(jī)器)就可以了;可以通過(guò)增加服務(wù)器來(lái)提高集群的存儲(chǔ)能力。
4、高并發(fā):支持高并發(fā)的讀寫(xiě)請(qǐng)求
5、稀疏:稀疏主要是針對(duì)Hbase列的靈活性,在列族中,你可以指定任意多的列,在列數(shù)據(jù)為空的情況下,是不會(huì)占用存儲(chǔ)空間的。
6、數(shù)據(jù)的多版本:hbase表中的數(shù)據(jù)可以有多個(gè)版本值,默認(rèn)情況下是根據(jù)版本號(hào)去區(qū)分,版本號(hào)就是插入數(shù)據(jù)的時(shí)間戳。
7、數(shù)據(jù)類(lèi)型單一:所有的數(shù)據(jù)在hbase中是以字節(jié)數(shù)組進(jìn)行存儲(chǔ)。
| 擴(kuò)展閱讀
HBase與傳統(tǒng)的關(guān)系數(shù)據(jù)庫(kù)的區(qū)別:
1、數(shù)據(jù)類(lèi)型:
關(guān)系數(shù)據(jù)庫(kù)采用關(guān)系模型,具有豐富的數(shù)據(jù)類(lèi)型和存儲(chǔ)方式,HBase則采用了更加簡(jiǎn)單的數(shù)據(jù)模型,它把數(shù)據(jù)存儲(chǔ)為未經(jīng)解釋的字符串。
2、數(shù)據(jù)操作:
關(guān)系數(shù)據(jù)庫(kù)中包含了豐富的操作,其中會(huì)涉及復(fù)雜的多表連接。HBase操作則不存在復(fù)雜的表與表之間的關(guān)系,只有簡(jiǎn)單的插入、查詢(xún)、刪除、清空等,因此HBase在設(shè)計(jì)上就避免了復(fù)雜的表和表之間的關(guān)系。
3、存儲(chǔ)模式:
關(guān)系數(shù)據(jù)庫(kù)是基于行模式存儲(chǔ)的。HBase是基于列存儲(chǔ)的,每個(gè)列族都由幾個(gè)文件保存,不同列族的文件是分離的。
4、數(shù)據(jù)索引:
關(guān)系數(shù)據(jù)庫(kù)通常可以針對(duì)不同列構(gòu)建復(fù)雜的多個(gè)索引,以提高數(shù)據(jù)訪問(wèn)性能。HBase只有一個(gè)索引——行鍵,通過(guò)巧妙的設(shè)計(jì),HBase中的所有訪問(wèn)方法,或者通過(guò)行鍵訪問(wèn),或者通過(guò)行鍵掃描,從而使得整個(gè)系統(tǒng)不會(huì)慢下來(lái)。
5、數(shù)據(jù)維護(hù):
在關(guān)系數(shù)據(jù)庫(kù)中,更新操作會(huì)用最新的當(dāng)前值去替換記錄中原來(lái)的舊值,舊值被覆蓋后就不會(huì)存在。而在HBase中執(zhí)行更新操作時(shí),并不會(huì)刪除數(shù)據(jù)舊的版本,而是生成一個(gè)新的版本,舊有的版本仍然保留。
6、可伸縮性:
關(guān)系數(shù)據(jù)庫(kù)很難實(shí)現(xiàn)橫向擴(kuò)展,縱向擴(kuò)展的空間也比較有限。相反,HBase和BigTable這些分布式數(shù)據(jù)庫(kù)就是為了實(shí)現(xiàn)靈活的水平擴(kuò)展而開(kāi)發(fā)的,能夠輕易地通過(guò)在集群中增加或者減少硬件數(shù)量來(lái)實(shí)現(xiàn)性能的伸縮。
[免責(zé)聲明]
文章標(biāo)題: hbase是什么
文章內(nèi)容為網(wǎng)站編輯整理發(fā)布,僅供學(xué)習(xí)與參考,不代表本網(wǎng)站贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé)。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)溝通。發(fā)送郵件至36dianping@36kr.com,我們會(huì)在3個(gè)工作日內(nèi)處理。