airflow.providers.amazon.aws.hooks.rds

与 AWS RDS 交互。

模块内容

RdsHook

与 Amazon Relational Database Service (RDS) 交互。

class airflow.providers.amazon.aws.hooks.rds.RdsHook(*args, **kwargs)[源代码]

基类: airflow.providers.amazon.aws.hooks.base_aws.AwsGenericHook[mypy_boto3_rds.RDSClient]

与 Amazon Relational Database Service (RDS) 交互。

提供对 boto3.client("rds") 的简单封装。

可以指定额外的参数(例如 aws_conn_id),它们会传递给底层的 AwsBaseHook。

get_db_snapshot_state(snapshot_id)[源代码]

获取数据库实例快照的当前状态。

参数

snapshot_id (str) – 目标数据库实例快照的 ID

返回

以字符串形式返回数据库快照的状态(例如“可用”)

引发

AirflowNotFoundException – 如果数据库实例快照不存在。

返回类型

str

wait_for_db_snapshot_state(snapshot_id, target_state, check_interval=30, max_attempts=40)[源代码]

轮询数据库快照,直到达到 target_state;在 max_attempts 次尝试后引发 AirflowException。

参数
  • snapshot_id (str) – 目标数据库实例快照的 ID

  • target_state (str) – 等待直到达到此状态

  • check_interval (int) – 尝试之间等待的秒数

  • max_attempts (int) – 尝试的最大次数

get_db_cluster_snapshot_state(snapshot_id)[源代码]

获取数据库集群快照的当前状态。

参数

snapshot_id (str) – 目标数据库集群的 ID。

返回

以字符串形式返回数据库集群快照的状态(例如“可用”)

引发

AirflowNotFoundException – 如果数据库集群快照不存在。

返回类型

str

wait_for_db_cluster_snapshot_state(snapshot_id, target_state, check_interval=30, max_attempts=40)[源代码]

轮询数据库集群快照,直到达到 target_state;在 max_attempts 次尝试后引发 AirflowException。

参数
  • snapshot_id (str) – 目标数据库集群快照的 ID

  • target_state (str) – 等待直到达到此状态

  • check_interval (int) – 尝试之间等待的秒数

  • max_attempts (int) – 尝试的最大次数

get_export_task_state(export_task_id)[源代码]

获取 RDS 快照导出到 Amazon S3 的当前状态。

参数

export_task_id (str) – 目标快照导出任务的标识符。

返回

以字符串形式返回快照导出任务的状态(例如“已取消”)

引发

AirflowNotFoundException – 如果导出任务不存在。

返回类型

str

wait_for_export_task_state(export_task_id, target_state, check_interval=30, max_attempts=40)[源代码]

轮询导出任务,直到达到 target_state;在 max_attempts 次尝试后引发 AirflowException。

参数
  • export_task_id (str) – 目标快照导出任务的标识符。

  • target_state (str) – 等待直到达到此状态

  • check_interval (int) – 尝试之间等待的秒数

  • max_attempts (int) – 尝试的最大次数

get_event_subscription_state(subscription_name)[源代码]

获取 RDS 快照导出到 Amazon S3 的当前状态。

参数

subscription_name (str) – 目标 RDS 事件通知订阅的名称。

返回

以字符串形式返回事件订阅的状态(例如“活动”)

引发

AirflowNotFoundException – 如果事件订阅不存在。

返回类型

str

wait_for_event_subscription_state(subscription_name, target_state, check_interval=30, max_attempts=40)[源代码]

轮询事件订阅,直到达到 target_state;在 max_attempts 次尝试后引发 AirflowException。

参数
  • subscription_name (str) – 目标 RDS 事件通知订阅的名称。

  • target_state (str) – 等待直到达到此状态

  • check_interval (int) – 尝试之间等待的秒数

  • max_attempts (int) – 尝试的最大次数

get_db_instance_state(db_instance_id)[源代码]

获取数据库实例的当前状态。

参数

db_instance_id (str) – 目标数据库实例的 ID。

返回

以字符串形式返回数据库实例的状态(例如“可用”)

引发

AirflowNotFoundException – 如果数据库实例不存在。

返回类型

str

wait_for_db_instance_state(db_instance_id, target_state, check_interval=30, max_attempts=40)[source]

轮询数据库实例,直到达到 target_state;在达到 max_attempts 后引发 AirflowException。

参数
  • db_instance_id (str) – 目标数据库实例的 ID。

  • target_state (str) – 等待直到达到此状态

  • check_interval (int) – 尝试之间等待的秒数

  • max_attempts (int) – 尝试的最大次数

get_db_cluster_state(db_cluster_id)[source]

获取数据库集群的当前状态。

参数

db_cluster_id (str) – 目标数据库集群的 ID。

返回

返回数据库集群的状态,以字符串形式(例如 “available”)。

引发

AirflowNotFoundException – 如果数据库集群不存在。

返回类型

str

wait_for_db_cluster_state(db_cluster_id, target_state, check_interval=30, max_attempts=40)[source]

轮询数据库集群,直到达到 target_state;在达到 max_attempts 后引发 AirflowException。

参数
  • db_cluster_id (str) – 目标数据库集群的 ID。

  • target_state (str) – 等待直到达到此状态

  • check_interval (int) – 尝试之间等待的秒数

  • max_attempts (int) – 尝试的最大次数

此条目是否有帮助?