Dateisystemvorgänge in Azure Data Lake Storage Gen1 mit Python

In diesem Artikel wird beschrieben, wie Sie das Python SDK verwenden, um Dateisystemvorgänge in Azure Data Lake Storage Gen1 durchzuführen. Eine Anleitung zum Durchführen von Kontoverwaltungsvorgängen in Data Lake Storage Gen1 mit Python finden Sie unter Kontoverwaltungsvorgänge für Data Lake Storage Gen1 mit Python.

Voraussetzungen

Installieren der Module

Zum Verwenden von Data Lake Storage Gen1 mit Python müssen Sie drei Module installieren.

  • Das Modul azure-mgmt-resource, in dem Azure-Module für Active Directory usw. enthalten sind.
  • Das Modul azure-mgmt-datalake-store, das die Kontoverwaltungsvorgänge für Azure Data Lake Storage Gen1 enthält. Weitere Informationen zu diesem Modul finden Sie in der Referenz zum Modul azure-mgmt-datalake-store.
  • Das Modul azure-datalake-store, das die Dateisystemvorgänge für Azure Data Lake Storage Gen1 enthält. Weitere Informationen zu diesem Modul finden Sie in der Referenz zum Modul azure-datalake-store file-system.

Verwenden Sie die folgenden Befehle, um die Module zu installieren:

pip install azure-mgmt-resource
pip install azure-mgmt-datalake-store
pip install azure-datalake-store

Erstellen einer neuen Python-Anwendung

  1. Erstellen Sie in der IDE Ihrer Wahl eine neue Python-Anwendung, z.B. mysample.py.

  2. Fügen Sie die folgenden Zeilen hinzu, um die erforderlichen Module zu importieren:

    ## Use this only for Azure AD service-to-service authentication
    from azure.common.credentials import ServicePrincipalCredentials
    
    ## Use this only for Azure AD end-user authentication
    from azure.common.credentials import UserPassCredentials
    
    ## Use this only for Azure AD multi-factor authentication
    from msrestazure.azure_active_directory import AADTokenCredentials
    
    ## Required for Azure Data Lake Storage Gen1 account management
    from azure.mgmt.datalake.store import DataLakeStoreAccountManagementClient
    from azure.mgmt.datalake.store.models import DataLakeStoreAccount
    
    ## Required for Azure Data Lake Storage Gen1 filesystem management
    from azure.datalake.store import core, lib, multithread
    
    ## Common Azure imports
    from azure.mgmt.resource.resources import ResourceManagementClient
    from azure.mgmt.resource.resources.models import ResourceGroup
    
    ## Use these as needed for your application
    import logging, getpass, pprint, uuid, time
    
  3. Speichern Sie Ihre Änderungen an „mysample.py“.

Authentifizierung

In diesem Abschnitt werden die verschiedenen Methoden zur Authentifizierung mit Microsoft Entra ID erläutert. Die verfügbaren Optionen sind:

Erstellen des Dateisystemclients

Der folgende Codeausschnitt erstellt zunächst den Data Lake Storage Gen1-Kontoclient. Er verwendet das Clientobjekt zum Erstellen eines Data Lake Storage Gen1-Kontos. Schließlich erstellt der Codeausschnitt ein Dateisystem-Clientobjekt.

## Declare variables
subscriptionId = 'FILL-IN-HERE'
adlsAccountName = 'FILL-IN-HERE'

## Create a filesystem client object
adlsFileSystemClient = core.AzureDLFileSystem(adlCreds, store_name=adlsAccountName)

Erstellen eines Verzeichnisses

## Create a directory
adlsFileSystemClient.mkdir('/mysampledirectory')

Hochladen einer Datei

## Upload a file
multithread.ADLUploader(adlsFileSystemClient, lpath='C:\\data\\mysamplefile.txt', rpath='/mysampledirectory/mysamplefile.txt', nthreads=64, overwrite=True, buffersize=4194304, blocksize=4194304)

Herunterladen einer Datei

## Download a file
multithread.ADLDownloader(adlsFileSystemClient, lpath='C:\\data\\mysamplefile.txt.out', rpath='/mysampledirectory/mysamplefile.txt', nthreads=64, overwrite=True, buffersize=4194304, blocksize=4194304)

Löschen eines Verzeichnisses

## Delete a directory
adlsFileSystemClient.rm('/mysampledirectory', recursive=True)

Nächste Schritte

Weitere Informationen