Charger des données pour des travaux Apache Hadoop dans HDInsight

HDInsight fournit un système HDFS (Hadoop Distributed File System) pour le Stockage Azure et Azure Data Lake Storage. Ce stockage comprend Gen1 et Gen2. Stockage Azure et Azure Data Lake Storage (Gen1 et Gen2) sont conçus en tant qu’extensions HDFS. Ils permettent à l’ensemble des composants de l’environnement Hadoop de fonctionner directement sur les données qu’il gère. Stockage Azure, Data Lake Storage Gen1, et Gen2 sont des systèmes de fichiers distincts. Les systèmes sont optimisés pour le stockage des données et des calculs sur ces données. Pour connaître les avantages que constitue l’utilisation du stockage Azure, consultez la page Utilisation du stockage Azure avec HDInsight. Voir aussi Utiliser Data Lake Storage Gen1 avec HDInsight et Utiliser Data Lake Storage Gen2 avec HDInsight.

Prérequis

Notez les prérequis suivants avant de démarrer :

Charger des données sur le Stockage Azure

Services

Microsoft fournit les utilitaires suivants pour utiliser le Stockage Azure :

Outil Linux OS X Windows
Azure portal
Azure CLI
Azure PowerShell
AZCopy
Commande Hadoop

Notes

La commande Hadoop est uniquement disponible sur le cluster HDInsight. La commande autorise uniquement le chargement de données du système de fichiers local sur le Stockage Azure.

Ligne de commande Hadoop

La ligne de commande Hadoop est utile uniquement pour stocker les données dans le blob du stockage Azure quand celles-ci sont déjà présentes sur le nœud principal du cluster.

Pour utiliser la commande Hadoop, vous devez d’abord vous connecter au nœud principal à l’aide de SSH ou PuTTY.

Une fois connecté, vous pouvez utiliser la syntaxe suivante pour télécharger un fichier dans le stockage.

hadoop fs -copyFromLocal <localFilePath> <storageFilePath>

Par exemple : hadoop fs -copyFromLocal data.txt /example/data/data.txt

Comme le système de fichiers par défaut pour HDInsight se trouve dans le Stockage Azure, /example/data.txt s’y trouve également. Vous pouvez également faire référence au fichier comme ceci :

wasbs:///example/data/data.txt

or

wasbs://<ContainerName>@<StorageAccountName>.blob.core.windows.net/example/data/davinci.txt

Pour la liste des autres commandes Hadoop qui fonctionnent avec des fichiers, voir https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/FileSystemShell.html

Avertissement

Sur les clusters Apache HBase, la taille de bloc par défaut durant l’écriture de données est de 256 Ko. Bien que cela fonctionne bien quand vous utilisez les API HBase ou les API REST, l’utilisation des commandes hadoop ou hdfs dfs pour écrire des données supérieures à ~12 Go génère une erreur. Pour plus d’informations, consultez Exception de stockage pour l’écriture sur un objet blob.

Clients graphiques

Plusieurs applications fournissent également une interface graphique pour utiliser Azure Storage. Le tableau suivant répertorie quelques-unes de ces applications :

Client Linux OS X Windows
Outils Microsoft Visual Studio pour HDInsight
Azure Storage Explorer
Cerulea
CloudXplorer
CloudBerry Explorer for Microsoft Azure
Cyberduck

Monter le stockage Azure comme un lecteur Local

Consultez Monter le stockage Azure comme un lecteur Local.

Effectuer un chargement en utilisant des services

Azure Data Factory

Le service Azure Data Factory est un service entièrement géré pour composer des services de stockage, de traitement et de déplacement de données dans des pipelines de production rationalisés, adaptables et fiables.

Type de stockage Documentation
Stockage Blob Azure Copier des données vers ou depuis le stockage Blob Azure à l’aide d’Azure Data Factory
Azure Data Lake Storage Gen1 Copier des données vers ou depuis Azure Data Lake Storage Gen1 à l'aide d'Azure Data Factory
Azure Data Lake Storage Gen2 Charger des données dans Azure Data Lake Storage Gen2 avec Azure Data Factory

Apache Sqoop

Sqoop est un outil conçu pour transférer des données entre Hadoop et des bases de données relationnelles. Utilisez-le pour importer des données à partir d’un système de gestion de base de données relationnelle (SGBDR), comme SQL Server, MySQL ou Oracle. Puis dans le système de fichiers Hadoop Distributed File System (HDFS). Transformez les données dans Hadoop avec MapReduce ou Hive, puis exportez de nouveau les données dans un SGBDR.

Pour plus d’informations, consultez Utilisation de Sqoop avec HDInsight.

Kits de développement logiciel (SDK) de développement

Le Stockage Azure est également accessible à l’aide d’un SDK Azure dans les langages de programmation suivants :

  • .NET
  • Java
  • Node.js
  • PHP
  • Python
  • Ruby

Pour plus d'informations sur l'installation des kits de développement logiciel (SDK) Azure, consultez Téléchargements Azure

Étapes suivantes

Maintenant que vous savez comment obtenir des données avec HDInsight, consultez les articles suivants pour apprendre à effectuer des analyses :