首页 > 解决方案 > 使用“将集合导出到 BigQuery”扩展程序生成架构视图:fs-bq-schema-views

问题描述

https://github.com/firebase/extensions/blob/master/firestore-bigquery-export/guides/GENERATE_SCHEMA_VIEWS.md

我试图创建架构视图脚本但无法创建。

任何人都可以帮助我如何创建第 1 步吗?

标签: firebasegoogle-cloud-firestoregoogle-bigqueryfirebase-extensions

解决方案


请参阅此文档以了解 BigQuery 架构 -指定架构。下面已经解释了更多。

为 Firestore 集合文档创建架构-

  • Schema 只是一个具有字段数组的 json 对象。
{
  "fields": [
    {
      "name": "name",
      "type": "string"
    },
    {
      "name": "age",
      "type": "number"
    }
  ]
}
  • 在 fields 数组中,每个项目都有一个nameandtype属性。name是您在集合文档中使用的 fieldName,并且type是 dataType。
  • 例如 - 我的收藏文档具有以下界面(截断): 在此处输入图像描述

所以我的架构如下(注意 - 为简洁起见,没有添加所有内容):

{
  "fields": [{
      "name": "awb",
      "type": "string"
    },
    {
      "name": "rfn",
      "type": "string"
    },
    {
      "name": "customerId",
      "type": "string"
    },
    {
      "name": "shipmentStatus",
      "type": "string"
    },
    {
      "name": "amount",
      "type": "number"
    }
  ]
}

现在,您只需在机器的任何目录中创建架构,然后npx @firebaseextensions/fs-bq-schema-views从该目录运行命令。

这将打开一个交互式 cli 部分,您可以在其中添加您的projectIddatasetId,如下所示:

控制台截图

之后将为您创建架构,您可以在 BigQuery UI 中进行检查。

注意-

  • 请确保您已gcloud安装和配置。步骤又简单了,请按照安装 Cloud SDK
  • 在运行npx命令之前,不要忘记运行gcloud auth application-default login

提示-

  • 作为一种好的做法,您可以在项目的根目录中创建一个目录并将所有模式存储在那里。git如果您使用任何版本控制系统(如果您签入),这将有助于跟踪所有更改

这是怎么做的 -

在此处输入图像描述


推荐阅读