以编程方式导出 Google Cloud Datastore 并导入到 BigQuery

Export Google Cloud Datastore and import to BigQuery programmatically

我正在寻找一种方法来每天导出我的 Cloud Datastore 并将其导入 BigQuery。 google page 中描述了手动方式。我找不到一种干净的方法来自动化它。

没有一种简单的方法可以做到这一点,但您可以将两部分分开:创建应用引擎备份并将它们加载到 bigquery 中。

您可以使用计划备份定期创建数据存储备份 (https://cloud.google.com/appengine/articles/scheduled_backups)。

然后您可以使用 Apps 脚本自动执行 BigQuery 部分 (https://developers.google.com/apps-script/advanced/bigquery#load_csv_data) 或使用 AppEngine cron 来做同样的事情。

基于@Jordan 上面的回答,执行此操作的步骤是:

1) 制作一个存储桶

2) 将数据存储实体导出到此存储桶

3) 打开 Big Query Web UI,并使用 Google 云文件路径加载。

带图片的完整教程可在 this post 获得。

可以使用以下代码。它基本上使用 App Engine Cron 作业和 BigQuery API.

https://github.com/wenzhe/appengine_datastore_bigquery

截至上周,有一种适当的方法可以自动执行此操作。最重要的部分是gcloud beta datastore export.

我围绕它创建了一个脚本:https://github.com/chees/datastore2bigquery 您可以 运行 在 cron 作业中执行此操作。

请在此处查看其工作原理的演示:https://www.youtube.com/watch?v=dGyQCE3bWkU