GNU/Linux >> Linux Esercitazione >  >> Linux

Come trovare la directory Hadoop hdfs sul mio sistema?

Se esegui:

hdfs dfs -copyFromLocal foo.txt bar.txt

quindi il file locale foo.txt verrà copiato nella tua directory hdfs /user/popeye/bar.txt (dove popeye è il tuo nome utente.) Di conseguenza, quanto segue ottiene lo stesso risultato:

hdfs dfs -copyFromLocal foo.txt /user/popeye/bar.txt

Prima di copiare qualsiasi file in hdfs, assicurati di creare prima la directory principale. Non devi inserire i file in questa directory "home", ma (1) è meglio non ingombrare "/" con tutti i tipi di file e (2) seguire questa convenzione aiuterà a prevenire conflitti con altri utenti.


Il tuo approccio è sbagliato o forse la comprensione è sbagliata

dfs.datanode.data.dir , è dove vuoi memorizzare i tuoi blocchi di dati

Se digiti hdfs dfs -ls / otterrai un elenco di directory in hdfs. Quindi puoi trasferire file da locale a hdfs usando -copyFromLocal o -put in una particolare directory o utilizzando -mkdir puoi creare una nuova directory

Fare riferimento al collegamento sottostante per ulteriori informazioni

http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/HDFSCommands.html


Come per la prima risposta, la sto elaborando in dettaglio per Hadoop 1.x -

Supponiamo che tu stia eseguendo questo script su un modello di pseudo distribuzione, probabilmente otterrai uno o due elenchi di utenti (NameNodes) illustrati -

sul nostro modello di distribuzione completo, prima hai i diritti di amministratore per eseguire queste cose e ci sarà un numero N di elenchi di NameNode (utenti).

Quindi ora passiamo al nostro punto -

Per prima cosa raggiungi la tua home directory Hadoop e da lì esegui questo script -

bin/hadoop fs -ls /

Il risultato sarà come questo -

drwxr-xr-x   - xuiob78126arif supergroup          0 2017-11-30 11:20 /user

quindi qui xuiob78126arif è il mio nome node(master/user) e la directory NameNode(user) è -

/user/xuiob78126arif/

ora puoi andare sul tuo browser e cercare l'indirizzo -

http://xuiob78126arif:50070

e da lì puoi ottenere il Cluster Summary, NameNode Storage , ecc.

Nota:lo script fornirà risultati solo in una condizione, se esiste almeno un file o una directory in DataNode altrimenti otterrai -

ls: Cannot access .: No such file or directory.

quindi, in tal caso, per prima cosa metti qualsiasi file di bin/hadoop fs -put <source file full path>

e lì dopo esegui bin/hadoop fs -ls / script.

e ora spero che tu abbia capito un po' il tuo problema, grazie.


Linux
  1. come trovare il proprietario di un file o di una directory in python

  2. Shell - Come trovare la directory di alcuni comandi?

  3. Come posso eseguire dos2unix su un'intera directory?

  4. Come contare il numero di file in ogni directory?

  5. Come posso trovare il file più vecchio in un albero di directory

Come contare i file nella directory in Linux

Come trovare i dettagli del sistema Linux usando inxi

Come trovare gli ultimi utenti che hanno effettuato l'accesso in Linux

Come unire un sistema Linux a un dominio Active Directory

Come trovare la dimensione totale di una directory in Linux

Come trovare tutti i file a zero byte nella directory