firebase - 使用“将集合导出到 BigQuery”扩展程序生成架构视图:fs-bq-schema-views
解决方案
请参阅此文档以了解 BigQuery 架构 -指定架构。下面已经解释了更多。
为 Firestore 集合文档创建架构-
- Schema 只是一个具有字段数组的 json 对象。
{
"fields": [
{
"name": "name",
"type": "string"
},
{
"name": "age",
"type": "number"
}
]
}
- 在 fields 数组中,每个项目都有一个
name
andtype
属性。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 部分,您可以在其中添加您的projectId
等datasetId
,如下所示:
之后将为您创建架构,您可以在 BigQuery UI 中进行检查。
注意-
- 请确保您已
gcloud
安装和配置。步骤又简单了,请按照安装 Cloud SDK - 在运行
npx
命令之前,不要忘记运行gcloud auth application-default login
提示-
- 作为一种好的做法,您可以在项目的根目录中创建一个目录并将所有模式存储在那里。
git
如果您使用任何版本控制系统(如果您签入),这将有助于跟踪所有更改
这是怎么做的 -
推荐阅读
- python - 如何将字典的键与其值交换
- python - 如何检查用户是否在 discord.py 中具有角色?
- vba - Word VBA:不必要的属性标志会减慢宏的速度吗?
- python - 如何在 POST 请求发送的 Botfront/Rasa 中传递和提取元数据?
- laravel - Laravel 从相关表中按日期加时间搜索
- flutter - 将参数传递给 withConverter 方法 cloud_firestore 2.1.0 的最佳方法
- r - 如何在 R 中做两部分模型
- android - Android 无法解析样式中的符号“primaryLightColor”属性
- python - 从主列表和子列表创建一个新的字典列表
- google-sheets - 根据目标工作表中的一个单元格将数据从一张工作表拉到目标工作表