0

我在 AWS Athena 中有一个带有一堆表的数据库。我想使用 AWS Glue Studio 执行这些表的连接。我已订阅适用于 Amazon Athena 的 CData AWS Glue 连接器。当我尝试使用此连接器创建连接并连接到 AWS Athena 中的一个表时,我收到以下错误:

Py4JJavaError: An error occurred while calling o61.getSource. : java.lang.AssertionError: assertion failed: Glue ETL Marketplace: Either user/password or secretId should be provided for JDBC connector. at scala.Predef$.assert(Predef.scala:170) at com.amazonaws.services.glue.util.DataCatalogWrapper$$anonfun$22.apply(DataCatalogWrapper.scala:301) at com.amazonaws.services.glue.util.DataCatalogWrapper$$anonfun$22.apply(DataCatalogWrapper.scala:264) at scala.util.Try$.apply(Try.scala:192) at com.amazonaws.services.glue.util.DataCatalogWrapper.getCustomSourceConf(DataCatalogWrapper.scala:264) at com.amazonaws.services.glue.GlueContext.getCustomSourceWithConnection(GlueContext.scala:437) at com.amazonaws.services.glue.GlueContext.getSourceInternal(GlueContext.scala:909) at com.amazonaws.services.glue.GlueContext.getSource(GlueContext.scala:751) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:244) at py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:357) at py4j.Gateway.invoke(Gateway.java:282) at py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:132) at py4j.commands.CallCommand.execute(CallCommand.java:79) at py4j.GatewayConnection.run(GatewayConnection.java:238) at java.lang.Thread.run(Thread.java:748)

我已遵循此链接中提到的所有说明:https ://www.cdata.com/kb/tech/athena-glue-studio.rst 是否有人使用 AWS Glue Studio 连接到 Athena 表,如果是,您是否遇到过这个问题?任何有助于解决此问题的指针将不胜感激。

4

1 回答 1

0

Athena 不是数据库,而是分布式查询引擎。

底层数据库位于 Glue 元数据目录中。您不需要连接器来连接到这些表,只需从数据源菜单中选择它,如下所示:

在此处输入图像描述

于 2021-11-09T13:19:51.277 回答