在 LookML 中对数据进行建模

借助 LookML 和 Looker IDE,您可以定义基于数据库表的可重用数据模型、维度和关系。在本快速入门中,您将使用 Looker (Google Cloud Core) 中的示例 LookML 项目创建模型文件和视图文件、配置“探索”并测试新维度。您还将学习如何开启开发模式、浏览 Looker IDE 以及使用快捷帮助。

准备工作

如需按照本快速入门中的说明操作,您需要满足以下条件:

  • 访问 Looker (Google Cloud Core) 实例:

所需的角色

如需完成本快速入门,您需要拥有适当的 Identity and Access Management (IAM) 角色和 Looker 角色。

Identity and Access Management 角色

您的 Looker (Google Cloud Core) 管理员会通过 Google Cloud的 Identity and Access Management 系统向您授予对 Looker (Google Cloud Core) 应用的访问权限。

如需获得访问 Looker (Google Cloud Core) 应用所需的权限,请让管理员向您授予包含 Looker (Google Cloud Core) 实例的 Google Cloud 项目的 Looker Instance User (roles/looker.instanceUser) IAM 角色。 如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。

此预定义角色包含访问 Looker (Google Cloud Core)应用所需的 looker.instances.login 权限。

您也可以使用自定义角色或其他预定义角色来获取此权限。

Looker 权限

您需要拥有一个具有 Looker 管理员角色或 develop 权限的 Looker 用户账号。

开启开发模式

Looker 项目可以采用以下两种模式之一:生产模式和开发模式。在开发模式下,您可以更改 LookML 文件,并预览这些更改对实例中内容的影响,而不会影响生产环境(其他用户看到的内容)。如需了解详情,请参阅开发模式和生产模式文档页面。

在本快速入门中,您将使用开发模式,以便对 LookML 文件进行更改,并在“探索”中测试这些更改。

如需开启开发模式,请按以下步骤操作:

  1. 在 Looker (Google Cloud Core) 首页上,点击 Looker 主菜单图标 以展开主导航菜单(如果尚未展开)。
  2. 选择菜单底部的开发模式切换开关。

启用开发模式后,Looker 会在屏幕顶部显示开发模式横幅。

LookML 项目是一组 LookML 文件,这些文件可告知 Looker 如何连接到数据库、如何查询数据以及如何在界面中呈现数据。在本快速入门中,您将使用在 Looker (Google Cloud Core) 实例上自动配置的示例 LookML 项目。

如需在 Looker IDE 中前往示例 LookML 项目文件,请按以下步骤操作:

  1. 如果开发菜单尚未显示,请点击 Looker 主菜单图标 ,然后选择开发。
  2. 在开发菜单中,选择 sample_thelook_ecommerce。

Looker 将打开 Looker IDE 的文件浏览器面板,并显示示例 LookML 项目文件。

创建新的项目文件夹

为了将您在本快速入门中创建的文件与 LookML 示例项目中的其他文件分开,您需要为快速入门文件创建一个新的项目文件夹。

如需在项目中创建文件夹,请按以下步骤操作:

  1. 在 Looker IDE 的文件浏览器面板中,点击面板顶部的添加文件或文件夹 图标,然后从添加文件或文件夹菜单中选择创建文件夹选项。
  2. 对于新文件夹的名称,请输入 quickstart。

  3. 点击创建。

Looker 会将新文件夹添加到 Looker IDE 的文件浏览器面板中。

有关 IDE 文件夹的更多信息

如需详细了解如何在 LookML 项目中使用文件夹,请参阅以下文档页面:

创建新的 LookML 模型文件

LookML 模型文件可指定数据库连接以及使用该连接的 Looker 探索集。在 LookML 中对数据进行建模后,用户可以在“探索”中开始查询 Looker 中的数据(请参阅在 Looker 中查看探索并与之交互)。

如需在 LookML 项目中创建新的模型文件,请按以下步骤操作:

  1. 在 Looker IDE 的文件浏览器面板中,选择您在创建新项目文件夹过程中创建的 quickstart 文件夹的三点状文件夹选项菜单。
  2. 从文件夹选项菜单中,选择创建模型。
  3. 在创建文件对话框中,输入新文件的名称 quickstart_practice,然后点击创建。 Looker 会在 quickstart 文件夹下创建 quickstart_practice.model 文件,并在 Looker IDE 中打开该新文件。文件浏览器面板中文件旁边的蓝点表示该文件是新文件。
  4. 在文件浏览器面板中,点击 quickstart 文件夹将其展开,然后查看 quickstart_practice.model 文件。
  5. 在 Looker IDE 中,点击 quickstart_practice.model 文件将其打开(如果尚未打开)。

quickstart_practice.model 文件包含示例 LookML,您可以将其用作项目的起点。目前,您可以保持该文件不变。在本快速入门的后续部分,您将在模型文件中创建探索。

有关模型文件的其他信息

如需在未来创建自己的模型文件,请注意以下资源:

创建新的 LookML 视图文件

在 LookML 中,视图对应于数据库中的单个表或单个派生表。视图文件指定要查询的数据库表以及要从该数据库表中包含的字段(维度和测量)。在视图文件中定义字段后,您可以使用 $ 替换运算符在 LookML 的其他部分引用该字段。这样,您就可以在一个位置定义字段,并在 LookML 项目中的多个位置使用该字段。

创建新视图文件的方法有多种,但最简单的入门方法是让 Looker 本身根据数据库中的现有表自动生成视图文件。

如需让 Looker 生成新的视图文件,请按以下步骤操作:

  1. 在 Looker IDE 的文件浏览器面板中,选择您在创建新项目文件夹过程中创建的 quickstart 文件夹的三点状文件夹选项菜单。
  2. 从文件夹选项菜单中选择基于表创建视图。
  3. 在基于表创建视图页面上,点击 Enter custom db(输入自定义数据库)输入字段,然后输入 bigquery-public-data:

    “基于表创建视图”对话框。

  4. 按 Enter 键即可查看 BigQuery 公共数据集。

  5. 滚动浏览列表,直到找到 thelook_ecommerce 数据集。

  6. 点击 thelook_ecommerce 数据集将其展开。

  7. 选择 order_items 表。

  8. 点击页面底部的创建视图按钮。

Looker 会在 Looker IDE 中显示 order_items 视图文件。在“文件浏览器”面板中,quickstart 文件夹已展开,order_items 视图文件显示有一个蓝点,表示这是一个新文件。

关于视图文件的更多信息

如需在日后创建自己的视图文件,请注意以下资源:

Looker IDE 快捷帮助

现在,您已创建 LookML 模型文件和 LookML 视图文件。在本快速入门的后续步骤中,您将开始修改这些文件。在开始修改之前,您应先熟悉 Looker IDE 快捷帮助功能。快捷帮助面板会针对 LookML 文件中的当前光标位置提供说明和选项:

  • 在 IDE 编辑器面板中,您可以点击 LookML 文件中的字段和参数,快捷帮助面板会显示该 LookML 元素支持的选项和子参数。
  • 在快捷帮助面板中,您可以点击参数名称,打开该参数的 Looker 文档页面。

如果快捷帮助面板尚未打开,您可以通过点击 Looker IDE 中的快捷帮助图标将其打开:

为视图创建探索

执行创建新的 LookML 模型文件过程和创建新的 LookML 视图文件过程后,您可以为新视图文件定义探索,以便使用 Looker 查询您在视图文件中建模的数据。

探索通常在模型文件中定义。(您可以创建一个单独的探索文件,但为了便于快速上手,您将在模型文件中创建探索。)

在定义探索的 LookML 文件中,您必须使用 include 参数,以便在探索定义中引用视图文件。此过程会引导您完成这些步骤。

如需为 order_items 视图文件创建探索,请按以下步骤操作:

  1. 在 Looker IDE 中,打开 quickstart_practice.model 文件。
  2. 在 quickstart_practice.model 文件中,将包含 include 参数的现有行替换为以下行:

    include: "/quickstart/order_items.view"
    
  3. 在 include 参数下添加一个新行,然后输入以下 LookML: none explore: order_items {}

  4. 点击 Looker IDE 顶部的保存更改按钮。

此“探索”是最基本的“探索”示例,可让用户查询 order_items 视图。从这个起点开始,您可以通过多种方式构建探索。

有关探索的更多信息

如需在未来创建自己的探索并构建探索,请注意以下资源:

创建新字段

在本快速入门的创建新的 LookML 视图文件部分中创建视图文件后,您可以看到 Looker 自动创建的字段。当您基于数据库表创建视图文件时,Looker 会自动创建维度、维度组和测量:

  • 维度是表示属性、事实或值的字段,用户可以从“探索”中的字段选择器中选择该字段,并可用于过滤查询。如果字段不在 SUM、COUNT 等聚合函数内,则为维度。Looker 会自动为数据库表中的每一列创建一个维度。
  • 维度组用于一次性创建一组基于时间或基于时长的维度。例如,时间戳列的维度组将包含日期、月份、季度、时间、周和年份的各个维度。Looker 会自动为在数据库表中检测到的基于时间的字段创建维度组。
  • 度量是“探索”中的一个字段,表示数据的可衡量信息,例如总和、计数等。度量在视图文件中声明,可以是汇总类型或非汇总类型。Looker 会自动为视图文件创建 type:count 度量,这相当于 SQL 中的 COUNT(*)。

在本部分中,您将学习如何手动将自己的维度添加到 order_items 视图文件。

如需在 order_items 视图文件中手动创建新维度,请按以下步骤操作:

  1. 打开 quickstarts/order_items.view 文件(如果尚未打开):在 Looker IDE 的文件浏览器面板中,点击 quickstart 文件夹将其展开,然后点击 order_items.view 文件将其打开。
  2. 在 quickstarts/order_items.view 文件中,在文件中的第一个 dimension 参数之前创建一个新行。
  3. 在新行中,开始输入 dimension。在您输入时,Looker IDE 会显示可能以您输入的文本开头的参数列表。

    • 使用箭头键浏览建议列表,找到“dimension”选项。
    • 按 Enter 键将所选参数插入 LookML。 Looker 将在您创建的新行中插入一个新的 dimension 参数。
  4. 如需为新维度提供名称,请在 IDE 中点击 {} 之前的位置,然后输入 shipped_to_delivered_days。

  5. 点击 {} 内部,然后按 Enter 键在 {} 内部创建新行。

  6. 完成新维度的 LookML(您可以复制并粘贴以下 LookML,也可以手动输入 LookML,看看 Looker IDE 如何提供指导):

    dimension: shipped_to_delivered_days {
      group_label: "Other Dates"
      type: duration_day
      sql_start: ${shipped_raw} ;;
      sql_end: ${delivered_raw} ;;
    }
    
  7. 在 Looker IDE 的顶部,点击保存更改按钮。

Looker 会保存包含新维度的视图文件。对于文件中的新行,Looker IDE 会将行号底色设为绿色。

有关 LookML 字段的其他信息

如需在未来创建自己的字段,请注意以下资源:

在 Looker 界面中查看和测试更改

如果您执行了为视图创建探索过程,为 order_items 视图文件创建了探索,则可以在 Looker 探索界面中看到新维度。

如需在 Looker 界面中的“探索”中查看和测试更改,请按以下步骤操作:

  1. 在 Looker IDE 的 quickstarts/order_items.view 文件中,点击文件编辑器面板顶部视图文件名称旁边的查看文件操作箭头图标,然后选择探索 Order Items - quickstart_practice 选项。

    “查看文件操作”菜单,其中已选择“Explore Order Items - quickstart_practice”(探索订单项 - quickstart_practice)选项。

  2. 在订单项探索字段选择器中,点击其他日期组标签将其展开,然后点击从发货到送达的天数维度,将其添加到探索中。(您也可以在字段选择器搜索框中输入 Shipped to Delivered Days 来搜索该维度。)

  3. 在 Order Items 探索字段选择器中,点击 Shipped Date 组标签将其展开,然后点击 Date 维度将其添加到探索中。

  4. 在 Order Items 探索字段选择器中,点击 Delivered Date 组标签将其展开,然后点击 Date 维度将其添加到探索中。

  5. 点击“探索”顶部的运行按钮。

Looker 将运行查询,并在“探索”的数据部分中显示结果。对于每一行,您可以验证订单商品发货到送达天数中的值是否显示订单商品发货日期值与订单商品送达日期值之间的正确天数。

验证 LookML

在本快速入门中,您无需验证 LookML。不过,在未来创建自己的项目来对数据进行建模时,了解用于验证 LookML 的 Looker 工具会很有帮助。

在您修改 LookML 时,Looker IDE 会提醒您单个文件中存在任何未解决的语法错误(请参阅 Looker IDE 概览文档页面)。您还可以执行完整的模型验证,这将检查 LookML 是否存在任何错误。如需了解详情,请参阅验证 LookML 文档页面。

提交所做的更改

在本快速入门中,您将使用为示例 LookML 项目设置的预配置 Git 连接。不过,日后当您创建自己的项目来对数据进行建模时,您需要为项目设置 Git 连接。

当您对 LookML 项目文件进行更改时,Looker IDE 会在 IDE 右上角显示 Git 按钮的不同操作。该按钮会显示不同的操作,引导您完成验证 LookML 并将更改部署到生产环境的过程。

您在本快速入门中查看的 LookML 文件和探索仅在开发模式下在您的个人 Git 分支中可用。如果您想让 Looker (Google Cloud Core) 实例中的其他用户可以使用此模型,则需要提交更改、合并分支并部署生产分支。

在本快速入门中,您无需将更改部署到生产环境。您需要按照清理过程中的说明删除这些文件。

清理

为最大限度提升 Looker 性能,不应将不必要的模型部署到生产环境。为保持个人 Git 分支的整洁,并避免意外将这些文件部署到生产环境,请完成以下步骤,删除您在本快速入门中创建的文件:

  1. 如果开发菜单尚未显示,请点击 Looker 主菜单图标 ,然后选择开发。
  2. 在开发菜单中,选择 sample_thelook_ecommerce。
  3. 在 Looker IDE 的文件浏览器面板中,选择您在创建新项目文件夹过程中创建的 quickstart 文件夹的三点状文件夹选项菜单。
  4. 从文件夹选项菜单中选择删除。
  5. 在删除文件夹窗口中,点击删除。

Looker 会删除 quickstart 文件夹及其所有内容。

后续步骤