此模块包含 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。
- 参数
-
- 返回
完整键的列表。
- 返回类型
list
-
begin_transaction(project_id, transaction_options)[源代码]
开始新的事务。
- 参数
-
- 返回
一个事务句柄。
- 返回类型
str
-
commit(body, project_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)[源代码]
回滚事务。
- 参数
-
-
run_query(body, project_id)[源代码]
运行实体查询。
- 参数
-
- 返回
批量查询结果。
- 返回类型
dict
-
get_operation(name)[源代码]
获取长时间运行的操作的最新状态。
- 参数
name (str) – 操作资源的名称。
- 返回
一个资源操作实例。
- 返回类型
dict
-
delete_operation(name)[源代码]
删除长时间运行的操作。
- 参数
name (str) – 操作资源的名称。
- 返回
如果成功,则为无。
- 返回类型
dict
-
poll_operation_until_done(name, polling_interval_in_seconds)[源代码]
轮询备份操作状态,直到完成。
- 参数
-
- 返回
一个资源操作实例。
- 返回类型
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) – 云存储命名空间路径。
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)[source]
将 Cloud Storage 中的备份导入到 Cloud Datastore。
注意
请记住,这会请求 Admin API 而不是 Data API。
- 参数
bucket (str) – Cloud Storage 存储桶的名称。
file (str) – 由 projects.export 操作写入的元数据文件。
namespace (str | None) – 云存储命名空间路径。
entity_filter (dict | None) – 指定要导入的种类/命名空间。
labels (dict | str | None) – 客户端分配的标签。
project_id (str) – 要对其发出请求的 Google Cloud 项目 ID。
- 返回
一个资源操作实例。
- 返回类型
dict