4

我在 Google BigQuery 中有许多大表,其中包含要在 R 中处理的数据。我正在使用 Container Engine 在 Google Cloud Platform 上通过 Docker 运行 RStudio。

我在 BigQuery 中测试了几条路线,其中包含 3800 万行(三列)的表,表大小为 862 MB。

我测试的第一条路线是使用 R 包 bigrquery。首选此选项,因为可以直接从 BigQuery 查询数据。数据采集​​可以合并到 R 循环中。不幸的是,这个选项很慢,需要将近一个小时才能完成。

我尝试的第二个选项是将 BigQuery 表导出到 Google Cloud Storage 上的 csv 文件(大约 1 分钟),并使用公共链接在 Rstudio 中导入(另外 5 分钟)。这条路线需要相当多的人工处理,这至少是不可取的。

在 Google Cloud Console 中,我注意到可以授予 VM 实例访问 BigQuery 的权限。此外,可以将 RStudio 配置为在其 Docker 容器中具有 root 访问权限。

所以最后我的问题是:有没有办法使用这个后门以自动方式实现从 BigQuery 到 R 数据帧的快速数据传输?或者还有其他方法可以实现这个目标吗?

非常感谢任何帮助!


编辑:

我已经将同一张表加载到托管在 Google Cloud SQL 中的 MySQL 数据库中,这次加载相同数量的数据只需要大约 20 秒。因此,从 BigQuery 到 SQL 的某种翻译也是一种选择。

4

0 回答 0