首页 > 解决方案 > Amazon S3,如何将 JSON 文件复制到另一个在更新原始文件时更新的存储桶?

问题描述

我的 S3 存储桶中有一些 JSON 文件,我想将它们复制到另一个存储桶。不仅是一次性副本,而且会在发生更新时镜像原始副本的更改,类似于对两个不同存储桶的多播。

如果我只是右键单击并点击复制并将其粘贴到另一个存储桶中,那会成功吗?

标签: amazon-web-servicesamazon-s3amazon-redshiftetl

解决方案


这个问题有2个解决方案

  1. 创建一个映射到 Object Created (All) 事件类型的 Lambda 文件。因此,每当创建或修改或复制新对象时,都会触发 Lambda;其中事件将包含对对象的引用。将对象从存储桶 A 复制到 Lambda 内的存储桶 B,这将满足您的要求。但是,这不适用于删除功能。对于 Delete,您可能必须为 Object Removed (All) 事件创建另一个 Lambda,并在 Bucket A 中的对象被删除时从 Bucket B 中删除 S3 对象。这几乎是实时的

  2. 编写一个每 N 分钟运行一次的调度程序,它将存储桶的所有内容从 A 复制到 B,但不是一个很好的可扩展解决方案。这更像是一个批处理解决方案

我的 2 派萨,希望它有帮助


推荐阅读