airflow.providers.google.cloud.hooks.spanner
¶
此模組包含 Google Cloud Spanner Hook。
模組內容¶
類別¶
關於 Google Spanner 連線參數的資訊。 |
|
用於 Google Cloud Spanner API 的 Hook。 |
- class airflow.providers.google.cloud.hooks.spanner.SpannerConnectionParams[source]¶
基底類別:
NamedTuple
關於 Google Spanner 連線參數的資訊。
- class airflow.providers.google.cloud.hooks.spanner.SpannerHook(gcp_conn_id='google_cloud_default', impersonation_chain=None, **kwargs)[source]¶
基底類別:
airflow.providers.google.common.hooks.base_google.GoogleBaseHook
,airflow.providers.common.sql.hooks.sql.DbApiHook
用於 Google Cloud Spanner API 的 Hook。
Hook 中所有使用 project_id 的方法都必須使用關鍵字引數而不是位置引數來呼叫。
- get_sqlalchemy_engine(engine_kwargs=None)[source]¶
取得 sqlalchemy_engine 物件。
- 參數
engine_kwargs – 用於
create_engine()
中的 Kwargs。- 返回
建立的引擎。
- get_instance(instance_id, project_id)[source]¶
取得關於特定執行個體的資訊。
- 參數
project_id (str) – (選填) 擁有 Cloud Spanner 資料庫的 Google Cloud 專案 ID。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。
instance_id (str) – Cloud Spanner 執行個體的 ID。
- 返回
Spanner 執行個體
- 返回類型
- create_instance(instance_id, configuration_name, node_count, display_name, project_id)[source]¶
建立新的 Cloud Spanner 執行個體。
- 參數
instance_id (str) – Cloud Spanner 執行個體的 ID。
configuration_name (str) – 定義執行個體建立方式的執行個體組態名稱。可透過 https://cloud.google.com/spanner/docs/reference/rest/v1/projects.instanceConfigs/list 取得可能的組態值
node_count (int) – (選填) 分配給 Cloud Spanner 執行個體的節點數。
display_name (str) – (選填) Google Cloud Console 中顯示的執行個體名稱。必須介於 4 到 30 個字元之間。如果未傳遞此值,則名稱會回退為執行個體 ID。
project_id (str) – 選填,擁有 Cloud Spanner 資料庫的 Google Cloud 專案 ID。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。
- 返回
None
- 返回類型
None
- update_instance(instance_id, configuration_name, node_count, display_name, project_id)[source]¶
更新現有的 Cloud Spanner 執行個體。
- 參數
instance_id (str) – Cloud Spanner 執行個體的 ID。
configuration_name (str) – 定義執行個體建立方式的執行個體組態名稱。可透過 https://cloud.google.com/spanner/docs/reference/rest/v1/projects.instanceConfigs/list 取得可能的組態值
node_count (int) – (選填) 分配給 Cloud Spanner 執行個體的節點數。
display_name (str) – (選填) Google Cloud Console 中顯示的執行個體名稱。必須介於 4 到 30 個字元之間。如果未在建構函式中設定此值,則名稱會回退為執行個體 ID。
project_id (str) – 選填,擁有 Cloud Spanner 資料庫的 Google Cloud 專案 ID。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。
- 返回
None
- 返回類型
None
- delete_instance(instance_id, project_id)[source]¶
刪除現有的 Cloud Spanner 執行個體。
- 參數
instance_id (str) – Cloud Spanner 執行個體的 ID。
project_id (str) – 選填,擁有 Cloud Spanner 資料庫的 Google Cloud 專案 ID。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。
- 返回
None
- 返回類型
None
- get_database(instance_id, database_id, project_id)[source]¶
檢索 Cloud Spanner 中的資料庫;如果資料庫在執行個體中不存在,則傳回 None。
- 參數
instance_id (str) – Cloud Spanner 執行個體的 ID。
database_id (str) – Cloud Spanner 中資料庫的 ID。
project_id (str) – 選填,擁有 Cloud Spanner 資料庫的 Google Cloud 專案 ID。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。
- 返回
資料庫物件;如果資料庫不存在,則為 None
- 返回類型
- create_database(instance_id, database_id, ddl_statements, project_id)[source]¶
在 Cloud Spanner 中建立新的資料庫。
- 參數
instance_id (str) – Cloud Spanner 執行個體的 ID。
database_id (str) – 要在 Cloud Spanner 中建立的資料庫 ID。
ddl_statements (list[str]) – 包含新資料庫 DDL 的字串列表。
project_id (str) – 選填,擁有 Cloud Spanner 資料庫的 Google Cloud 專案 ID。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。
- 返回
None
- 返回類型
None
- update_database(instance_id, database_id, ddl_statements, project_id, operation_id=None)[source]¶
更新 Cloud Spanner 中資料庫的 DDL。
- 參數
instance_id (str) – Cloud Spanner 執行個體的 ID。
database_id (str) – Cloud Spanner 中資料庫的 ID。
ddl_statements (list[str]) – 包含新資料庫 DDL 的字串列表。
project_id (str) – 選填,擁有 Cloud Spanner 資料庫的 Google Cloud 專案 ID。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。
operation_id (str | None) – (選填) 可以指定用於實作等冪性檢查的每個資料庫操作的唯一 ID。
- 返回
None
- 返回類型
None
- delete_database(instance_id, database_id, project_id)[source]¶
捨棄 Cloud Spanner 中的資料庫。
- 參數
instance_id (str) – Cloud Spanner 執行個體的 ID。
database_id – Cloud Spanner 中資料庫的 ID。
project_id (str) – 選填,擁有 Cloud Spanner 資料庫的 Google Cloud 專案 ID。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。
- 返回
如果一切成功則為 True
- 返回類型
- execute_dml(instance_id, database_id, queries, project_id)[source]¶
執行任意 DML 查詢 (INSERT、UPDATE、DELETE)。
- 參數
instance_id (str) – Cloud Spanner 執行個體的 ID。
database_id (str) – Cloud Spanner 中資料庫的 ID。
queries (list[str]) – 要執行的查詢。
project_id (str) – 選填,擁有 Cloud Spanner 資料庫的 Google Cloud 專案 ID。如果設定為 None 或遺失,則會使用 Google Cloud 連線中的預設 project_id。