Bagikan melalui


FileSystemClient Kelas

Klien untuk berinteraksi dengan sistem file tertentu, bahkan jika sistem file tersebut mungkin belum ada.

Untuk operasi yang berkaitan dengan direktori atau file tertentu dalam sistem file ini, klien direktori atau klien file dapat diambil menggunakan get_directory_client fungsi atau get_file_client .

Warisan
azure.storage.filedatalake._shared.base_client.StorageAccountHostsMixin
FileSystemClient

Konstruktor

FileSystemClient(account_url: str, file_system_name: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any)

Parameter

account_url
str
Diperlukan

URI ke akun penyimpanan.

file_system_name
str
Diperlukan

Sistem file untuk direktori atau file.

credential
nilai default: None

Kredensial yang digunakan untuk mengautentikasi. Ini bersifat 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 menaikkan 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 digunakan untuk permintaan. Nilai default adalah versi layanan terbaru yang kompatibel dengan SDK saat ini. Pengaturan ke versi yang lebih lama dapat mengakibatkan kompatibilitas fitur yang berkurang.

Contoh

Dapatkan FileSystemClient dari DataLakeServiceClient yang ada.


   # Instantiate a DataLakeServiceClient using a connection string
   from azure.storage.filedatalake import DataLakeServiceClient
   datalake_service_client = DataLakeServiceClient.from_connection_string(self.connection_string)

   # Instantiate a FileSystemClient
   file_system_client = datalake_service_client.get_file_system_client("mynewfilesystem")

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 sistem file tidak memiliki sewa aktif, layanan DataLake membuat sewa pada sistem file dan mengembalikan ID sewa baru.

close

Metode ini untuk menutup soket yang dibuka oleh klien. Ini tidak perlu digunakan saat menggunakan dengan manajer konteks.

create_directory

Membuat direktori

create_file

Membuat file

create_file_system

Membuat sistem file baru di bawah akun yang ditentukan.

Jika sistem file dengan nama yang sama sudah ada, ResourceExistsError akan dinaikkan. Metode ini mengembalikan klien untuk berinteraksi dengan sistem file yang baru dibuat.

delete_directory

Menandai jalur yang ditentukan untuk penghapusan.

delete_file

Menandai file yang ditentukan untuk dihapus.

delete_file_system

Menandai sistem file yang ditentukan untuk dihapus.

Sistem file dan file apa pun yang terkandung di dalamnya kemudian dihapus selama pengumpulan sampah. Jika sistem file tidak ditemukan, ResourceNotFoundError akan dinaikkan.

exists

Mengembalikan True jika ada sistem file dan mengembalikan False jika tidak.

from_connection_string

Buat FileSystemClient dari String Koneksi.

:return a FileSystemClient :rtype ~azure.storage.filedatalake.FileSystemClient

get_directory_client

Dapatkan klien untuk berinteraksi dengan direktori yang ditentukan.

Direktori belum ada.

get_file_client

Dapatkan klien untuk berinteraksi dengan file yang ditentukan.

File belum ada.

get_file_system_access_policy

Mendapatkan izin untuk sistem file yang ditentukan. Izin menunjukkan apakah data sistem file dapat diakses secara publik.

get_file_system_properties

Mengembalikan semua metadata dan properti sistem yang ditentukan pengguna untuk sistem file yang ditentukan. Data yang dikembalikan tidak menyertakan daftar jalur sistem file.

get_paths

Mengembalikan generator untuk mencantumkan jalur (bisa berupa file atau direktori) di bawah sistem file yang ditentukan. Generator akan dengan malas mengikuti token kelanjutan yang dikembalikan oleh layanan.

list_deleted_paths

Mengembalikan generator untuk mencantumkan jalur (file atau direktori) yang dihapus di bawah sistem file yang ditentukan. Generator akan dengan malas mengikuti token kelanjutan yang dikembalikan oleh layanan.

Baru dalam versi 12.4.0: Operasi ini diperkenalkan dalam versi API '2020-06-12'.

set_file_system_access_policy

Menyetel izin untuk sistem file yang ditentukan atau kebijakan akses tersimpan yang dapat digunakan dengan Tanda Tangan Akses Bersama. Izin menunjukkan apakah file dalam sistem file dapat diakses secara publik.

set_file_system_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.

acquire_lease

Meminta sewa baru. Jika sistem file tidak memiliki sewa aktif, layanan DataLake membuat sewa pada sistem file dan mengembalikan ID sewa baru.

acquire_lease(lease_duration: int = -1, lease_id: str | None = None, **kwargs) -> DataLakeLeaseClient

Parameter

lease_duration
int
Diperlukan

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
Diperlukan

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 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

Contoh

Memperoleh sewa pada sistem file.


   # Acquire a lease on the file system
   lease = file_system_client.acquire_lease()

   # Delete file system by passing in the lease
   file_system_client.delete_file_system(lease=lease)

close

Metode ini untuk menutup soket yang dibuka oleh klien. Ini tidak perlu digunakan saat menggunakan dengan manajer konteks.

close() -> None

create_directory

Membuat direktori

create_directory(directory: DirectoryProperties | str, metadata: Dict[str, str] | None = None, **kwargs) -> DataLakeDirectoryClient

Parameter

directory
str atau DirectoryProperties
Diperlukan

Direktori yang akan berinteraksi. Ini bisa berupa nama direktori, atau instans DirectoryProperties.

metadata
dict(str, str)
Diperlukan

Pasangan nama-nilai yang terkait dengan file sebagai metadata.

content_settings
ContentSettings

Objek ContentSettings yang digunakan untuk mengatur properti jalur.

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.

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.

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

DataLakeDirectoryClient

Contoh

Buat direktori dalam sistem file.


   directory_client = file_system_client.create_directory("mydirectory")

create_file

Membuat file

create_file(file: FileProperties | str, **kwargs) -> DataLakeFileClient

Parameter

file
str atau FileProperties
Diperlukan

File yang digunakan untuk berinteraksi. Ini bisa berupa nama file, atau instans FileProperties.

content_settings
ContentSettings
Diperlukan

Objek ContentSettings yang digunakan untuk mengatur properti jalur.

metadata
dict(str, str)
Diperlukan

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.

expires_on
datetime atau int

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 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.

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

DataLakeFileClient

Contoh

Buat file dalam sistem file.


   file_client = file_system_client.create_file("myfile")

create_file_system

Membuat sistem file baru di bawah akun yang ditentukan.

Jika sistem file dengan nama yang sama sudah ada, ResourceExistsError akan dinaikkan. Metode ini mengembalikan klien untuk berinteraksi dengan sistem file yang baru dibuat.

create_file_system(metadata: Dict[str, str] | None = None, public_access: PublicAccess | None = None, **kwargs) -> Dict[str, str | datetime]

Parameter

metadata
dict(str, str)
Diperlukan

Dict dengan pasangan nama-nilai untuk dikaitkan dengan sistem file sebagai metadata. Contoh: {'Category':'test'}

public_access
PublicAccess
Diperlukan

Untuk menentukan apakah data dalam sistem file dapat diakses secara publik dan tingkat akses.

encryption_scope_options
dict atau EncryptionScopeOptions

Menentukan cakupan enkripsi default yang akan diatur pada sistem file dan menggunakan untuk semua penulisan di masa mendatang.

Baru dalam versi 12.9.0.

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

Kamus header respons.

Tipe hasil

Contoh

Membuat sistem file di layanan datalake.


   file_system_client.create_file_system()

delete_directory

Menandai jalur yang ditentukan untuk penghapusan.

delete_directory(directory: DirectoryProperties | str, **kwargs) -> DataLakeDirectoryClient

Parameter

directory
str atau DirectoryProperties
Diperlukan

Direktori yang akan berinteraksi. Ini bisa berupa nama direktori, atau instans DirectoryProperties.

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 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

DataLakeDirectoryClient

Contoh

Hapus direktori dalam sistem file.


   file_system_client.delete_directory("mydirectory")

delete_file

Menandai file yang ditentukan untuk dihapus.

delete_file(file: FileProperties | str, **kwargs) -> DataLakeFileClient

Parameter

file
str atau FileProperties
Diperlukan

File yang digunakan untuk berinteraksi. Ini bisa menjadi nama file, atau instans FileProperties.

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

DataLakeFileClient

Contoh

Hapus file dalam sistem file.


   file_system_client.delete_file("myfile")

delete_file_system

Menandai sistem file yang ditentukan untuk dihapus.

Sistem file dan file apa pun yang terkandung di dalamnya kemudian dihapus selama pengumpulan sampah. Jika sistem file tidak ditemukan, ResourceNotFoundError akan dinaikkan.

delete_file_system(**kwargs: Any) -> None

Parameter

lease
str atau DataLakeLeaseClient

Jika ditentukan, delete_file_system hanya berhasil jika sewa sistem file aktif dan cocok dengan ID ini. Diperlukan jika sistem 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.

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

Contoh

Menghapus sistem file di layanan datalake.


   file_system_client.delete_file_system()

exists

Mengembalikan True jika ada sistem 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 sistem file, Salah jika tidak.

Tipe hasil

from_connection_string

Buat FileSystemClient dari String Koneksi.

:return a FileSystemClient :rtype ~azure.storage.filedatalake.FileSystemClient

from_connection_string(conn_str: str, file_system_name: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self

Parameter

conn_str
str
Diperlukan

String koneksi ke akun Azure Storage.

file_system_name
str
Diperlukan

Nama sistem file untuk berinteraksi.

credential
nilai default: None

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.

Contoh

Membuat FileSystemClient dari string koneksi


   from azure.storage.filedatalake import FileSystemClient
   file_system_client = FileSystemClient.from_connection_string(self.connection_string, "filesystem")

get_directory_client

Dapatkan klien untuk berinteraksi dengan direktori yang ditentukan.

Direktori belum ada.

get_directory_client(directory: DirectoryProperties | str) -> DataLakeDirectoryClient

Parameter

directory
str atau DirectoryProperties
Diperlukan

Direktori untuk berinteraksi. Ini bisa menjadi nama direktori, atau instans DirectoryProperties.

Mengembalikan

A DataLakeDirectoryClient.

Tipe hasil

Contoh

Membuat klien direktori berinteraksi dengan direktori tertentu.


   # Get the DataLakeDirectoryClient from the FileSystemClient to interact with a specific file
   directory_client = file_system_client.get_directory_client("mynewdirectory")

get_file_client

Dapatkan klien untuk berinteraksi dengan file yang ditentukan.

File belum ada.

get_file_client(file_path: FileProperties | str) -> DataLakeFileClient

Parameter

file_path
str atau FileProperties
Diperlukan

File yang digunakan untuk berinteraksi. Ini bisa menjadi jalur file (dari direktori akar), atau instans FileProperties. Misalnya. direktori/subdirektori/file

Mengembalikan

A DataLakeFileClient.

Tipe hasil

Contoh

Membuat klien file berinteraksi dengan file tertentu.


   # Get the FileClient from the FileSystemClient to interact with a specific file
   file_client = file_system_client.get_file_client("mynewfile")

get_file_system_access_policy

Mendapatkan izin untuk sistem file yang ditentukan. Izin menunjukkan apakah data sistem file dapat diakses secara publik.

get_file_system_access_policy(**kwargs: Any) -> Dict[str, Any]

Parameter

lease
DataLakeLeaseClient atau str

Jika ditentukan, operasi hanya berhasil jika sewa sistem file aktif dan cocok dengan ID 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

Mengakses informasi kebijakan dalam dict.

Tipe hasil

get_file_system_properties

Mengembalikan semua metadata dan properti sistem yang ditentukan pengguna untuk sistem file yang ditentukan. Data yang dikembalikan tidak menyertakan daftar jalur sistem file.

get_file_system_properties(**kwargs: Any) -> FileSystemProperties

Parameter

lease
str atau DataLakeLeaseClient

Jika ditentukan, get_file_system_properties hanya berhasil jika sewa sistem file aktif dan cocok dengan ID 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

Properti untuk sistem file yang ditentukan dalam objek sistem file.

Tipe hasil

Contoh

Mendapatkan properti pada sistem file.


   properties = file_system_client.get_file_system_properties()

get_paths

Mengembalikan generator untuk mencantumkan jalur (bisa berupa file atau direktori) di bawah sistem file yang ditentukan. Generator akan dengan malas mengikuti token kelanjutan yang dikembalikan oleh layanan.

get_paths(path: str | None = None, recursive: bool | None = True, max_results: int | None = None, **kwargs) -> ItemPaged[PathProperties]

Parameter

path
str
Diperlukan

Memfilter hasil untuk mengembalikan hanya jalur di bawah jalur yang ditentukan.

recursive
Optional[bool]
Diperlukan

Pilihan. Atur True untuk rekursif, False untuk iteratif.

max_results
int
Diperlukan

Nilai opsional yang menentukan jumlah maksimum item yang akan dikembalikan per halaman. Jika dihilangkan atau lebih besar dari 5.000, respons akan menyertakan hingga 5.000 item per halaman.

upn

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.

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

Respons pathProperties yang dapat diulang (auto-paging).

Tipe hasil

Contoh

Cantumkan jalur dalam sistem file.


   path_list = file_system_client.get_paths()
   for path in path_list:
       print(path.name + '\n')

list_deleted_paths

Mengembalikan generator untuk mencantumkan jalur (file atau direktori) yang dihapus di bawah sistem file yang ditentukan. Generator akan dengan malas mengikuti token kelanjutan yang dikembalikan oleh layanan.

Baru dalam versi 12.4.0: Operasi ini diperkenalkan dalam versi API '2020-06-12'.

list_deleted_paths(**kwargs: Any) -> ItemPaged[DeletedPathProperties]

Parameter

path_prefix
str

Memfilter hasil untuk mengembalikan hanya jalur di bawah jalur yang ditentukan.

results_per_page
int

Nilai opsional yang menentukan jumlah maksimum item yang akan dikembalikan per halaman. Jika dihilangkan atau lebih besar dari 5.000, respons akan menyertakan hingga 5.000 item per halaman.

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

Respons yang dapat diulang (halaman otomatis) dari DeletedPathProperties.

Tipe hasil

set_file_system_access_policy

Menyetel izin untuk sistem file yang ditentukan atau kebijakan akses tersimpan yang dapat digunakan dengan Tanda Tangan Akses Bersama. Izin menunjukkan apakah file dalam sistem file dapat diakses secara publik.

set_file_system_access_policy(signed_identifiers: Dict[str, AccessPolicy], public_access: str | PublicAccess | None = None, **kwargs) -> Dict[str, str | datetime]

Parameter

signed_identifiers
dict[str, AccessPolicy]
Diperlukan

Kamus kebijakan akses untuk dikaitkan dengan sistem file. Kamus mungkin berisi hingga 5 elemen. Kamus kosong akan menghapus kebijakan akses yang ditetapkan pada layanan.

public_access
PublicAccess
Diperlukan

Untuk menentukan apakah data dalam sistem file dapat diakses secara publik dan tingkat akses.

lease
DataLakeLeaseClient atau str

Diperlukan jika sistem 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 tanggal/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.

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 dimodifikasi).

Tipe hasil

set_file_system_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_file_system_metadata(metadata: Dict[str, str], **kwargs) -> Dict[str, str | datetime]

Parameter

metadata
dict[str, str]
Diperlukan

Dict yang berisi pasangan nama-nilai untuk dikaitkan dengan sistem file sebagai metadata. Contoh: {'category':'test'}

lease
str atau DataLakeLeaseClient

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 filesystem-updated (Etag dan terakhir dimodifikasi).

Tipe hasil

Contoh

Mengatur metadata pada sistem file.


   # Create key, value pairs for metadata
   metadata = {'type': 'test'}

   # Set metadata on the file system
   file_system_client.set_file_system_metadata(metadata=metadata)

Atribut

api_version

Versi STORAGE API 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 secara eksplisit menentukan nama host sekunder, gunakan argumen kata kunci secondary_hostname opsional pada instantiation.

Pengecualian

secondary_hostname

Nama host titik akhir sekunder.

Jika tidak tersedia, ini akan menjadi Tidak Ada. Untuk secara eksplisit menentukan nama host sekunder, gunakan argumen kata kunci secondary_hostname opsional pada instantiation.

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 penuh ke entitas ini, termasuk token SAS jika digunakan. :rtype: str