gpt4 book ai didi

Redshift 的 REST API

转载 作者:行者123 更新时间:2023-12-04 16:28:45 24 4
gpt4 key购买 nike

我目前正在集思广益,并试图弄清楚处理这种方法是否可行或更好的方法。

假设我有一个 Redshift 表,我想通过 REST API 公开这个表。例如,有几个客户需要此表中的某种元数据。他们将调用 REST 服务,它将在 Redshift 上执行以获取数据并以 JSON 格式响应客户端。

我在 Redshift/AWS 领域还很新,所以不确定 AWS 是否已经为此提供了一些东西?我知道 S3 支持 REST API。

听起来可行吗?我绝对可以使用 Java 编写典型的 RESTful 服务,同时使用 JDBC 从 Redshift 读取数据。但想知道在 AWS 世界中是否有更好的方法来处理这个问题。

最佳答案

Amazon API Gateway可以公开一个公共(public) API,然后在调用时调用一个 Lambda 函数。 Lambda 函数可以为所欲为!

对于某些 AWS 服务,API Gateway 还可以充当普通 API 调用的代理(例如 Create an AWS Service Proxy for Amazon SNS。但是,对 Amazon Redshift 进行 SQL 调用涉及作为客户端连接到数据库,而不是对 AWS 进行 API 调用。

因此,您需要:

  • 写一个 AWS Lambda 函数 (在 Node.js、Java 或 Python 中)
  • 有功能连接到 Amazon Redshift 数据库 并执行 SQL 调用
  • 定义 API 网关 API 接收 REST 请求并将其转发到 Lambda 函数

  • 它可能看起来很复杂,但如果你把它分解成组件并让每个组件依次工作,那么它应该是直截了当的。

    API 网关也有能力 cache responses ,它可以通过不总是连接到 Amazon Redshift 来提供更快的性能(例如,对于最近访问或变化缓慢的数据)。

    关于Redshift 的 REST API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38023578/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com