Condividi tramite


Come montare ADLS Gen2 per la suddivisione in livelli HDFS in un cluster Big Data

Le sezioni seguenti forniscono un esempio di come configurare la suddivisione in livelli HDFS con un'origine dati di Azure Data Lake Storage Gen2.

Important

I cluster Big Data di Microsoft SQL Server 2019 sono stati ritirati. Il supporto per i cluster Big Data di SQL Server 2019 è terminato a partire dal 28 febbraio 2025. Per altre informazioni, vedere il post di blog sull'annuncio e le opzioni per Big Data nella piattaforma Microsoft SQL Server.

Prerequisites

Caricare dati in Azure Data Lake Storage

La sezione seguente descrive come configurare Azure Data Lake Storage Gen2 per il test della suddivisione in livelli HDFS. Se i dati sono già archiviati in Azure Data Lake Storage, è possibile ignorare questa sezione per usare i propri dati.

  1. Creare un account di archiviazione con le funzionalità di Data Lake Storage Gen2.

  2. Crea un file system in questo account di archiviazione per i tuoi dati.

  3. Carica un file CSV o Parquet nel contenitore. Si tratta dei dati HDFS esterni che verranno montati in HDFS nel cluster Big Data.

Credenziali per il montaggio

Usare le credenziali OAuth per montare

Per utilizzare le credenziali OAuth per il montaggio, è necessario seguire questi passaggi:

  1. Accedere al portale di Azure

  2. Andare a Microsoft Entra ID. Questo servizio dovrebbe essere visualizzato sulla barra di navigazione a sinistra.

  3. Selezionare Registrazioni app dal menu delle risorse e creare una nuova registrazione.

  4. Creare un'applicazione Web e seguire la procedura guidata. Ricordare il nome dell'app creata in questo passaggio. È necessario aggiungere questo nome all'account ADLS come utente autorizzato. Si noti anche l'ID client dell'applicazione nella panoramica quando si seleziona l'app.

  5. Dopo aver creato l'applicazione Web, passare a Certificati&segreti e scegliere di creare un nuovo segreto client. Seleziona una durata principale. Usare Aggiungi per salvare il segreto.

  6. Tornare alla pagina Registrazioni app e fare clic su "Endpoint" nella parte superiore. Annotare l'endpoint del token OAuth (v2) URL

  7. A questo momento dovrebbero essere annotati gli elementi seguenti per OAuth:

    • "ID Client dell'Applicazione" dell'applicazione Web
    • Segreto client
    • Endpoint del token

Aggiunta dell'entità servizio all'account ADLS

  1. Accedere di nuovo al portale e accedere al file system dell'account di archiviazione ADLS e selezionare Controllo di accesso (IAM) nel menu a sinistra.
  2. Selezionare "Aggiungi un'assegnazione di ruolo"
  3. Selezionare il ruolo "Collaboratore ai dati dei BLOB di archiviazione"
  4. Cercare il nome creato in precedenza (si noti che non viene visualizzato nell'elenco, ma verrà trovato se si cerca il nome completo).
  5. Salva il ruolo.

Attendere 5-10 minuti prima di usare le credenziali per il montaggio

Impostare la variabile di ambiente per le credenziali OAuth

Aprire un prompt dei comandi su una macchina client in grado di accedere al cluster Big Data. Impostare una variabile di ambiente usando il formato seguente. Le credenziali devono trovarsi in un elenco delimitato da virgole. Il comando 'set' viene usato in Windows. Se si usa Linux, usare invece 'export'.

Si noti che è necessario rimuovere eventuali interruzioni di riga o spazio tra le virgole "," quando si specificano le credenziali. La formattazione seguente è solo per semplificare la lettura.

   set MOUNT_CREDENTIALS=fs.azure.account.auth.type=OAuth,
   fs.azure.account.oauth.provider.type=org.apache.hadoop.fs.azurebfs.oauth2.ClientCredsTokenProvider,
   fs.azure.account.oauth2.client.endpoint=[token endpoint],
   fs.azure.account.oauth2.client.id=[Application client ID],
   fs.azure.account.oauth2.client.secret=[client secret]

Usare le chiavi di accesso per montare

È anche possibile montare usando le chiavi di accesso che è possibile ottenere per l'account ADLS nel portale di Azure.

Tip

Per altre informazioni su come trovare la chiave di accesso (<storage-account-access-key>) per l'account di archiviazione, vedere Visualizzare le chiavi dell'account e la stringa di connessione.

Impostare la variabile di ambiente per le credenziali della chiave di accesso

  1. Aprire un prompt dei comandi su una macchina client in grado di accedere al cluster Big Data.

  2. Aprire un prompt dei comandi su una macchina client in grado di accedere al cluster Big Data. Impostare una variabile di ambiente usando il formato seguente. Le credenziali devono trovarsi in un elenco delimitato da virgole. Il comando 'set' viene usato in Windows. Se si usa Linux, usare invece 'export'.

Si noti che è necessario rimuovere eventuali interruzioni di riga o spazio tra le virgole "," quando si specificano le credenziali. La formattazione seguente è solo per semplificare la lettura.

set MOUNT_CREDENTIALS=fs.azure.abfs.account.name=<your-storage-account-name>.dfs.core.windows.net,
fs.azure.account.key.<your-storage-account-name>.dfs.core.windows.net=<storage-account-access-key>

Montare l'archiviazione HDFS remota

Ora che è stata impostata la variabile di ambiente MOUNT_CREDENTIALS per le chiavi di accesso o con OAuth, è possibile avviare il montaggio. La procedura seguente consente di montare l'archiviazione HDFS remota in Azure Data Lake nell'archiviazione HDFS locale del cluster Big Data.

  1. Usare kubectl per trovare l'indirizzo IP per il servizio endpoint controller-svc-external nel cluster Big Data. Cerca External-IP.

    kubectl get svc controller-svc-external -n <your-big-data-cluster-name>
    
  2. Accedere con azdata usando l'indirizzo IP esterno dell'endpoint controller con il nome utente e la password del cluster:

    azdata login -e https://<IP-of-controller-svc-external>:30080
    
  3. Impostare la variabile di ambiente MOUNT_CREDENTIALS (scorrere verso l'alto per istruzioni)

  4. Montare l'archiviazione HDFS remota in Azure usando azdata bdc hdfs mount create. Sostituire i valori segnaposto prima di eseguire il comando seguente:

    azdata bdc hdfs mount create --remote-uri abfs://<blob-container-name>@<storage-account-name>.dfs.core.windows.net/ --mount-path /mounts/<mount-name>
    

    Note

    Il comando mount create è asincrono. Al momento, non viene visualizzato alcun messaggio che indica se il montaggio è riuscito. Controllare la sezione stato per verificare lo stato delle montature.

Se è stato montato correttamente, dovrebbe essere possibile eseguire query sui dati HDFS ed eseguire processi Spark su di esso. Verrà visualizzato in HDFS per il cluster Big Data nel percorso specificato da --mount-path.

Ottenere lo stato dei montaggi

Per elencare lo stato di tutti i montaggi nel cluster Big Data, usare il comando seguente:

azdata bdc hdfs mount status

Per elencare lo stato di un montaggio in un percorso specifico in HDFS, usare il comando seguente:

azdata bdc hdfs mount status --mount-path <mount-path-in-hdfs>

Aggiornare il montaggio

Nell'esempio seguente si aggiorna il montaggio. Questo aggiornamento cancella anche la cache di montaggio.

azdata bdc hdfs mount refresh --mount-path <mount-path-in-hdfs>

Eliminare il montaggio

Per eliminare il montaggio, usare il comando azdata bdc hdfs mount delete e specificare il percorso di montaggio in HDFS:

azdata bdc hdfs mount delete --mount-path <mount-path-in-hdfs>

Next steps

Per altre informazioni sui cluster Big Data di SQL Server 2019, vedere Introduzione ai cluster Big Data di SQL Server 2019.