airflow.providers.google.cloud.hooks.datastore

此模組包含 Google Datastore Hook。

模組內容

類別

DatastoreHook

與 Google Cloud Datastore 互動。此 Hook 使用 Google Cloud 連線。

class airflow.providers.google.cloud.hooks.datastore.DatastoreHook(gcp_conn_id='google_cloud_default', api_version='v1', impersonation_chain=None, **kwargs)[原始碼]

繼承: airflow.providers.google.common.hooks.base_google.GoogleBaseHook

與 Google Cloud Datastore 互動。此 Hook 使用 Google Cloud 連線。

此物件並非執行緒安全。如果您想要同時發出多個請求,您將需要為每個執行緒建立一個 Hook。

參數

api_version (str) – 要連線的 API 版本。

get_conn()[原始碼]

建立與 Google API 的連線。

返回

Google Cloud Datastore 服務物件。

返回類型

googleapiclient.discovery.Resource

allocate_ids(partial_keys, project_id)[原始碼]

為不完整的鍵配置 ID。

參數
  • partial_keys (list) – 部分鍵的列表。

  • project_id (str) – 要對其發出請求的 Google Cloud 專案 ID。

返回

完整的鍵列表。

返回類型

list

begin_transaction(project_id, transaction_options)[原始碼]

開始新的交易。

參數
  • project_id (str) – 要對其發出請求的 Google Cloud 專案 ID。

  • transaction_options (dict[str, Any]) – 新交易的選項。

返回

交易控制代碼。

返回類型

str

commit(body, project_id)[原始碼]

提交交易,可選擇性地建立、刪除或修改一些實體。

參數
  • body (dict) – 提交請求的主體。

  • project_id (str) – 要對其發出請求的 Google Cloud 專案 ID。

返回

提交請求的回應主體。

返回類型

dict

lookup(keys, project_id, read_consistency=None, transaction=None)[原始碼]

依鍵查詢一些實體。

參數
  • keys (list) – 要查詢的鍵。

  • read_consistency (str | None) – 要使用的讀取一致性。預設值、強式或最終一致性。不能與交易一起使用。

  • transaction (str | None) – 要使用的交易(如果有的話)。

  • project_id (str) – 要對其發出請求的 Google Cloud 專案 ID。

返回

查詢請求的回應主體。

返回類型

dict

rollback(transaction, project_id)[原始碼]

回滾交易。

參數
  • transaction (str) – 要回滾的交易。

  • project_id (str) – 要對其發出請求的 Google Cloud 專案 ID。

run_query(body, project_id)[原始碼]

執行實體查詢。

參數
  • body (dict) – 查詢請求的主體。

  • project_id (str) – 要對其發出請求的 Google Cloud 專案 ID。

返回

批次查詢結果。

返回類型

dict

get_operation(name)[原始碼]

取得長時間執行作業的最新狀態。

參數

name (str) – 作業資源的名稱。

返回

資源作業實例。

返回類型

dict

delete_operation(name)[原始碼]

刪除長時間執行的作業。

參數

name (str) – 作業資源的名稱。

返回

如果成功,則為 None。

返回類型

dict

poll_operation_until_done(name, polling_interval_in_seconds)[原始碼]

輪詢備份作業狀態,直到完成。

參數
  • name (str) – 作業資源的名稱

  • polling_interval_in_seconds (float) – 在呼叫另一個請求之前要等待的秒數。

返回

資源作業實例。

返回類型

dict

export_to_storage_bucket(bucket, project_id, namespace=None, entity_filter=None, labels=None)[原始碼]

將實體從 Cloud Datastore 匯出到 Cloud Storage 以進行備份。

注意

請記住,這會請求 Admin API 而非 Data API。

參數
  • bucket (str) – Cloud Storage 儲存貯體的名稱。

  • namespace (str | None) – Cloud Storage 命名空間路徑。

  • entity_filter (dict | None) – 專案中包含在匯出中的資料描述。

  • labels (dict[str, str] | None) – 用戶端指派的標籤。

  • project_id (str) – 要對其發出請求的 Google Cloud 專案 ID。

返回

資源作業實例。

返回類型

dict

import_from_storage_bucket(bucket, file, project_id, namespace=None, entity_filter=None, labels=None)[原始碼]

將備份從 Cloud Storage 匯入到 Cloud Datastore。

注意

請記住,這會請求 Admin API 而非 Data API。

參數
  • bucket (str) – Cloud Storage 儲存貯體的名稱。

  • file (str) – projects.export 作業寫入的中繼資料檔案。

  • namespace (str | None) – Cloud Storage 命名空間路徑。

  • entity_filter (dict | None) – 指定要匯入的種類/命名空間。

  • labels (dict | str | None) – 用戶端指派的標籤。

  • project_id (str) – 要對其發出請求的 Google Cloud 專案 ID。

返回

資源作業實例。

返回類型

dict

此條目是否有幫助?