(甚至比Difference between Pig and Hive? Why have both?更基本的)使用Pig/Hive進行數據處理而不是直接java map縮減代碼?
我已經寫在數據處理流水線數的Java的map-reduce任務在Hadoop的(我自己的自定義代碼,從Hadoop的映射和減速派生)。這是一系列基本操作,例如連接,反轉,排序和分組。我的代碼涉及到,而不是非常通用的。
繼續這種公認的開發密集型方法與使用多個UDF將所有內容遷移到Pig/Hive的優缺點是什麼?哪些工作將無法執行?我會受到性能下降的影響嗎(與100個TB一起工作)?我會在維護時失去調整和調試代碼的能力嗎?我將能夠將部分作業作爲Java map-reduce進行管理,並將其輸入輸出與我的Pig/Hive作業一起使用?
(我在Twitter上致力於Pig):110-150%的數字有點武斷。通常情況下,Pig會比你的代碼快得多,因爲它做了很多優化。從根本上講,它將事情轉化爲MR,所以它不會比MR更快。但簡單的初學者到中級MR代碼會經常失敗。 – SquareCog
Thnx的洞察力。 –