Vous êtes sur la page 1sur 7

ISSAT Mateur A.U.

2021-2022 2ème MP SSR

TP 1 Big Data
Initiation à Hadoop File System (HDFS)

Objectif :
Ce TP constitue un premier pas vers l’utilisation d’outils Big Data. Nous avons fait le choix de
l’environnement Apache Hadoop, car c’est un framework open-source de stockage et de traitement de
données volumineuses sur un cluster de machines distribuées. Il est utilisé par un grand nombre de
contributeurs et utilisateurs.
Description :
Au terme de ce TP, vous serez capables :
 d’installer Hadoop Framework et le configurer
 de manipuler des fichiers dans le système de fichiers distribués HDFS
Environnement logiciel :

 Apache Hadoop version 3.3.1 [http://hadoop.apache.org/]


 JDK : 1.8
Installation de Hadoop Framework :
Vous allez installer la version 3.3.1 de Hadoop. Pour cela, vous devez suivre les étapes suivantes :
Etape 1 : Télécharger Hadoop version 3.3.1 pour windows
Etape 2 : Extraction
Extraire le continu de fichier .tar.gz en utilisant le logiciel 7zip et le placer dans le dossier C:/big-data.
A la fin de cette étape, vous aurez le contenu suivant dans le dossier C:\big-data\hadoop-3.3.1

1
Houda Benali
ISSAT Mateur A.U. 2021-2022 2ème MP SSR

Etape 3 : Ajout des fichiers winutils


télécharger les fichiers nécessaires au fonctionnement de hadoop sur windows de ce lien :
https://github.com/kontext-tech/winutils/tree/master/hadoop-3.3.1/bin. Placer ces fichiers dans le
dossier bin de hadoop-3.3.1 que vous avez téléchargé.
Le dossier bin devra contenir les fichiers suivants :

Etape 4 : installation de java JDK


Télécharger java JDK 1.8 et installer le de façon à ne pas avoir d’espace dans le chemin d’accès (par
exemple C:\Java\jdk1.8.0_161)
Configurer les variables d’environnement en ajoutant la variable JAVA-HOME avec la commande
suivante : SETX JAVA_HOME "C:\Java\jdk1.8.0_161"

Etape 5 : Ajouter la variable d’environnement HADOOP_HOME

De même que java JDK, configurer les variables d’environnement en ajoutant la variable
d’environnement en avec la commande : SETX HADOOP_HOME "C:\big-data\hadoop-3.2.1"

Etape 6 : Configurer la variable d’environnement PATH

Ajouter à votre PATH le chemin d’accès aux dossiers bin de java et de hadoop :

 %JAVA_HOME%/bin
 %HADOOP_HOME%/bin

Vérifier que la configuration a été bien faite en tapant winutils.exe dans l’invite de commandes ou le
Windows PowerShell.
2
Houda Benali
ISSAT Mateur A.U. 2021-2022 2ème MP SSR

Vous devez aussi pouvoir exécuter la commande hadoop –version

Etape 7 : Configurer Hadoop


Durant cette étape, vous allez configurer les composants suivants de hadoop : Core, YARN,
MapReduce, HDFS
Configurer core site
Ouvrez le fichier core-site.xml situé dans %HADOOP_HOME%\etc\hadoop
Remplacez la configuration avec :
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://0.0.0.0:9000</value>
</property>
</configuration>
3
Houda Benali
ISSAT Mateur A.U. 2021-2022 2ème MP SSR

Configurer HDFS
Créez un dossier « data » dans le dossier hadoop-3.3.1 (le chemin selon ce tp : C:/big-data/hadoop-
3.3.1/). Dans ce dossier, créez deux dossiers « namenode » et « datanode ».
Ouvrez le fichier hdfs-site.xml situé dans %HADOOP_HOME%\etc\hadoop
Remplacez la configuration avec :
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///C:/big-data/hadoop-3.3.1/data/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/C:/big-data/hadoop-3.3.1/data/datanode</value>
</property>
</configuration>

Configurer MapReduce et YARN

Ouvrez le fichier mapred-site.xml situé dans %HADOOP_HOME%\etc\hadoop


Remplacez la configuration avec :
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
Ouvrez le fichier yarn-site.xml situé dans %HADOOP_HOME%\etc\hadoop
Remplacez la configuration avec :
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShaffleHandler</value>
</property>
</configuration>

4
Houda Benali
ISSAT Mateur A.U. 2021-2022 2ème MP SSR

Lancement de HDFS
1. On formate le système de fichiers : hdfs namenode –format

2. On démarre les démons (NameNode et DataNode) : %HADOOP_HOME%\sbin\start-dfs.cmd

3. Vous pouvez accéder à l’interface web de hadoop via l’adresse : http://localhost:9870/

5
Houda Benali
ISSAT Mateur A.U. 2021-2022 2ème MP SSR

En cas de problème avec HDFS, il faut

1. arrêter le serveur hdfs avec la commande %HADOOP_HOME%\sbin\stop-dfs.cmd


2. supprimer tout les répertoires qui ont un rapport avec hadoop
3. et recommencer à hdfs namenode -format ...

Manipulation de HDFS :
Toutes les commandes interagissant avec le système de fichiers Hadoop commencent par hadoop fs.
Ensuite, les options rajoutées sont très largement inspirées des commandes Unix standard.
Dans cette section, nous allons utiliser les commandes du shell Hadoop de façon à importer des
données dans HDFS et à exporter des données à partir de HDFS. Ces commandes sont souvent
employées pour charger des données appropriées, à télécharger des données traitées, à maintenir le
système de fichiers et à consulter le contenu des dossiers. Il est donc indispensable de les connaître
pour exploiter efficacement HDFS.
La première étape est la création des répertoires nécessaires
hdfs dfs -mkdir /user
hdfs dfs -mkdir /user/<votre user_name>

Réalisez les opérations minimales suivantes pour prendre en main hdfs :


1. Créer un dossier myinput dans HDFS : hdfs dfs -mkdir myinput
2. Placer un fichier myfile.txt dans le répertoire créé : Pour copier le fichier myfile.txt dans
HDFS sous le répertoire myinput, il s’agit de se placer dans le répertoire local data où se
trouve le fichier, puis tapez la commande : hadoop fs -put myfile.txt myinput/
3. Lister le contenu du répertoire hdfs : hadoop fs -ls myinput
4. Pour visualiser les dernières lignes du fichier, tapez :
hadoop fs -tail myinput/myfile.txt
5. Renommer le fichier dans hdfs :
hadoop fs -mv myinput/myfile.txt myinput/newfile.txt
6. Récupérer le fichier placé sur hdfs et l'enregistrer dans un fichier local :
hadoop fs -get myinput/newfile.txt

Dans la Table 1 nous résumons les commandes les plus utilisées dans Hadoop HDFS

6
Houda Benali
ISSAT Mateur A.U. 2021-2022 2ème MP SSR

7
Houda Benali

Vous aimerez peut-être aussi