Ошибка при подключении SQL Workbench / J к Amazon Athena

У меня было много проблем с подключением SQL Workbench / J к Amazon Athena через коннектор JDBC. Кроме того, похоже, что инструкции в этих двух справочных ресурсах различаются:

  1. http://docs.aws.amazon.com/athena/latest/ug/athena-sql-workbench.html
  2. https://s3.amazonaws.com/athena-downloads/drivers/JDBC/docs/Simba+Athena+JDBC+Driver+Install+and+Configuration+Guide.pdf

Вот сообщение об ошибке:

[Симба] Соединение JDBC отклонено: [Симба] Требуемые ключи соединения JDBC: AwsRegion; [Симба] JDBC Дополнительное соединение Ключ (ы): AwsCredentialsProviderArguments, AwsCredentialsProviderClass, BinaryColumnLength, ComplexTypeColumnLength, ConnectTimeout, MaxCatalogNameLength, MaxColumnNameLength, MaxErrorRetry, MaxSchemaNameLength, MaxTableNameLength, ProxyHost, ProxyPort, PROXYPWD, ProxyUID, S3OutputEncOption, схемы, SocketTimeout, StringColumnLength, UseAwsLogger


person mrmatt11    schedule 27.12.2017    source источник


Ответы (2)


Документация под номером 1 устарела, как вы могли понять из разных имен файлов в двух руководствах. Amazon не полностью очистила свою документацию с тех пор, как переключилась с собственного драйвера JDBC на драйвер, который они сделали OEM от Simba.

Вы не предоставили URL-адрес JDBC, который вы используете, поэтому я не могу внести конкретное исправление, но полученное сообщение об ошибке кажется довольно ясным - вы, по-видимому, неправильно построили свой URL-адрес JDBC. Отсутствует обязательная настройка AwsRegion.

Обратите внимание на синтаксис URL из файла Руководство в формате PDF для используемого вами драйвера JDBC -

jdbc:awsathena://AwsRegion=[Region];UID=[AccessKey];PWD=[SecretKey];S3OutputLocation=[Output];[Property1]=[Value1];[Property2]=[Value2];...

person TallTed    schedule 27.12.2017

Вот как я это сделал

  1. Убедитесь, что у вас установлена ​​Java8.
  2. Загрузите последнюю версию Athena jar
  3. Создайте новый драйвер в рабочей среде sql  добавить драйвер
  4. Добавьте соединение jdbc и имя пользователя / пароль  введите описание изображения здесь
  5. местоположение - это место, где вы вошли в учетную запись, и настройки в URL-адресе  url Таким образом, мой URL-адрес: jdbc: awsathena: //athena.us-east-2.amazonaws.com : 443
  6. Имя пользователя = Идентификатор ключа доступа; Пароль = Секретный ключ доступа
  7. Тогда не забывайте о расширенных свойствах! установите s3_staging_dir в корзину, которую вы создали для результатов Athena, или вам нужно будет посмотреть, что создается корзина по умолчанию. Этот сегмент должен начинаться с aws-athena-query-results bucket

Обновление версии 2.07

Bucket теперь S3OutputLocation, а не s3_staging_dir:  ведро

person vfrank66    schedule 02.12.2018
comment
Спасибо! Это было так полезно. Обязательно используйте: 443! мой не работал, пока я не добавил это. - person philipvago; 17.07.2020