airflow.providers.amazon.aws.hooks.athena
¶
此模块包含 AWS Athena Hook。
模块内容¶
类¶
与 Amazon Athena 交互。 |
函数¶
|
属性¶
- airflow.providers.amazon.aws.hooks.athena.MULTI_LINE_QUERY_LOG_PREFIX = Multiline-String[来源]¶
显示值
""" """
- class airflow.providers.amazon.aws.hooks.athena.AthenaHook(*args, log_query=True, **kwargs)[来源]¶
基类:
airflow.providers.amazon.aws.hooks.base_aws.AwsBaseHook
与 Amazon Athena 交互。
提供围绕
boto3.client("athena")
的厚包装器。- 参数
log_query (bool) – 是否在执行时记录 Athena 查询和其他执行参数。默认为 True。
可以指定其他参数(例如
aws_conn_id
),并将传递给底层的 AwsBaseHook。- run_query(query, query_context, result_configuration, client_request_token=None, workgroup='primary')[来源]¶
使用提供的配置在 Athena 上运行 Trino/Presto 查询。
- get_state_change_reason(query_execution_id, use_cache=False)[来源]¶
获取状态更改的原因(例如,错误消息)。返回 None 或原因字符串。
- 参数
query_execution_id (str) – 提交的 Athena 查询的 ID
- get_query_results_paginator(query_execution_id, max_items=None, page_size=None, starting_token=None)[source]¶
获取已提交的 Athena 查询结果。
- 参数
query_execution_id (str) – 提交的 Athena 查询的 ID
max_items (int | None) – 要返回的总项目数。
page_size (int | None) – 每个页面的大小。
starting_token (str | None) – 指定从何处开始分页的令牌。
- 返回
如果查询处于中间状态、失败状态或已取消状态,则返回 None。否则,返回一个分页器,用于迭代结果页面。
- 返回类型
botocore.paginate.PageIterator | None
在返回的分页器上调用 :meth`.build_full_result()` 以一次获取所有结果。
- poll_query_status(query_execution_id, max_polling_attempts=None, sleep_time=None)[source]¶
轮询已提交查询的状态,直到其达到最终状态。
- 参数
query_execution_id (str) – 已提交的 Athena 查询的 ID
max_polling_attempts (int | None) – 函数退出前轮询查询状态的次数
sleep_time (int | None) – 两次连续查询状态检查之间等待的时间(以秒为单位)。
- 返回
最终状态之一
- 返回类型
str | None