Apache Hadoop è uno strumento di elaborazione di Big Data open source, ampiamente utilizzato nel settore IT.
A seconda delle dimensioni, del tipo e della scala dei dati, è possibile distribuire Hadoop in modalità autonoma o cluster.
In questo tutorial per principianti, installeremo Hadoop in modalità autonoma su un'istanza del server CentOS 7.
Prerequisiti
- Un'istanza del server x64 Vultr CentOS 7 appena creata.
- Un utente sudo .
Passaggio 1: aggiornare il sistema
Accedi come utente sudo, quindi aggiorna il sistema CentOS 7 all'ultimo stato stabile:
sudo yum install epel-release -y
sudo yum update -y
sudo shutdown -r now
Una volta che il server è online, accedi nuovamente.
Passaggio 2: installare Java
Hadoop è basato su Java e OpenJDK 8 è la versione consigliata per l'ultima versione stabile.
Installa OpenJDK 8 JRE usando YUM:
sudo yum install -y java-1.8.0-openjdk
Verifica l'installazione di OpenJDK 8 JRE:
java -version
L'output dovrebbe assomigliare a:
openjdk version "1.8.0_111"
OpenJDK Runtime Environment (build 1.8.0_111-b15)
OpenJDK 64-Bit Server VM (build 25.111-b15, mixed mode)
Passaggio 3: installare Hadoop
Puoi sempre trovare l'URL di download dell'ultima versione di Hadoop dalla pagina di rilascio ufficiale di Apache Hadoop . Al momento della stesura di questo articolo, l'ultima versione stabile di Hadoop è 2.7.3.
Scarica l'archivio binario di Hadoop 2.7.3:
cd
wget http://www-us.apache.org/dist/hadoop/common/hadoop-2.7.3/hadoop-2.7.3.tar.gz
Scarica il file di checksum corrispondente:
wget https://dist.apache.org/repos/dist/release/hadoop/common/hadoop-2.7.3/hadoop-2.7.3.tar.gz.mds
Installa lo strumento checksum:
sudo yum install perl-Digest-SHA
Calcola il valore SHA256 dell'archivio Hadoop:
shasum -a 256 hadoop-2.7.3.tar.gz
Visualizza il contenuto del file hadoop-2.7.3.tar.gz.mdse assicurati che i due valori SHA256 siano identici:
cat hadoop-2.7.3.tar.gz.mds
Decomprimi l'archivio in una posizione designata:
sudo tar -zxvf hadoop-2.7.3.tar.gz -C /opt
Prima di poter eseguire correttamente Hadoop, è necessario specificare la posizione principale di Java per esso.
Apri il file di configurazione dell'ambiente Hadoop /opt/hadoop-2.7.3/etc/hadoop/hadoop-env.shusando vio il tuo editor di testo preferito:
sudo vi /opt/hadoop-2.7.3/etc/hadoop/hadoop-env.sh
Trova la linea:
export JAVA_HOME=$
Sostituiscilo con:
export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")
Questa impostazione farà sì che Hadoop utilizzi sempre il percorso di installazione predefinito di Java.
Salva ed esci:
:wq!
Puoi aggiungere il percorso del programma Hadoop alla PATHvariabile d'ambiente per comodità:
echo "export PATH=/opt/hadoop-2.7.3/bin:$PATH" | sudo tee -a /etc/profile
source /etc/profile
Passaggio 4: eseguire e testare Hadoop
hadoopEsegui semplicemente il comando e ti verrà richiesto l'utilizzo del comando hadoop e dei suoi vari parametri.
Qui, è possibile utilizzare un esempio integrato per testare l'installazione di Hadoop.
Preparare l'origine dati:
mkdir ~/source
cp /opt/hadoop-2.7.3/etc/hadoop/*.xml ~/source
Usa Hadoop insieme a grep per produrre il risultato:
hadoop jar /opt/hadoop-2.7.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar grep ~/source ~/output 'principal[.]*'
L'output dovrebbe essere:
...
File System Counters
FILE: Number of bytes read=1247812
FILE: Number of bytes written=2336462
FILE: Number of read operations=0
FILE: Number of large read operations=0
FILE: Number of write operations=0
Map-Reduce Framework
Map input records=2
Map output records=2
Map output bytes=37
Map output materialized bytes=47
Input split bytes=117
Combine input records=0
Combine output records=0
Reduce input groups=2
Reduce shuffle bytes=47
Reduce input records=2
Reduce output records=2
Spilled Records=4
Shuffled Maps =1
Failed Shuffles=0
Merged Map outputs=1
GC time elapsed (ms)=24
Total committed heap usage (bytes)=262758400
Shuffle Errors
BAD_ID=0
CONNECTION=0
IO_ERROR=0
WRONG_LENGTH=0
WRONG_MAP=0
WRONG_REDUCE=0
File Input Format Counters
Bytes Read=151
File Output Format Counters
Bytes Written=37
Infine, puoi visualizzare il contenuto dei file di output:
cat ~/output/*
Il risultato dovrebbe essere:
6 principal
1 principal.
Ora sei pronto per esplorare Hadoop.