共用方式為


DataLakeLeaseClient 類別

建立新的 DataLakeLeaseClient。

此用戶端會在 FileSystemClient、DataLakeDirectoryClient 或 DataLakeFileClient 上提供租用作業。

繼承
azure.storage.filedatalake._data_lake_lease.DataLakeLeaseClient
DataLakeLeaseClient

建構函式

DataLakeLeaseClient(client: FileSystemClient | DataLakeDirectoryClient | DataLakeFileClient, lease_id: str | None = None)

參數

client
FileSystemClientDataLakeDirectoryClientDataLakeFileClient
必要

要租用之檔案系統、目錄或檔案的用戶端。

lease_id
str
預設值: None

字串,表示現有租用的租用識別碼。 這個值不需要指定,才能取得新的租用,或中斷一個租用。

變數

id
str

目前正在維護的租用識別碼。 如果尚未取得租用,這會是 None

etag
str

目前正在維護租用的 ETag。 如果尚未取得或修改租用,這會是 None

last_modified
datetime

目前正在維護租用的最後一個修改時間戳記。 如果尚未取得或修改租用,這會是 None

方法

acquire

要求新的租用。

如果檔案/檔案系統沒有使用中的租用,DataLake 服務會在檔案/檔案系統上建立租用,並傳回新的租用識別碼。

break_lease

如果檔案系統或檔案有作用中的租用,請中斷租用。

一旦租用中斷,即無法更新。 任何獲授權的要求都可以中斷租用,不需要求即可指定相符的租用識別碼。 當租用中斷時,允許租用中斷期間經過,在這段期間,除了中斷和釋放以外的租用作業,可以在檔案系統或檔案上執行。 當租用成功中斷時,回應會指出可取得新租用之前的間隔秒數。

change

變更使用中租用的租用識別碼。

release

釋放租用。

如果指定的用戶端租用識別碼符合與檔案系統或檔案相關聯的識別碼,可能會釋放租用。 釋放租用可讓另一個用戶端在發行完成後立即取得檔案系統或檔案的租用。

renew

更新租用。

如果租用用戶端中指定的租用識別碼符合與檔案系統或檔案相關聯的租用識別碼,則可以更新租用。 請注意,即使租用自該租用到期後尚未再次租用檔案系統或檔案,仍可能會更新租用。 當您更新租用時,租用持續時間的時鐘會重設。

acquire

要求新的租用。

如果檔案/檔案系統沒有使用中的租用,DataLake 服務會在檔案/檔案系統上建立租用,並傳回新的租用識別碼。

async acquire(lease_duration: int = -1, **kwargs: int | None) -> None

參數

lease_duration
int
必要

指定租用的持續時間 (秒數),或指定負一 (-1),代表租用永不到期。 非無限期的租用可以介於 15 到 60 秒之間。 租用持續時間無法使用更新或變更來變更。 預設值為 -1 (無限租用) 。

if_modified_since
datetime

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

etag
str

ETag 值,或萬用字元 (*)。 用來檢查資源是否已變更,並根據 match_condition 參數所指定的條件採取行動。

match_condition
MatchConditions

要用於 etag 的比對條件。

timeout
int

以秒為單位設定作業的伺服器端逾時。 如需詳細資訊,請參閱 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 。 用戶端上不會追蹤或驗證此值。 若要設定用戶端網路逾時,請參閱 這裡

傳回類型

break_lease

如果檔案系統或檔案有作用中的租用,請中斷租用。

一旦租用中斷,即無法更新。 任何獲授權的要求都可以中斷租用,不需要求即可指定相符的租用識別碼。 當租用中斷時,允許租用中斷期間經過,在這段期間,除了中斷和釋放以外的租用作業,可以在檔案系統或檔案上執行。 當租用成功中斷時,回應會指出可取得新租用之前的間隔秒數。

async break_lease(lease_break_period: int | None = None, **kwargs: Any) -> int

參數

lease_break_period
int
必要

這是租用在中斷前應該繼續的秒數建議持續時間,介於 0 到 60 秒之間。 只有在比租用的剩餘時間還短時,才會使此中斷期。 如果時間較長,則會使用租用的剩餘時間。 在中斷期到期之前,將無法使用新的租用,但是保留租用的時間可以比中斷期還長。 如果此標頭未顯示中斷作業,固定持續時間租用會在剩餘租用期間經過之後中斷,而無限租用會立即中斷。

if_modified_since
datetime

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

timeout
int

以秒為單位設定作業的伺服器端逾時。 如需詳細資訊,請參閱 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 。 用戶端上不會追蹤或驗證此值。 若要設定用戶端網路逾時,請參閱 這裡

傳回

在租用期間內保留的近似時間 (以秒計)。

傳回類型

int

change

變更使用中租用的租用識別碼。

async change(proposed_lease_id: str, **kwargs: Any) -> None

參數

proposed_lease_id
str
必要

建議的租用識別碼,使用 GUID 字串格式。 如果建議的租用識別碼格式不正確,DataLake 服務會傳回 400 (不正確要求) 。

if_modified_since
datetime

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

etag
str

ETag 值,或萬用字元 (*)。 用來檢查資源是否已變更,並根據 match_condition 參數所指定的條件採取行動。

match_condition
MatchConditions

要用於 etag 的比對條件。

timeout
int

以秒為單位設定作業的伺服器端逾時。 如需詳細資訊,請參閱 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 。 用戶端上不會追蹤或驗證此值。 若要設定用戶端網路逾時,請參閱 這裡

傳回

release

釋放租用。

如果指定的用戶端租用識別碼符合與檔案系統或檔案相關聯的識別碼,可能會釋放租用。 釋放租用可讓另一個用戶端在發行完成後立即取得檔案系統或檔案的租用。

async release(**kwargs: Any) -> None

參數

if_modified_since
datetime

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

etag
str

ETag 值,或萬用字元 (*)。 用來檢查資源是否已變更,並根據 match_condition 參數所指定的條件採取行動。

match_condition
MatchConditions

要用於 etag 的比對條件。

timeout
int

以秒為單位設定作業的伺服器端逾時。 如需詳細資訊,請參閱 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 。 用戶端上不會追蹤或驗證此值。 若要設定用戶端網路逾時,請參閱 這裡

傳回

renew

更新租用。

如果租用用戶端中指定的租用識別碼符合與檔案系統或檔案相關聯的租用識別碼,則可以更新租用。 請注意,即使租用自該租用到期後尚未再次租用檔案系統或檔案,仍可能會更新租用。 當您更新租用時,租用持續時間的時鐘會重設。

async renew(**kwargs: Any) -> None

參數

if_modified_since
datetime

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,則任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源在指定的時間後修改,才能指定此標準執行作業。

if_unmodified_since
datetime

日期時間值。 Azure 預期傳入的日期值是 UTC。 如果包含時區,任何非 UTC 日期時間都會轉換成 UTC。 如果在沒有時區資訊的情況下傳入日期,則會假設為 UTC。 只有資源沒有在指定的日期/時間後修改,才能指定此標頭執行作業。

etag
str

ETag 值,或萬用字元 (*)。 用來檢查資源是否已變更,並根據 match_condition 參數所指定的條件採取行動。

match_condition
MatchConditions

要用於 etag 的比對條件。

timeout
int

以秒為單位設定作業的伺服器端逾時。 如需詳細資訊,請參閱 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations 。 此值不會在用戶端上追蹤或驗證。 若要設定用戶端網路逾時,請參閱 這裡

傳回