Google cloud platform 如何在谷歌云上合并和压缩大型文件?

Google cloud platform 如何在谷歌云上合并和压缩大型文件?,google-cloud-platform,Google Cloud Platform,我想合并一组csv文件并将它们压缩到GCP中 我将得到一个文件夹包含了大量的csv文件在GCP桶40 GB的数据。 一旦接收到整个数据,我需要将所有csv文件合并到一个文件中并压缩它。 然后将其存储到另一个位置。我每个月只需要做一次 我能做到这一点的最佳方式是什么 我计划使用以下策略,但不知道这是否是一个好的解决方案 用于侦听bucket文件夹并调用云的发布/订阅 从那里开始运作。 Cloud函数将调用包含Dag的Cloud composer 做活动 将CSV文件发送到GCP实例中的目录可能会容

我想合并一组csv文件并将它们压缩到GCP中

我将得到一个文件夹包含了大量的csv文件在GCP桶40 GB的数据。 一旦接收到整个数据,我需要将所有csv文件合并到一个文件中并压缩它。 然后将其存储到另一个位置。我每个月只需要做一次

我能做到这一点的最佳方式是什么

我计划使用以下策略,但不知道这是否是一个好的解决方案

用于侦听bucket文件夹并调用云的发布/订阅 从那里开始运作。 Cloud函数将调用包含Dag的Cloud composer 做活动
将CSV文件发送到GCP实例中的目录可能会容易得多。一旦到了GCP实例中,您就可以使用cron作业压缩文件,并最终使用gsutil将其复制到您的bucket中

如果无法将文件发送到实例,可以使用gsutil下载它们,压缩它们并再次上载zip文件


无论哪种方式,您都必须为实例服务帐户提供适当的权限,以修改bucket的内容或最终为其提供适当的权限。不要忘记为其提供适当的权限

CSV文件是一批到达的,还是在一个月内逐渐到达的?到目前为止,您尝试了什么?我的计划听起来和你尝试过的不一样。因此,不清楚您的要求是什么-而云功能只有2GB RAM。使用一个基本的shell脚本,这可能会简单得多。所有文件都会在一个批处理中到达。我已经添加了一个文件夹,我将在其中放置一个.completed文件。当文件到达时,pubsub将向主题推送通知。文件的整个大小几乎为40GB。因为云功能只有2gb,所以我不能使用它。我已经有一个现有的dag脚本来压缩数据。这就是为什么我尝试使用cloud composer。我想知道的是,是否有其他经济高效的方法可以做到这一点。有没有一种方法可以在cloud composer中使用python压缩数据?你为什么会想到cloud composer?您只需要一个脚本/程序,按日期下载文件,使用zip工具压缩,然后复制到最终目的地。这可以通过CRON来安排。这是一项非常简单的任务。