2012-04-07 103 views
3

我開發了一些使用java和hadoop 1.0.1的MR作業。但是,EMR僅支持Hadoop 0.20。是否有可能在EMR上運行Hadoop 1.0.1作業,還是必須降級我的庫堆棧以符合EMR hadoop版本?支持Amazon EMR上的Hadoop 1.0.1作業

回答

3

取決於您是否使用任何1.0.1特定類。核心Mapper和Reducer類(新舊API類型)在0.20和1.0.1之間沒有變化。

您可以嘗試將您的hadoop依賴項更改爲0.20.2並重建您的MR作業jar - 如果沒有編譯錯誤,那麼您非常接近(可能會在0.20和1.0.1之間修復一些錯誤,但是我會想象一下你會沒事的)。

如果您發現作業無法編譯,並且它涉及某些輸入/輸出格式在0.20中不可用(如某些多輸入/輸出),您可以檢查Hadoop的源代碼版本1.0。 1(或確實是Cloudera 0.20.2源代碼)來查看是否可以「回溯」缺少的格式,然後將其添加到作業jar中。

隨時將編譯錯誤重新發布回原始問題,以便人們評論潛在的解決方法。

相關問題