关于 creating-lookml-model
此技能指导 Looker 用户根据已确认的 BigQuery 数据表编写 LookML 视图和模型,并完成连接映射、验证及查询测试。适用于构建仪表板数据模型的流程。
主要功能
- 01按 BigQuery 表创建视图
- 02编写模型、explore 与 joins
- 03配置模型数据库连接映射
- 04验证 LookML 项目
- 05运行查询检查模型结果
适用场景
- 01为目标仪表板建立 LookML 模型
- 02将 Looker 模型映射到指定连接
- 03验证 LookML 并测试查询数据
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ looker-open-source/ looker-skills --skill creating-lookml-model安装后在 Claude Code 中输入/creating-lookml-model确认已加载。
详细介绍
创建 LookML 模型、视图并编写 LookML
本技能将指导你完成编写所有所需 LookML(视图文件和模型文件)的流程,以便为用户在入门访谈期间提出的仪表板做好准备;配置 Looker 中的连接映射;验证 LookML 代码;并运行内联查询,确认其功能正常。
前置条件与参考资料
- 必须已安装并完成身份验证的 Looker CLI(第 2 步和第 3 步)。
- 必须已创建 Looker 项目和 BigQuery 连接(第 4 步和第 5 步)。
- 关键参考资料:你必须阅读并严格遵循
lookml-modeling-guidelines技能中关于编写和验证所有 LookML 元素的最佳实践、命名要求及限制。
说明
1. 获取入门目标和架构规范
参考对话历史中与用户在 第 1 步(探索)访谈期间确定的入门目标和 BigQuery 探索结果。你必须回忆:1. 目标仪表板目标(例如,销售概览、支持指标等)。2. 已商定的具体 GCP 项目、数据集和表(事实表和维度表)。3. 要使用的目标指标(度量)和维度。
注意:不要编造或猜测这些详细信息。视图、字段、Explore 和模型的名称必须直接对应你在第 1 步中发现的架构和表。
2. 创建和编辑视图文件(CLI)
对于构建目标仪表板所需的每个 BigQuery 表,你都必须编写 LookML 视图定义并将其上传到项目:
-
创建
views目录:如果项目中还没有views/目录,请使用 Looker CLI 创建:looker-cli project directory create {project_id} views -
生成视图内容:获取表列(来自探索阶段),并在本地编写 LookML 视图文件内容(例如,写入
/tmp/{table_name}.view.lkml)。遵循主键和字段定义指南。 -
上传视图文件:将文件上传到 Looker 项目的视图文件夹:
looker-cli project file create {project_id} views/{table_name}.view.lkml /tmp/{table_name}.view.lkml -
指南参考:对于所有视图定义、主键规则和字段引用规范,你必须查阅并严格遵循
lookml-modeling-guidelines技能中的视图创建最佳实践(第 4 节和第 6.C 节)。
3. 创建/更新模型文件(CLI)
编写 LookML 模型定义并将其上传到项目根目录:
-
将模型 LookML 结构(定义 Explore、联接和 include)写入本地文件(例如
/tmp/{model_name}.model.lkml)。- 指定数据库连接:
connection: "{connection_name}"。 - 包含所需的特定视图文件(例如,
include: "/views/orders.view.lkml"、include: "/views/users.view.lkml")。避免使用"/views/**/*.view.lkml"之类的宽泛通配符,以防止性能开销和编译错误。 - 仪表板的重要提示:如果计划创建 LookML 仪表板,必须在模型文件中添加
include: "/dashboards/**/*.dashboard.lookml",以将其包含在内。 - 定义 Explore 和联接。
- 指定数据库连接:
-
将模型文件上传到 Looker 项目的根目录:
looker-cli project file create {project_id} {model_name}.model.lkml /tmp/{model_name}.model.lkml -
指南参考:对于所有 include 声明、Explore 结构和显式联接关系定义,你必须查阅并严格遵循
lookml-modeling-guidelines技能中的模型和 Explore 最佳实践(第 6.A 节和第 6.B 节)。
4. 在 Looker 中配置模型连接(CLI)
使用 Looker CLI 将 LookML 模型映射到 Looker 中允许的数据库连接。此步骤为必需步骤,Looker 需要通过此步骤注册模型配置映射并启用查询。
-
将模型配置载荷直接写入
/tmp/model_config.json:{ "name": "{model_name}", "project_name": "{project_id}", "allowed_db_connection_names": ["{connection_name}"] } -
注册模型配置映射(必需步骤):
looker-cli model import /tmp/model_config.json -
验证映射:
looker-cli model cat {model_name}确保返回的 JSON 在
allowed_db_connection_names中正确列出了你的连接。
5. 验证项目的 LookML(CLI)
验证 LookML 代码,确保不存在语法或逻辑错误:
-
使用 Looker CLI 触发项目验证:
looker-cli api project validate_project {project_id} -
如果发现错误,请在本地文件中修复,然后使用
looker-cli project file update上传更新后的版本,并重新运行验证,直至验证通过。 -
指南参考:根据我们的零错误政策,严禁提交未通过验证的代码。详细的验证规则和反馈循环流程,请参阅
lookml-modeling-guidelines(第 3 和第 5 节)。
6. 通过运行查询进行验证(CLI)
运行验证查询,测试你的连接和 LookML 模型:
-
使用
lookml-modeling-guidelines(第 2 节)中的 Discovery 工具,查找你定义的维度和度量的完全限定名称。 -
将 JSON 查询载荷直接写入
/tmp/verify_query.json(请求你的完全限定维度和度量,最多返回 5 行):{ "model": "{model_name}", "view": "{explore_name}", "fields": ["{explore_name}.{dimension_name}", "{explore_name}.{measure_name}"], "limit": 5 } -
使用 Looker CLI 执行查询:
looker-cli query runquery --file /tmp/verify_query.json --format json -
确认查询成功执行并返回数据,且不存在数据库或 SQL 错误。验证指南请参阅
lookml-modeling-guidelines(第 3 节)。