Caricare dati per processi Apache Hadoop in HDInsight

HDInsight fornisce un file system distribuito Hadoop (HDFS) su Archiviazione di Azure e Azure Data Lake Storage. Questa risorsa di archiviazione include Gen1 e Gen2. Archiviazione di Azure e Data Lake Storage Gen1 e Gen2 sono progettati come estensioni HDFS. Abilitano il set completo di componenti nell'ambiente Hadoop per operare direttamente sui dati gestiti. Archiviazione di Azure, Data Lake Storage Gen1 e Gen2 sono file system distinti. I sistemi sono ottimizzati per l'archiviazione di dati e calcoli su tali dati. Per informazioni sui vantaggi dell'uso di Archiviazione di Azure, vedere Usare Archiviazione di Azure con HDInsight. Vedere anche usare Data Lake Storage Gen1 con HDInsight e Usare Data Lake Storage Gen2 con HDInsight.

Prerequisiti

Prima di iniziare, tenere presenti i requisiti seguenti:

Caricare i dati in Archiviazione di Azure

Utilità

Microsoft fornisce le utilità seguenti da usare con Archiviazione di Azure:

Strumento Linux OS X Windows
Azure portal
Interfaccia della riga di comando di Azure
Azure PowerShell
AzCopy
Comando Hadoop

Nota

Il comando Hadoop è disponibile solo nel cluster HDInsight. Il comando consente solo il caricamento dei dati dal file system locale in Archiviazione di Azure.

Riga di comando di Hadoop

La riga di comando di Hadoop è utile solo per archiviare i dati nel BLOB di archiviazione di Azure quando i dati sono già presenti nel nodo head del cluster.

Per usare il comando Hadoop, è prima necessario connettersi al nodo head usando SSH o PuTTY.

Dopo essersi connessi, è possibile usare la sintassi seguente per caricare un file nell'archiviazione.

hadoop fs -copyFromLocal <localFilePath> <storageFilePath>

Ad esempio, usare hadoop fs -copyFromLocal data.txt /example/data/data.txt

Poiché il file system predefinito per HDInsight si trova in Archiviazione di Azure, /example/data/data.txt è effettivamente in Archiviazione di Azure. È inoltre possibile fare riferimento al file come segue:

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

oppure

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

Per un elenco di altri comandi di Hadoop che funzionano con i file, vedere https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/FileSystemShell.html

Avviso

Nei cluster Apache HBase la dimensione di blocco predefinita usata per la scrittura dei dati è 256 KB. Questa impostazione non costituisce un problema quando si usano API HBase o REST, ma l'uso dei comandi hadoop o hdfs dfs per scrivere dati di dimensioni superiori a ~12 GB provoca un errore. Per altre informazioni, vedere Eccezione di archiviazione per la scrittura nel BLOB.

Client con interfaccia grafica

Esistono diverse applicazioni che forniscono un'interfaccia grafica per usare Archiviazione di Azure. Nella tabella seguente è riportato un elenco di alcune di queste applicazioni:

Client Linux OS X Windows
Microsoft Visual Studio Tools per HDInsight
Azure Storage Explorer
Cerulea
CloudXplorer
CloudBerry Explorer per Microsoft Azure
Cyberduck

Montare Archiviazione di Azure come unità locale

Vedere Montare Archiviazione di Azure come unità locale.

Caricamento tramite servizi

Azure Data Factory

Il servizio Azure Data Factory è un servizio completamente gestito per la composizione dei dati: archiviazione, elaborazione e spostamento dei servizi in pipeline di produzione di dati semplificate, adattabili e affidabili.

Tipo di archiviazione Documentazione
Archiviazione BLOB di Azure Copiare dati da e in Archiviazione BLOB di Azure usando Azure Data Factory
Azure Data Lake Storage Gen1 Copiare dati da e in Azure Data Lake Storage di 1° generazione usando Azure Data Factory
Azure Data Lake Storage Gen2 Caricare dati in Azure Data Lake Storage Gen2 con Azure Data Factory

Apache Sqoop

Sqoop è uno strumento progettato per il trasferimento di dati tra Hadoop e i database relazionali. Usarlo per importare dati da un sistema di gestione del database relazionale (RDBMS), ad esempio SQL Server, MySQL o Oracle. Quindi nel file system distribuito hadoop (HDFS). Trasformare i dati in Hadoop con MapReduce o Hive e quindi esportare nuovamente i dati in rdbms.

Per altre informazioni, vedere Usare Sqoop con HDInsight.

SDK di sviluppo

È possibile accedere ad Archiviazione di Microsoft Azure anche tramite un SDK di Azure dai linguaggi di programmazione seguenti:

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

Per altre informazioni sull'installazione di SDK di Azure, vedere Download di Azure

Passaggi successivi

Dopo aver appreso come ottenere dati in HDInsight, leggere gli articoli seguenti per apprendere l'analisi: