Chargement des données mysql dans hadoop à l’aide des containers docker Introdu

Chargement des données mysql dans hadoop à l’aide des containers docker Introduction Hadoop :Hadoop est un puissant écosystème Big Data qui propose de nombreux outils et services pour principalement stocker de gros volumes de données, les gérer et les traiter. Docker: Avec la technologie Docker, vous pouvez traiter les conteneurs comme des machines virtuelles très légères et modulaires. En outre, ces conteneurs vous offrent une grande flexibilité : vous pouvez les créer, déployer, copier et déplacer d'un environnement à un autre, ce qui vous permet d'optimiser vos applications pour le cloud. CONTAINERS : Les containers sont une abstraction au niveau de la couche d'application qui regroupe le code et les dépendances. Plusieurs containers peuvent s'exécuter sur la même machine et partager le noyau du système d'exploitation avec d'autres containers, chacun s'exécutant en tant que processus isolés dans l'espace utilisateur. Les containers occupent moins d'espace que les machines virtuelles (les images de containers font généralement des dizaines de Mo), peuvent gérer plus d'applications et nécessitent moins de machines virtuelles et de systèmes d'exploitation. Configuration du container Hadoop Docker: Avant de commencer, nous devons installer Docker sur notre machine. Ensuite, pour configurer n'importe quel container docker, nous aurons besoin du fichier image docker approprié qui sert de modèle pour le container que nous souhaitons exécuter, nous pouvons soit créer nos propres images docker, soit utiliser des images préexistantes partagées publiquement par la communauté sur le Docker Hub. Au cours de cette étude de cas, j'utiliserai l’image de démarrage rapide cloudera . Elle propose un déploiement à nœud unique préconfiguré de Hadoop, idéal à des fins de test et d'apprentissage, Maintenant, nous devrions être prêts à commencer à configurer le conteneur. Tout d'abord, nous allons télécharger l'image de démarrage rapide de cloudera, nous assurer que docker est opérationnel sur votre machine et exécuter la commande suivante : Ensuite, pour nous assurer que l'image a été téléchargée avec succès, nous pouvons utiliser la commande suivante pour répertorier toutes les images disponibles. Dans l'étape suivante, nous allons créer le conteneur , cela peut être fait en exécutant la commande suivante : 2 Oumaima Haddad Configuration du container Mysql DataBase Étape 1 : Téléchargez l'image MySQL Docker Commencer par extraire l'image Docker appropriée pour MySQL. Vérifier que l'image est désormais stockée localement en répertoriant les images Docker téléchargées : Etape 2 Déployer le conteneur MySQL Une fois que vous avez l'image, passez au déploiement d'un nouveau conteneur MySQL avec : Étape 3 : Connectez-vous au conteneur MySQL Docker 3 Oumaima Haddad Avant de pouvoir connecter le conteneur du serveur MySQL à l'hôte, vous devez vous assurer que le package client MySQL est installé : Importation Base de données MYSQL vers Hadoop par Sqoop Sqoop est un outil conçu pour transférer des données entre Hadoop et bases de données relationnelles comme MySQL, SQLServer ou Oracle, En fait, il permet des transferts bidirectionnels, autrement dit, exporter des données de Hadoop dans une base de données relationnelle. Il existe principalement deux commandes proposées par Sqoop pour exécuter les opérations de transfert. 4 Oumaima Haddad ● sqoop import ou sqoop-import : Permet de transférer des données d'une base de données relationnelle vers Hadoop. ● sqoop export ou sqoop-export : Permet de transférer des données depuis Hadoop vers une table existante dans une base de données relationnelle En interne, Sqoop exécute une tâche map reduce, les commandes saisies sont associées à une tâche de carte pour récupérer des données à partir de bases de données relationnelles externes, puis une tâche de réduction sera utilisée pour placer ces données dans Hadoop. Pour assurer la connexion avec les bases de données externes, Sqoop utilise différentes API de connecteurs, les plus couramment utilisées sont les pilotes JDBC . Etape 1 : Création table Avant la création de table sous le container MYSQL, nous avons connecté sur notre container mysql puis créer un dossier data dans laquelle nous allons besoin de récupérer un dossier des données pour le remplacer suivant sous la table mysql comme le montrer : 5 Oumaima Haddad L’étape suivante c’est de créer un user “oumaima” ,puis connecter : Dans cette phase on va créer un table cinéma qui contient (id ,user_id,miving_id,rating,timestamp) la capture suivante montre la création de table cinéma : Après la création de la table nous avons besoin de la remplir et pour cela j' utilise un fichier csv “ml_rattings.csv” sous le dossier “data “comme montré dans la cmd suivante : 6 Oumaima Haddad Vérification l’importation de données de fichier csv vers table cinéma Importation avec sqoop les intégrer au système de fichiers distribués Hadoop (HDFS). Nous devons trouver un outil qui permet de transférer facilement des données structurées d’un SGBDR vers HDFS, tout en préservant la structure. Sqoop est que nous pouvons charger automatiquement nos données relationnelles de container MySQL vers container HDFS, tout en préservant la structure. Avec quelques paramètres de configuration supplémentaires, nous pouvons aller plus loin et charger ces données relationnelles directement dans un formulaire prêt à être. lancez le travail Sqoop: pour importer toute la table .Elle lance des opérations (jobs) MapReduce pour transférer les données de la base de données MySQL sous la container mysql, vers la container HDFS sous répertoire /user/oracle/output 7 Oumaima Haddad 8 Oumaima Haddad uploads/Industriel/ tp-sqoop.pdf

  • 42
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager