Я выполняю запрос Athena с использованием библиотеки boto3 согласно приведенному ниже коду:
import boto3
client = boto3.client('athena')
def main():
queryStart = client.start_query_execution(
QueryString = 'SELECT * FROM <tablename>',
QueryExecutionContext = {
'Database': '<databasename>'
},
ResultConfiguration={
'OutputLocation': 's3://<outputlocation>',
'EncryptionConfiguration': {
'EncryptionOption': 'SSE_S3'
}
}
)
queryExecution = client.get_query_results(QueryExecutionId=queryStart['QueryExecutionId'],MaxResults=10)
prinnt(queryExecution)
При выполнении этого простого кода я получаю сообщение об ошибке:
Traceback (most recent call last):
File "readingathena.py", line 38, in <module>
main()
File "readingathena.py", line 33, in main
for i in response_iterator:
File "C:\Program Files\Python36\lib\site-packages\botocore\paginate.py", line 255, in __iter__
response = self._make_request(current_kwargs)
File "C:\Program Files\Python36\lib\site-packages\botocore\paginate.py", line 332, in _make_request
return self._method(**current_kwargs)
File "C:\Program Files\Python36\lib\site-packages\botocore\client.py", line 357, in _api_call
return self._make_api_call(operation_name, kwargs)
File "C:\Program Files\Python36\lib\site-packages\botocore\client.py", line 661, in _make_api_call
raise error_class(parsed_response, operation_name)
botocore.errorfactory.InvalidRequestException: An error occurred (InvalidRequestException) when calling the GetQueryResults operation: Query has not yet finished. Current state: RUNNING
Единственное, чего я хочу добиться, - это напечатать результат на консоли, а не хранить его в хранилище s3.
P.S выход сохраняется в корзине S3, несмотря на ошибку. Но не удалось получить ответ с помощью функции "get_query_results"