在使用AWS SDK查询Athena时,是否必须将结果保存在S3中?

0

【以下的问题经过翻译处理】 我尝试使用aws sdk在Athena上执行选择查询。

在示例中,使用resultconfiguration将结果存储在s3中,然后进行查询。

然而,似乎控制台在不保存查询结果的情况下显示了选择结果。

因此,我跳过了resultconfiguration并运行了aws sdk,然后出现了以下错误。

必须通过工作组结果配置设置或作为API输入指定输出位置。

因此,我认为要查询来自aws sdk的athena,必须在s3中保存结果。这是正确的吗?

如果不是,请告诉我如何配置aws sdk。

profile picture
專家
已提問 6 個月前檢視次數 18 次
1 個回答
0

【以下的回答经过翻译处理】 你好,

Amazon Athena会自动将每个查询的结果和元数据信息存储在查询结果位置中,您可以在Amazon S3中指定该位置。

如果需要,您可以访问该位置中的文件进行操作。您也可以直接从Athena控制台下载查询结果文件。

要确定Athena将使用的位置,您需要结合工作组和客户端设置。

客户端设置基于您运行查询的方式:

如果您使用Athena控制台运行查询,导航栏下的设置中输入的查询结果位置确定了客户端设置。

如果您使用Athena API运行查询,则StartQueryExecution操作的OutputLocation参数确定了客户端设置。

如果您使用ODBC或JDBC驱动程序运行查询,则连接URL中指定的S3OutputLocation属性确定了客户端设置。

要使用AWS CLI识别查询输出位置和结果文件,请运行aws athena get-query-execution命令,例如以下示例:

aws athena get-query-execution --query-execution-id <your-query-id>

**注意:**当您使用API或使用ODBC或JDBC驱动程序运行查询时,控制台设置不适用。

如需更详细的信息,请参阅在S3中查找查询输出文件

我希望这可以帮助到你。

profile picture
專家
已回答 6 個月前

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南