AWS Athena-获取当前日期的QueryExecutionId



我想从Athena中提取在当前日期运行的查询的执行Id。查询次数没有限制。

我正在使用以下代码提取Id。但是,一旦我得到了在当前日期运行的查询的Id,我就无法找到停止分页的方法。有没有办法只获取当前日期的查询?

另外,在这里我给出了MaxItems的一个具体数字。这能成为动态的吗?

client = boto3.client('athena')
paginator = client.get_paginator('list_query_executions')
response_iterator = paginator.paginate(           
PaginationConfig={
'MaxItems': 1000, 
'PageSize': 50
}
)
for page in response_iterator:
print(page['QueryExecutionIds'])

正如John在回答中提到的,没有直接的方法可以根据日期筛选执行ID。但是,一旦您从list_query_executions方法获得了执行ID的列表,那么您就将该列表传递给batch_get_query_execution方法。

这将返回关于每个执行id的信息,该信息还包括用于每个查询的SubmissionDateTimeCompletionDateTime。现在,您可以对任何与当前日期匹配的字段应用筛选器。如果有超过50个执行ID,那么您需要使用for循环进行多次迭代

list_query_executions()命令不提供日期过滤器。

因此,您需要在Python代码中过滤结果。

您可以通过中断for循环来停止分页。

相关内容

  • 没有找到相关文章

最新更新