亚马逊AWS官方博客

宣布推出适用于 API 的 AWS Data Exchange:查找、订阅和使用具有一致身份验证的第三方 API

无论是用于训练机器学习模型的大规模数据集、关系数据库,还是基于 API 的集成,数据都是许多流程和产品的中心所在。借助 AWS Data Exchange,您可以通过 Amazon Simple Storage Service (Amazon S3) 发现、订阅和使用数百个由 Reuters、Foursquare、Change Healthcare、Vortexa、IMDb 等第三方提供的基于文件的数据集。此外,AWS Data Exchange for Amazon Redshift 可让您更轻松地在 Amazon Redshift 数据仓库中摄取第三方数据,而无需进行任何手动处理或转换。

但是,在许多情况下,您的数据项目需要的不仅仅是静态数据集,因为需要频繁、同步地检索少量信息 – 例如,您可能需要每小时获取一次股价。借助数据 API,您可以快速回答特定问题,而无需构建临时数据管道来摄取、处理和分析批量数据集。但是,每个 API 提供商都有自己的易用性、开发工具包、文档和身份验证机制,因此集成这些 API 更加困难重重。

我很高兴地宣布,适用于 API 的 AWS Data Exchange 已全面推出,这项新功能可让您通过 AWS 开发工具包查找、订阅和使用具有一致访问权限的第三方 API,同时可采用一致的 AWS 原生身份验证和管控方式。这简化了开发人员和 IT 管理员的工作,他们之前必须集成多个第三方 API 并保护对这些 API 的访问。

现在,您可以使用所选编程语言的 AWS 开发工具包,直接向 AWS Data Exchange 进行 RESTful 或 GraphQL API 调用,并接收包含所需信息的同步响应。我们负责与 API 提供商集成,实施适当的身份验证,管理 API 订阅,以及确保在您的 AWS 账单上显示相关费用。您可以使用 AWS Identity and Access Management (IAM) 集中管理 API 访问。

作为数据提供商,您可以使用 OpenAPI 规范将自己的 API 列入 AWS Data Exchange 目录,然后使用 Amazon API Gateway 终端节点将其推到前端,从而让数百万 AWS 客户能够发现该 API。

适用于 API 的 AWS Data Exchange 实际操作
首先,我在 AWS Data Exchange 目录中查找 API 产品,查看其订阅条款、支持信息和自动续订。每个 API 产品可能包含多个公开或私密订阅报价与期限。

我选择订阅,几分钟后就成功完成订阅。

在 API 产品中,我选择授权的数据集及其最新版本。

每个 API 修订版都包含一个或多个 API 资产,这些资产对应于特定的 API 终端节点和唯一的资产 ARN。

AWS Data Exchange 负责使用正确的身份验证调用 API 终端节点。

我需要做的就是查看集成说明,其中包括基于 AWS 命令行界面 (CLI) 的说明和代码片段。

当然,我可以使用其中一个 AWS 开发工具包,以最喜欢的编程语言实现完全相同的 API 调用。

例如,以下是在 Python 中实现简单封装函数的代码:

import json
import urllib
import boto3

adx = boto3.client('dataexchange')

def get_api_response(path, method="GET", querystring={}, headers={}, body={}):
    return adx.send_api_asset(
        DataSetId="4b3fbabc31171662851531b8576a3411",
        RevisionId="e8e78e921af12c76499edc40f92e3082",
        AssetId="557d858c317efdfb5b6c9a2860ec4a03",
        Method=method,
        Path=path,
        QueryStringParameters=urllib.urlencode(querystring),
        RequestHeaders=urllib.urlencode(headers),
        Body=json.dumps(body),
    )

请注意,上面的代码中没有硬编码的凭证,因为所有授权都是通过 AWS Identity and Access Management (IAM) 进行的。

这就是您通过适用于 API 的 AWS Data Exchange 进行首次 API 调用的方式。

现已推出
适用于 API 的 AWS Data Exchange 已在提供 AWS Data Exchange 的所有 AWS 区域全面推出。我们期待着帮助您简化和集中管理第三方 API 的管理和管控,同时为您处理毫无差别的繁重工作。

今天,您可以开始集成第三方 API,例如 Infutor、Variety Business Intelligence、IMDb、PeopleDataLabs、Neustar、Experian、Foursquare、PredictHQ、WeatherTrends International 等。

如果您是开发人员,请查看新的适用于 API 的 AWS Data Exchange 文档,了解有关订阅和使用 API 的更多信息。如果您是 API 提供商,请查看新的发布文档,了解有关在 AWS Data Exchange 目录中发布新 API 的更多信息。

Alex