Apache Zeppelin与Athena使用jdbc Interpreter处理会话令牌

时间:2017-11-28 11:39:51

标签: amazon-web-services jdbc amazon-s3 apache-zeppelin amazon-athena

我正在尝试使用 Apache Zeppelin 连接Athena。我需要处理secret_key,Access_key和Session_token。我很难与Zeppelin JDBC解释器建立连接。 我按照this block

中提到的步骤进行操作

如果任何人可以帮助我建立与AWS会话令牌方法的连接,这将有所帮助。

谢谢

1 个答案:

答案 0 :(得分:0)

主要文件是: https://docs.aws.amazon.com/athena/latest/ug/connect-with-jdbc.html

我发现有2个驱动程序版本,-1.1.0和-1.0.1。我只能让Zeppelin使用1.1.0,并且该页面上的链接不会转到该文件,获取它的唯一方法是使用aws s3 cp命令 e.g。

aws s3 cp s3://athena-downloads/drivers/AthenaJDBC41-1.1.0.jar .

虽然我已经在该页面上给出了反馈,因此很快就会修复。

关于参数,使用default.user并输入Access_Key,default.password并输入Secret_key。 default.driver应该是com.amazonaws.athena.jdbc.AthenaDriver default.s3_staging_dir实际上是写入csv结果的存储桶,因此需要与您的athena设置相匹配。

没有提到你可以放置会话令牌的位置,但是,你总是可以尝试将它放在jdbc连接字符串上(这是default.url参数值)

e.g。

jdbc:awsathena://athena.{REGION}.amazonaws.com:443?SessionToken=blahblahsomethingrealsessiontokengoeshere 

但当然,将{REGION}替换为实际的aws区域并使用您的真实会话令牌。