开发自定义连接器 - AWS Glue

开发自定义连接器

您可以编写从数据存储中读取数据或向数据存储写入数据的代码,并将数据格式化以用于 AWS Glue Studio 任务。您可以为 Spark、Athena 和 JDBC 数据存储创建连接器。GitHub 上发布的示例代码概述了您需要实现的基本接口。

您需要用于创建连接器代码的本地开发环境。您可以使用任意 IDE,甚至只使用命令行编辑器来编写连接器。开发环境示例包括:

开发 Spark 连接器

您可以使用 Spark DataSource API V2(Spark 2.4)创建 Spark 连接器来读取数据。

若要创建自定义 Spark 连接器

按照 AWS Glue GitHub 示例库中的步骤开发 Spark 连接器,该库位于 https://github.com/aws-samples/aws-glue-samples/tree/master/GlueCustomConnectors/development/Spark/README.md

开发 Athena 连接器

您可以创建 Athena 连接器,供 AWS Glue 和 AWS Glue Studio 查询自定义数据源。

若要创建自定义 Athena 连接器

按照 AWS Glue GitHub 示例库中的步骤开发 Athena 连接器,该库位于 https://github.com/aws-samples/aws-glue-samples/tree/master/GlueCustomConnectors/development/Athena

开发 JDBC 连接器

您可以创建使用 JDBC 访问数据存储的连接器。

创建自定义 JDBC 连接器
  1. 在本地开发环境中安装 AWS Glue Spark 运行时库。请参阅 AWS Glue GitHub 示例库中的说明,该库位于 https://github.com/aws-samples/aws-glue-samples/tree/master/GlueCustomConnectors/development/GlueSparkRuntime/README.md

  2. 实施负责从数据源检索数据的 JDBC 驱动程序。请参阅适用于 Java SE 8 的 Java 文档

    在您的代码内创建入口点,AWS Glue Studio 将其用于查找您的连接器。Class name (类名称) 字段应该是 JDBC 驱动程序的完整路径。

  3. 借助连接器使用 GlueContext API 读取数据。用户可以在 AWS Glue Studio 控制台中添加更多输入选项,配置与数据源的连接(如有必要)。有关演示如何使用自定义 JDBC 连接器读取和写入 JDBC 数据库的代码示例,请参阅自定义和 AWS Marketplace connectionType 值

将自定义连接器与 AWS Glue Studio 结合使用的示例

有关使用自定义连接器的示例,您可以参考以下博客:

为 AWS Marketplace 开发 AWS Glue 连接器

作为 AWS 合作伙伴,您可以创建自定义连接器并将其上载到 AWS Marketplace 以销售给 AWS Glue 客户。

开发连接器代码的过程与自定义连接器相同,但上载和验证连接器代码的过程更为详细。请参阅 GitHub 网站上为 AWS Marketplace 创建连接器中的说明。