hdfs hbase hive pig之間的區別

轉自:https://blog.csdn.net/ooc_zc/article/details/50444222

Hive:

Hive不支持更改數據的操作,Hive基於數據倉庫,提供靜態數據的動態查詢。其使用類SQL語言,底層經過編譯轉爲MapReduce程序,在Hadoop上運行,數據存儲在HDFS上。

HDFS:

HDFS是GFS的一種實現,他的完整名字是分佈式文件系統,類似於FAT32,NTFS,是一種文件格式,是底層的。

Hive與Hbase的數據一般都存儲在HDFS上。Hadoop HDFS爲他們提供了高可靠性的底層存儲支持。

Hbase:

Hbase是Hadoop database,即Hadoop數據庫。它是一個適合於非結構化數據存儲的數據庫,HBase基於列的而不是基於行的模式。

HBase是Google Bigtable的開源實現,類似Google Bigtable利用GFS作爲其文件存儲系統,HBase利用Hadoop HDFS作爲其文件存儲系統;Google運行MapReduce來處理Bigtable中的海量數據,HBase同樣利用Hadoop MapReduce來處理HBase中的海量數據。

Hadoop HDFS爲HBase提供了高可靠性的底層存儲支持,Hadoop MapReduce爲HBase提供了高性能的計算能力,Zookeeper爲HBase提供了穩定服務和failover機制。Pig和Hive還爲HBase提供了高層語言支持,使得在HBase上進行數據統計處理變的非常簡單。 Sqoop則爲HBase提供了方便的RDBMS(關係型數據庫)數據導入功能,使得傳統數據庫數據向HBase中遷移變的非常方便。

Pig:

Pig的語言層包括一個叫做PigLatin文本語言,Pig Latin是面向數據流的編程方式。Pig和Hive類似更側重於數據的查詢和分析,底層都是轉化成MapReduce程序運行。

區別是Hive是類SQL的查詢語言,要求數據存儲於表中而Pig是面向數據流的一個程序語言。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章