Operasi sistem file pada Azure Data Lake Storage Gen1 menggunakan Python
Dalam artikel ini, Anda mempelajari cara menggunakan Python SDK untuk melakukan operasi sistem file di Azure Data Lake Storage Gen1. Untuk petunjuk tentang cara melakukan operasi manajemen akun pada Data Lake Storage Gen1 menggunakan Python, lihat Operasi manajemen akun di Data Lake Storage Gen1 menggunakan Python.
Prasyarat
Python. Anda dapat mengunduh versi Python dari sini. Artikel ini menggunakan Python 3.6.2.
Langganan Azure. Lihat Dapatkan uji coba gratis Azure.
Akun Azure Data Lake Storage Gen1. Ikuti instruksi di Memulai dengan Azure Data Lake Storage Gen1 menggunakan portal Azure.
Instal modulnya
Untuk bekerja dengan Data Lake Storage Gen1 menggunakan Python, Anda perlu memasang tiga modul.
- Modul
azure-mgmt-resource
, yang mencakup modul Azure untuk AD DS, dll. - Modul
azure-mgmt-datalake-store
, yang mencakup operasi manajemen akun Azure Data Lake Storage Gen1. Untuk informasi selengkapnya tentang modul ini, lihat referensi modul azure-mgmt-datalake-store. - Modul
azure-datalake-store
, yang mencakup operasi sistem file Azure Data Lake Storage Gen1. Untuk informasi selengkapnya tentang modul ini, lihat referensi modul azure-datalake-store file-system.
Gunakan perintah berikut untuk menginstal modul.
pip install azure-mgmt-resource
pip install azure-mgmt-datalake-store
pip install azure-datalake-store
Membuat aplikasi Python baru
Dalam IDE pilihan Anda, buat aplikasi Python baru, misalnya, mysample.py.
Tambahkan kode berikut untuk mengimpor modul yang diperlukan
## 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
Simpan perubahan ke mysample.py.
Autentikasi
Di bagian ini, kita berbicara tentang berbagai cara untuk mengautentikasi dengan Microsoft Entra ID. Opsi yang tersedia adalah:
- Untuk autentikasi pengguna akhir untuk aplikasi Anda, lihat Autentikasi pengguna akhir dengan Data Lake Storage Gen1 menggunakan Python.
- Untuk autentikasi layanan-ke-layanan aplikasi Anda, lihat Autentikasi layanan-ke-layanan dengan Data Lake Storage Gen1 menggunakan Python.
Buat klien sistem file
Cuplikan berikut pertama-tama membuat klien akun Data Lake Storage Gen1. Ini menggunakan objek klien untuk membuat akun Data Lake Storage Gen1. Terakhir, cuplikan membuat objek klien sistem file.
## Declare variables
subscriptionId = 'FILL-IN-HERE'
adlsAccountName = 'FILL-IN-HERE'
## Create a filesystem client object
adlsFileSystemClient = core.AzureDLFileSystem(adlCreds, store_name=adlsAccountName)
Buat direktori
## Create a directory
adlsFileSystemClient.mkdir('/mysampledirectory')
Unggah file
## Upload a file
multithread.ADLUploader(adlsFileSystemClient, lpath='C:\\data\\mysamplefile.txt', rpath='/mysampledirectory/mysamplefile.txt', nthreads=64, overwrite=True, buffersize=4194304, blocksize=4194304)
Unduh file
## Download a file
multithread.ADLDownloader(adlsFileSystemClient, lpath='C:\\data\\mysamplefile.txt.out', rpath='/mysampledirectory/mysamplefile.txt', nthreads=64, overwrite=True, buffersize=4194304, blocksize=4194304)
Hapus direktori
## Delete a directory
adlsFileSystemClient.rm('/mysampledirectory', recursive=True)