Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

File system, shell e configurazione di Hadoop

Gli strumenti necessari per l'accesso e la gestione del file system distribuito HDFS di Hadoop. I comandi per interagire attraverso la shell e i parametri per la Web API; scopriamo nel dettaglio il ruolo svolto dai principali file XML per la configurazione del framework.
Gli strumenti necessari per l'accesso e la gestione del file system distribuito HDFS di Hadoop. I comandi per interagire attraverso la shell e i parametri per la Web API; scopriamo nel dettaglio il ruolo svolto dai principali file XML per la configurazione del framework.
Link copiato negli appunti

Come utilizzare il file system

L'accesso al file system e la sua gestione da parte degli utenti può avvenire in due modi:

  1. tramite la shell dei comandi;
  2. tramite la Web API.

Nel primo caso, si utilizza la shell di Hadoop (di cui parleremo in seguito) per lanciare dei comandi nel formato hadoop nome-comando. Nel secondo caso invece, si utilizza un URL nel formato seguente: http://HOST:HTTP_PORT/webhdfs/v1/PATH?op=OPERATION dove:

Valore Descrizione
HOST E' l'indirizzo del server.
HTTP_PORT E' la porta.
PATH E' il percorso di un file o cartella; i percorsi dei file in HDFS sono preceduti da hdfs://namenode dove namenode è l'indirizzo IP del NameNode.
OPERATION E' l'operazione da compiere che corrisponde a una delle operazioni a carico del file system (ad esempio OPEN, APPEND, CREATE).

I comandi possono essere lanciati sia con la sintassi hdfs dfs -opzione sia con la sintassi hadoop fs -opzione. Di seguito l'elenco dei comandi HDFS:

Comando Descrizione Esempio
cat Copia i file specificati sullo standard output hdfs dfs -cat hdfs://namenode/user/hadoop/file
get Copia un file da HDFS al file system locale hdfs dfs -get hdfs://namenode/user/hadoop/file file-locale
put Copia un file dal file system locale ad HDFS hdfs dfs -get file-locale hdfs://namenode/user/hadoop/file
ls Restituisce informazioni su file e directory hdfs dfs -get file-locale hdfs://namenode/data/test
mkdir Crea una cartella nel percorso indicato hdfs dfs -mkdir hdfs://namenode/data/test-folder
rm Elimina cartelle e file specificati hdfs dfs -rm hdfs://namenode/data/test-folder
rmr rm in versione ricorsiva hdfs dfs -rmr file-locale hdfs://namenode/data/test
copyFromLocal Equivalente a put ma si limita solo ai file locali hdfs dfs -copyFromLocal file-locale hdfs://namenode/data/test
copyToLocal Equivalente a get ma si limita solo ai file locali hdfs dfs -copyToLocal hdfs://namenode/data/test file-locale
count Restituisce il conteggio di directory e file contenuti nel percorso indicato. Il formato di ritorno contiene 3 colonne: DIR_COUNT, FILE_COUNT, CONTENT_SIZE FILE_NAME hdfs dfs -count hdfs://namenode/data/test

La shell di Hadoop

Oltre ai comandi di HDFS, la shell di Hadoop consente l'accesso a una serie di altri comandi, attraverso la seguente sintassi: hadoop [--config confdir] [COMMAND] [GENERIC_OPTIONS] [COMMAND_OPTIONS] dove:

Valore Descrizione
--config Consente di specificare una cartella di configurazione diversa da quella di default.
COMMAND E' il nome del comando da lanciare.
GENERIC_OPTIONS Sono parametri che possono essere utilizzate per ciascuno dei comandi.
COMMAND_OPTIONS Sono parametri specifici del comando.

File di configurazione

La configurazione di Hadoop si concentra in tre file principali, elencati di seguito e che utilizzeremo durante la fase di installazione/configurazione di Hadoop

File Descrizione
core-site.xml Contiene le informazioni generali quali il nome del file system, la cartella che contiene i checkpoint e altre proprietà relative ai checkpoint.
hdfs-site.xml Contiene informazioni su dove viene salvata la tabella dei nomi, sull'abilitazione dei webhdfs, sulla directory dei dati, sull'uso o meno della security e sull'indirizzo del NameNode secondario.
mapred-site.xml Questo file contiene le configurazioni riguardanti MapReduce, come, per esempio, la directory di sistema o l'indirizzo del JobTracker.

Fino ad ora si è parlato in particolare di HDFS e di come esso metta a disposizione gli strumenti per l'accesso ai dati, ma la loro elaborazione avviene tramite la componente MapReduce il cui funzionamento verrà descritto nei prossimi capitoli.

Ti consigliamo anche