AWS - 从 AWS 存储传输和检索大规模数据的最佳方式



>我有一个中间使用 AWS 的 Ionic 移动混合应用程序 像API网关Trigerring lamdba函数用于简单的发布,获取请求。

我想在 AWS 上存储大型 json(围绕 5K 项(,以便可以轻松检索它们并将其存储在应用程序的本地存储中。

我计划创建一个 ETL cron 作业,用于此目的将数据从我的服务器上传到 AWS。

AWS提供的很少服务,如Redis,DynamoDB,可用于这种情况,但我对可以实现的方法感到困惑。

我想并阅读了几个选项:

  1. API 网关 -> DynamoDB
  2. API 网关 -> lambda 函数 -> DynamoDB
  3. API 网关 -> lambda 函数 -> Redis

我也读过关于 S3 和 pipline 的信息,但我不确定它们是否合适。

请指教。

谢谢

首先,Redis 不是最适合您的要求。将 API 网关与 DynamoDB 或 Lambda 结合使用将满足您的要求。

1. API 网关 ->DynamoDB:选择是否尝试将 JSON 数据存储到 DynamoDB 中,而无需

2. API 网关 -> Lambda ->DynamoDB:选择是否需要在存储到 DynamoDB 之前对 JSON 数据执行某些操作或修改。

建议:选择第一种方法(API Gateway -> DynamoDB(,使用 API Gateway POST 请求将 JSON 数据存储到DynamoDB中,并使用 API Gateway GET 请求根据查询检索 JSON 数据。

如何实施第一种方法,请关注此亚马逊博客:https://aws.amazon.com/blogs/compute/using-amazon-api-gateway-as-a-proxy-for-dynamodb/

如果我正确理解您的问题,您希望将JSON 文件数据从您的服务器放入 AWS,以便您的移动客户端(使用 Lambda 等(可以更快地访问该数据

在这种情况下,AWS S3 应该就足够了(前提是您知道将向客户端提供哪些 JSON 文件,并且您不必查看/查询其内容(。它应该看起来像这样:

[ Server ] ==[Whatever]==> [ AWS S3 ]
[ AWS S3 ] <==[Lambda]==> [ Mobile client ]

为此[无论如何],请查看亚马逊的文档。可能是同步可以提供帮助

编辑:阅读您的评论后,我意识到您的意图是将当前在oracle数据库上的数据放入AWS上基于JSON的数据库中。在这种情况下,DynamoDB 就是您的最佳选择。您应该遵循@Haresh Chhelana的解决方案并编辑您的问题以使其更清晰

如果您在迁移到 DynamoDB 之前不需要高级数据转换,也可以利用带有 DynamoDB 的 DMS 作为目标

最新更新