DataLakeFileClient Kelas
Klien untuk berinteraksi dengan file DataLake, bahkan jika file mungkin belum ada.
- Warisan
-
azure.storage.filedatalake._path_client.PathClientDataLakeFileClient
Konstruktor
DataLakeFileClient(account_url: str, file_system_name: str, file_path: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any)
Parameter
- file_path
- str
Seluruh jalur file, sehingga untuk berinteraksi dengan file tertentu. misalnya. "{directory}/{subdirektori}/{file}"
- credential
Kredensial yang digunakan untuk mengautentikasi. Ini opsional jika URL akun sudah memiliki token SAS. Nilainya dapat berupa string token SAS, instans AzureSasCredential atau AzureNamedKeyCredential dari azure.core.credentials, kunci akses bersama akun, atau instans kelas TokenCredentials dari azure.identity. Jika URI sumber daya sudah berisi token SAS, ini akan diabaikan demi kredensial eksplisit
- kecuali dalam kasus AzureSasCredential, di mana token SAS yang bertentangan akan memunculkan ValueError. Jika menggunakan instans AzureNamedKeyCredential, "nama" harus menjadi nama akun penyimpanan, dan "kunci" harus menjadi kunci akun penyimpanan.
- api_version
- str
Versi Storage API yang akan digunakan untuk permintaan. Nilai default adalah versi layanan terbaru yang kompatibel dengan SDK saat ini. Pengaturan ke versi yang lebih lama dapat mengakibatkan berkurangnya kompatibilitas fitur.
Contoh
Membuat DataLakeServiceClient dari string koneksi.
from azure.storage.filedatalake import DataLakeFileClient
DataLakeFileClient.from_connection_string(connection_string, "myfilesystem", "mydirectory", "myfile")
Variabel
- url
- str
URL titik akhir lengkap ke sistem file, termasuk token SAS jika digunakan.
- primary_endpoint
- str
URL titik akhir utama lengkap.
- primary_hostname
- str
Nama host titik akhir utama.
Metode
acquire_lease |
Meminta sewa baru. Jika file atau direktori tidak memiliki sewa aktif, layanan DataLake membuat sewa pada file/direktori dan mengembalikan ID sewa baru. |
append_data |
Tambahkan data ke file. |
close |
Metode ini untuk menutup soket yang dibuka oleh klien. Ini tidak perlu digunakan saat menggunakan dengan manajer konteks. |
create_file |
Buat file baru. |
delete_file |
Menandai file yang ditentukan untuk dihapus. |
download_file |
Mengunduh file ke StorageStreamDownloader. Metode readall() harus digunakan untuk membaca semua konten, atau readinto() harus digunakan untuk mengunduh file ke dalam aliran. Menggunakan chunks() mengembalikan iterator yang memungkinkan pengguna untuk melakukan iterasi atas konten dalam gugus. |
exists |
Mengembalikan True jika ada file dan mengembalikan False jika tidak. |
flush_data |
Terapkan data yang ditambahkan sebelumnya. |
from_connection_string |
Buat DataLakeFileClient dari String Koneksi. :return a DataLakeFileClient :rtype ~azure.storage.filedatalake.DataLakeFileClient |
get_access_control | |
get_file_properties |
Mengembalikan semua metadata yang ditentukan pengguna, properti HTTP standar, dan properti sistem untuk file tersebut. Ini tidak mengembalikan konten file. |
query_file |
Memungkinkan pengguna untuk memilih/memproyeksikan data file datalake dengan menyediakan ekspresi kueri sederhana. Operasi ini mengembalikan DataLakeFileQueryReader, pengguna perlu menggunakan readall() atau readinto() untuk mendapatkan data kueri. |
remove_access_control_recursive |
Menghapus Access Control pada jalur dan sub-jalur. |
rename_file |
Ganti nama file sumber. |
set_access_control |
Atur pemilik, grup, izin, atau daftar kontrol akses untuk jalur. |
set_access_control_recursive |
Mengatur Access Control pada jalur dan sub-jalur. |
set_file_expiry |
Mengatur waktu file akan kedaluwarsa dan dihapus. |
set_http_headers |
Menyetel properti sistem pada file atau direktori. Jika satu properti diatur untuk content_settings, semua properti akan ditimpa. |
set_metadata |
Mengatur satu atau beberapa pasangan nilai nama yang ditentukan pengguna untuk sistem file yang ditentukan. Setiap panggilan ke operasi ini menggantikan semua metadata yang ada yang dilampirkan ke sistem file. Untuk menghapus semua metadata dari sistem file, panggil operasi ini tanpa dict metadata. |
update_access_control_recursive |
Memodifikasi Access Control pada jalur dan sub-jalur. |
upload_data |
Unggah data ke file. |
acquire_lease
Meminta sewa baru. Jika file atau direktori tidak memiliki sewa aktif, layanan DataLake membuat sewa pada file/direktori dan mengembalikan ID sewa baru.
acquire_lease(lease_duration: int | None = -1, lease_id: str | None = None, **kwargs) -> DataLakeLeaseClient
Parameter
- lease_duration
- int
Menentukan durasi sewa, dalam detik, atau negatif satu (-1) untuk sewa yang tidak pernah kedaluwarsa. Sewa yang tidak terbatas bisa antara 15 dan 60 detik. Durasi sewa tidak dapat diubah menggunakan pembaruan atau perubahan. Defaultnya adalah -1 (sewa tak terbatas).
- lease_id
- str
ID sewa yang diusulkan, dalam format string GUID. Layanan DataLake mengembalikan 400 (Permintaan tidak valid) jika ID sewa yang diusulkan tidak dalam format yang benar.
- if_modified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya telah dimodifikasi sejak waktu yang ditentukan.
- if_unmodified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya belum dimodifikasi sejak tanggal/waktu yang ditentukan.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam hitung detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Mengembalikan
Objek DataLakeLeaseClient, yang dapat dijalankan di manajer konteks.
Tipe hasil
append_data
Tambahkan data ke file.
append_data(data: bytes | str | Iterable[AnyStr] | IO[AnyStr], offset: int, length: int | None = None, **kwargs) -> Dict[str, str | datetime | int]
Parameter
- data
Konten yang akan ditambahkan ke file
- offset
posisi mulai data yang akan ditambahkan.
- length
Ukuran data dalam byte.
- flush
- bool
Jika true, akan menerapkan data setelah ditambahkan.
- validate_content
- bool
Jika true, menghitung hash MD5 dari konten blok. Layanan penyimpanan memeriksa hash konten yang telah tiba dengan hash yang dikirim. Ini terutama berharga untuk mendeteksi bitflip pada kawat jika menggunakan http alih-alih https sebagai https (default) sudah akan memvalidasi. Perhatikan bahwa hash MD5 ini tidak disimpan dengan file .
- lease_action
- Literal["acquire", "auto-renew", "release", "acquire-release"]
Digunakan untuk melakukan operasi sewa bersama dengan menambahkan data.
"acquire" - Memperoleh sewa. "perpanjangan otomatis" - Barukan kembali sewa yang sudah ada. "release" - Lepaskan sewa setelah operasi selesai. Membutuhkan flush=True. "acquire-release" - Memperoleh sewa dan merilisnya setelah operasi selesai. Membutuhkan flush=True.
- lease_duration
- int
Valid jika lease_action diatur ke "acquire" atau "acquire-release".
Menentukan durasi sewa, dalam detik, atau negatif satu (-1) untuk sewa yang tidak pernah kedaluwarsa. Sewa yang tidak terbatas bisa antara 15 dan 60 detik. Durasi sewa tidak dapat diubah menggunakan pembaruan atau perubahan. Defaultnya adalah -1 (sewa tak terbatas).
- lease
- DataLakeLeaseClient atau str
Diperlukan jika file memiliki sewa aktif atau jika lease_action diatur ke "acquire" atau "acquire-release". Jika file memiliki sewa yang ada, ini akan digunakan untuk mengakses file. Jika memperoleh sewa baru, ini akan digunakan sebagai id sewa baru. Nilai dapat berupa objek DataLakeLeaseClient atau ID sewa sebagai string.
Mengenkripsi data di sisi layanan dengan kunci yang diberikan. Penggunaan kunci yang disediakan pelanggan harus dilakukan melalui HTTPS.
Mengembalikan
dict header respons
Contoh
Tambahkan data ke file.
file_client.append_data(data=file_content[2048:3072], offset=2048, length=1024)
close
Metode ini untuk menutup soket yang dibuka oleh klien. Ini tidak perlu digunakan saat menggunakan dengan manajer konteks.
close() -> None
create_file
Buat file baru.
create_file(content_settings: ContentSettings | None = None, metadata: Dict[str, str] | None = None, **kwargs) -> Dict[str, str | datetime]
Parameter
- content_settings
- ContentSettings
Objek ContentSettings yang digunakan untuk mengatur properti jalur.
Pasangan nama-nilai yang terkait dengan file sebagai metadata.
- lease
- DataLakeLeaseClient atau str
Diperlukan jika file memiliki sewa aktif. Nilai dapat berupa objek DataLakeLeaseClient atau ID sewa sebagai string.
- umask
- str
Opsional dan hanya valid jika Namespace Hierarki diaktifkan untuk akun tersebut. Saat membuat file atau direktori dan folder induk tidak memiliki ACL default, umask membatasi izin file atau direktori yang akan dibuat. Izin yang dihasilkan diberikan oleh p & ^u, di mana p adalah izin dan Anda adalah umask. Misalnya, jika p adalah 0777 dan Anda adalah 0057, maka izin yang dihasilkan adalah 0720. Izin default adalah 0777 untuk direktori dan 0666 untuk file. Umask default adalah 0027. Umask harus ditentukan dalam notasi oktal 4 digit (misalnya 0766).
- owner
- str
Pemilik file atau direktori.
- group
- str
Grup pemilik file atau direktori.
- acl
- str
Mengatur hak kontrol akses POSIX pada file dan direktori. Nilai adalah daftar entri kontrol akses yang dipisahkan koma. Setiap entri kontrol akses (ACE) terdiri dari cakupan, jenis, pengidentifikasi pengguna atau grup, dan izin dalam format "[scope:][type]:[id]:[permissions]".
- lease_id
- str
ID sewa yang diusulkan, dalam format string GUID. Layanan DataLake mengembalikan 400 (Permintaan tidak valid) jika ID sewa yang diusulkan tidak dalam format yang benar.
- lease_duration
- int
Menentukan durasi sewa, dalam detik, atau negatif satu (-1) untuk sewa yang tidak pernah kedaluwarsa. Sewa yang tidak terbatas bisa antara 15 dan 60 detik. Durasi sewa tidak dapat diubah menggunakan pembaruan atau perubahan.
Waktu untuk mengatur file ke kedaluwarsa. Jika jenis expires_on adalah int, waktu kedaluwarsa akan ditetapkan sebagai jumlah milidetik yang berlalu dari waktu pembuatan. Jika jenis expires_on adalah tanggalwaktu, waktu kedaluwarsa akan diatur absolut ke waktu yang disediakan. Jika tidak ada info zona waktu yang disediakan, ini akan ditafsirkan sebagai UTC.
- permissions
- str
Opsional dan hanya valid jika Namespace Hierarki diaktifkan untuk akun tersebut. Mengatur izin akses POSIX untuk pemilik file, grup pemilik file, dan lainnya. Setiap kelas dapat diberikan izin baca, tulis, atau jalankan. Bit lengket juga didukung. Notasi simbolis (rwxrw-rw-) dan oktal 4 digit (misalnya 0766) didukung.
- if_modified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya telah dimodifikasi sejak waktu yang ditentukan.
- if_unmodified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya belum dimodifikasi sejak tanggal/waktu yang ditentukan.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
Mengenkripsi data di sisi layanan dengan kunci yang diberikan. Penggunaan kunci yang disediakan pelanggan harus dilakukan melalui HTTPS.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam hitung detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
- encryption_context
- str
Menentukan konteks enkripsi yang akan diatur pada file.
Mengembalikan
dict respons (Etag dan terakhir dimodifikasi).
Contoh
Buat file.
file_client = filesystem_client.get_file_client(file_name)
file_client.create_file()
delete_file
Menandai file yang ditentukan untuk dihapus.
delete_file(**kwargs) -> None
Parameter
- lease
- DataLakeLeaseClient atau str
Diperlukan jika file memiliki sewa aktif. Nilai dapat menjadi objek LeaseClient atau ID sewa sebagai string.
- if_modified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya telah dimodifikasi sejak waktu yang ditentukan.
- if_unmodified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya belum dimodifikasi sejak tanggal/waktu yang ditentukan.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam hitung detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Mengembalikan
Tidak ada
Contoh
Hapus file.
new_client.delete_file()
download_file
Mengunduh file ke StorageStreamDownloader. Metode readall() harus digunakan untuk membaca semua konten, atau readinto() harus digunakan untuk mengunduh file ke dalam aliran. Menggunakan chunks() mengembalikan iterator yang memungkinkan pengguna untuk melakukan iterasi atas konten dalam gugus.
download_file(offset: int | None = None, length: int | None = None, **kwargs: Any) -> StorageStreamDownloader
Parameter
- offset
- int
Mulai rentang byte yang digunakan untuk mengunduh bagian file. Harus diatur jika panjang disediakan.
- length
- int
Jumlah byte yang akan dibaca dari aliran. Ini opsional, tetapi harus disediakan untuk performa optimal.
- lease
- DataLakeLeaseClient atau str
Jika ditentukan, pengunduhan hanya berhasil jika sewa file aktif dan cocok dengan ID ini. Diperlukan jika file memiliki sewa aktif.
- if_modified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya telah dimodifikasi sejak waktu yang ditentukan.
- if_unmodified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya belum dimodifikasi sejak tanggal/waktu yang ditentukan.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
Mendekripsi data di sisi layanan dengan kunci yang diberikan. Penggunaan kunci yang disediakan pelanggan harus dilakukan melalui HTTPS. Diperlukan jika file dibuat dengan Kunci Customer-Provided.
- max_concurrency
- int
Jumlah koneksi paralel yang akan diunduh.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam hitung detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini. Metode ini dapat melakukan beberapa panggilan ke layanan dan batas waktu akan berlaku untuk setiap panggilan satu per satu.
Mengembalikan
Objek streaming (StorageStreamDownloader)
Tipe hasil
Contoh
Mengembalikan data yang diunduh.
download = file_client.download_file()
downloaded_bytes = download.readall()
exists
Mengembalikan True jika ada file dan mengembalikan False jika tidak.
exists(**kwargs: Any) -> bool
Parameter
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam hitung detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Mengembalikan
Benar jika ada file, jika tidak, mengembalikan False.
Tipe hasil
flush_data
Terapkan data yang ditambahkan sebelumnya.
flush_data(offset: int, retain_uncommitted_data: bool | None = False, **kwargs) -> Dict[str, str | datetime]
Parameter
- offset
offset sama dengan panjang file setelah menerapkan data yang ditambahkan sebelumnya.
- retain_uncommitted_data
- bool
Hanya berlaku untuk operasi flush. Jika "true", data yang tidak dilakukan dipertahankan setelah operasi flush selesai; jika tidak, data yang tidak dikomit dihapus setelah operasi flush. Defaultnya adalah false (salah). Data pada offset kurang dari posisi yang ditentukan ditulis ke file ketika flush berhasil, tetapi parameter opsional ini memungkinkan data setelah posisi flush dipertahankan untuk operasi flush di masa mendatang.
- content_settings
- ContentSettings
Objek ContentSettings yang digunakan untuk mengatur properti jalur.
- close
- bool
Peristiwa Azure Storage memungkinkan aplikasi menerima pemberitahuan saat file berubah. Saat Peristiwa Azure Storage diaktifkan, peristiwa perubahan file akan dinaikkan. Kejadian ini memiliki properti yang menunjukkan apakah ini adalah perubahan akhir untuk membedakan perbedaan antara flush perantara ke aliran file dan penutupan akhir aliran file. Parameter kueri penutupan hanya valid saat tindakan "flush" dan pemberitahuan perubahan diaktifkan. Jika nilai penutupan adalah "true" dan operasi flush berhasil diselesaikan, layanan menaikkan pemberitahuan perubahan file dengan properti yang menunjukkan bahwa ini adalah pembaruan akhir (aliran file telah ditutup). Jika "false" pemberitahuan perubahan dimunculkan yang menunjukkan file telah berubah. Defaultnya adalah false (salah). Parameter kueri ini diatur ke true oleh driver Hadoop ABFS untuk menunjukkan bahwa aliran file telah ditutup."
- if_modified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya telah dimodifikasi sejak waktu yang ditentukan.
- if_unmodified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya belum dimodifikasi sejak tanggal/waktu yang ditentukan.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
- lease_action
- Literal["acquire", "auto-renew", "release", "acquire-release"]
Digunakan untuk melakukan operasi sewa bersama dengan menambahkan data.
"acquire" - Memperoleh sewa. "perpanjangan otomatis" - Barukan kembali sewa yang sudah ada. "rilis" - Lepaskan sewa setelah operasi selesai. "acquire-release" - Memperoleh sewa dan melepaskannya setelah operasi selesai.
- lease_duration
- int
Valid jika lease_action diatur ke "acquire" atau "acquire-release".
Menentukan durasi sewa, dalam detik, atau negatif satu (-1) untuk sewa yang tidak pernah kedaluwarsa. Sewa yang tidak terbatas bisa antara 15 dan 60 detik. Durasi sewa tidak dapat diubah menggunakan pembaruan atau perubahan. Defaultnya adalah -1 (sewa tak terbatas).
- lease
- DataLakeLeaseClient atau str
Diperlukan jika file memiliki sewa aktif atau jika lease_action diatur ke "acquire" atau "acquire-release". Jika file memiliki sewa yang ada, ini akan digunakan untuk mengakses file. Jika memperoleh sewa baru, ini akan digunakan sebagai id sewa baru. Nilai dapat berupa objek DataLakeLeaseClient atau ID sewa sebagai string.
Mengenkripsi data di sisi layanan dengan kunci yang diberikan. Penggunaan kunci yang disediakan pelanggan harus dilakukan melalui HTTPS.
Mengembalikan
header respons dalam dict
Contoh
Terapkan data yang ditambahkan sebelumnya.
with open(SOURCE_FILE, "rb") as data:
file_client = file_system_client.get_file_client("myfile")
file_client.create_file()
file_client.append_data(data, 0)
file_client.flush_data(data.tell())
from_connection_string
Buat DataLakeFileClient dari String Koneksi.
:return a DataLakeFileClient :rtype ~azure.storage.filedatalake.DataLakeFileClient
from_connection_string(conn_str: str, file_system_name: str, file_path: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self
Parameter
- file_path
- str
Seluruh jalur file, sehingga untuk berinteraksi dengan file tertentu. misalnya. "{directory}/{subdirectory}/{file}"
- credential
Kredensial yang digunakan untuk mengautentikasi. Ini bersifat opsional jika URL akun sudah memiliki token SAS, atau string koneksi sudah memiliki nilai kunci akses bersama. Nilainya dapat berupa string token SAS, instans AzureSasCredential atau AzureNamedKeyCredential dari azure.core.credentials, kunci akses bersama akun, atau instans kelas TokenCredentials dari azure.identity. Kredensial yang disediakan di sini akan lebih diutamakan daripada yang ada dalam string koneksi. Jika menggunakan instans AzureNamedKeyCredential, "nama" harus menjadi nama akun penyimpanan, dan "kunci" harus menjadi kunci akun penyimpanan.
get_access_control
get_access_control(upn: bool | None = None, **kwargs) -> Dict[str, Any]
Parameter
- upn
- bool
Pilihan. Hanya berlaku saat Namespace Hierarki diaktifkan untuk akun tersebut. Jika "true", nilai identitas pengguna yang dikembalikan di header respons x-ms-owner, x-ms-group, dan x-ms-acl akan diubah dari ID Objek Azure Active Directory menjadi Nama Utama Pengguna. Jika "false", nilai akan dikembalikan sebagai ID Objek Azure Active Directory. Nilai defaultnya adalah false. Perhatikan bahwa ID Objek grup dan aplikasi tidak diterjemahkan karena tidak memiliki nama bersahabat yang unik.
- lease
- DataLakeLeaseClient atau str
Diperlukan jika file/direktori memiliki sewa aktif. Nilai dapat menjadi objek LeaseClient atau ID sewa sebagai string.
- if_modified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya telah dimodifikasi sejak waktu yang ditentukan.
- if_unmodified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya belum dimodifikasi sejak tanggal/waktu yang ditentukan.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
- response dict
tanggapan dict.
get_file_properties
Mengembalikan semua metadata yang ditentukan pengguna, properti HTTP standar, dan properti sistem untuk file tersebut. Ini tidak mengembalikan konten file.
get_file_properties(**kwargs: Any) -> FileProperties
Parameter
- lease
Diperlukan jika direktori atau file memiliki sewa aktif. Nilai dapat berupa objek DataLakeLeaseClient atau ID sewa sebagai string.
- if_modified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya telah dimodifikasi sejak waktu yang ditentukan.
- if_unmodified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya belum dimodifikasi sejak tanggal/waktu yang ditentukan.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
Mendekripsi data di sisi layanan dengan kunci yang diberikan. Penggunaan kunci yang disediakan pelanggan harus dilakukan melalui HTTPS. Diperlukan jika file dibuat dengan kunci yang disediakan pelanggan.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam hitung detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Mengembalikan
Semua metadata yang ditentukan pengguna, properti HTTP standar, dan properti sistem untuk file.
Tipe hasil
Contoh
Mendapatkan properti untuk file.
properties = file_client.get_file_properties()
query_file
Memungkinkan pengguna untuk memilih/memproyeksikan data file datalake dengan menyediakan ekspresi kueri sederhana. Operasi ini mengembalikan DataLakeFileQueryReader, pengguna perlu menggunakan readall() atau readinto() untuk mendapatkan data kueri.
query_file(query_expression: str, **kwargs: Any) -> DataLakeFileQueryReader
Parameter
- query_expression
- str
Wajib diisi. pernyataan kueri. misalnya. Pilih * dari DataLakeStorage
- on_error
- Callable[DataLakeFileQueryError]
Fungsi yang akan dipanggil pada kesalahan pemrosesan apa pun yang dikembalikan oleh layanan.
- file_format
- DelimitedTextDialect atau DelimitedJsonDialect atau QuickQueryDialect atau str
Pilihan. Menentukan serialisasi data yang saat ini disimpan dalam file. Defaultnya adalah memperlakukan data file sebagai data CSV yang diformat dalam dialek default. Ini dapat diganti dengan DelimitedTextDialect kustom, atau DelimitedJsonDialect atau "ParquetDialect" (diteruskan sebagai string atau enum). Dialek ini dapat diteruskan melalui kelas masing-masing, enum QuickQueryDialect atau sebagai string.
- output_format
- DelimitedTextDialect atau DelimitedJsonDialect atau list[ArrowDialect] atau QuickQueryDialect atau str
Pilihan. Menentukan serialisasi output untuk aliran data. Secara default, data akan dikembalikan seperti yang diwakili dalam file. Dengan menyediakan format output, data file akan diformat ulang sesuai dengan profil tersebut. Nilai ini bisa berupa DelimitedTextDialect atau DelimitedJsonDialect atau ArrowDialect. Dialek ini dapat diteruskan melalui kelas masing-masing, enum QuickQueryDialect atau sebagai string.
- lease
- DataLakeLeaseClient atau str
Diperlukan jika file memiliki sewa aktif. Nilai dapat berupa objek DataLakeLeaseClient atau ID sewa sebagai string.
- if_modified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya telah dimodifikasi sejak waktu yang ditentukan.
- if_unmodified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya belum dimodifikasi sejak tanggal/waktu yang ditentukan.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
Mendekripsi data di sisi layanan dengan kunci yang diberikan. Penggunaan kunci yang disediakan pelanggan harus dilakukan melalui HTTPS. Diperlukan jika file dibuat dengan Kunci Customer-Provided.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam hitung detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Mengembalikan
Objek streaming (DataLakeFileQueryReader)
Tipe hasil
Contoh
pilih/proyek pada data file datalake dengan menyediakan ekspresi kueri sederhana.
errors = []
def on_error(error):
errors.append(error)
# upload the csv file
file_client = datalake_service_client.get_file_client(filesystem_name, "csvfile")
file_client.upload_data(CSV_DATA, overwrite=True)
# select the second column of the csv file
query_expression = "SELECT _2 from DataLakeStorage"
input_format = DelimitedTextDialect(delimiter=',', quotechar='"', lineterminator='\n', escapechar="", has_header=False)
output_format = DelimitedJsonDialect(delimiter='\n')
reader = file_client.query_file(query_expression, on_error=on_error, file_format=input_format, output_format=output_format)
content = reader.readall()
remove_access_control_recursive
Menghapus Access Control pada jalur dan sub-jalur.
remove_access_control_recursive(acl: str, **kwargs: Any) -> AccessControlChangeResult
Parameter
- acl
- str
Menghapus hak kontrol akses POSIX pada file dan direktori. Nilai adalah daftar entri kontrol akses yang dipisahkan koma. Setiap entri kontrol akses (ACE) terdiri dari cakupan, jenis, dan pengidentifikasi pengguna atau grup dalam format "[scope:][type]:[id]".
- progress_hook
- <xref:func>(AccessControlChanges)
Panggilan balik tempat pemanggil dapat melacak kemajuan operasi serta mengumpulkan jalur yang gagal diubah Access Control.
- continuation_token
- str
Token kelanjutan opsional yang dapat digunakan untuk melanjutkan operasi yang dihentikan sebelumnya.
- batch_size
- int
Pilihan. Jika ukuran himpunan data melebihi ukuran batch, maka operasi akan dibagi menjadi beberapa permintaan sehingga kemajuan dapat dilacak. Ukuran batch harus antara 1 dan 2000. Default saat tidak ditentukan adalah 2000.
- max_batches
- int
Pilihan. Menentukan jumlah maksimum batch yang dapat dijalankan oleh operasi Access Control perubahan tunggal. Jika maksimum tercapai sebelum semua sub-jalur diproses, token kelanjutan dapat digunakan untuk melanjutkan operasi. Nilai kosong menunjukkan bahwa jumlah maksimum batch dalam unbound dan operasi berlanjut hingga akhir.
- continue_on_failure
- bool
Jika diatur ke False, operasi akan berakhir dengan cepat saat mengalami kesalahan pengguna (4XX). Jika True, operasi akan mengabaikan kesalahan pengguna dan melanjutkan operasi pada sub-entitas lain dari direktori. Token kelanjutan hanya akan dikembalikan ketika continue_on_failure True jika terjadi kesalahan pengguna. Jika tidak diatur, nilai defaultnya adalah False untuk ini.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam hitung detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Mengembalikan
Ringkasan operasi rekursif, termasuk jumlah keberhasilan dan kegagalan, serta token kelanjutan jika operasi dihentikan sebelum waktunya.
Tipe hasil
Pengecualian
Pengguna dapat memulai ulang operasi menggunakan bidang continuation_token AzureError jika token tersedia.
rename_file
Ganti nama file sumber.
rename_file(new_name: str, **kwargs: Any) -> DataLakeFileClient
Parameter
- new_name
- str
nama file baru yang ingin diganti namanya oleh pengguna. Nilai harus memiliki format berikut: "{filesystem}/{directory}/{subdirectory}/{file}".
- content_settings
- ContentSettings
Objek ContentSettings yang digunakan untuk mengatur properti jalur.
- source_lease
- DataLakeLeaseClient atau str
ID sewa untuk jalur sumber. Jika ditentukan, jalur sumber harus memiliki sewa aktif dan ID sewa harus cocok.
- lease
Diperlukan jika file/direktori memiliki sewa aktif. Nilai dapat menjadi objek LeaseClient atau ID sewa sebagai string.
- if_modified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya telah dimodifikasi sejak waktu yang ditentukan.
- if_unmodified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya belum dimodifikasi sejak tanggal/waktu yang ditentukan.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
- source_if_modified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya telah dimodifikasi sejak waktu yang ditentukan.
- source_if_unmodified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya belum dimodifikasi sejak tanggal/waktu yang ditentukan.
- source_etag
- str
Nilai ETag sumber, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- source_match_condition
- MatchConditions
Kondisi kecocokan sumber untuk digunakan pada etag.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam hitung detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Mengembalikan
klien file yang diganti namanya
Tipe hasil
Contoh
Ganti nama file sumber.
new_client = file_client.rename_file(file_client.file_system_name + '/' + 'newname')
set_access_control
Atur pemilik, grup, izin, atau daftar kontrol akses untuk jalur.
set_access_control(owner: str | None = None, group: str | None = None, permissions: str | None = None, acl: str | None = None, **kwargs) -> Dict[str, str | datetime]
Parameter
- permissions
- str
Opsional dan hanya valid jika Namespace Hierarki diaktifkan untuk akun tersebut. Mengatur izin akses POSIX untuk pemilik file, grup pemilik file, dan lainnya. Setiap kelas dapat diberikan izin baca, tulis, atau jalankan. Bit lengket juga didukung. Notasi simbolis (rwxrw-rw-) dan oktal 4 digit (misalnya 0766) didukung. izin dan acl saling eksklusif.
- acl
- str
Mengatur hak kontrol akses POSIX pada file dan direktori. Nilai adalah daftar entri kontrol akses yang dipisahkan koma. Setiap entri kontrol akses (ACE) terdiri dari cakupan, jenis, pengidentifikasi pengguna atau grup, dan izin dalam format "[scope:][type]:[id]:[permissions]". izin dan acl saling eksklusif.
- lease
- DataLakeLeaseClient atau str
Diperlukan jika file/direktori memiliki sewa aktif. Nilai dapat menjadi objek LeaseClient atau ID sewa sebagai string.
- if_modified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya telah dimodifikasi sejak waktu yang ditentukan.
- if_unmodified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya belum dimodifikasi sejak tanggal/waktu yang ditentukan.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam hitung detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
- response dict
dict respons (Etag dan terakhir dimodifikasi).
set_access_control_recursive
Mengatur Access Control pada jalur dan sub-jalur.
set_access_control_recursive(acl: str, **kwargs: Any) -> AccessControlChangeResult
Parameter
- acl
- str
Mengatur hak kontrol akses POSIX pada file dan direktori. Nilai adalah daftar entri kontrol akses yang dipisahkan koma. Setiap entri kontrol akses (ACE) terdiri dari cakupan, jenis, pengidentifikasi pengguna atau grup, dan izin dalam format "[scope:][type]:[id]:[permissions]".
- progress_hook
- <xref:func>(AccessControlChanges)
Panggilan balik tempat pemanggil dapat melacak kemajuan operasi serta mengumpulkan jalur yang gagal diubah Access Control.
- continuation_token
- str
Token kelanjutan opsional yang dapat digunakan untuk melanjutkan operasi yang dihentikan sebelumnya.
- batch_size
- int
Pilihan. Jika ukuran himpunan data melebihi ukuran batch, maka operasi akan dibagi menjadi beberapa permintaan sehingga kemajuan dapat dilacak. Ukuran batch harus antara 1 dan 2000. Default saat tidak ditentukan adalah 2000.
- max_batches
- int
Pilihan. Menentukan jumlah maksimum batch yang dapat dijalankan oleh operasi Access Control perubahan tunggal. Jika maksimum tercapai sebelum semua sub-jalur diproses, maka token kelanjutan dapat digunakan untuk melanjutkan operasi. Nilai kosong menunjukkan bahwa jumlah maksimum batch dalam unbound dan operasi berlanjut hingga akhir.
- continue_on_failure
- bool
Jika diatur ke False, operasi akan berakhir dengan cepat saat mengalami kesalahan pengguna (4XX). Jika True, operasi akan mengabaikan kesalahan pengguna dan melanjutkan operasi pada sub-entitas lain dari direktori. Token kelanjutan hanya akan dikembalikan ketika continue_on_failure True jika terjadi kesalahan pengguna. Jika tidak diatur, nilai defaultnya adalah False untuk ini.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam hitung detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Mengembalikan
Ringkasan operasi rekursif, termasuk jumlah keberhasilan dan kegagalan, serta token kelanjutan jika operasi dihentikan sebelum waktunya.
Tipe hasil
Pengecualian
Pengguna dapat memulai ulang operasi menggunakan bidang continuation_token AzureError jika token tersedia.
set_file_expiry
Mengatur waktu file akan kedaluwarsa dan dihapus.
set_file_expiry(expiry_options: str, expires_on: datetime | int | None = None, **kwargs) -> None
Parameter
- expiry_options
- str
Wajib diisi. Menunjukkan mode waktu kedaluwarsa. Nilai yang mungkin termasuk: 'NeverExpire', 'RelativeToCreation', 'RelativeToNow', 'Absolute'
Waktu untuk mengatur file ke kedaluwarsa. Ketika expiry_options RelativeTo*, expires_on harus menjadi int dalam milidetik. Jika jenis expires_on adalah tanggalwaktu, maka harus dalam waktu UTC.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam hitung detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Tipe hasil
set_http_headers
Menyetel properti sistem pada file atau direktori.
Jika satu properti diatur untuk content_settings, semua properti akan ditimpa.
set_http_headers(content_settings: ContentSettings | None = None, **kwargs) -> Dict[str, Any]
Parameter
- content_settings
- ContentSettings
Objek ContentSettings yang digunakan untuk mengatur properti file/direktori.
- lease
- DataLakeLeaseClient atau str
Jika ditentukan, set_file_system_metadata hanya berhasil jika sewa sistem file aktif dan cocok dengan ID ini.
- if_modified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya telah dimodifikasi sejak waktu yang ditentukan.
- if_unmodified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya belum dimodifikasi sejak tanggal/waktu yang ditentukan.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Mengembalikan
dict properti file/directory-updated (Etag dan terakhir diubah)
Tipe hasil
set_metadata
Mengatur satu atau beberapa pasangan nilai nama yang ditentukan pengguna untuk sistem file yang ditentukan. Setiap panggilan ke operasi ini menggantikan semua metadata yang ada yang dilampirkan ke sistem file. Untuk menghapus semua metadata dari sistem file, panggil operasi ini tanpa dict metadata.
set_metadata(metadata: Dict[str, str], **kwargs) -> Dict[str, str | datetime]
Parameter
Dict yang berisi pasangan nama-nilai untuk dikaitkan dengan sistem file sebagai metadata. Contoh: {'category':'test'}
- lease
- DataLakeLeaseClient atau str
Jika ditentukan, set_file_system_metadata hanya berhasil jika sewa sistem file aktif dan cocok dengan ID ini.
- if_modified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya telah dimodifikasi sejak waktu yang ditentukan.
- if_unmodified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya belum dimodifikasi sejak tanggal/waktu yang ditentukan.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
Mengenkripsi data di sisi layanan dengan kunci yang diberikan. Penggunaan kunci yang disediakan pelanggan harus dilakukan melalui HTTPS.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Mengembalikan
dict properti yang diperbarui sistem file (Etag dan terakhir diubah).
update_access_control_recursive
Memodifikasi Access Control pada jalur dan sub-jalur.
update_access_control_recursive(acl: str, **kwargs: Any) -> AccessControlChangeResult
Parameter
- acl
- str
Memodifikasi hak kontrol akses POSIX pada file dan direktori. Nilai adalah daftar entri kontrol akses yang dipisahkan koma. Setiap entri kontrol akses (ACE) terdiri dari cakupan, jenis, pengidentifikasi pengguna atau grup, dan izin dalam format "[scope:][type]:[id]:[permissions]".
- progress_hook
- <xref:func>(AccessControlChanges)
Panggilan balik tempat penelepon dapat melacak kemajuan operasi serta mengumpulkan jalur yang gagal diubah Access Control.
- continuation_token
- str
Token kelanjutan opsional yang dapat digunakan untuk melanjutkan operasi yang dihentikan sebelumnya.
- batch_size
- int
Pilihan. Jika ukuran himpunan data melebihi ukuran batch, maka operasi akan dibagi menjadi beberapa permintaan sehingga kemajuan dapat dilacak. Ukuran batch harus antara 1 dan 2000. Default saat tidak ditentukan adalah 2000.
- max_batches
- int
Pilihan. Menentukan jumlah maksimum batch yang dapat dijalankan oleh operasi Access Control perubahan tunggal. Jika maksimum tercapai sebelum semua sub-jalur diproses, maka token kelanjutan dapat digunakan untuk melanjutkan operasi. Nilai kosong menunjukkan bahwa jumlah maksimum batch dalam unbound dan operasi berlanjut hingga akhir.
- continue_on_failure
- bool
Jika diatur ke False, operasi akan berakhir dengan cepat saat mengalami kesalahan pengguna (4XX). Jika True, operasi akan mengabaikan kesalahan pengguna dan melanjutkan operasi pada sub-entitas lain dari direktori. Token kelanjutan hanya akan dikembalikan ketika continue_on_failure True jika terjadi kesalahan pengguna. Jika tidak diatur, nilai defaultnya adalah False untuk ini.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Mengembalikan
Ringkasan operasi rekursif, termasuk jumlah keberhasilan dan kegagalan, serta token kelanjutan jika operasi dihentikan sebelum waktunya.
Tipe hasil
Pengecualian
Pengguna dapat memulai ulang operasi menggunakan bidang continuation_token AzureError jika token tersedia.
upload_data
Unggah data ke file.
upload_data(data: bytes | str | Iterable | IO, length: int | None = None, overwrite: bool | None = False, **kwargs) -> Dict[str, Any]
Parameter
- data
Konten yang akan diunggah ke file
- content_settings
- ContentSettings
Objek ContentSettings yang digunakan untuk mengatur properti jalur.
- lease
- DataLakeLeaseClient atau str
Diperlukan jika blob memiliki sewa aktif. Nilai dapat berupa objek DataLakeLeaseClient atau ID sewa sebagai string.
- umask
- str
Opsional dan hanya valid jika Namespace Hierarki diaktifkan untuk akun tersebut. Saat membuat file atau direktori dan folder induk tidak memiliki ACL default, umask membatasi izin file atau direktori yang akan dibuat. Izin yang dihasilkan diberikan oleh p & ^u, di mana p adalah izin dan Anda adalah umask. Misalnya, jika p adalah 0777 dan Anda adalah 0057, maka izin yang dihasilkan adalah 0720. Izin default adalah 0777 untuk direktori dan 0666 untuk file. Umask default adalah 0027. Umask harus ditentukan dalam notasi oktal 4 digit (misalnya 0766).
- permissions
- str
Opsional dan hanya valid jika Namespace Hierarki diaktifkan untuk akun tersebut. Mengatur izin akses POSIX untuk pemilik file, grup pemilik file, dan lainnya. Setiap kelas dapat diberikan izin baca, tulis, atau eksekusi. Bit lengket juga didukung. Baik simbolis (rwxrw-rw-) dan notasi oktal 4 digit (misalnya 0766) didukung.
- if_modified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya telah dimodifikasi sejak waktu yang ditentukan.
- if_unmodified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya belum dimodifikasi sejak tanggal/waktu yang ditentukan.
- validate_content
- bool
Jika true, menghitung hash MD5 untuk setiap gugus file. Layanan penyimpanan memeriksa hash konten yang telah tiba dengan hash yang dikirim. Ini terutama berharga untuk mendeteksi bitflips pada kawat jika menggunakan http alih-alih https, sebagai https (default), sudah akan memvalidasi. Perhatikan bahwa hash MD5 ini tidak disimpan dengan blob. Perhatikan juga bahwa jika diaktifkan, algoritma pengunggahan yang hemat memori tidak akan digunakan karena komputasi hash MD5 memerlukan buffering seluruh blok, dan melakukannya mengalahkan tujuan algoritma yang hemat memori.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
Mengenkripsi data di sisi layanan dengan kunci yang diberikan. Penggunaan kunci yang disediakan pelanggan harus dilakukan melalui HTTPS.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam hitung detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini. Metode ini dapat melakukan beberapa panggilan ke layanan dan batas waktu akan berlaku untuk setiap panggilan satu per satu.
- chunk_size
- int
Ukuran gugus maksimum untuk mengunggah file dalam gugus.
Default ke 100*1024*1024
, atau 100MB.
- encryption_context
- str
Menentukan konteks enkripsi yang akan diatur pada file.
Mengembalikan
dict respons (Etag dan terakhir dimodifikasi).
Atribut
api_version
Versi Api Penyimpanan yang digunakan untuk permintaan.
location_mode
Mode lokasi yang saat ini digunakan klien.
Secara default ini akan menjadi "primer". Opsi termasuk "primer" dan "sekunder".
primary_endpoint
URL titik akhir utama lengkap.
primary_hostname
Nama host titik akhir utama.
secondary_endpoint
URL titik akhir sekunder penuh jika dikonfigurasi.
Jika tidak tersedia, ValueError akan dinaikkan. Untuk menentukan nama host sekunder secara eksplisit, gunakan argumen kata kunci secondary_hostname opsional pada instansiasi.
Pengecualian
secondary_hostname
Nama host titik akhir sekunder.
Jika tidak tersedia, ini tidak akan ada. Untuk menentukan nama host sekunder secara eksplisit, gunakan argumen kata kunci secondary_hostname opsional pada instansiasi.
url
URL titik akhir lengkap untuk entitas ini, termasuk token SAS jika digunakan.
Ini bisa berupa titik akhir utama, atau titik akhir sekunder tergantung pada saat ini location_mode. :returns: URL titik akhir lengkap ke entitas ini, termasuk token SAS jika digunakan. :rtype: str
Azure SDK for Python