有没有办法将数据从 Azure Blob 持续传输到 BigQuery?
Is there a way to continuously pipe data from Azure Blob into BigQuery?
我在 Azure Blob 存储中有一堆文件,而且它会不断获取新文件。我想知道是否有一种方法可以让我先获取 Blob 中的所有数据并将其移至 BigQuery,然后保留脚本或某些作业 运行,以便将其中的所有新数据发送到大查询?
我不知道有什么开箱即用的(在 Google 的基础设施上)可以做到这一点。
我可能会设置一个微型虚拟机来:
- 扫描您的 Azure blob 存储以查找新内容。
- 将新内容复制到 GCS(或本地磁盘)。
- 定期启动 LOAD 作业以将新数据添加到 BigQuery。
如果您使用 GCS 而不是 Azure Blob 存储,则可以取消 VM,只拥有一个云函数,该函数会在新项目添加到您的 GCS 存储桶时触发(假设您的 Blob 采用 BigQuery 知道的形式阅读)。我认为这是您不希望修改的现有解决方案的一部分。
BigQuery 提供对 querying data directly from these external data sources 的支持:Google Cloud Bigtable、Google Cloud Storage , Google 驱动器。不包括 Azure Blob 存储。正如 Adam Lydick 提到的,作为一种解决方法,您可以将 data/files 从 Azure Blob 存储复制到 Google Cloud Storage(或其他支持 BigQuery 的外部数据源)。
要将数据从 Azure Blob 存储复制到 Google 云存储,您可以 运行 WebJobs (or Azure Functions), and BlobTriggerred WebJob 可以在创建或更新 blob 时触发一个函数,在 WebJob 函数中您可以访问 blob 内容并将其 write/upload 到 Google 云存储。
注意:我们可以安装这个库:Google.Cloud.Storage to make common operations in client code. And this blog解释了如何在Azure Functions中使用Google.Cloud.Storage sdk。
我在 Azure Blob 存储中有一堆文件,而且它会不断获取新文件。我想知道是否有一种方法可以让我先获取 Blob 中的所有数据并将其移至 BigQuery,然后保留脚本或某些作业 运行,以便将其中的所有新数据发送到大查询?
我不知道有什么开箱即用的(在 Google 的基础设施上)可以做到这一点。
我可能会设置一个微型虚拟机来:
- 扫描您的 Azure blob 存储以查找新内容。
- 将新内容复制到 GCS(或本地磁盘)。
- 定期启动 LOAD 作业以将新数据添加到 BigQuery。
如果您使用 GCS 而不是 Azure Blob 存储,则可以取消 VM,只拥有一个云函数,该函数会在新项目添加到您的 GCS 存储桶时触发(假设您的 Blob 采用 BigQuery 知道的形式阅读)。我认为这是您不希望修改的现有解决方案的一部分。
BigQuery 提供对 querying data directly from these external data sources 的支持:Google Cloud Bigtable、Google Cloud Storage , Google 驱动器。不包括 Azure Blob 存储。正如 Adam Lydick 提到的,作为一种解决方法,您可以将 data/files 从 Azure Blob 存储复制到 Google Cloud Storage(或其他支持 BigQuery 的外部数据源)。
要将数据从 Azure Blob 存储复制到 Google 云存储,您可以 运行 WebJobs (or Azure Functions), and BlobTriggerred WebJob 可以在创建或更新 blob 时触发一个函数,在 WebJob 函数中您可以访问 blob 内容并将其 write/upload 到 Google 云存储。
注意:我们可以安装这个库:Google.Cloud.Storage to make common operations in client code. And this blog解释了如何在Azure Functions中使用Google.Cloud.Storage sdk。