Как подключить Superset к AWS athena?

Кто-нибудь пробовал подключить superset к AWS athena?

Мне удалось подключиться к красному смещению с помощью SQLAlchemy URI: postgresql: // username: [email protected]: port / dbname

но мне трудно подключиться к AWS athena. AWS имеет драйвер JDBC (http://docs.aws.amazon.com/athena/latest/ug/connect-with-jdbc.html), но я не могу понять, как использовать его с расширенным набором. Любой пример?


person abu    schedule 13.01.2017    source источник


Ответы (5)


На случай, если сюда придет кто-то другой:

awsathena+jdbc://username:[email protected]:port/dbname

Это из документации по расширенному набору.

person Java Xu    schedule 13.06.2017

Мы пробовали установить суперсет с PyAthena JDBC & REST. Наш опыт работы с PyAthena (REST) ​​намного лучше, чем PyAthenaJDBC, мы бы рекомендовали использовать его в продакшене.

Установите PyAthena (чистая библиотека python, java не требуется)

pip install "PyAthena>1.2.0"

Доступ к базе данных, создав URL-адрес подключения

awsathena+rest://{aws_access_key_id}:{aws_secret_access_key}@athena.{region_name}.amazonaws.com/{schema_name}?s3_staging_dir={s3_staging_dir}&...

Я нашел это статья, хорошее руководство по развертыванию расширенного набора.

person sairahul099    schedule 04.12.2019
comment
Где мне писать команду pip install? Я установил Superset на экземпляр EC2 и получаю к нему доступ через порт - person Debapratim Chakraborty; 16.03.2021
comment
pip - менеджер пакетов для Python. Вы должны написать это в терминале вашего экземпляра EC2 - person Dmitrij Kultasev; 22.03.2021

Взгляните на этот PR на github. Вы захотите установить PyAthenaJDBC пакет в пипс. Драйвер, о котором вы говорите, - это драйвер Java, и это здорово, но Superset в значительной степени является приложением Python, поэтому для подключения / взаимодействия с Athena потребуется драйвер Python.

Приведенный выше ответ правильный, но вы захотите установить этот пакет, чтобы убедиться, что вы действительно можете подключиться к athena.

person BMac    schedule 25.08.2017

Вы должны определить свойство s3_staging_dir при подключении к Athena's Driver.

Пример: s3_staging_dir = s3: // your_bucket

person Anxo P    schedule 19.02.2018

Я заставил его работать, используя: PyAthenaJDBC (python 3.6.7), выполнив следующие действия:

1) Убедитесь, что у вас есть пакет PyAthenaJDBC pkg. установлены:

pip install "PyAthenaJDBC>1.0.9"

2) перезапустить суперсет

3) Загрузите драйвер JDBC: из загрузки драйвера aws я использовал AthenaJDBC41-2.0.6.jar версия

4) Добавьте источник данных в надмножество:

awsathena+jdbc://AWS_KEY:[email protected]/mydb?s3_staging_dir=s3://path/to/my/data/&driver_path=/drivers/AthenaJDBC41_2.0.6.jar
Note: If superset is running on ECS / EC2 you can assign an IAM role, and remove the AWS KEY/SECRET from the URI, Example raw connection URI below:
awsathena+jdbc://{aws_key}:{aws_secret}@athena.{region_name}.amazonaws.com/{schema_name}?s3_staging_dir={s3_staging_dir}&driver_path={driver_path}
Much more info here:
person Mods Vs Rockers    schedule 08.05.2019
comment
Привет, если я использую экземпляр EC2, где мне сохранить драйвер? - person Debapratim Chakraborty; 17.03.2021