When querying athena using aws sdk, is it necessary to save results in s3?

1

I tried to do a select query on Athena using aws sdk.

In the sample, using resultconfiguration, it was stored in s3 and then queried.

However, it seems that the console showed the select result without saving the query result.

So I skipped resultconfiguration and ran aws sdk, and the following error occurred.

An output location is required either through the Workgroup result configuration setting or as an API input.

So I think that to query athena from aws sdk, the result must be saved in s3. Is this correct?

If not, please tell me how should I configure the aws sdk.

joker
質問済み 2年前391ビュー
1回答
1
承認された回答

Hello,

Amazon Athena automatically stores query results and metadata information for each query that runs in a query result location that you can specify in Amazon S3.

If necessary, you can access the files in this location to work with them. You can also download query result files directly from the Athena console.

To determine the location that Athena will use you need a combination of a workgroup and client-side settings.

The client-side settings are based on how you run the query:

If you run the query using the Athena console, the Query result location entered under Settings in the navigation bar determines the client-side setting.

If you run the query using the Athena API, the OutputLocation parameter of the StartQueryExecution action determines the client-side setting.

If you use the ODBC or JDBC drivers to run queries, the S3OutputLocation property specified in the connection URL determines the client-side setting.

To use the AWS CLI to identify the query output location and result files, run the aws athena get-query-execution command, as in the following example.

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

Note: When you run a query using the API or using the ODBC or JDBC driver, the console setting does not apply.

For more detailed information, refer to Finding Query Output Files in S3.

I hope this helps.

Lunga T
回答済み 2年前
  • Does it work even if I don't specify the OutputLocation parameter in StartQueryExecution? It doesn't work in my case, so I'm wondering if I need to save the result to s3 when using the api.

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン

関連するコンテンツ