成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一分鐘搞懂HBase

開發(fā) 開發(fā)工具
本文主要講解HBase的有關(guān)內(nèi)容。

[[187187]]

什么是HBase?

HBase(Hadoop Database)是Apache的Hadoop項目的子項目,是一個分布式的、面向列的開源數(shù)據(jù)庫,就像Bigtable利用了Google文件系統(tǒng)(GFS)所提供的分布式數(shù)據(jù)存儲一樣,HBase在Hadoop之上提供了類似于Bigtable的能力。

為什么采用HBase?

HBase不同于一般的關(guān)系數(shù)據(jù)庫,它是一個適合于非結(jié)構(gòu)化數(shù)據(jù)存儲的數(shù)據(jù)庫,HBase是介于Map Entry(key & value)和DB Row之間的一種數(shù)據(jù)存儲方式,有點類似于現(xiàn)在流行的Memcache,但不僅僅是簡單的一個key對應(yīng)一個 value,你還可以根據(jù)需要存儲多個屬性的數(shù)據(jù)結(jié)構(gòu),但沒有傳統(tǒng)數(shù)據(jù)庫表中那么多的關(guān)聯(lián)關(guān)系,這就是所謂的松散數(shù)據(jù)。

簡單來說,你在HBase中創(chuàng)建的表可以看做是一張很大的表,而這個表的屬性可以根據(jù)需求去動態(tài)增加,在HBase中沒有表與表之間關(guān)聯(lián)查詢。你只需要告訴你的數(shù)據(jù)存儲到HBase表的哪個column families 就可以了,不需要指定它的具體類型:char,varchar,int,tinyint,text等等。但是你需要注意HBase中不包含事務(wù)此類的功能。

Apache HBase 和Google Bigtable 有非常相似的地方,一個數(shù)據(jù)行擁有一個可選擇的鍵和任意數(shù)量的列。表是疏松的存儲的,因此用戶可以給行定義各種不同的列,對于這樣的功能在大項目中非常實用,可以簡化設(shè)計和升級的成本。

HBase與傳統(tǒng)RDBMS的區(qū)別

HBase與傳統(tǒng)RDBMS的區(qū)別

應(yīng)用場景

有時候了解軟件產(chǎn)品的***方法是看看它是怎么用的。它可以解決什么問題和這些解決方案如何適用于大型應(yīng)用架構(gòu),能夠告訴你很多。因為HBase有許多公開的產(chǎn)品部署,我們正好可以這么做。本章節(jié)將詳細(xì)介紹一些人們成功使用HBase的使用場景。

注意:不要自我限制,認(rèn)為HBase只能解決這些使用場景。它是一個初生的技術(shù),根據(jù)使用場景進(jìn)行創(chuàng)新正驅(qū)動著系統(tǒng)的發(fā)展。如果你有新想法,認(rèn)為可以受益于HBase提供的功能,試試吧。社區(qū)很樂于幫助你,也會從你的經(jīng)驗中學(xué)習(xí)。這正是開源軟件精神。

互聯(lián)網(wǎng)搜索應(yīng)用

BigTable,和模仿出來的HBase,為這種文檔庫提供存儲,BigTable提供行級訪問,所以爬蟲可以插入和更新單個文檔。搜索索引可以基于BigTable 通過MapReduce計算高效生成。

捕獲增量數(shù)據(jù)

數(shù)據(jù)通常是細(xì)水長流,累加到已有數(shù)據(jù)庫以備將來使用,例如分析,處理和服務(wù)。許多HBase使用場景屬于這個類別—使用HBase作為數(shù)據(jù)存儲,捕獲來自于各種數(shù)據(jù)源的增量數(shù)據(jù)。例如,這種數(shù)據(jù)源可能是網(wǎng)頁爬蟲(我們討論過的互聯(lián)網(wǎng)搜索應(yīng)用問題),可能是記錄用戶看了什么廣告和多長時間的廣告效果數(shù)據(jù),也可能是記錄各種參數(shù)的時間序列數(shù)據(jù)。

半結(jié)構(gòu)化或非結(jié)構(gòu)化數(shù)據(jù)

對于數(shù)據(jù)結(jié)構(gòu)字段不夠確定或雜亂無章很難按一個概念去進(jìn)行抽取的數(shù)據(jù)適合用HBase。例如,當(dāng)業(yè)務(wù)發(fā)展需要存儲用戶的email,phone,address信息時RDBMS需要停機(jī)維護(hù),而HBase支持動態(tài)增加。

記錄非常稀疏

RDBMS的行有多少列是固定的,為null的列浪費了存儲空間。HBase為null的Column不會被存儲,這樣既節(jié)省了空間又提高了讀性能。

多版本數(shù)據(jù)

根據(jù)Row key和Column key定位到的Value可以有任意數(shù)量的版本值,因此對于需要存儲變動歷史記錄的數(shù)據(jù),用HBase就非常方便了。比如用戶表的address是會變動的,業(yè)務(wù)上一般只需要***的值,但有時可能需要查詢到歷史值。

超大數(shù)據(jù)量

當(dāng)數(shù)據(jù)量越來越大,RDBMS數(shù)據(jù)庫撐不住了,就出現(xiàn)了讀寫分離策略,通過一個Master專門負(fù)責(zé)寫操作,多個Slave負(fù)責(zé)讀操作,服務(wù)器成本倍增。

隨著壓力增加,Master撐不住了,這時就要分庫了,把關(guān)聯(lián)不大的數(shù)據(jù)分開部署,一些join查詢不能用了,需要借助中間層。

隨著數(shù)據(jù)量的進(jìn)一步增加,一個表的記錄越來越大,查詢就變得很慢,于是又得搞分表,比如按ID取模分成多個表以減少單個表的記錄數(shù)。經(jīng)歷過這些事的人都知道過程是多么的折騰。

采用HBase就簡單了,只需要加機(jī)器即可,HBase會自動水平切分?jǐn)U展,跟Hadoop的無縫集成保障了其數(shù)據(jù)可靠性(HDFS)和海量數(shù)據(jù)分析的高性能(MapReduce)。

【本文為51CTO專欄作者“朱國立”的原創(chuàng)稿件,轉(zhuǎn)載請通過作者微信公眾號“開發(fā)者圓桌”獲取聯(lián)系和授權(quán)】

戳這里,看該作者更多好文

責(zé)任編輯:趙寧寧 來源: 51CTO專欄
相關(guān)推薦

2017-02-21 13:00:27

LoadAverage負(fù)載Load

2018-07-31 16:10:51

Redo Undo數(shù)據(jù)庫數(shù)據(jù)

2018-06-26 05:23:19

線程安全函數(shù)代碼

2017-07-06 08:12:02

索引查詢SQL

2022-07-18 06:16:07

單點登錄系統(tǒng)

2020-05-21 19:46:19

區(qū)塊鏈數(shù)字貨幣比特幣

2017-03-27 23:22:23

數(shù)據(jù)庫列式存儲

2018-12-12 22:51:24

Java包裝語言

2020-07-17 07:44:25

云計算邊緣計算IT

2016-09-12 17:28:45

云存儲應(yīng)用軟件存儲設(shè)備

2020-07-09 07:37:06

數(shù)據(jù)庫Redis工具

2011-02-21 17:48:35

vsFTPd

2015-11-12 10:32:40

GitHub控制系統(tǒng)分布式

2016-12-16 11:05:00

分布式互斥線程

2021-08-06 08:50:45

加密貨幣比特幣區(qū)塊鏈

2018-03-27 09:28:33

緩存策略系統(tǒng)

2020-06-11 08:04:12

WDMDWDMMWDM

2013-11-15 07:24:50

4G LTE圖解

2023-03-27 09:40:01

GoWebAssembl集成

2009-12-02 17:21:19

Cisco路由器配置
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 欧美国产日本一区 | 日韩亚洲视频 | 日韩欧美国产电影 | 亚洲精品无 | 中文字幕欧美日韩 | 欧美视频免费在线 | 欧美精品久久久久久 | 精品一区二区三区在线观看国产 | 精品成人一区二区 | 国产精品视频999 | 亚洲电影一区二区三区 | 成人午夜网站 | 在线看av网址 | 亚洲欧美中文日韩在线v日本 | 欧美精品网 | 草久久| av免费在线观看网站 | 99精品国产一区二区青青牛奶 | 日韩精品在线观看一区二区 | 91精品观看| 中文一区二区 | 国产精品v | 在线观看第一区 | 四色成人av永久网址 | 国产精产国品一二三产区视频 | 欧美精品免费观看二区 | 欧美精品日韩精品 | 亚洲精品一区二区三区蜜桃久 | 亚洲性视频 | 日韩精品av| 91不卡在线 | 在线观看中文字幕 | 天堂三级 | 中文字幕一区二区三区四区五区 | 99精品国自产在线 | 国产精品乱码一区二三区小蝌蚪 | 成人免费视频网址 | 精品国产乱码久久久久久影片 | 亚洲资源在线 | 欧美日韩在线视频一区 | 欧美精品在线一区二区三区 |