Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
V tomto článku se dozvíte, jak pomocí sady Python SDK provádět operace systému souborů ve službě Azure Data Lake Storage Gen1. Pokyny k provádění operací správy účtů ve službě Data Lake Storage Gen1 pomocí Pythonu najdete v tématu Operace správy účtů ve službě Data Lake Storage Gen1 pomocí Pythonu.
Požadavky
Python. Python si můžete stáhnout odsud. Tento článek používá Python verze 3.6.2.
Předplatné Azure. Viz Získání bezplatné zkušební verze Azure.
Účet Azure Data Lake Storage Gen1 Postupujte podle pokynů v tématu Začínáme s Azure Data Lake Storage Gen1 pomocí webu Azure Portal.
Instalace modulů
Pokud chcete pracovat s Data Lake Storage Gen1 pomocí Pythonu, musíte nainstalovat tři moduly.
- Modul
azure-mgmt-resource, který zahrnuje moduly Azure pro Active Directory atd. - Modul
azure-mgmt-datalake-store, který zahrnuje operace správy účtů Azure Data Lake Storage Gen1. Další informace o tomto modulu najdete v referenčních informacích k modulu azure-mgmt-datalake-store. - Modul
azure-datalake-store, který zahrnuje operace systému souborů Azure Data Lake Storage Gen1. Další informace o tomto modulu najdete v referenčních informacích k modulu systému souborů azure-datalake-store.
Pomocí následujících příkazů tyto moduly nainstalujte.
pip install azure-mgmt-resource
pip install azure-mgmt-datalake-store
pip install azure-datalake-store
Vytvoření nové aplikace v Pythonu
V integrovaném vývojovém prostředí (IDE) podle vašeho výběru vytvořte novou aplikaci v Pythonu, například mysample.py.
Přidejte následující řádky pro import požadovaných modulů.
## 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, timeUložte změny v souboru mysample.py.
Autentizace
V této části si řekneme o různých způsobech ověřování pomocí Microsoft Entra ID. Dostupné jsou následující možnosti:
- Informace o ověřování koncových uživatelů pro vaši aplikaci najdete v tématu Ověřování koncového uživatele pomocí Data Lake Storage Gen1 pomocí Pythonu.
- Informace o ověřování mezi službami pro vaši aplikaci najdete v tématu Ověřování mezi službami pomocí Data Lake Storage Gen1 pomocí Pythonu.
Vytvoření klienta systému souborů
Následující fragment kódu nejprve vytvoří klienta účtu Data Lake Storage Gen1. K vytvoření účtu Data Lake Storage Gen1 používá objekt klienta. Nakonec vytvoří objekt klienta systému souborů.
## Declare variables
subscriptionId = 'FILL-IN-HERE'
adlsAccountName = 'FILL-IN-HERE'
## Create a filesystem client object
adlsFileSystemClient = core.AzureDLFileSystem(adlCreds, store_name=adlsAccountName)
Vytvoření adresáře
## Create a directory
adlsFileSystemClient.mkdir('/mysampledirectory')
Odeslání souboru
## Upload a file
multithread.ADLUploader(adlsFileSystemClient, lpath='C:\\data\\mysamplefile.txt', rpath='/mysampledirectory/mysamplefile.txt', nthreads=64, overwrite=True, buffersize=4194304, blocksize=4194304)
Stažení souboru
## Download a file
multithread.ADLDownloader(adlsFileSystemClient, lpath='C:\\data\\mysamplefile.txt.out', rpath='/mysampledirectory/mysamplefile.txt', nthreads=64, overwrite=True, buffersize=4194304, blocksize=4194304)
Odstranění adresáře
## Delete a directory
adlsFileSystemClient.rm('/mysampledirectory', recursive=True)