关于 lookml-view
lookml-view 是面向 LookML 开发者的技能,提供视图文件组织和编写规范。它说明标准视图、扩展、精化及派生表的结构,并强调主键和表名等约定。
主要功能
- 01规定视图文件的目录和命名方式
- 02要求标准视图显式指定表名
- 03规范主键维度的位置和标记
- 04说明扩展与精化视图的写法
- 05提及标准和原生派生表模式
适用场景
- 01创建符合约定的标准视图
- 02在不改动原文件时精化视图
- 03通过扩展复用已有视图逻辑
- 04组织派生表相关的 LookML 文件
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ lkrdev/ lookml_skills --skill lookml-view安装后在 Claude Code 中输入/lookml-view确认已加载。
附带文件references/derived_table.md
详细介绍
说明
1. 文件组织
- 标准视图:
views/[datasource_name]/[view_name].view.lkml - 扩展视图:
views/[datasource_name]/[view_name]_ext.view.lkml - 细化视图:
views/[datasource_name]/[view_name]_rfn.view.lkml - NDT:
views/[datasource_name]/[view_name]_ndt.view.lkml - SDT:
views/[datasource_name]/[view_name]_sdt.view.lkml
2. 核心规范
- sql_table_name:标准视图必须设置此项。默认值不可靠,请明确指定。
- 主键:
- 必须是文件中定义的第一个维度。
- 必须设置
primary_key: yes。
- 细化:在视图名称前使用
+(例如view: +users),以细化现有视图,而不修改原始文件。 - 扩展:使用
extends重用其他视图中的逻辑。
3. 最佳实践
- 命名:视图名称和文件名使用
snake_case。 - 描述:如果有助于说明视图的用途,请为视图本身添加描述(例如,“按地区汇总的每日活跃用户”)。
- 输出格式:确保文件以换行符结尾。
4. 相关技能
- lookml-refinements:关于
include、细化(+)和 Hub & Spoke 模式的逻辑。
示例
基本视图
view: users {
sql_table_name: `project.dataset.users` ;;
dimension: user_id {
primary_key: yes
type: number
sql: ${TABLE}.id ;;
group_label: "IDs"
description: "Unique internal user ID."
}
dimension: email {
type: string
sql: ${TABLE}.email ;;
description: "User's email address."
}
}
扩展视图
include: "/views/base/users.view"
view: users_extended {
extends: [users]
dimension: lifetime_value {
type: number
sql: ${TABLE}.ltv ;;
description: "Total lifetime value of the user."
}
}
细化(分层)
include: "/views/users.view"
view: +users {
label: "All Users (Refined)"
dimension: email {
# Adding a description to an existing field
description: "Primary contact email."
}
}
参考技能
- 派生表:标准(SDT)和原生(NDT)派生表模式/物化。
评论
支持 Markdown