數(shù)據(jù)倉庫用hive還是hbase hbase和hive的差別是什么,各自適用在什么場景中?
hbase和hive的差別是什么,各自適用在什么場景中? 1. HBase:基于Hadoop數(shù)據(jù)庫,是NoSQL數(shù)據(jù)庫;HBase表是物理表,適合存儲非結(jié)構(gòu)化數(shù)據(jù)。2. Hive:它不存儲數(shù)據(jù),而是依
hbase和hive的差別是什么,各自適用在什么場景中?
1. HBase:基于Hadoop數(shù)據(jù)庫,是NoSQL數(shù)據(jù)庫;HBase表是物理表,適合存儲非結(jié)構(gòu)化數(shù)據(jù)。
2. Hive:它不存儲數(shù)據(jù),而是依賴HDFS和MapReduce,通過SQL計算和處理HDFS上的結(jié)構(gòu)化數(shù)據(jù);Hive中的表是純邏輯表。
這兩者通常一起使用。
1. HBase:實時隨機(jī)查詢海量詳細(xì)數(shù)據(jù),存儲采集到的web數(shù)據(jù);
2。配置單元:適用于離線批量數(shù)據(jù)計算,一般用于查詢分析和統(tǒng)計。
hive為什么與hbase整合?
除非更改HDFS的原始文件,否則無法更新配置單元數(shù)據(jù)。更改原始文件需要生成新文件,這非常麻煩。同時,hive用于對海量數(shù)據(jù)進(jìn)行統(tǒng)計分析,不能實時查詢。HBase可以快速更新數(shù)據(jù)和查詢海量數(shù)據(jù),彌補hive的不足。同時,HBase的語法對于數(shù)據(jù)的統(tǒng)計分析來說太痛苦了,不友好,但是hive可以。因此,hive與HBase集成后,可以進(jìn)行數(shù)據(jù)更新、實時查詢和統(tǒng)計分析。這大概就是為什么
HBase是一個基于HDFS的數(shù)據(jù)庫。Hive是一個用SQL代替Mr的編程框架,在做Hadoop的時候,它會對用戶提交的SQL語句進(jìn)行語法分析、執(zhí)行計劃等亂七八糟的處理,然后把它們變成Mr Jobs提交運行,并將結(jié)果返回給用戶。否則,每次寫Mr都很麻煩。如果您編寫SQL,您可以得到相同的結(jié)果。它很適合做童鞋。當(dāng)然,hive也有HBase連接器。使用此連接器后,您可以編寫SQL來查詢HBase數(shù)據(jù),而不是HDFS,但通常不能。例如,如果在HBase上使用SQL,則可以使用Phoenix。新手會第一次感覺像MySQL