2012-10-08 17 views
17

Ho solo trovare il modo di impostare una proprietà da hadoop dfsadmin -D xx=yy,Come si stampano le proprietà hadoop nella riga di comando?

ma come faccio a trovare il valore di una proprietà specifica xx a riga di comando?

+1

Se qualche risposta aver risolto il problema, fai clic sulla casella di controllo grande per accettarla come la risposta. –

risposta

4

È possibile utilizzare GenericOptionsParser per caricare l'impostazione di Hadoop su oggetto con tipo di configurazione e iterarne le proprietà. Ecco un esempio che dimostra questo approccio attraverso una classe di utilità (Configurata).

public class ConfigPrinter extends Configured implements Tool { 
    static { 
     // by default core-site.xml is already added 
     // loading "hdfs-site.xml" from classpath 
     Configuration.addDefaultResource("hdfs-site.xml"); 
     Configuration.addDefaultResource("mapred-site.xml"); 
    } 

    @Override 
    public int run(String[] strings) throws Exception { 
     Configuration config = this.getConf(); 
     for (Map.Entry<String, String> entry : config) { 
      System.out.println(entry.getKey() + " = " + entry.getValue()); 
     } 
     return 0; 
    } 

    public static void main(String[] args) throws Exception { 
     ToolRunner.run(new ConfigPrinter(), args); 
    } 
} 
+0

Quindi ho bisogno di compilarlo in hadoop per farlo? –

+0

Sì, è necessario compilarlo e quindi eseguirlo sul client tramite "hadoop jar (il pacchetto) .ConfigPrinter" per esplorare le impostazioni. – rystsov

41

È possibile scaricare Hadoop config eseguendo:

$ hadoop org.apache.hadoop.conf.Configuration 
+1

ma che comanda i dump solo sul core-site, quindi come scaricare hdfs-site –

Problemi correlati