Share via


Filsystemåtgärder på Azure Data Lake Storage Gen1 med Python

I den här artikeln får du lära dig hur du använder Python SDK för att utföra filsystemåtgärder på Azure Data Lake Storage Gen1. Anvisningar om hur du utför kontohanteringsåtgärder på Data Lake Storage Gen1 med Python finns i Kontohanteringsåtgärder på Data Lake Storage Gen1 med Python.

Förutsättningar

Installera modulerna

Om du vill arbeta med Data Lake Storage Gen1 med Python måste du installera tre moduler.

  • azure-mgmt-resource-modulen, som innehåller Azure-moduler för Active Directory osv.
  • Modulenazure-mgmt-datalake-store, som innehåller Azure Data Lake Storage Gen1-kontohanteringsåtgärder. Mer information om den här modulen finns i modulreferensen azure-mgmt-datalake-store.
  • Modulenazure-datalake-store, som innehåller filsystemsåtgärderna Azure Data Lake Storage Gen1. Mer information om den här modulen finns i modulreferensen azure-datalake-store file-system.

Installera modulerna med hjälp av följande kommandon.

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

Skapa ett nytt Python-program

  1. Skapa ett nytt Python-program i valfritt IDE, t.ex. mysample.py.

  2. Lägg till följande rader för att importera de nödvändiga modulerna

    ## 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. Spara ändringarna i mysample.py.

Autentisering

I det här avsnittet pratar vi om olika sätt att autentisera med Microsoft Entra ID. De tillgängliga alternativen är:

Skapa filsystemklient

Följande kodfragment skapar först Data Lake Storage Gen1-kontoklienten. Det använder klientobjektet för att skapa ett Data Lake Storage Gen1-konto. Slutligen skapar kodfragmentet ett klientobjekt för filsystemet.

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

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

Skapa en katalog

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

Ladda upp en fil

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

Ladda ned en fil

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

Ta bort en katalog

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

Nästa steg

Se även