AWS Athena не распознается в Boto3?

Я пытаюсь использовать AWS Athena как из CLI, так и через boto3, но по какой-то причине он не распознается. Я обновился до последней версии boto3

boto3.__version__
>>'1.4.4'

aws --version
>>aws-cli/1.11.56 Python/3.6.0 Darwin/15.6.0 botocore/1.5.19

Когда я иду делать client = boto3.client('athena'), меня встречают:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/boto3/__init__.py", line 83, in client
    return _get_default_session().client(*args, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/boto3/session.py", line 263, in client
    aws_session_token=aws_session_token, config=config)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/session.py", line 836, in create_client
    client_config=config, api_version=api_version)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/client.py", line 63, in create_client
    service_model = self._load_service_model(service_name, api_version)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/client.py", line 93, in _load_service_model
    api_version=api_version)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/loaders.py", line 132, in _wrapper
    data = func(self, *args, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/loaders.py", line 378, in load_service_model
    known_service_names=', '.join(sorted(known_services)))
botocore.exceptions.UnknownServiceError: Unknown service: 'athena'. Valid service names are: acm, apigateway, application-autoscaling, appstream, autoscaling, batch, budgets, clouddirectory, cloudformation, cloudfront, cloudhsm, cloudsearch, cloudsearchdomain, cloudtrail, cloudwatch, codebuild, codecommit, codedeploy, codepipeline, cognito-identity, cognito-idp, cognito-sync, config, cur, datapipeline, devicefarm, directconnect, discovery, dms, ds, dynamodb, dynamodbstreams, ec2, ecr, ecs, efs, elasticache, elasticbeanstalk, elastictranscoder, elb, elbv2, emr, es, events, firehose, gamelift, glacier, health, iam, importexport, inspector, iot, iot-data, kinesis, kinesisanalytics, kms, lambda, lex-runtime, lightsail, logs, machinelearning, marketplacecommerceanalytics, meteringmarketplace, mturk, opsworks, opsworkscm, organizations, pinpoint, polly, rds, redshift, rekognition, route53, route53domains, s3, sdb, servicecatalog, ses, shield, sms, snowball, sns, sqs, ssm, stepfunctions, storagegateway, sts, support, swf, waf, waf-regional, workspaces, xray

То же самое для CLI, когда я делаю aws athena help, я получаю недопустимую опцию. Любая идея, почему это происходит? Я пытаюсь автоматизировать задачу, а не сидеть в графическом интерфейсе, постоянно вводя запросы.


person gold_cy    schedule 18.06.2017    source источник


Ответы (1)


Ваша проблема, кажется, связана с вашей версией botocore.

У меня botocore версии 1.5.55 и афина у меня работает нормально.

Я настроил virtualenv с вашей версией botocore (1.5.19) и смог воспроизвести вашу проблему.

Вы должны просто обновить версию botocore:

pip install --upgrade botocore

Изменить: согласно этой проблеме с github поддержка Athena была включена в v1.5.52.

person Luis Alvarez    schedule 18.06.2017