Superset的官方指导:
https://superset.apache.org/docs/databases/athena
awsathena+rest://{aws_access_key_id}:{aws_secret_access_key}@athena.{region_name}.amazonaws.com/{schema_name}?s3_staging_dir={s3_staging_dir}&...
您需要自己进行一些调整。在 2021 年 12 月 12 日阅读了数小时的帖子后,这对我有用:
awsathena+rest://{secret id}:{secret access key}@athena.ap-southeast-1.amazonaws.com/test?s3_staging_dir=s3://{your bucket where Athena query result is stored}/test/&work_group=primary
请注意,在我的示例中:
"schema_name = test":
此时,您必须在 Athena\Query Editor\Database 下看到一个名为“test”的数据库。它是在 Glue Console\Data Catalog\Database 中使用爬虫或手册创建的。
s3://{your bucket}/{path if needed}/test:
您需要前往 Athena\Workgroups,选择一个工作组并检查设置是否打开了“查询结果位置”。在我的例子中,工作组的名称是“primary”,“test”数据库的查询结果将存储在 s3://{your bucket where Athena query result is stored}/test/
确保你已经在 Python 虚拟环境下安装了这些:
pip install "PyAthenaJDBC>1.0.9"
pip install "PyAthena>1.2.0"
看看如何在 Python Env 下创建 Superset:
https://superset.apache.org/docs/installation/installing-superset-from-scratch
安全组:
(我从这里得到这个指令:https ://www.youtube.com/watch?v=vzuPQPRcT-0 )
我在 EC2 实例上构建 Superset。因此,您需要检查安全组设置。因为它涉及到 EC2 服务、Athena 服务以及 Superset 在 UI 中运行的网站。
就我而言,我已打开所有这些设置以确保它可以第一次运行。然后您可以稍后缩小设置范围。
自定义 TCP - TCP - 8088 - ::/0 ;0.0.0.0/0
HTTP - TCP - 80 - ::/0 ;0.0.0.0/0
SSH - TCP - 22 - ::/0 ;0.0.0.0/0
自定义 ICMP - IPv4 - 回显请求 - N/A - 0.0.0.0/0
所有 ICMP - IPv6 - IPv6 ICMP - 所有 - ::/0
所有 ICMP - IPv6 - IPv6 ICMP - 所有 - 0.0.0.0/0