airflow.providers.amazon.aws.transfers.dynamodb_to_s3
¶
模块内容¶
类¶
自定义 json 编码器实现。 |
|
将 DynamoDB 表中的记录复制到 S3。 |
- class airflow.providers.amazon.aws.transfers.dynamodb_to_s3.JSONEncoder(*, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, sort_keys=False, indent=None, separators=None, default=None)[source]¶
基类:
json.JSONEncoder
自定义 json 编码器实现。
- class airflow.providers.amazon.aws.transfers.dynamodb_to_s3.DynamoDBToS3Operator(*, dynamodb_table_name, s3_bucket_name, file_size=1000, dynamodb_scan_kwargs=None, s3_key_prefix='', process_func=_convert_item_to_json_bytes, point_in_time_export=False, export_time=None, export_format='DYNAMODB_JSON', export_table_to_point_in_time_kwargs=None, check_interval=30, max_attempts=60, **kwargs)[source]¶
基类:
airflow.providers.amazon.aws.transfers.base.AwsToAwsBaseOperator
将 DynamoDB 表中的记录复制到 S3。
它扫描 DynamoDB 表,并将接收到的记录写入本地文件系统上的文件。 一旦文件大小超过用户指定的文件大小限制,它会将文件刷新到 S3。
用户还可以使用 dynamodb_scan_kwargs 指定过滤条件,以便仅复制满足条件的记录。
另请参阅
有关如何使用此操作符的更多信息,请查看指南: Amazon DynamoDB 到 Amazon S3 传输操作符
- 参数
dynamodb_table_name (str) – 要从中复制数据的 Dynamodb 表
s3_bucket_name (str) – 要将数据复制到的 S3 存储桶
file_size (int) – 如果文件大小 >= file_size,则将文件刷新到 s3
dynamodb_scan_kwargs (dict[str, Any] | None) – 传递给 <https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/dynamodb.html#DynamoDB.Table.scan> 的 kwargs
s3_key_prefix (str) – S3 对象键的前缀
process_func (Callable[[dict[str, Any]], bytes]) – 我们如何将 dynamodb 项转换为字节。 默认情况下,我们转储 json
point_in_time_export (bool) – 指示操作符使用“扫描”还是“时间点导出”的布尔值
export_time (datetime.datetime | None) – 要从中导出表数据的过去时间,从 Unix epoch 的开始计算(以秒为单位)。表导出将是该时间点的表状态快照。
export_format (str) – 导出数据的格式。 ExportFormat 的有效值为 DYNAMODB_JSON 或 ION。
export_table_to_point_in_time_kwargs (dict | None) – boto3 export_table_to_point_in_time 函数的所有额外参数。 例如 ExportType,IncrementalExportSpecification
check_interval (int) – 尝试之间等待的秒数。 仅当提供
export_time
时。max_attempts (int) – 要尝试的最大次数。 仅当提供
export_time
时。
- template_fields: collections.abc.Sequence[str] = ()[source]¶