我试图运行一个简单的雅典娜查询,并试图将结果保存到本地路径。
response = athena.start_query_execution(
QueryString='select query',
QueryExecutionContext={
'Database': 'test'
},
ResultConfiguration={
'OutputLocation': r'C:\Projects\Project0\'
}
但是我收到以下错误。
botocore.errorfactory.InvalidRequestException:发生错误 (InvalidRequestException)调用StartQueryExecution时 操作:outputLocation不是有效的S3路径。
是否可以将结果保存到本地路径?我在boto3文档中找不到任何信息。
答案 0 :(得分:0)
ResultConfiguration不包含查询结果。您必须使用“ QueryExecutionId”和get_query_results
函数进行第二次调用:
exe = athena.start_query_execution(
QueryString='select query',
QueryExecutionContext={
'Database': 'test'
},
ResultConfiguration={
'OutputLocation': 's3 location'
}
result = athena.get_query_results(
QueryExecutionId=exe['QueryExecutionId']
)
答案 1 :(得分:0)
在Athena中,结果只能保存到s3位置。有关语义的更多信息,请参考OutputLocation。如果要在本地系统中使用此结果,则可以转到提供的s3位置作为您start_query_execution API调用的输入并从s3控制台下载结果或使用aws s3 cp command