View a markdown version of this page

开发自定义连接器 - 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 创建连接器中的说明。