Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
I den här artikeln får du lära dig hur du använder Python SDK för att utföra filsystemså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
Python. Du kan hämta Python här. I den här artikeln används Python 3.6.2.
Prenumeration för Azure. Se Hämta en kostnadsfri utvärderingsversion av Azure.
Azure Data Lake Storage Gen1-konto. Följ anvisningarna i Kom igång med Azure Data Lake Storage Gen1 med hjälp av Azure-portalen.
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. - Modulen
azure-mgmt-datalake-store, som innehåller kontohanteringsåtgärder för Azure Data Lake Storage Gen1. Mer information om den här modulen finns i modulreferensen azure-mgmt-datalake-store. - Modulen
azure-datalake-store, som innehåller filsystemsåtgärderna i 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
Skapa ett nytt Python-program i valfritt IDE, t.ex. mysample.py.
Lägg till följande rader för att importera de moduler som krävs
## 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, timeSpara ändringarna i mysample.py.
Autentisering
I det här avsnittet pratar vi om olika sätt att autentisera med Microsoft Entra-ID. Tillgängliga alternativ är:
- Information om slutanvändarautentisering för ditt program finns i Slutanvändarautentisering med Data Lake Storage Gen1 med Python.
- För tjänst-till-tjänst-autentisering för ditt program, se Tjänst-till-tjänst-autentisering med Data Lake Storage Gen1 med Python.
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)