Hbase和Hive在大數(shù)據(jù)架構(gòu)中處在不同位置,Hbase主要解決實(shí)時(shí)數(shù)據(jù)查詢問題,Hive主要解決數(shù)據(jù)處理和計(jì)算問題,一般是配合使用。
一、區(qū)別:
1.Hbase: Hadoop database 的簡(jiǎn)稱,也就是基于Hadoop數(shù)據(jù)庫,是一種NoSQL數(shù)據(jù)庫,主要適用于海量明細(xì)數(shù)據(jù)(十億、百億)的隨機(jī)實(shí)時(shí)查詢,如日志明細(xì)、交易清單、軌跡行為等
2.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會(huì)將SQL翻譯為Mapreduce來處理數(shù)據(jù);
二、關(guān)系
在大數(shù)據(jù)架構(gòu)中,Hive和HBase是協(xié)作關(guān)系,數(shù)據(jù)流一般如下圖:
1. 通過ETL工具將數(shù)據(jù)源抽取到HDFS存儲(chǔ);
2. 通過Hive清洗、處理和計(jì)算原始數(shù)據(jù);
3. HIve清洗處理后的結(jié)果,如果是面向海量數(shù)據(jù)隨機(jī)查詢場(chǎng)景的可存入Hbase
4. 數(shù)據(jù)應(yīng)用從HBase查詢數(shù)據(jù);









暫無數(shù)據(jù)