将通过电子邮件收到的数据上传到数据仓库

Uploading data received via email to data warehouse

我将每周通过电子邮件从供应商那里接收数据的 csv 文件,我们使用 Outlook。我想将附件上传到我们的数据仓库,即 Google BigQuery。

在寻找最简单的方法时,我发现了亚马逊的 Simple Email Service,它看起来可以自动将电子邮件和附件保存到存储桶中。这太棒了……要是它在 Google Cloud Platform 上就好了。

是否有与此等效的 GCP?或者,如果没有,是否有将通过电子邮件收到的数据文件上传到仓库的标准方法?

您要找的就是 App Engine,它让您可以通过 Mail API 收听收到的电子邮件。您可以 read and write attachments to GCS bucket,通过在 Cloud Storage 中写入时指定存储桶。

from google.appengine.api import app_identity
bucket_name = os.environ.get('BUCKET_NAME',app_identity.get_default_gcs_bucket_name())

要处理 receiving email messages,您需要在应用配置中将电子邮件地址与脚本处理程序相关联,然后将这些处理程序包含在应用代码中。

请参阅官方文档并阅读有关 quotas and limits 的信息,例如传入邮件的最大大小(包括附件)为 31.5 MB。