Usare Azure Data Lake Storage Gen2 con cluster Azure HDInsight
Azure Data Lake Archiviazione Gen2 è un servizio di archiviazione cloud dedicato all'analisi dei Big Data, basato sull'archiviazione BLOB di Azure. Data Lake Archiviazione Gen2 combina le funzionalità di Archiviazione BLOB di Azure e Azure Data Lake Archiviazione Gen1. Il servizio risultante offre funzionalità di Azure Data Lake Archiviazione Gen1, tra cui: semantica del file system, sicurezza a livello di directory e a livello di file e adattabilità. Oltre alle funzionalità di archiviazione a basso costo, a livelli, disponibilità elevata e ripristino di emergenza da Archiviazione BLOB di Azure.
Per un confronto completo delle opzioni di creazione del cluster con Data Lake Archiviazione Gen2, vedere Confrontare le opzioni di archiviazione per l'uso con i cluster Azure HDInsight.
Avviso
La fatturazione dei cluster HDInsight viene calcolata al minuto, indipendentemente dal fatto che siano usati o meno. Assicurarsi di eliminare il cluster dopo aver finito di usarlo. Vedere Come eliminare un cluster HDInsight.
Disponibilità di Data Lake Storage Gen2
Data Lake Archiviazione Gen2 è disponibile come opzione di archiviazione per quasi tutti i tipi di cluster Azure HDInsight come account di archiviazione predefinito e aggiuntivo. HBase, tuttavia, può avere un solo account con Data Lake Archiviazione Gen2.
Nota
Dopo aver selezionato Data Lake Archiviazione Gen2 come tipo di archiviazione primario, non è possibile selezionare un data lake Archiviazione Gen1 come risorsa di archiviazione aggiuntiva.
Creare cluster HDInsight con Data Lake Archiviazione Gen2
Usare i collegamenti seguenti per istruzioni dettagliate su come creare cluster HDInsight con accesso a Data Lake Archiviazione Gen2.
- Uso del portale
- Utilizzare l'interfaccia della riga di comando di Azure
- PowerShell non è attualmente supportato per la creazione di un cluster HDInsight con Azure Data Lake Archiviazione Gen2.
Controllo di accesso per Data Lake Archiviazione Gen2 in HDInsight
Quali tipi di autorizzazioni sono supportati da Data Lake Storage Gen2?
Data Lake Archiviazione Gen2 usa un modello di controllo di accesso che supporta sia il controllo degli accessi in base al ruolo di Azure che gli elenchi di controllo di accesso simili a POSIX. Data Lake Archiviazione Gen1 supporta gli elenchi di controllo di accesso solo per controllare l'accesso ai dati.
Il controllo degli accessi in base al ruolo di Azure usa assegnazioni di ruolo per applicare in modo efficace set di autorizzazioni a utenti, gruppi ed entità servizio per le risorse di Azure. In genere, tali risorse di Azure sono vincolate alle risorse di primo livello, ad esempio gli account di archiviazione BLOB di Azure. Per l'archiviazione BLOB di Azure e anche Data Lake Archiviazione Gen2, questo meccanismo è stato esteso alla risorsa del file system.
Per altre informazioni sulle autorizzazioni per i file con il controllo degli accessi in base al ruolo di Azure, vedere Controllo degli accessi in base al ruolo di Azure.
Per altre informazioni sulle autorizzazioni per i file con elenchi di controllo di accesso, vedere Elenchi di controllo di accesso per file e directory.
Ricerca per categorie controllare l'accesso ai dati in Data Lake Archiviazione Gen2?
La capacità del cluster HDInsight di accedere ai file in Data Lake Storage Gen2 è controllata dalle identità gestite. Un'identità gestita è un'identità registrata in Microsoft Entra le cui credenziali sono gestite da Azure. Con le identità gestite non è necessario registrare le entità servizio nell'ID Microsoft Entra. Oppure mantenere le credenziali, ad esempio i certificati.
I servizi di Azure hanno due tipi di identità gestite: assegnate dal sistema e assegnate dall'utente. HDInsight usa identità gestite assegnate dall'utente per accedere a Data Lake Storage Gen2. Un user-assigned managed identity
oggetto viene creato come risorsa di Azure autonoma. Tramite un processo di creazione, Azure crea un'identità nel tenant di Microsoft Entra considerato attendibile dalla sottoscrizione in uso. Dopo la creazione, l'identità può essere assegnata a una o più istanze del servizio di Azure.
Il ciclo di vita di un'identità assegnata dall'utente viene gestito separatamente dal ciclo di vita delle istanze del servizio di Azure a cui l'identità è assegnata. Per altre informazioni sulle identità gestite, vedere Che cosa sono le identità gestite per le risorse di Azure?
Ricerca per categorie impostare le autorizzazioni per gli utenti di Microsoft Entra per eseguire query sui dati in Data Lake Archiviazione Gen2 usando Hive o altri servizi?
Per impostare le autorizzazioni per gli utenti per eseguire query sui dati, usare i gruppi di sicurezza di Microsoft Entra come entità assegnata negli ACL. Non assegnare direttamente le autorizzazioni di accesso ai file a singoli utenti o entità servizio. Con i gruppi di sicurezza di Microsoft Entra per controllare il flusso delle autorizzazioni, è possibile aggiungere e rimuovere utenti o entità servizio senza riapplicare gli ACL a un'intera struttura di directory. È sufficiente aggiungere o rimuovere gli utenti dal gruppo di sicurezza Microsoft Entra appropriato. Gli ACL non vengono ereditati, quindi la riapplicazione degli elenchi di controllo di accesso richiede l'aggiornamento dell'ACL in ogni file e sottodirectory.
Accedere ai file dal cluster
Esistono diversi modi per accedere ai file in Data Lake Archiviazione Gen2 da un cluster HDInsight.
Uso di nomi completi. Con questo approccio viene fornito il percorso completo al file a cui si desidera accedere.
abfs://<containername>@<accountname>.dfs.core.windows.net/<file.path>/
Uso del formato con percorso abbreviato. Con questo approccio si sostituisce il percorso fino alla radice del cluster con:
abfs:///<file.path>/
Uso del percorso relativo. Con questo approccio viene fornito unicamente il percorso relativo al file a cui si desidera accedere.
/<file.path>/
Esempi di accesso ai dati
Gli esempi sono basati su una connessione SSH al nodo head del cluster. Negli esempi vengono usati tutti e tre gli schemi URI. Sostituire CONTAINERNAME
e STORAGEACCOUNT
con i valori appropriati
Alcuni comandi HDFS
Creare un file nell'archiviazione locale.
touch testFile.txt
Creare directory nell'archiviazione del cluster.
hdfs dfs -mkdir abfs://CONTAINERNAME@STORAGEACCOUNT.dfs.core.windows.net/sampledata1/ hdfs dfs -mkdir abfs:///sampledata2/ hdfs dfs -mkdir /sampledata3/
Copiare i dati dall'archiviazione locale all'archiviazione del cluster.
hdfs dfs -copyFromLocal testFile.txt abfs://CONTAINERNAME@STORAGEACCOUNT.dfs.core.windows.net/sampledata1/ hdfs dfs -copyFromLocal testFile.txt abfs:///sampledata2/ hdfs dfs -copyFromLocal testFile.txt /sampledata3/
Elencare il contenuto della directory nell'archiviazione del cluster.
hdfs dfs -ls abfs://CONTAINERNAME@STORAGEACCOUNT.dfs.core.windows.net/sampledata1/ hdfs dfs -ls abfs:///sampledata2/ hdfs dfs -ls /sampledata3/
Creazione di una tabella Hive
Per scopi illustrativi, vengono visualizzati tre percorsi di file. Per l'esecuzione effettiva, usare solo una delle voci LOCATION
.
DROP TABLE myTable;
CREATE EXTERNAL TABLE myTable (
t1 string,
t2 string,
t3 string,
t4 string,
t5 string,
t6 string,
t7 string)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ' '
STORED AS TEXTFILE
LOCATION 'abfs://CONTAINERNAME@STORAGEACCOUNT.dfs.core.windows.net/example/data/';
LOCATION 'abfs:///example/data/';
LOCATION '/example/data/';
Passaggi successivi
- Azure HDInsight integration with Data Lake Storage Gen2 preview - ACL and security update (Integrazione di Azure HDInsight con Data Lake Storage Gen2 (anteprima) - Aggiornamento di ACL e sicurezza)
- Introduzione ad Azure Data Lake Storage Gen2
- Esercitazione: Estrarre, trasformare e caricare dati usando Interactive Query in Azure HDInsight