将 Athena 与 JDBC 驱动程序结合使用 - Amazon Athena
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

将 Athena 与 JDBC 驱动程序结合使用

您可以使用 JDBC 连接将 Athena 连接到商业智能工具和其他应用程序。要执行此操作,请使用 Amazon S3 上的以下链接下载、安装并配置 Athena JDBC 驱动程序。有关权限信息,请参阅通过 JDBC 和 ODBC 连接访问

JDBC 驱动程序的下载链接

JDBC 驱动程序版本 2.0.23 符合 JDBC API 4.1 和 4.2 数据标准。在下载驱动程序之前,CHECK您使用的 Java 运行时环境 (JRE) 是哪个版本。JRE 版本取决于该驱动程序所用的 JDBC API 版本。如果不确定,请下载驱动程序的最新版本。

下载与您的 JDK 版本和 JDBC 数据标准匹配的驱动程序:

  • 这些区域有:AthenaJDBC41.jar与 JDBC 4.1 兼容,需要 JDK 7.0 或更高版本。

  • 这些区域有:AthenaJDBC42.jar与 JDBC 4.2 兼容,需要 JDK 8.0 或更高版本。

JDBC 驱动程序发布说明、许可协议和版权声明

下载所需要的版本后,请阅读发布说明,查看许可协议和版权声明。

JDBC 驱动程序文档

下载驱动程序的以下文档:

重要

若要将 JDBC 驱动程序用于 Athena 的多个数据目录(例如,当使用外部 Hive 元数据仓或者联合查询),包括MetadataRetrievalMethod=ProxyAPI添加到 JDBC 连接字符串中。

指定中国地区的终端节点

在中国地区将 Athena 与 JDBC 结合使用时,请使用EndpointOverride=和终端节点格式athena.aws-region.amazonaws.com.cn在 JDBC URL 中指定您的区域终端节点。

以下示例指定中国(北京)区域的终端节点。

jdbc:awsathena://EndpointOverride=athena.cn-north-1.amazonaws.com.cn:443;AwsRegion=cn-north-1;

从早期版本的 JDBC 驱动程序迁移

最新 JDBC 驱动程序版本 2.0.23 是 JDBC 驱动程序早期版本 2.0.9 的简易替代,与 JDBC 驱动程序版本 2.0.9 向后兼容,您必须执行以下步骤才能确保此驱动程序运行。

重要

要使用 JDBC 驱动程序版本 2.0.5 或更高版本,请使用 JDBC 驱动程序将权限策略附加到 IAM 委托人,该驱动程序允许athena:GetQueryResultsStream策略操作. 此策略操作并不通过 API 直接公开。它仅作为流式处理结果支持的一部分与 JDBC 驱动程序配合使用。有关示例策略,请参阅 AWSQuicksightAthenaAccess 托管策略

此外,确保 Athena 用于流式传输查询结果的端口 444 对出站流量开放。当您使用 PrivateLink 终端节点连接到 Athena 时,请确保附加到 PrivateLink 终端节点的安全组在端口 444 上对入站流量开放。如果端口 444 被阻止,您可能会收到错误消息[Simba] [AthenaJDBC] (100123) An error. 列初始化期间出现异常

有关从版本 2.0.2 升级到版本 2.0.5 或更高版本的更多信息,请参阅 JDBC 驱动程序迁移指南

有关早期版本的 JDBC 驱动程序的更多信息,请参阅使用早期版本的 JDBC 驱动程序

如果要从 1.x 驱动程序迁移到 2.x 驱动程序,您必须将现有配置迁移到新配置。我们强烈建议您迁移到驱动程序版本 2.x。有关信息,请参阅 JDBC 驱动程序迁移指南