airflow.providers.amazon.aws.hooks.dms

DmsTaskWaiterStatus

可用的 AWS DMS 任务等待器状态。

DmsHook

与 AWS Database Migration Service (DMS) 交互。

模块内容

class airflow.providers.amazon.aws.hooks.dms.DmsTaskWaiterStatus[source]

Bases: str, enum.Enum

可用的 AWS DMS 任务等待器状态。

DELETED = 'deleted'[source]
READY = 'ready'[source]
RUNNING = 'running'[source]
STOPPED = 'stopped'[source]
class airflow.providers.amazon.aws.hooks.dms.DmsHook(*args, **kwargs)[source]

Bases: airflow.providers.amazon.aws.hooks.base_aws.AwsBaseHook

与 AWS Database Migration Service (DMS) 交互。

提供围绕 boto3.client("dms") 的精简封装。

可以指定附加参数(例如 aws_conn_id),这些参数将传递给底层的 AwsBaseHook。

describe_replication_tasks(**kwargs)[source]

描述复制任务。

返回:

标记和复制任务列表

返回类型:

tuple[str | None, list]

find_replication_tasks_by_arn(replication_task_arn, without_settings=False)[source]

按任务 ARN 查找并描述复制任务。

参数:
  • replication_task_arn (str) – 复制任务 ARN

  • without_settings (bool | None) – 指示是否返回包含设置的任务信息。

返回:

匹配 ARN 的复制任务列表

get_task_status(replication_task_arn)[source]

检索任务状态。

参数:

replication_task_arn (str) – 复制任务 ARN

返回:

当前任务状态

返回类型:

str | None

create_replication_task(replication_task_id, source_endpoint_arn, target_endpoint_arn, replication_instance_arn, migration_type, table_mappings, **kwargs)[source]

创建 DMS 复制任务。

参数:
  • replication_task_id (str) – 复制任务 ID

  • source_endpoint_arn (str) – 源端点 ARN

  • target_endpoint_arn (str) – 目标端点 ARN

  • replication_instance_arn (str) – 复制实例 ARN

  • table_mappings (dict) – 表映射

  • migration_type (str) – 迁移类型 ('full-load'|'cdc'|'full-load-and-cdc'),默认为 full-load。

返回:

复制任务 ARN

返回类型:

str

start_replication_task(replication_task_arn, start_replication_task_type, **kwargs)[source]

启动复制任务。

参数:
  • replication_task_arn (str) – 复制任务 ARN

  • start_replication_task_type (str) – 复制任务启动类型(默认='start-replication')('start-replication'|'resume-processing'|'reload-target')

stop_replication_task(replication_task_arn)[source]

停止复制任务。

参数:

replication_task_arn – 复制任务 ARN

delete_replication_task(replication_task_arn)[source]

启动复制任务删除并等待其被删除。

参数:

replication_task_arn – 复制任务 ARN

wait_for_task_status(replication_task_arn, status)[source]

等待复制任务达到指定状态;支持的状态包括:deleted、ready、running、stopped。

参数:
describe_replication_configs(filters=None, **kwargs)[source]

返回无服务器复制配置列表。

参数:

filters (list[dict] | None) – 过滤器对象列表

返回:

复制配置列表

返回类型:

list[dict]

create_replication_config(replication_config_id, source_endpoint_arn, target_endpoint_arn, compute_config, replication_type, table_mappings, additional_config_kwargs=None, **kwargs)[source]

创建一个 AWS DMS 无服务器配置,可用于启动 DMS 无服务器复制。

参数:
  • replicationConfigId – 用于创建 ReplicationConfigArn 的唯一标识符。

  • sourceEndpointArn – 源端点 ARN

  • targetEndpointArn – 目标端点 ARN

  • computeConfig – 用于预置 DMS 无服务器复制的参数。

  • replicationType – DMS 无服务器复制的类型

  • tableMappings – JSON 表映射

  • tags – 键值标签对

  • resourceId – 您为给定资源设置的唯一值或名称,可用于构造该资源的 Amazon Resource Name (ARN)。

  • supplementalSettings – 用于指定补充数据的 JSON 设置

  • replicationSettings – DMS 无服务器复制的 JSON 设置

返回:

ReplicationConfigArn

describe_replications(filters=None, **kwargs)[source]

返回无服务器复制列表。

参数:

filters (list[dict[str, Any]] | None) – 过滤器对象列表

返回:

复制列表

返回类型:

list[dict]

delete_replication_config(replication_config_arn, delay=60, max_attempts=120)[source]

删除 AWS DMS 无服务器配置。

参数:

replication_config_arn (str) – ReplicationConfigArn

start_replication(replication_config_arn, start_replication_type, cdc_start_time=None, cdc_start_pos=None, cdc_stop_pos=None)[source]
stop_replication(replication_config_arn)[source]
get_provision_status(replication_config_arn)[source]

获取无服务器复制的预置状态。

此条目是否有帮助?