概览
Looker 是一种语言,用于描述 SQL 数据库中的维度、汇总、计算和数据关系,以及针对该数据库构建 SQL 查询。如需了解学习 LookML 的推荐步骤,请参阅学习 LookML 的步骤文档页面。
您可以使用此参考页面来确定 LookML 参数如何帮助您实现所需的数据建模效果。如果您正在查看现有模型并希望了解每个参数的作用,此参考文档可能也会有所帮助。您可能还需要访问各个相关 LookML 结构的参考页面:模型、视图、探索、联接、清单或字段。
有关这些 LookML 结构及其相互关系的介绍,请参阅 LookML 术语和概念文档页面。您可以在此页面底部找到指向其他资源的链接,帮助您识别、了解和实现 LookML 元素。
如何阅读此参考文档
在本页面中,参数是根据它们可以实现的不同功能以及您可以通过这些参数实现的不同效果来组织的。
每个部分中的表格条目列出了:
参数名称 | 级别 | 说明 |
---|---|---|
参数的主要参数页面的名称和链接 | 参数在哪个级别应用,并带有指向该级别所有其他可用参数列表的链接:model、view、Discover、join、manifest 或 field。某些参数可在 LookML 中用于多个级别。 | 对参数函数的简要说明以及它是否可以包含子参数 |
某些字段级参数可与多个字段类型一起使用,因此,在本页中,我们使用表示字段类型的参数来标记每个字段级参数。您可以将鼠标悬停在图标上查看其名称,也可以点击图标以查看相应字段类型的参考页面。
结构参数
这些 LookML 参数会影响项目或其底层文件的结构。
模型或探索文件中的主要结构参数
如 LookML 术语和概念文档页面中所示,一个项目包含一个或多个模型文件,这些文件使用参数定义模型及其探索和联接。
本部分介绍您通常在模型文件中设置的主要结构参数。它们充当所有其他参数的框架。explore
参数通常在模型文件的顶层定义,但当您使用原生派生表时,可以在探索文件中定义它。
参数名称 | 级别 | 说明 |
---|---|---|
explore |
模型 | 在“探索”菜单中显示视图。如需详细了解“探索”及其参数,请参阅探索参数参考页面。会影响探索名称和菜单。此参数在“探索参数”参考页面和本页面的其他位置包含许多子参数。 |
fields |
探索 | 限制“探索”功能在基本视图和“联接”联接中提供的字段。会影响字段选择器中可用的字段。 |
include |
模型 | 将文件添加到模型中。此参数还可用于原生派生表的视图文件。 |
join |
加入 | 联接“探索”的其他视图。另请参阅下文的联接视图部分。 |
test |
模型 | 创建数据测试以验证模型的逻辑。项目设置中包含一个要求执行数据测试的选项。为项目启用此功能后,项目中的开发者必须先运行数据测试,然后才能将更改部署到生产环境中。此参数有 explore_source 和 assert 子参数。 |
视图文件中的主要结构参数
如 LookML 术语和概念文档页面所示,项目包含一个或多个视图文件,这些文件使用参数来定义视图及其字段(包括维度和测量值)及其字段集。
本部分介绍了您通常在视图文件中使用的主要结构参数。
参数名称 | 级别 | 说明 |
---|---|---|
dimension
|
查看(但列于字段参考页面) | 创建维度字段。会影响字段选择器的默认行为。 |
dimension_group
|
查看(但列于字段参考页面) | 同时创建多个基于时间的维度。会影响字段选择器的默认行为。 |
fields |
加入 | 确定将哪些字段带入“探索” |
measure
|
查看(但列于字段参考页面) | 创建测量字段。会影响字段选择器的默认行为。 |
view |
型号(但在查看文件中使用) | 创建视图。 会影响字段选择器的默认行为。此参数在查看参数参考页面和当前页面上的其他位置列出了许多子参数。 |
帮助程序结构参数
这些参数可帮助您定义所需的结构行为,例如让您指定字段集、包含特定文件(及其内容)、重复使用定义等。
参数名称 | 级别 | 说明 |
---|---|---|
+ (优化) |
探索和查看 | 使用 LookML 优化,基于项目中的视图和探索的 LookML 进行构建。 |
constant |
清单 | 定义可在整个项目中使用的 LookML 常量。此参数有 value 和 export 子参数。 |
extends |
探索和查看 | 重复使用另一个 LookML 对象的定义,并根据需要添加和替换子参数。此参数还可与 LookML 信息中心搭配使用。 |
extension |
探索和查看 | 指定无法直接使用探索、视图或信息中心。相反,该定义是为其他对象(使用基于此对象的扩展)的模板。此参数还可与信息中心搭配使用。 |
include |
型号 | 将文件添加到模型中。此参数还可用于原生派生表的视图文件。 |
intervals
|
字段:DG | 对于配置为 type: duration 的维度组,请在 dimension_group 中定义所需的时长维度。会影响字段选择器的默认行为。 |
local_dependency |
清单 | 指定一个或多个要包含的文件的项目 |
parameter
|
查看(但列于字段参考页面) | 创建一个仅供过滤器使用的字段,用户可以使用该字段向 Liquid {% parameter %} 标记提供输入。会影响字段选择器的默认行为。 |
project_name |
清单 | 指定当前项目的名称 |
remote_dependency |
清单 | 指定一个或多个要包含的文件的远程代码库 |
set |
视图 | 定义一组用于其他参数的维度和衡量。此参数可用于限制可用于联接的字段,从而限制用于字段选择器。此参数还可用于定义当用户深入了解数据时应显示哪些字段。此参数有一个 fields 子参数。 |
timeframes
|
字段:DG | 为配置为 type: time 的维度组定义您希望在 dimension_group 中使用的一系列时间范围维度。会影响字段选择器的默认行为。 |
扩展框架应用
Looker 开发者可以使用项目的清单文件中的 application
参数将应用添加到 Looker 的扩展框架中。将扩展程序添加到项目后,具有相应权限的 Looker 用户便可以在 Looker 浏览菜单中看到该扩展程序。
如果您的管理员已启用增强型导航实验室功能,那么这些扩展程序会列在新的增强型左侧导航面板的应用部分中。
参数名称 | 级别 | 说明 |
---|---|---|
application |
清单 | 使用 Looker 的扩展程序框架向项目添加应用。此参数包含 application 参数文档页面中所述的子参数。 |
探索名称和菜单
“探索”的名称及其在“探索”菜单中的呈现效果有助于您的用户根据自己的需求选择合适的探索。这些 LookML 参数会影响“探索”菜单上“探索”的名称和外观的默认行为。
如需进一步的讨论,请参阅更改“探索”菜单和字段选择器文档页面中的探索名称和菜单部分。
默认行为
探索名称的默认行为及其在“探索”菜单中的呈现方式由下面列出的参数指定。
参数名称 | 级别 | 说明 |
---|---|---|
explore |
模型 | 在“探索”菜单中显示视图。如需详细了解“探索”及其参数,请参阅探索参数参考页面。会影响探索名称和菜单。 |
修改“探索”名称和菜单
“探索”名称及其在“探索”菜单中的显示方式可通过下表中的参数进行修改。
参数名称 | 级别 | 说明 |
---|---|---|
description |
探索 | 添加在“探索”页面和“探索”菜单中向用户显示的探索说明 |
group_label |
探索 | 创建标签,用作“探索”菜单中的标题 |
hidden |
探索 | 在“探索”菜单中隐藏“探索” |
label |
探索 | 更改“探索”功能在“探索”菜单中的显示方式 |
label |
模型 | 更改模型在“探索”菜单中的显示方式 |
字段选择器
字段选择器中视图和字段的组织和显示名称可帮助用户了解可视化图表,并在“探索”中查找所需的字段。这些 LookML 参数会影响字段选择器的内容、外观和组织的默认行为。
如需进一步的讨论,请参阅更改“探索”菜单和字段选择器文档页面的字段选择器部分。
默认行为
默认字段选择器的外观和行为由下面列出的参数指定。有关此默认行为的完整说明,请参阅更改“探索”菜单和字段选择器文档页面的字段选择器显示部分。
参数名称 | 级别 | 说明 |
---|---|---|
dimension
|
查看(但列于字段参考页面) | 创建维度字段 |
dimension_group
|
查看(但列于字段参考页面) | 同时创建多个基于时间的维度 |
filter
|
查看(但列于字段参考页面) | 创建仅供过滤条件的字段,以便在模板化过滤条件或条件联接中使用 |
measure
|
查看(但列于字段参考页面) | 创建测量字段 |
parameter
|
查看(但列于字段参考页面) | 创建一个仅供过滤器使用的字段,用户可以使用该字段向 Liquid {% parameter %} 标记提供输入 |
timeframes
|
字段:DG | 针对配置为 type: time 的维度组,定义您希望在 dimension_group 中采用的一系列时间范围维度 |
intervals
|
字段:DG | 为配置为 type: duration 的维度组定义您希望在 dimension_group 中设置的时长维度集 |
view |
型号(但已在查看参考页面上列出) | 创建视图 |
在字段选择器中修改视图名称
视图的显示名称有助于您的用户了解和查找“探索”中所需的字段。如果可视化图表显示视图名称,那么修改名称的显示方式有助于用户了解可视化图表。本部分介绍了影响字段选择器中视图名称的 LookML 参数。有关此主题的完整说明,请参阅更改“探索”菜单和字段选择器文档页面的字段选择器部分。
参数名称 | 级别 | 说明 |
---|---|---|
label |
视图 | 指定视图名称在字段选择器中的显示方式 |
view_label |
探索 | 指定如何在探索器的基本视图中为一组字段在字段选择器中添加标签 |
view_label |
加入 | 更改联接的视图名称在字段选择器中的显示方式 |
在字段选择器中修改字段列表
修改字段列出的方式有助于用户了解可视化图表并在“探索”中查找所需的字段。可以使用下表中的参数修改字段选择器中列出的字段。有关此主题的完整说明,请参阅更改“探索”菜单和字段选择器文档页面的字段选择器部分。
参数名称 | 级别 | 说明 |
---|---|---|
description
|
字段:D DG M F P | 添加了说明字段,以便用户在悬停鼠标时可以看到该字段 |
fields |
探索 | 限制“探索”功能在基本视图和“联接”联接中提供的字段。会影响字段选择器中可用的字段。 |
fields |
加入 | 确定将哪些字段带入“探索” |
hidden
|
字段:D DG M F P | 在“探索”界面中隐藏字段 |
label
|
字段:D DG M F P | 更改字段名称在字段选择器中的显示方式 |
label_from_parameter
|
字段:D M | 根据 parameter 的输入,更改可视化图表中的字段名称的显示方式 |
修改字段选择器中的字段结构
字段的组织方式有助于用户找到“探索”中所需的字段。可以使用下表中的参数修改字段选择器中的字段结构。有关此主题的完整说明,请参阅更改“探索”菜单和字段选择器文档页面的字段选择器部分。
参数名称 | 级别 | 说明 |
---|---|---|
group_label
|
字段:D DG M F | 在字段选择器中的视图中将各个字段组合在一起 |
view_label
|
字段:D DG M F P | 更改字段选择器视图中显示的字段 |
本地化
如果您要本地化模型,您可以使用位置信息设置参数,根据用户的语言区域设置,自定义 Looker 界面中的标签和说明。如需了解如何设置模型以进行本地化,请参阅模型本地化文档页面。
参数名称 | 级别 | 说明 |
---|---|---|
localization_settings |
清单 | 指定模型的本地化信息。此参数有 default_locale 和 localization_level 子参数。 |
localization_level |
清单 | 指定模型中是否允许不翻译的字符串 |
default_locale |
清单 | 指定将用作模型默认字符串翻译的语言区域 |
数据值和数据显示
在“探索”的数据部分修改数据的值和呈现方式有助于用户了解结果。您可能需要修改或限制维度或指标的数据类型、更改用户看到的数据格式、填写缺失值或更改其他可视化选项。
用户还可以自行定义“数据”部分中的表格计算。不过,您应该尽可能在 LookML 中定义维度和测量值,以便进行一次正确的计算,并在各种查询中保持一致。
多个字段类型的数据值
通过这些参数,您可以更改多个字段类型的数据值。
参数名称 | 级别 | 说明 |
---|---|---|
case
|
字段:D M | 创建维度集可通过 SQL 条件确定的一组离散值。此参数有 when 和 else 子参数。 |
sql
|
字段:D DG M F | 确定字段的计算方式 |
type (适用于维度、过滤条件或参数)
|
字段:D F P | 指定维度、过滤条件或参数的类型 |
type (适用于维度组)
|
字段:DG | 指定维度组的类型 |
type (用于衡量)
|
字段:M | 指定测量类型 |
特定维度类型的数据值
您可以使用特定类型的参数修改某些类型的维度的数据值。
type: date
或 type: datetime
的尺寸
参数名称 | 级别 | 说明 |
---|---|---|
convert_tz
|
字段:D DG F M P | 为字段停用自动时区转换 |
datatype
|
字段:D DG F M | 指定要向该字段提供时间数据的类型 |
fiscal_month_offset |
模型 | 指定您的财年(如果与日历年不同)的月份 |
week_start_day |
模型 | 指定一周中与周相关维度的起始日期。 |
type: distance
的尺寸
参数名称 | 级别 | 说明 |
---|---|---|
end_location_field
|
字段:D | 定义包含 type: distance 字段的结束位置的字段。此参数也被视为结构参数。 |
start_location_field
|
字段:D | 定义包含 type: distance 字段的起始位置的字段 |
units
|
字段:D | 指定要为 type: distance 字段使用的单位 |
type: location
的尺寸
参数名称 | 级别 | 说明 |
---|---|---|
sql_latitude
|
字段:D | 定义 type: location 维度的纬度 |
sql_longitude
|
字段:D | 定义 type: location 维度的经度 |
type: string
的尺寸
参数名称 | 级别 | 说明 |
---|---|---|
string_datatype
|
字段:D | 为 SQL Server 或 MySQL 指定维度 type: string 的 Unicode 数据类型 |
type: tier
的尺寸
参数名称 | 级别 | 说明 |
---|---|---|
tiers
|
字段:D | 定义 type: tier 维度的层级 |
type: duration
维度组或 type: duration_x
维度
参数名称 | 级别 | 说明 |
---|---|---|
sql_start
|
字段:D DG | 定义维度组 type: duration 或维度 type: duration_x 的持续时长的开始时间 |
sql_end
|
字段:D DG | 定义维度组“type: duration ”或维度“type: duration_x ”的持续时长结束时间 |
数据测量值
其中大多数参数仅限于下表中指定的特定测量类型。如需创建按维度值过滤的计数,请参阅按维度过滤计数。要创建用于计算两个字段之间百分比的测量值,请参阅百分比。
参数名称 | 级别 | 说明 |
---|---|---|
approximate |
字段:M | 对 type: count_distinct 的测量值执行近似计数。如需查看支持此参数的方言列表,请参阅 approximate 文档页面。 |
approximate_threshold
|
字段:M | 设置 BigQuery 从确切计数区分到大致不同计数的计数。 |
direction
|
字段:M | 确定使用数据透视时如何计算 type: percent_of_total 或 type: running_total 的测量值。 |
list_field
|
字段:M | 声明将用作 type: list 的测量值的维度。此参数也被视为结构参数。 |
percentile
|
字段:M | 为 type: percentile 或 type: percentile_distinct 指定小数值(第 N 百分位) |
primary_key
|
字段:D | 将维度声明为视图的主键 |
sql_distinct_key
|
字段:M | 定义要计算哪些不同衡量指标(例如 type: sum_distinct 或 type: average_distinct )的唯一实体 |
symmetric_aggregates |
探索 | 指定是否为探索启用对称聚合。此参数还会针对影响联接行为的参数列出。另请参阅下文的联接视图部分。 |
数据格式
您可以使用下表中的参数来设置数据格式,从而让数据值更易于用户阅读。
参数名称 | 级别 | 说明 |
---|---|---|
html
|
字段:D DG M | 使用 Liquid 模板修改字段的 HTML 输出 |
named_value_format |
模型 | 创建用于 value_format_name 的自定义值格式。此参数有 value_format 和 strict_value_format 子参数。 |
style
|
字段:D | 针对 type: tier 维度更改层级在 Looker 界面中的显示方式 |
value_format
|
字段:D M | 使用 Excel 样式的选项设置字段输出格式 |
value_format_name
|
字段:D M | 使用内置或自定义格式设置字段输出的格式 |
数据排序和填充
对于大多数字段,排序顺序很简单,就是字母数字值排序。在某些情况下,您可能需要按照新顺序对新 LookML case
或旧 LookML sql_case
语句的结果进行排序。或者,您可能需要按其他字段的值对值进行排序。您还可以使用 allow_fill
参数来允许或阻止用户要求 Looker 为字段填写缺少的日期和值。
参数名称 | 级别 | 说明 |
---|---|---|
allow_fill
|
字段:D DG | 确定某个维度是否允许填充维度 |
alpha_sort
|
字段:D | 使 case 参数按字母顺序对其条件进行排序
|
order_by_field
|
字段:D DG | 按另一个字段的值对字段进行排序 支持维度组 |
直观呈现位置数据
Looker 提供了各种地图,可用于在可视化部分中直观呈现位置数据值。您还可以为可视化图表创建并使用自定义地图。
参数名称 | 级别 | 说明 |
---|---|---|
map_layer |
模型 | 创建与 map_layer_name 搭配使用的自定义地图。此参数在 map_layer 页面上列出了许多子参数。 |
map_layer_name
|
字段:D | 指定从数据值到您在内置或自定义地图上定义的地理区域的映射。 |
针对数据值的可点击操作
钻孔
在 Looker 中,每个查询结果都可以作为另一个查询的起点。用户可以点击数据值以深入了解数据。您还可以使用 LookML 指定当用户深入了解数据时所显示的字段。展开维度和衡量指标的默认行为有所不同。
有关构建自定义深入分析路径的高级选项,请参阅帮助中心内的更强大的数据深入分析一文。
参数名称 | 级别 | 说明 |
---|---|---|
drill_fields
|
字段:D DG M | 声明在细目或维度深入分析时显示的字段列表 |
set |
视图 | 定义一组用于其他参数的维度和衡量。此参数用于限制联接可用的字段,进而限制字段选择器。此参数还可用于定义当用户深入研究数据时应显示哪些字段。另请参阅其他 LookML 基础知识文档页面中的使用数据集查看细目详情。 |
数据操作
有时,用户希望在查看数据后能够触发其他事件。如果您使用的是 Looker 操作中心,则可以指定具有特定 tags
的字段可以使用特定的集成服务。您还可以使用数据操作来指定用户可以使用哪些字段。
参数名称 | 级别 | 说明 |
---|---|---|
action
|
字段:D M | 针对某个字段创建数据操作,以便用户直接通过 Looker 在其他工具中执行任务。此参数在 action 页面上列出了许多子参数。 |
tags
|
字段:D DG M F P | 添加可传递到其他应用以提供字段数据的文本 |
正在关联
您可以让用户点击数据值以导航到相关网址。借助这些参数,您可以指定当用户深入研究数据时显示哪些字段、指定要显示的文本、目标网址,以及目标网站的网站图标。
参数名称 | 级别 | 说明 |
---|---|---|
link
|
字段:D M | 创建指向其他 Looker 和外部内容的链接。此参数有 label 、url 和 icon_url 子参数。如需了解使用 link 的高级选项,请参阅帮助中心内更强大的数据深入分析一文。 |
过滤
您可以直接在 LookML 中指定过滤条件行为(例如添加有用的过滤条件,或确保用户不会意外创建会对您的数据库资源造成过多需求的查询),从而帮助提升用户体验。您可以指定过滤条件行为,例如区分大小写、默认值,以及 Looker 在用户输入内容时可以生成的过滤条件建议。
有关 LookML 中过滤功能的更广泛讨论,请参阅其他 LookML 基础知识文档页面上的过滤结果集。有关使用模板化过滤器的高级选项,请参阅帮助中心内的模板化过滤器和液体参数以及高级模板化过滤器一文。
如需查看过滤条件表达式和语法的完整列表,请参阅 Looker 过滤条件表达式文档页面。
要求具有固定值的过滤条件
通过这些参数,您可以指定始终应用的过滤条件。
另请参阅“其他 LookML 基础知识”文档页面中的按维度过滤计数。
参数名称 | 级别 | 说明 |
---|---|---|
access_filter |
探索 | 为探索添加了特定于用户的过滤条件。此参数包含子参数 field 和 user_attribute 。 |
sql_always_having |
探索 | 在查询的 HAVING 子句中插入用户无法更改或更改此探索的条件 |
sql_always_where |
探索 | 在查询的 WHERE 子句中插入用户无法更改或更改此探索的条件 |
sql_where |
加入 | 如果查询中包含此联接,则会在查询的 WHERE 子句中插入用户无法更改或移除此探索的条件。仅适用于 BigQuery。此参数也可被视为过滤器参数。 |
要求具有可更改值的过滤条件
借助这些参数,您可以指定必须使用的过滤条件,但允许用户更改过滤条件的值。
参数名称 | 级别 | 说明 |
---|---|---|
always_filter |
探索 | 向探索添加了用户可以更改但不能移除的过滤条件。此参数有一个 filters 子参数。 |
filter
|
字段:F | 创建仅供过滤条件的字段,以便在模板化过滤条件中使用 |
filters
|
字段:M | 根据维度限制来限制测量结果的计算 |
阻止过滤器
通过这些参数,您可以防止用户在任何情况下或仅在展开细目时将字段用作过滤条件。
参数名称 | 级别 | 说明 |
---|---|---|
can_filter
|
字段:D DG M | 确定是否可以将维度或衡量用作过滤条件 |
skip_drill_filter
|
字段:D | 停止在将细目细目到过滤器时将维度添加到过滤器 |
条件过滤器
在某些情况下,您可能需要指定用户必须从多个过滤器中任选一个来缩小查询范围。例如,用户必须按日期或地区限制查询。
除了下面的参数之外,另请参阅其他 LookML 基础知识文档页面上的过滤结果集。
参数名称 | 级别 | 说明 |
---|---|---|
conditionally_filter |
探索 | 如果用户没有从特定列表添加自己的过滤器,则向“探索”功能添加过滤器。此参数有 filters 和 unless 子参数。 |
过滤值行为
为了让用户更轻松地进行过滤,您可以为过滤器提供默认值,也可以将过滤器值视为不区分大小写。
参数名称 | 级别 | 说明 |
---|---|---|
case_sensitive |
探索 | 指定过滤器对探索是否区分大小写 |
case_sensitive
|
字段:D F | 指定过滤条件对于维度是否区分大小写 |
case_sensitive |
模型 | 指定过滤条件对于模型是否区分大小写 |
default_value
|
字段:F P | 指定过滤条件字段的默认值 |
过滤条件建议
过滤器建议是帮助用户成功过滤数据的好方法。在某些情况下,停用建议或更改建议行为可能很有用。
这些 LookML 参数会影响过滤器建议的默认行为。
默认行为
默认情况下,Looker 会根据特定字段数据中的所有唯一值给出针对给定过滤条件字段的建议。
启用或停用建议功能
如果您认为某个字段包含大量唯一值,那么可以停用该字段的过滤条件建议。这样可以避免用户需要反复地给出过多建议,而数据库也无法再提供这类建议。您可以在多个级别启用或停用过滤条件建议。
参数名称 | 级别 | 说明 |
---|---|---|
suggestable
|
字段:D DG M F P | 针对某个字段启用或停用建议功能 |
suggestions |
视图 | 针对此视图的所有维度启用或停用建议 |
建议值
默认情况下,Looker 会根据字段的唯一值生成过滤条件建议。在某些情况下,如果您指定了 Looker 应建议的值(如最有可能的值),建议可能会更实用。此外,如果您限制对数据中的某些值的访问权限,则可以选择是对建议应用限制还是不应用这些限制。
参数名称 | 级别 | 说明 |
---|---|---|
allowed_value
|
字段:P | 指定 parameter 的选项。此参数有 label 和 value 子参数。 |
bypass_suggest_restrictions
|
字段:D DG F P | 在使用“sql_always_where ”时向用户显示建议,但不会将这些限制应用于建议 |
full_suggestions
|
字段:D DG F P | 在使用sql_always_where 时向用户显示建议,但确实会对建议应用这些限制 |
suggest_dimension
|
字段:D DG M F P | 根据不同维度的值根据字段提供建议 |
suggest_explore
|
字段:D DG M F P | 根据不同探索的值来确定字段建议 |
suggestions
|
字段:D F P | 声明将用于字段建议的值列表 |
缓存建议
默认情况下,Looker 会根据字段的唯一值生成过滤条件建议。这些值会被缓存以提高性能,但您可以更改缓存值使用的时长。如果数据相当稳定,不妨考虑使用较长的时间来提升这些建议值的效果。
参数名称 | 级别 | 说明 |
---|---|---|
suggest_persist_for
|
字段:D F P | 更改 Looker 过滤器建议的缓存设置 |
联接视图
如在 LookML 中使用联接中所述,联接允许同时从多个视图中探索数据。您可以合并不同的视图,让用户了解各部分数据之间的关系。
联接在模型文件中定义,以建立探索和视图之间的关系。“联接”将单个探索中的一个或多个视图连接起来(直接或通过另一个联接视图)。
通过这些 LookML 参数,您可以创建联接并指定其工作原理。
加入内容
在通常情况下和特定情况下,可使用各种参数指定要联接的视图。此外,您还可以指定要联接哪些字段。
参数名称 | 级别 | 说明 |
---|---|---|
always_join |
探索 | 指定必须始终对探索应用哪些联接 |
fields |
加入 | 确定将哪些字段带入“探索” |
from |
加入 | 指定联接所依据的视图 |
include |
模型 | 将文件添加到模型中。只有模型中可用文件中的视图可用于联接 |
join |
探索 | 联接“探索”的其他视图。如需详细了解联接及其参数,请参阅联接参数参考页面。该参数在当前页面上其他位置列出了许多子参数。 |
required_joins |
加入 | 指定当选择特定联接中的字段时,应将哪些联接应用于探索 |
sql_table_name |
加入 | 指定联接所依据的数据库表 |
如何加入
您可以指定视图之间的联接方式以及联接条件。您还应指定主键,以便 Looker 可以使用对称聚合为聚合函数提供正确的结果。
如需进一步了解对称聚合,另请参阅对称聚合的简单说明,或“Google 地球为什么看起来像这样?”和 SQL 扇出问题帮助中心文章。
参数名称 | 级别 | 说明 |
---|---|---|
foreign_key |
加入 | 指定使用联接视图的主键的探索与联接之间的关系 |
outer_only |
加入 | 指定是否所有查询都必须使用外部联接 |
primary_key
|
字段:D | 将维度声明为视图的主键 |
relationship |
加入 | 将联接声明为具有一对一、多对一、一对多或多对多关系 |
sql_on |
加入 | 通过编写 SQL ON 子句指定探索与联接之间的关系 |
symmetric_aggregates |
探索 | 指定是否为探索启用对称聚合。此参数还列明了用于衡量价值的参数。 |
type |
加入 | 将联接声明为左、全、内或交叉类型 |
缓存
Looker 使用先前查询的缓存结果(如有),并在缓存政策允许的情况下提高数据库的负载并提升性能。此外,您还可以将复杂查询创建为永久性派生表 (PDT),用于存储其结果以简化后续查询。在规划缓存时,您应同时考虑性能以及应为用户“刷新”数据的方式。
缓存查询
您可以使用数据组将 Looker 与数据流水线的 ETL(提取、转换、加载)阶段更紧密地集成。例如,如果您通过夜间 ETL 作业批量加载数据,就可以让 Looker 发现 ETL 已完成并清除所有相关的缓存查询。
如需进一步的讨论,请参阅使用 datagroups 缓存查询和重建 PDT 文档页面。
参数名称 | 级别 | 说明 |
---|---|---|
datagroup |
模型 | 为模型创建数据组缓存政策。此参数有 max_cache_age 、sql_trigger 、label 和 description 子参数。 |
persist_for |
探索 | 更改探索的缓存设置。不妨考虑改用 datagroup 参数更强大的功能。 |
persist_for |
模型 | 更改模型的缓存设置。不妨考虑改用 datagroup 参数更强大的功能。 |
persist_with |
探索 | 指定用于探索的缓存政策的数据组 |
persist_with |
模型 | 指定用于模型缓存政策的数据组 |
缓存过滤条件建议
默认情况下,Looker 会根据字段的唯一值生成过滤条件建议。这些值会被缓存以提高性能,但您可以更改缓存值使用的时长。如果数据相当稳定,不妨考虑使用较长的缓存时间来提高这些建议值的性能。
参数名称 | 级别 | 说明 |
---|---|---|
suggest_persist_for
|
字段:D F P | 更改 Looker 过滤器建议的缓存设置 |
缓存永久性派生表
请参阅下面的为永久性派生表重新生成和缓存参数,了解影响永久性派生表缓存的参数。
派生表
如 Looker 中的派生表教程中所述,派生表是 Looker 中的重要工具。您可以利用它们创建数据库中尚不存在的新表、提高分析的复杂程度并提高查询性能。
如需查看其他讨论,请参阅 LookML 术语和概念文档页面上的派生表和事实表以及永久性派生表。
所有派生表的结构参数
可使用 SQL 或 LookML 定义派生表。所有派生表都以此参数开头:
参数名称 | 级别 | 说明 |
---|---|---|
derived_table |
视图 | 以派生表为基础创建视图。此参数包含当前页面上其他位置列出的许多子参数,并显示在查看参数文档页面上的示例用量表中。 |
原生派生表的结构参数
在为数据建模时,原生派生表更易于阅读、理解和推理。
下表中的参数用于定义原生派生表的源数据。它们会进行更详细的介绍,并在 explore_source
参数文档页面的示例用法中显示。
参数名称 | 级别 | 说明 |
---|---|---|
bind_all_filters |
视图 | 在 explore_source 下使用“探索”查询中的所有过滤条件传递到原生派生表子查询。如需查看示例,请参阅 explore_source 参数文档页面。
注意: explore_source 参数可以具有 bind_all_filters 子参数或 bind_filters 子参数,但不能同时具有这两者。
|
bind_filters |
视图 | 在 explore_source 下使用“探索”过滤器将过滤条件传递到原生派生表子查询。要进行此设置,请使用 from_field 子参数指定在原生派生表视图中定义的字段,或在指定了原生派生表的“探索”中访问的字段。在运行时,探索中针对 from_field 的所有过滤条件都将传递到原生派生表子查询中的 to_field 。如需查看示例,请参阅 explore_source 参数文档页面。
注意: explore_source 参数可以具有 bind_all_filters 子参数或 bind_filters 子参数,但不能同时具有这两者。
|
column |
视图 | 在 explore_source 下使用此项可指定要包含在表中的列。此参数有一个 field 子参数。 |
derived_column |
视图 | 在 explore_source 中指定一列,在内部列的命名空间中添加表达式。聚合 SQL 表达式在此处不适用,因为此步骤没有 SQL 分组。在定义窗口函数(如果适用)时,这尤其有用。此参数有一个 sql 子参数。 |
explore_source |
视图 | 根据关联的探索为派生表生成 SQL。explore_source 具有此表其他行及其主文档页面中所述的各种子参数。 |
expression_custom_filter |
视图 | 为 explore_source 查询指定自定义过滤条件表达式。可选。 |
filters |
视图 | 为 explore_source 查询指定自定义过滤条件表达式。可选。 |
include |
模型 | 包括包含要在表格中引用的字段的文件,如 explore_source 文档页面中所述。如需了解其他用途(例如将文件添加到模型和视图),请参阅 include 参数的主文档页面;另请参阅使用 include 创建联接的联接视图。 |
limit |
视图 | 指定查询的行数上限。可选。 |
sorts |
视图 | 可选。指定此 explore_source 的排序。用方括号括起来,在字段名称前面添加要排序的字段,后跟 : ,然后使用关键字 asc 或 desc 指示该字段应按升序还是降序排列。 |
timezone |
视图 | 设置 explore_source 查询的时区。对于临时(非永久性)派生表,请将此参数设置为 query_timezone 以自动使用当前正在运行的查询的时区。如果未指定时区,默认情况下,explore_source 查询将不执行时区转换,而是使用数据库的时区。 |
SQL 派生表的结构参数
对于 SQL 派生表,请使用下面列出的参数。
参数名称 | 级别 | 说明 |
---|---|---|
sql (适用于派生表) |
视图 | 声明派生表的 SQL 查询 |
自定义数据定义的结构参数
对于需要自定义数据定义语言 (DDL) 的数据库方言,请使用下面列出的参数。例如,如果数据库方言不支持作为单个 SQL 语句发布的 CREATE TABLE as SELECT
,请使用 create_process
参数在多个步骤中构建 PDT:
参数名称 | 级别 | 说明 |
---|---|---|
create_process |
视图 | 指定一系列 SQL 语句,这些语句将按照列出的顺序一次执行一个。每个单独的 SQL 语句都使用 sql_step 子参数指定。 |
sql_create |
视图 | 定义 SQL CREATE 语句,以针对需要自定义 DDL 命令的数据库方言创建 PDT |
为永久性派生表重新生成和缓存参数
如上文的缓存部分中所述,您可以使用数据组来管理缓存,并通过数据新鲜度平衡效率。
当数据可用时,您可以使用数据组重新生成持久派生表 (PDT)。或者,您也可以指定不经常重新生成 PDT,即使底层表频繁更新也是如此,这样 PDT 的查询就能缓存更长时间。
如需进一步的讨论,请参阅 Looker 中的派生表文档页面和使用 datagroups 缓存查询和重建 PDT 文档页面上的持久化策略。
参数名称 | 级别 | 说明 |
---|---|---|
datagroup_trigger |
视图 | 指定用于 PDT 重建政策的数据组 |
persist_for (适用于派生表) |
视图 | 设置 PDT 的最长存在时间,然后再重新生成。请考虑使用更强大的 datagroup_trigger 参数。 |
sql_trigger_value |
视图 | 指定导致 PDT 重新生成的条件。请考虑使用更强大的 datagroup_trigger 参数。 |
派生表的查询参数效率
根据数据库方言,您可以使用一些参数来提高派生表的效率。
参数名称 | 级别 | 说明 |
---|---|---|
cluster_keys |
视图 | 指定 PDT 或汇总表按 BigQuery 中的一个或多个字段划分 已在 Snowflake 上添加对 cluster_keys 的支持
在 cluster_keys 中添加了对汇总表的支持 |
distribution |
视图 | 设置 PDT 的分发键或以 Redshift 或 Aster 构建的汇总表 为 distribution 添加了对汇总表的支持 |
distribution_style |
视图 | 设置 PDT 或基于 Redshift 构建的汇总表格的分发样式 针对使用汇总表格的 distribution_style 添加了支持 |
increment_key |
视图 |
ADDED 21.4
将派生表设为增量 PDT。increment_key 用于指定应查询新数据的时间并将其附加到美国太平洋夏令时 |
increment_offset |
视图 |
添加 21.4
与 increment_key 参数结合使用,以设置增量太平洋夏令时。increment_offset 指定重建以考虑延迟到来的数据的先前时间段数量(以递增键的粒度表示)。 |
indexes |
视图 | 设置 PDT 或传统数据库中构建的汇总表(例如,MySQL、Postgres)或 Redshift 中的交错排序键 添加了对具有汇总表的 indexes 的支持 |
partition_keys |
视图 | 指定按 Presto 中的一个或多个字段或 BigQuery 中的单个日期/时间字段分区的 PDT 或汇总表 针对 partition_keys 添加了汇总表 |
sortkeys |
视图 | 设置 PDT 或内置 Redshift 中构建的汇总表格的排序键 为 sortkeys 添加了对汇总表格的支持 |
table_compression |
视图 | 指定在 Amazon Athena 中用于 PDT 的表压缩 |
table_format |
视图 | 指定用于 Amazon Athena 中的 PDT 的表格式 |
汇总表格
如汇总认知度文档页面中所述,汇总表格可以帮助您优化探索中的查询。与永久性派生表 (PDT) 类似,汇总表仍会在数据库中保留。
汇总表格在“探索”下定义。
参数名称 | 级别 | 说明 |
---|---|---|
aggregate_table |
探索 | 为探索创建汇总表。此参数包含 aggregate_table 参数文档页面中所述的子参数。 |
其他查询行为参数
影响您的查询内容和查询方式的参数多种多样,其中一些参数已在本页其他部分进行了介绍。下文介绍了可让您建立查询行为的其余 LookML 参数。
查询内容
这些参数用于定义有关您的查询的连接、文件和字段的具体信息。
参数名称 | 级别 | 说明 |
---|---|---|
access_grant |
模型 | 创建一个访问权限授予,仅允许具有批准的用户属性值的用户访问 LookML 结构。此参数有 user_attribute 和 allowed_values 子参数。 |
connection |
模型 | 更改模型的数据库连接 |
fanout_on
|
字段:D DG M | 允许访问 Google BigQuery 重复字段 |
from |
探索 | 指定探索所依据的视图,并通过探索的名称引用该视图的字段 |
required_access_grants |
探索 | 仅允许用户属性值与访问权限相匹配的用户访问探索 |
required_access_grants |
加入 | 仅允许特定用户属性值与其访问权限相匹配的用户访问联接 |
required_access_grants |
视图 | 仅允许视图属性值与用户访问权限相匹配的用户访问视图 |
required_access_grants |
字段:D DG M F P | 仅允许用户属性值与访问权限相匹配的用户访问字段 |
required_fields
|
字段:D M | 要求在选择字段后向查询添加其他字段 |
sql_table_name |
探索 | 指定探索所依据的数据库表 |
sql_table_name |
视图 | 更改视图所基于的 SQL 表 |
view_name |
探索 | 指定探索所依据的视图,并根据视图名称引用该视图的字段 |
如何查询
这些参数会影响 Looker 构建或处理查询的方式。
其中一些参数涉及到确保对称聚合正常运行。如需进一步了解对称聚合,另请参阅帮助中心内的对称聚合的简单说明,或“Google 地球为什么看起来像这样?”一文。
参数名称 | 级别 | 说明 |
---|---|---|
alias
|
字段:D DG M F P | 允许重命名旧字段后已存网址在重命名字段后仍可正常使用 |
cancel_grouping_fields |
探索 | 在“探索”部分中选择特定字段时取消 GROUP BY 子句 |
primary_key
|
字段:D | 将维度声明为视图的主键 |
sql_where |
加入 | 如果查询中包含此联接,则会在查询的 WHERE 子句中插入用户无法更改或移除此探索的条件。仅适用于 BigQuery。此参数也可被视为过滤器参数。 |
symmetric_aggregates |
探索 | 指定是否为探索启用对称聚合。此参数还会针对影响测量值的参数列出。 |
应避免的参数
您可能会在模型中看到以下参数,因此我们在此列出了它们的用途。不过,如果您要添加新的建模功能,请避免使用这些参数。
参数名称 | 级别 | 说明 |
---|---|---|
access_filter_fields |
探索 |
已移除 6.0
已替换为 access_filter |
decimals
|
字段:D M |
已移除 5.4
已替换为 value_format
|
distkey |
视图 |
已移除 3.26
已被 distribution 取代 |
format
|
字段:D M |
已移除 3.16
由 value_format 取代 |
scoping |
模型 | 已移除 3.52 不再需要 |
sql |
加入 |
AVOID 3.10
已替换为 sql_on 、foreign_key 、type 和/或 sql_table_name 的组合,如 sql(用于联接) 参数文档页面所述
|
sql_foreign_key |
加入 |
AVOID 3.16
已被 foreign_key 取代 |
template |
模型 | 已移除 3.30 不再需要 |
view_label |
视图 |
AVOID 4.4
已替换为 label |
其他教程和资源
这些部分提供其他资源的链接,可帮助您更深入地了解 LookML 并支持您在 Looker 中的其他开发者任务。
了解开发过程
Looker 文档菜单中的数据建模部分旨在让您着手进行 Looker 的“开发”部分。
可能有必要查看的特定网页:
了解 LookML
Looker 文档菜单的学习 LookML 的步骤部分旨在向您介绍基本的 LookML 概念,并向您推荐一个熟练掌握 LookML 的学习路线。
可能有必要查看的特定网页:
创建 LookML 信息中心
项目中的所有信息中心文件都包含特定于信息中心的 LookML 参数。当前页面仅包含数据建模参数,不包含信息中心参数,但 Looker 文档菜单中的创建和管理 LookML 信息中心部分旨在介绍如何使用 LookML 信息中心。
可能有必要查看的特定网页:
- 构建 LookML 信息中心
- 信息中心参数:适用于影响整个信息中心的参数
- 信息中心元素参数:适用于影响信息中心内特定元素的参数
嵌入、API 和管理选项
嵌入
以下页面可能有助于您详细了解如何嵌入样式、探索和信息中心:
API
Looker 文档菜单的 Looker API 部分旨在帮助您开始使用 Looker 安全的“RESTful”应用编程接口 (API)。
管理员的方法
Looker 文档菜单的开始使用管理选项部分旨在让您开始使用 Looker 的“管理”部分。
在 Looker Connect 上培训
在 Looker Connect 上注册 LookML 开发者学习之旅。