如何在Google Cloud Platform中配置特定的数据管道?

问题描述

我有一个任务来实现运行在其中的后端服务(Java / Spring) 在GCP中运行和创建(配置)数据管道,将该服务用于以下目的: 自动处理将带有嵌入式架构的Avro文件上传到 云存储桶。当新文件上传到存储桶时,我需要对其进行处理,然后以特定方式将其解析为BigQuery。

因此,我已经成功部署了Spring应用程序并设计了avro模式。我发现google上有如何将Avros加载到BigQuery example的示例,我认为这可以用于此任务。

我停留在上载事件(或数据管道配置?)上。我真的不知道如何处理文件上传事件(我想我需要在上传文件获取URI)。我尝试阅读有关Google Dataflow的文章,但我认为这不是我完成任务所需要的。你能给我一些建议,我该怎么做。

解决方法

选项之一是使用Cloud Functions configured to be triggered by uploading a file。 另一种选择是订阅Pub/Sub notifications for Cloud Storage。 另一种选择是使用Apache Beam的Google Cloud Dataflow Runner。

在繁重的负载下,有时触发事件可以重复,因此您需要确保云功能不会多次处理单个文件。