SQL 到 Amazon S3

使用 SqlToS3Operator 将数据从 SQL 服务器复制到 Amazon Simple Storage Service (S3) 文件中。SqlToS3Operator 与任何 SQL 连接兼容,只要该 SQL hook 具有将 SQL 结果转换为 pandas dataframe 的函数(例如 MySQL、Hive 等)。

先决条件任务

要使用这些操作符,您需要完成以下几项:

操作符

MySQL 到 Amazon S3 传输操作符

此示例将 MySQL 查询的响应发送到 Amazon S3 文件。

要了解有关此操作符的更多信息,请访问: SqlToS3Operator

示例用法

tests/system/amazon/aws/example_sql_to_s3.py

sql_to_s3_task = SqlToS3Operator(
    task_id="sql_to_s3_task",
    sql_conn_id=conn_id_name,
    query=SQL_QUERY,
    s3_bucket=bucket_name,
    s3_key=key,
    replace=True,
)

分组

我们可以通过传递 groupby_kwargs 参数来对表中的数据进行分组。此参数接受一个 dict 类型的值,该值将作为 kwargs 传递给 pandas 的 groupby() 方法。

示例用法

tests/system/amazon/aws/example_sql_to_s3.py

sql_to_s3_task_with_groupby = SqlToS3Operator(
    task_id="sql_to_s3_with_groupby_task",
    sql_conn_id=conn_id_name,
    query=SQL_QUERY,
    s3_bucket=bucket_name,
    s3_key=key,
    replace=True,
    groupby_kwargs={"by": "color"},
)

参考

此条目有帮助吗?