1
首先我試過How to set system environment variable from Mapper Hadoop?,但mapred.map.child.env
不適合我。如何設置mapper的系統環境?
我正在使用hadoop 0.20.1。我想要將開始工作的類的所有系統環境傳遞給映射器。這是我做的:
StringBuilder envStr = new StringBuilder();
for (Entry<String, String> entry : System.getenv().entrySet()) {
envStr.append(entry.getKey() + "=" + entry.getValue() + ",");
}
if (envStr.length() > 0) {
envStr.deleteCharAt(envStr.length() - 1);
}
// System.out.println("Setting mapper child env to :" + envStr);
getConf().set("mapred.map.child.env", envStr.toString());
但它不起作用。我也嘗試設置一個系統值,但它也沒有工作。在Mapper中,System.getenv不包含該值。但job.xml有關鍵和價值。有沒有辦法做到這一點?
你想傳遞什麼特定的信息? –