【问题标题】:Export Google Cloud Datastore and import to BigQuery programmatically以编程方式导出 Google Cloud Datastore 并导入 BigQuery
【发布时间】:2017-09-16 22:14:16
【问题描述】:

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

【问题讨论】:

    标签: google-bigquery google-cloud-datastore


    【解决方案1】:

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

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

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

    【讨论】:

    • 第二个赞是使用 Google Drive 加载到 BigQuery。可以直接与谷歌云存储一起使用吗?感谢您的帮助。
    • 我正在重写应用程序脚本,但我有疑问。 exemple 使用 'job = BigQuery.Jobs.insert(job, projectId, data); ' 并且在 doc 中是 'job = BigQuery.Jobs.insert(projectId, job, data); '。
    【解决方案2】:

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

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

    请参阅此处以了解其工作原理:https://www.youtube.com/watch?v=dGyQCE3bWkU

    【讨论】:

      【解决方案3】:

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

      1) 制作一个存储桶

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

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

      this post 提供完整的图片教程。

      【讨论】:

        【解决方案4】:

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

        https://github.com/wenzhe/appengine_datastore_bigquery

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2013-05-18
          • 1970-01-01
          • 2019-01-27
          • 1970-01-01
          • 2019-06-19
          • 1970-01-01
          • 2021-05-24
          • 1970-01-01
          相关资源
          最近更新 更多