我正在AWS Athena中执行查询并将结果写入s3。当我从lambda脚本执行查询时,似乎需要花费很长时间(实际上太长时间)才能使文件可用。
我正在扫描70MB的数据,返回的文件是12MB。我从lambda脚本执行此操作:
athena_client = boto3.client('athena')
athena_client.start_query_execution(
QueryString=query_string,
ResultConfiguration={
'OutputLocation': 'location_on_s3',
'EncryptionConfiguration': 'SSE_S3',
}
)
如果我直接在Athena中运行查询,则需要2.97秒才能运行。但是,如果我从lambda脚本运行此查询,则看起来该文件在2分钟后可用。
有谁知道AWS Athena对AWS S3的写入性能?我想知道这是否正常。文档没有说明写入的速度有多快。
答案 0 :(得分:0)
Athena中的每个查询都写入S3。
如果您在控制台中查看Athena页面上的History
标签,您将看到所有查询的历史记录(不仅仅是通过控制台,而且通常是这样)。其中每个都有一个下载路径的链接。
如果单击Settings
按钮,将打开一个对话框,要求您指定输出位置。检查该位置,您将在那里找到所有查询结果。
为什么从Lambda脚本中获取这么长时间?我猜,但我唯一可能的建议是你要跨地区查询 - 如果你的数据在你所在的地区而你的结果位置在另一个地方,你可能会因为转移成本而经历缓慢。即便如此,12MB应该很快。