Hive和Hbase的各自適用場景

先放結(jié)論:Hbase和Hive在大數(shù)據(jù)架構(gòu)中處在不同位置,Hbase主要解決實(shí)時(shí)數(shù)據(jù)查詢問題,Hive主要解決數(shù)據(jù)處理和計(jì)算問題,一般是配合使用。

一、區(qū)別:

Hbase:?Hadoop database 的簡稱,也就是基于Hadoop數(shù)據(jù)庫,是一種NoSQL數(shù)據(jù)庫,主要適用于海量明細(xì)數(shù)據(jù)(十億、百億)的隨機(jī)實(shí)時(shí)查詢,如日志明細(xì)、交易清單、軌跡行為等。

Hive:Hive是Hadoop數(shù)據(jù)倉庫,嚴(yán)格來說,不是數(shù)據(jù)庫,主要是讓開發(fā)人員能夠通過SQL來計(jì)算和處理HDFS上的結(jié)構(gòu)化數(shù)據(jù),適用于離線的批量數(shù)據(jù)計(jì)算。

通過元數(shù)據(jù)來描述Hdfs上的結(jié)構(gòu)化文本數(shù)據(jù),通俗點(diǎn)來說,就是定義一張表來描述HDFS上的結(jié)構(gòu)化文本,包括各列數(shù)據(jù)名稱,數(shù)據(jù)類型是什么等,方便我們處理數(shù)據(jù),當(dāng)前很多SQL ON Hadoop的計(jì)算引擎均用的是hive的元數(shù)據(jù),如Spark SQL、Impala等;

基于第一點(diǎn),通過SQL來處理和計(jì)算HDFS的數(shù)據(jù),Hive會將SQL翻譯為Mapreduce來處理數(shù)據(jù);

二、關(guān)系

在大數(shù)據(jù)架構(gòu)中,Hive和HBase是協(xié)作關(guān)系,數(shù)據(jù)流一般如下圖:

通過ETL工具將數(shù)據(jù)源抽取到HDFS存儲;

通過Hive清洗、處理和計(jì)算原始數(shù)據(jù);

HIve清洗處理后的結(jié)果,如果是面向海量數(shù)據(jù)隨機(jī)查詢場景的可存入Hbase

數(shù)據(jù)應(yīng)用從HBase查詢數(shù)據(jù);

更為細(xì)致的區(qū)別如下:

Hive中的表是純邏輯表,就只是表的定義等,即表的元數(shù)據(jù)。Hive本身不存儲數(shù)據(jù),它完全依賴HDFS和MapReduce。這樣就可以將結(jié)構(gòu)化的數(shù)據(jù)文件映射為為一張數(shù)據(jù)庫表,并提供完整的SQL查詢功能,并將SQL語句最終轉(zhuǎn)換為MapReduce任務(wù)進(jìn)行運(yùn)行。而HBase表是物理表,適合存放非結(jié)構(gòu)化的數(shù)據(jù)。如果你對大數(shù)據(jù)開發(fā)感興趣,想系統(tǒng)學(xué)習(xí)大數(shù)據(jù)的話,可以加入大數(shù)據(jù)技術(shù)學(xué)習(xí)交流扣扣群:458數(shù)字345數(shù)字782,歡迎添加,私信管理員,了解課程介紹,獲取學(xué)習(xí)資源

Hive是基于MapReduce來處理數(shù)據(jù),而MapReduce處理數(shù)據(jù)是基于行的模式;HBase處理數(shù)據(jù)是基于列的而不是基于行的模式,適合海量數(shù)據(jù)的隨機(jī)訪問。

HBase的表是疏松的存儲的,因此用戶可以給行定義各種不同的列;而Hive表是稠密型,即定義多少列,每一行有存儲固定列數(shù)的數(shù)據(jù)。

Hive使用Hadoop來分析處理數(shù)據(jù),而Hadoop系統(tǒng)是批處理系統(tǒng),因此不能保證處理的低遲延問題;而HBase是近實(shí)時(shí)系統(tǒng),支持實(shí)時(shí)查詢。

Hive不提供row-level的更新,它適用于大量append-only數(shù)據(jù)集(如日志)的批任務(wù)處理。而基于HBase的查詢,支持和row-level的更新。

Hive提供完整的SQL實(shí)現(xiàn),通常被用來做一些基于歷史數(shù)據(jù)的挖掘、分析。而HBase不適用與有join,多級索引,表關(guān)系復(fù)雜的應(yīng)用場景。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容