2016-04-19 3 views
1

ich eine Java-Karte-reduce-Code haben und ich in ihm die folgenden Zeilen der Speicher Heap-Größe zu definieren:Hadoop Karte reduzieren ignoriert die xmx Speicher in meinem Java-Code definiert

conf.set("mapreduce.map.java.opts", "-Xms3g"); 
conf.set("mapreduce.map.java.opts", "-Xmx3g"); 
conf.set("mapreduce.reduce.java.opts", "-Xmx2g"); 

aber wenn ich betreibe meine Code verwendet es immer noch 2 g physischen Speicher und schlägt einige Map-Reduce-Aufgaben fehl. Ich habe sogar das Speicherlimit in Garn-XML-Dateien geändert, bekomme aber immer noch den gleichen Fehler. Würden Sie mir bitte helfen herauszufinden, was das Problem ist und warum ignoriert es meine Gedächtnisdefinition?

+0

Es ist eine Weile her, aber Sie müssen möglicherweise alle Tags aus Ihrer site.xml-Datei entfernen, damit diese Eigenschaften funktionieren ... Ich denke, die site.xml gewinnt. – markg

Antwort

0

Ich habe vergessen, den physischen Speicher in Code zu definieren, so dass nach Zugabe:

conf.set("mapreduce.map.memory.mb", "4000"); 

Problem gelöst!

Verwandte Themen