mcpField
L
lookml-view

lookml-view

github.com/lkrdev数据与数据库1661 次安装22 周前更新
代码仓库

关于 lookml-view

lookml-view 是面向 LookML 开发者的技能,提供视图文件组织和编写规范。它说明标准视图、扩展、精化及派生表的结构,并强调主键和表名等约定。

主要功能

  1. 01规定视图文件的目录和命名方式
  2. 02要求标准视图显式指定表名
  3. 03规范主键维度的位置和标记
  4. 04说明扩展与精化视图的写法
  5. 05提及标准和原生派生表模式

适用场景

  1. 01创建符合约定的标准视图
  2. 02在不改动原文件时精化视图
  3. 03通过扩展复用已有视图逻辑
  4. 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. 核心规范

  1. sql_table_name:标准视图必须设置此项。默认值不可靠,请明确指定。
  2. 主键:
    • 必须是文件中定义的第一个维度。
    • 必须设置 primary_key: yes。
  3. 细化:在视图名称前使用 +(例如 view: +users),以细化现有视图,而不修改原始文件。
  4. 扩展:使用 extends 重用其他视图中的逻辑。

3. 最佳实践

  • 命名:视图名称和文件名使用 snake_case。
  • 描述:如果有助于说明视图的用途,请为视图本身添加描述(例如,“按地区汇总的每日活跃用户”)。
  • 输出格式:确保文件以换行符结尾。

4. 相关技能

示例

基本视图

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