连接 API - Amazon连接词
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

连接 API

连接 API 介绍 AWS Glue 连接数据类型,以及用于创建、删除、更新和列出连接的 API。

数据类型

Connection 结构

定义与数据源的连接。

Fields

  • Name – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    连接定义的名称。

  • Description – 描述字符串,长度不超过 2048 个字节,与 URI address multi-line string pattern 匹配。

    连接的描述。

  • ConnectionType – UTF-8 字符串(有效值:JDBC | SFTP | MONGODB | KAFKA | NETWORK | MARKETPLACE | CUSTOM)。

    连接的类型。目前不支持 SFTP。

  • MatchCriteria – UTF-8 字符串数组,不超过 10 个字符串。

    可用于选择此连接的条件的列表。

  • ConnectionProperties— 键值对的映射数组,不超过 100 对。

    每个键是一个 UTF-8 字符串(有效值:HOST|PORT|USERNAME="USER_NAME"|PASSWORD|ENCRYPTED_PASSWORD|JDBC_DRIVER_JAR_URI|JDBC_DRIVER_CLASS_NAME|JDBC_ENGINE|JDBC_ENGINE_VERSION|CONFIG_FILES|INSTANCE_ID|JDBC_CONNECTION_URL|JDBC_ENFORCE_SSL|CUSTOM_JDBC_CERT|SKIP_CUSTOM_JDBC_CERT_VALIDATION|CUSTOM_JDBC_CERT_STRING|CONNECTION_URL|KAFKA_BOOTSTRAP_SERVERS|KAFKA_SSL_ENABLED|KAFKA_CUSTOM_CERT|KAFKA_SKIP_CUSTOM_CERT_VALIDATION|KAFKA_CLIENT_KEYSTORE|KAFKA_CLIENT_KEYSTORE_PASSWORD|KAFKA_CLIENT_KEY_PASSWORD|ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD|ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD|SECRET_ID|CONNECTOR_URL|CONNECTOR_TYPE|CONNECTOR_CLASS_NAME)。

    每个值是一个值字符串,不超过 1024 个字节。

    这些键值对用于定义连接的参数:

    • HOST- 主机 URI:完全限定域名 (FQDN) 或数据库主机的 IPv4 地址。

    • PORT- 端口的端口号,介于 1024 和 65535 之间,数据库主机在这些端口上侦听数据库连接。

    • USER_NAME- 登录数据库时使用的名称。USER_NAME 的值字符串为“USERNAME”。

    • PASSWORD- 用户名使用的密码(如果使用的话)。

    • ENCRYPTED_PASSWORD - 通过在数据目录加密设置中设置 ConnectionPasswordEncryption 来启用连接密码保护时,此字段会存储加密的密码。

    • JDBC_DRIVER_JAR_URI - 包含要使用的 JDBC 驱动程序的 JAR 文件的 Amazon Simple Storage Service (Amazon S3) 路径。

    • JDBC_DRIVER_CLASS_NAME - 要使用的 JDBC 驱动程序的类名称。

    • JDBC_ENGINE - 要使用的 JDBC 引擎的名称。

    • JDBC_ENGINE_VERSION - 要使用的 JDBC 引擎的版本。

    • CONFIG_FILES -(留待将来使用。)

    • INSTANCE_ID - 要使用的实例 ID。

    • JDBC_CONNECTION_URL - 用于连接到 JDBC 数据源的 URL。

    • JDBC_ENFORCE_SSL - 指定在客户端上建立 JDBC 连接时是否强制使用安全套接字层 (SSL) 及主机名匹配的布尔值字符串(true 或 false)。默认为 false。

    • CUSTOM_JDBC_CERT - 指明客户根证书的 Amazon S3 位置。在连接到客户数据库时,AWS Glue 将使用此根证书来验证客户的证书。AWS Glue 仅处理 X.509 证书。提供的证书必须经过 DER 编码,并以 Base64 编码 PEM 格式提供。

    • SKIP_CUSTOM_JDBC_CERT_VALIDATION - 默认情况下为 false。AWS Glue 将验证客户证书的签名算法和主题公有密钥算法。签名算法允许的算法仅包括 SHA256withRSA、SHA384withRSA 或 SHA512withRSA。对于主题公有密钥算法,密钥长度必须至少为 2048 位。您可以将该属性的值设置为 true 以跳过 AWS Glue 对客户证书进行的验证。

    • CUSTOM_JDBC_CERT_STRING - 一个自定义的 JDBC 证书字符串,用于域匹配或可分辨名称匹配以防止中间人攻击。在 Oracle 数据库中,这将用作 SSL_SERVER_CERT_DN;在 Microsoft SQL Server 中,这将用作 hostNameInCertificate

    • CONNECTION_URL - 用于连接到一般(非 JDBC)数据源的 URL。

    • KAFKA_BOOTSTRAP_SERVERS - 以逗号分隔的主机和端口对列表,它们是 Kafka 集群中 Apache Kafka 代理商的地址,Kafka 客户端将连接到该集群并自行引导。

    • KAFKA_SSL_ENABLED-对 Apache Kafka 连接启用还是禁用 SSL。默认值为 “true”。

    • KAFKA_CUSTOM_CERT-私有 CA 证书文件的 Amazon S3 URL(.pem 格式)。默认值是空字符串。

    • KAFKA_SKIP_CUSTOM_CERT_VALIDATION-是否跳过 CA 证书文件的验证。AWS Glue 验证三种算法:SHA256withRSA、SHA384withRSA 和 SHA512withRSA。默认值为 “假”。

    • SECRET_ID-用于证书的秘密管理器的密钥 ID。

    • CONNECTOR_URL-商城或自定义连接的连接器 URL。

    • CONNECTOR_TYPE-商城或自定义连接的连接器类型。

    • CONNECTOR_CLASS_NAME-商城或自定义连接的连接器类名称。

    • KAFKA_CLIENT_KEYSTORE-用于 Kafka 客户端身份验证的客户端密钥库文件的 Amazon S3 位置(可选)。

    • KAFKA_CLIENT_KEYSTORE_PASSWORD-用于访问提供的密钥库的密码(可选)。

    • KAFKA_CLIENT_KEY_PASSWORD-密钥库可以由多个密钥组成,因此这是用于访问与 Kafka 服务器端密钥一起使用的客户端密钥的密码(可选)。

    • ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD-Kafka 客户端密钥库密码的加密版本(如果用户选择了 AWS Glue 加密密码设置)。

    • ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD-Kafka 客户端密钥密码的加密版本(如果用户选择了 AWS Glue 加密密码设置)。

  • PhysicalConnectionRequirements – 一个 PhysicalConnectionRequirements 对象。

    成功建立此连接所需的物理连接要求的映射,如 Virtual Private Cloud (VPC) 和 SecurityGroup

  • CreationTime – 时间戳.

    创建此连接定义的时间。

  • LastUpdatedTime – 时间戳.

    上次更新此连接定义的时间。

  • LastUpdatedBy – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    上次更新此连接定义的用户、组或角色。

ConnectionInput 结构

用于指定要创建或更新的连接的结构。

Fields

  • Name:必需 UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与匹配。Single-line string pattern

    连接的名称。

  • Description – 描述字符串,长度不超过 2048 个字节,与 URI address multi-line string pattern 匹配。

    连接的描述。

  • ConnectionType:必需 UTF-8 字符串(有效值:JDBC|SFTP|MONGODB|KAFKA|NETWORK|MARKETPLACE|CUSTOM)。

    连接的类型。目前,支持以下类型:

    • JDBC - 通过 Java 数据库连接 (JDBC) 指定与数据库的连接。

    • KAFKA - 指定与 Apache Kafka 流平台的连接。

    • MONGODB - 指定与 MongoDB 文档数据库的连接。

    • NETWORK - 指定到 Amazon Virtual Private Cloud 环境 (Amazon VPC) 中的数据源的网络连接。

    • MARKETPLACE-使用从 AWS Marketplace 购买的连接器中包含的配置设置来读取和写入 AWS Glue 本机不支持的数据存储。

    • CUSTOM-使用自定义连接器中包含的配置设置对 AWS Glue 本机不支持的数据存储进行读取和写入。

    不支持 SFTP。

  • MatchCriteria – UTF-8 字符串数组,不超过 10 个字符串。

    可用于选择此连接的条件的列表。

  • ConnectionProperties:必需 键值对的映射数组,不超过 100 对。

    每个键是一个 UTF-8 字符串(有效值:HOST|PORT|USERNAME="USER_NAME"|PASSWORD|ENCRYPTED_PASSWORD|JDBC_DRIVER_JAR_URI|JDBC_DRIVER_CLASS_NAME|JDBC_ENGINE|JDBC_ENGINE_VERSION|CONFIG_FILES|INSTANCE_ID|JDBC_CONNECTION_URL|JDBC_ENFORCE_SSL|CUSTOM_JDBC_CERT|SKIP_CUSTOM_JDBC_CERT_VALIDATION|CUSTOM_JDBC_CERT_STRING|CONNECTION_URL|KAFKA_BOOTSTRAP_SERVERS|KAFKA_SSL_ENABLED|KAFKA_CUSTOM_CERT|KAFKA_SKIP_CUSTOM_CERT_VALIDATION|KAFKA_CLIENT_KEYSTORE|KAFKA_CLIENT_KEYSTORE_PASSWORD|KAFKA_CLIENT_KEY_PASSWORD|ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD|ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD|SECRET_ID|CONNECTOR_URL|CONNECTOR_TYPE|CONNECTOR_CLASS_NAME)。

    每个值是一个值字符串,不超过 1024 个字节。

    这些键值对用于定义连接的参数。

  • PhysicalConnectionRequirements – 一个 PhysicalConnectionRequirements 对象。

    成功建立此连接所需的物理连接要求的映射,如 Virtual Private Cloud (VPC) 和 SecurityGroup

PhysicalConnectionRequirements 结构

指定连接的物理要求。

Fields

  • SubnetId – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    连接使用的子网 ID。

  • SecurityGroupIdList – UTF-8 字符串数组,不超过 50 个字符串。

    连接使用的安全组 ID 列表。

  • AvailabilityZone – UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    连接的可用区。此字段是多余的,因为指定的子网暗示了要使用的可用区。此字段目前必须填写,但是将来会被弃用。

GetConnectionsFilter 结构

筛选由 GetConnections API 操作返回的连接定义。

Fields

  • MatchCriteria – UTF-8 字符串数组,不超过 10 个字符串。

    一个条件字符串,它必须与连接定义中记录的条件相匹配,才能返回连接定义。

  • ConnectionType – UTF-8 字符串(有效值:JDBC | SFTP | MONGODB | KAFKA | NETWORK | MARKETPLACE | CUSTOM)。

    要返回的连接的类型。目前不支持 SFTP。

Operations

CreateConnection 操作 (Python: create_connection)

在数据目录中创建连接定义。

Request

  • CatalogId – 目录 id 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    要在其中创建连接的数据目录的 ID。如果没有提供,则默认情况下使用 AWS 账户 ID。

  • ConnectionInput:必需 一个 ConnectionInput 对象。

    用于定义要创建的连接的 ConnectionInput 对象。

Response

  • 无响应参数。

Errors

  • AlreadyExistsException

  • InvalidInputException

  • OperationTimeoutException

  • ResourceNumberLimitExceededException

  • GlueEncryptionException

DeleteConnection 操作 (Python: delete_connection)

从数据目录中删除连接。

Request

  • CatalogId – 目录 id 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    连接所在的数据目录的 ID。如果没有提供,则默认情况下使用 AWS 账户 ID。

  • ConnectionName:必需 UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与匹配。Single-line string pattern

    要删除的连接的名称。

Response

  • 无响应参数。

Errors

  • EntityNotFoundException

  • OperationTimeoutException

GetConnection 操作 (Python: get_connection)

从数据目录中检索连接定义。

Request

  • CatalogId – 目录 id 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    连接所在的数据目录的 ID。如果没有提供,则默认情况下使用 AWS 账户 ID。

  • Name:必需 UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与匹配。Single-line string pattern

    要检索的连接定义的名称。

  • HidePassword – Boolean.

    允许您在不返回密码的情况下检索连接元数据。例如,AWS Glue 控制台使用此标记来检索连接,并且不显示密码。当调用方可能无权使用 AWS KMS 密钥解密密码,但有权访问其余连接属性时,请设置此参数。

Response

  • Connection – 一个 Connection 对象。

    请求的连接定义。

Errors

  • EntityNotFoundException

  • OperationTimeoutException

  • InvalidInputException

  • GlueEncryptionException

GetConnections 操作 (Python: get_connections)

从数据目录中检索连接定义的列表。

Request

  • CatalogId – 目录 id 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    连接所在的数据目录的 ID。如果没有提供,则默认情况下使用 AWS 账户 ID。

  • Filter – 一个 GetConnectionsFilter 对象。

    控制将返回哪些连接的筛选器。

  • HidePassword – Boolean.

    允许您在不返回密码的情况下检索连接元数据。例如,AWS Glue 控制台使用此标记来检索连接,并且不显示密码。当调用方可能无权使用 AWS KMS 密钥解密密码,但有权访问其余连接属性时,请设置此参数。

  • NextToken – UTF-8 字符串。

    延续标记 (如果这是延续调用)。

  • MaxResults – 数字(整数),不小于 1 或大于 1000。

    要在一个响应中返回的连接的最大数量。

Response

  • ConnectionListConnection 对象的数组。

    请求的连接定义的列表。

  • NextToken – UTF-8 字符串。

    延续令牌 (如果返回的连接列表不包括最后一个筛选的连接)。

Errors

  • EntityNotFoundException

  • OperationTimeoutException

  • InvalidInputException

  • GlueEncryptionException

UpdateConnection 操作 (Python: update_connection)

在数据目录中更新连接定义。

Request

  • CatalogId – 目录 id 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    连接所在的数据目录的 ID。如果没有提供,则默认情况下使用 AWS 账户 ID。

  • Name:必需 UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与匹配。Single-line string pattern

    要更新的连接定义的名称。

  • ConnectionInput:必需 一个 ConnectionInput 对象。

    用于重新定义所涉连接的 ConnectionInput 对象。

Response

  • 无响应参数。

Errors

  • InvalidInputException

  • EntityNotFoundException

  • OperationTimeoutException

  • InvalidInputException

  • GlueEncryptionException

BatchDeleteConnection 操作 (Python: batch_delete_connection)

从数据目录中删除连接定义的列表。

Request

  • CatalogId – 目录 id 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    连接所在的数据目录的 ID。如果没有提供,则默认情况下使用 AWS 账户 ID。

  • ConnectionNameList:必需 UTF-8 字符串数组,不超过 25 个字符串。

    要删除的连接的名称的列表。

Response

  • Succeeded – UTF-8 字符串数组。

    已成功删除的连接定义的名称的列表。

  • Errors – 键值对的映射数组。

    每个键是一个 UTF-8 字符串,不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。

    每个值都是一个 ErrorDetail 对象。

    未成功删除的连接名称到错误详细信息的映射。

Errors

  • InternalServiceException

  • OperationTimeoutException