[Hadoop]Pig與Hive的區別
請允許我很無聊的把飛機和火車拿來做比較,因為2者根本沒有深入的可比性,雖然兩者都是一種高速的交通工具,但是具體的作用範圍是截然不同的,就像Hive和Pig都是Hadoop中的專案,並且Hive和pig有很多共同點,但Hive還似乎有點資料庫的影子,而Pig基本就是一個對MapReduce實現的工具(指令碼)。兩者都擁有自己的表達語言,其目的是將MapReduce的實現進行簡化,並且讀寫運算元據最終都是儲存在HDFS分散式檔案系統上。看起來Pig和Hive有些類似的地方,但也有些不同,來做一個簡單的比較,先來看一張圖:
檢視大圖請點選這裡
[img]http://a7l8ig.bay.livefilestore.com/y1pUGvyQ6NonRUzOsJyLxonhejIlKFoCz2SbjlVONqcAk2AU51BuRSTkPWBFBDsw0hpgmfbBwGsLC-WQeBmTA4XAeKPqKul-n9s/pig-vs-hive.png?psid=1[/img]
再讓我說幾句廢話:
Language
在Hive中可以執行 插入/刪除 等操作,但是Pig中我沒有發現有可以 插入 資料的方法,請允許我暫且認為這是最大的不同點吧。
Schemas
Hive中至少還有一個“表”的概念,但是Pig中我認為是基本沒有表的概念,所謂的表建立在Pig Latin指令碼中,對與Pig更不要提metadata了。
Partitions
Pig中沒有表的概念,所以說到分割槽對於Pig來說基本免談,如果跟Hive說“分割槽”(Partition)他還是能明白的。
Server
Hive可以依託於Thrift啟動一個伺服器,提供遠端呼叫。 找了半天壓根沒有發現Pig有這樣的功能,如果你有新發現可以告訴我,就好像有人開發了一個Hive的REST
Shell
在Pig 你可以執行一些個 ls 、cat 這樣很經典、很cool的命令,但是在使用Hive的時候我壓根就沒有想過有這樣的需求。
Web Interface
Hive有,Pig無
JDBC/ODBC
Pig無,Hive有
檢視大圖請點選這裡
[img]http://a7l8ig.bay.livefilestore.com/y1pUGvyQ6NonRUzOsJyLxonhejIlKFoCz2SbjlVONqcAk2AU51BuRSTkPWBFBDsw0hpgmfbBwGsLC-WQeBmTA4XAeKPqKul-n9s/pig-vs-hive.png?psid=1[/img]
再讓我說幾句廢話:
Language
在Hive中可以執行 插入/刪除 等操作,但是Pig中我沒有發現有可以 插入 資料的方法,請允許我暫且認為這是最大的不同點吧。
Schemas
Hive中至少還有一個“表”的概念,但是Pig中我認為是基本沒有表的概念,所謂的表建立在Pig Latin指令碼中,對與Pig更不要提metadata了。
Partitions
Pig中沒有表的概念,所以說到分割槽對於Pig來說基本免談,如果跟Hive說“分割槽”(Partition)他還是能明白的。
Server
Hive可以依託於Thrift啟動一個伺服器,提供遠端呼叫。 找了半天壓根沒有發現Pig有這樣的功能,如果你有新發現可以告訴我,就好像有人開發了一個Hive的REST
Shell
在Pig 你可以執行一些個 ls 、cat 這樣很經典、很cool的命令,但是在使用Hive的時候我壓根就沒有想過有這樣的需求。
Web Interface
Hive有,Pig無
JDBC/ODBC
Pig無,Hive有
相關文章
- hive與hbase的聯絡與區別Hive
- Hive之 hive與hadoop的聯絡HiveHadoop
- HADOOP的PIG框架Hadoop框架
- 大資料時代之hadoop(六):hadoop 生態圈(pig,hive,hbase,ZooKeeper,Sqoop)大資料HadoopHive
- 【Hadoop】SNN與HA的區別Hadoop
- [Hadoop]chukwa與ganglia的區別Hadoop
- PIG之 Hadoop 2.7.4 + pig-0.17.0 安裝Hadoop
- Hive和Hbase的區別Hive
- Hadoop1.x與Hadoop2的區別Hadoop
- Hadoop之Pig安裝Hadoop
- ClickHouse與Hive的區別,終於有人講明白了Hive
- Hive和HBase區別Hive
- NUMA,MPP和HADOOP的區別與聯絡Hadoop
- [Hadoop]轉載-Pig的簡單介紹Hadoop
- hadoop和spark的區別HadoopSpark
- HIVE和HBASE的區別是什麼Hive
- hadoop1.0 和 Hadoop 2.0 的區別Hadoop
- 大資料之hadoop / hive / hbase 的區別是什麼?有什麼應用場景?大資料HadoopHive
- Hive內部表和外部表的區別Hive
- Hadoop Hive介紹HadoopHive
- 2- hive後設資料與hadoop的關係HiveHadoop
- 從hadoop發展角度徹底明白hadoop1.x與hadoop2.x的區別Hadoop
- Pig 的安裝與測試
- hive中round、floor、ceil區別及用法Hive
- 【Hadoop】pyhton連結hiveHadoopHive
- ??與?:的區別
- Hadoop 和 GBase 8a 的區別Hadoop
- hadoop發行版本之間的區別Hadoop
- Q:Spark和Hadoop的架構區別SparkHadoop架構
- 《openstack 和hadoop的區別是什麼?》Hadoop
- Hive中row_number()、dense_rank()、rank()的區別Hive
- Apache Pig 系列 一 [PIG的安裝]Apache
- hadoop+hive+hbase 的安裝配置HadoopHive
- hive 分割槽表和分桶表區別Hive
- Hadoop Hive遷移至MaxComputeHadoopHive
- Hadoop實戰:Hive操作使用HadoopHive
- Hadoop+hive環境搭建HadoopHive
- MySQL的@與@@區別MySql