2014-01-12 29 views
2

我們能夠在Mapreduce中執行動態表達式嗎?MapReduce中的動態表達式

說如果我有一個csv文件,它有2列。 用戶被賦予爲一個函數

col1 + col2 = col3 

,而用戶想要col1 - col2 = col4時一次。

我們能做到這一點嗎?

如何做到這一點? 我們是否應該在1個Mapreduce程序中執行所有這些操作,或者我們是否需要爲每個表達式創建MapReduce程序? (dynamic change of expressions from user

+1

聽起來像是豬八戒或蜂巢是你的使用情況比裸機映射精簡更好地滿足。 –

+0

感謝您的答覆法官 - 我的案例在mapreduce實施中的缺點是什麼? –

回答

1

由於法官Mental在評論中說,你應該看看HivePig

使用蜂巢就可以發動MapReduce作業與SQL查詢:

SELECT col1, col2, col1 + col2 AS col3, col1 - col2 AS col4 
    FROM table 
+0

所以Hive或Pg是最好的。我們無法在MapReduce中做到這一點。同一Nigel中MapReduce的侷限性是什麼? –

+1

那麼,用原始的MapReduce,你需要解析用戶輸入(col1 + col2等)。基本上你會重塑蜂巢/豬。有了Hive/Pig,你仍然可以使用MapReduce,但Hive/Pig會爲你做分析工作。 –

+0

So Nigel如果我們在Hive/pig中做什麼,性能(堅牢度)將會如何。與mapreduce的相同嗎? –