REST API 连接
Amazon Glue 连接器涵盖了 Amazon 和外部的各种数据来源。但是,可能存在一些原生 Amazon Glue 连接器不支持的专有系统或新兴平台。Amazon Glue REST 连接器提供了一种机制来为任何具有基于 REST 的 API 的数据来源配置自定义连接器,其工作方式与原生支持的 Amazon Glue 连接器相同。此功能最大限度地减少了构建自定义库或 ETL 脚本来访问这些数据来源的需求。
为了启用 REST API 连接器,引入Amazon Glue了一个新Amazon资源—— 连接类型。下面的操作可用于管理与基于 REST API 的数据来源的连接:
-
RegisterConnectionType:根据提供的配置在 Amazon Glue 中注册连接类型。有关请求结构,请参阅 RegisterConnectionType。
-
DeleteConnectionType:删除 Amazon Glue 中的连接类型配置。请参阅 DeleteConnectionType。
-
DescribeConnectionType:提供 Amazon Glue 中给定连接类型支持的选项的完整详细信息。请参阅 DescribeConnectionType。
-
ListConnectionTypes:返回连接类型列表以及每种 Amazon Glue 连接类型支持的内容的高级详细信息。请参阅 ListConnectionTypes。
在 Amazon Glue 中创建 REST 连接类型
要创建 REST 连接类型,请使用 Amazon CLI、Amazon SDK 或 Amazon API 调用 RegisterConnectionType API。配置详细信息是基于所连接的 REST API 提供的。
注意
无法使用 Amazon Glue 控制台创建 REST 连接
先决条件
在尝试配置 Amazon Glue REST API 连接器之前,您需要熟悉 REST API 的内部工作方式。如果您拥有数据来源的 REST API 文档以及用于检查请求/响应结构的工具,将会很有帮助。
应确定 REST API 的下列属性:
-
用于对 REST 端点发出的调用的身份验证机制。Amazon GlueREST API 连接器支持:基本身份验证、OAuth2 - ClientCredentials、OAuth2 - 授权码、OAuth2 - JWT 和自定义身份验证。
-
可通过 REST 端点传输的实体(数据对象)和相关元数据(如字段名称和数据类型)。
-
HTTP 请求和响应结构。此结构包括 HTTP 方法、端点 URL、标头、查询参数以及请求正文和响应有效载荷的格式。
-
分页架构。Amazon GlueREST API 连接器支持两种分页架构:
cursor-based和offset-based分页。
RegisterConnectionType
根据提供的配置在 Amazon Glue 中注册 ConnectionType。ConnectionType 资源是一种新的 Amazon Glue 资源,用于存储有关数据来源如何解释请求和响应的详细信息。目前仅支持 REST 协议。它封装了有关 REST API 源的详细信息,例如:
-
连接属性:定义连接到 REST API 的 BaseUrl 以及在 Amazon Glue CreateConnection 期间进行输入所需的任何其他请求参数。
-
身份验证配置:定义如何对 REST API 请求进行身份验证。在为连接类型创建 Amazon Glue 连接时,将使用此配置。
-
REST 配置:定义用于从 REST API 源读取数据的 HTTP 请求和响应配置。需要在全局或实体级别配置下面的属性:
-
请求方法:定义 REST HTTP 方法。
-
响应配置:定义应如何解释 API 响应(包括正文中的记录或错误位置)。
-
分页配置:定义 REST API 用于对结果记录进行分页的策略以及如何发送/检索分页属性。
-
验证端点配置:定义验证 Amazon Glue 连接时要调用的端点。
-
实体配置:定义连接器支持的 REST 实体及其架构。
-
RegisterConnectionType 请求语法
注册 REST API 连接类型后,即可用于创建与已配置数据来源的连接。有关详细说明,请参阅连接到 REST API。