Looker 的持久性派生表管理页面会显示 Looker 实例的持久性表(包括持久性派生表和汇总表)的状态。
持久性派生表管理页面会显示多项管理功能,可帮助您跟踪和排查持久性表的行为。如需了解如何排查持久化表方面的问题,请参阅 Looker 中的派生表文档页面。
Looker 管理员和拥有 see_pdts
权限的用户可以访问持久性派生表页面。
如需打开持久性派生表页面,请按照以下步骤操作:
- 点击 Looker 主菜单图标 ,然后选择管理(如果管理菜单尚未显示)。(如果您位于 Looker 主菜单的探索或开发部分,可能需要点击返回箭头才能看到管理菜单。)
- 在管理菜单中,选择持久性派生表。
永久性派生表页面仅显示已启用 PDT 的连接,并且仅显示符合以下条件的持久化表:
- 持久化表是在生产环境中的视图文件中定义的,除非您处于开发模式,在这种情况下,您可以使用开发标签页查看持久化表的开发版本。
- 持久化表是正确配置的模型的一部分。
- 持久化表是您拥有数据访问权限的某个模型的一部分。
本页中的信息基于内部 PDT 事件日志,如本页中的 PDT 事件日志探索部分所述。
自定义表格
默认情况下,“持久性派生表”页面最多显示 25 个持久性表,并加载 Looker 实例上您拥有数据访问权限的所有连接的持久性表。您可以通过多种方式更改表格中显示的数据:
- 如需仅查看特定连接中的持久化表,请点击所有连接旁边的箭头,然后选择相应连接的名称。选择器仅显示已针对 PDT 启用且您有权访问数据的连接。
- 在搜索框中输入关键字,以将持久化表列表缩小到名称中包含该关键字的持久化表。表格中将显示持久性表,其中与搜索字词匹配的表以粗体显示。点击搜索栏中的 X 即可清除搜索查询字词。
- 点击过滤条件图标以为表格定义过滤条件。
- 点击关闭/打开图标可显示或隐藏概览部分。
- 点击列名称即可按该列对表格进行排序。再次点击列名称可反转排序顺序。
- 点击选择要显示的列图标,以隐藏或显示表格中的列。
- 使用显示选择器选择单个页面上显示的结果数量。如果表格的长度超过一页,您可以点击页面底部中央的箭头前往下一页或上一页。
过滤
您可以使用搜索栏旁边的过滤条件图标,选择要在持久性派生表页面上显示的持久性表。例如,您可以按上次构建状态进行过滤,以仅查看出现构建错误的持久化表;也可以按模型进行过滤,以将显示的持久化表限制为特定模型。
如需过滤持久性派生表页面,请按照以下步骤操作:
- 点击过滤条件图标 。
- 从过滤条件菜单中的第一个过滤条件选择器中选择一个过滤条件选项。您可以使用以下选项:
- 在过去:按在指定的小时数和分钟数内未触发的持久性派生表过滤持久性派生表页面。
- 在过去:按在指定的小时数和分钟数内触发的持久性表过滤永久性派生表页面。
- 模型:过滤永久性派生表页面,以显示包含在指定模型中的持久性表。
- 持久性规则:按持久性类型过滤永久性派生表页面。
- 上次尝试状态:按指定的持久性表的状态过滤永久性派生表页面。
- 发布为稳定版视图:一个布尔值,用于过滤持久性派生表页面中的持久性表,并针对发布为稳定版视图的持久性表显示是,针对未发布为稳定版视图的持久性表显示否,具体取决于其
publish_as_db_view
参数值。 - 上次构建时长超过:按构建时长超过指定秒数的持久性表过滤持久性派生表页面。
- 项目:按指定 LookML 项目中的持久化表过滤永久性派生表页面。
- 在第二个过滤条件选择器中,选择要作为过滤依据的值,以过滤持久性派生表页面。对于在过去或在过去选项,请输入小时数或分钟数。对于上次构建时长超过选项,请输入秒数。
- 点击添加过滤条件以添加更多过滤条件,然后针对您添加的每个过滤条件重复执行第 2 步和第 3 步。
- 如需清除过滤条件选择并随时重新开始,请点击全部清除。
- 如需移除任何单个附加过滤条件,请点击要移除的过滤条件的清除选项。
- 如需将所选过滤条件应用于持久性派生表页面,请点击应用。
您会在持久性派生表页面顶部看到已应用的过滤条件。
点击持久性派生表页面上已应用的过滤条件旁边的 X,即可从持久性派生表页面中移除该过滤条件。点击全部清除即可清除所有过滤条件。
了解“永久性派生表”页面
以下部分介绍了持久派生表页面上的信息。
生产环境”和“开发”标签页
如果您是处于开发模式下的 LookML 开发者,则持久派生表表格将包含两个标签页:
默认情况下,系统会选择生产标签页,并显示生产持久表。这些是已部署到实例的生产环境中的持久表;这些持久表可为用户的“探索”查询提供数据。(如果您处于生产模式,或者没有
develop
权限,则持久派生表页面不会显示任何标签页,并且该页面只会显示生产持久表的信息。)开发标签页会显示开发持久表。开发持久表尚未推送到生产环境。
当处于开发模式下的 LookML 开发者所做的更改会影响持久化表中的数据或查询持久化表的方式时,Looker 会创建一个开发持久化表。这些更改会促使 Looker 创建开发持久表,但除非在做出更改后查询持久表,否则 Looker 实际上不会构建持久表。开发标签页可帮助您确定 Looker 已创建哪些开发持久表,以及这些表是否已构建。
如需详细了解 Looker 在什么情况下会创建开发持久表,以及开发持久表在数据库中保留多长时间,请参阅 Looker 中的派生表文档页面。
“资讯一览”部分
一览部分会以直观的方式汇总显示持久性表表格中显示的持久性表的状态。如果您已为表格定义过滤条件,或者已使用页面顶部所有连接旁边的箭头将表格缩小到特定连接,则概览部分会将结果缩小到与持久性表格中显示的内容相符。
您可以点击概览部分顶部的关闭/打开图标来显示或隐藏该部分。
表列
以下各部分介绍了持久性派生表页面上的列。您可以点击选择要显示的列图标,以隐藏或显示部分表格列。如需了解详情,请参阅本页面上的自定义表格部分。
PDT 名称
PDT 名称列会显示持久化表的名称,该名称是在持久化表的 LookML 视图文件的 view
参数中定义的。
PDT 名称列会在持久化表名称下方显示以下附加信息(如果适用):
- 旧 build 表示相应行显示的是有关旧持久化表 build 的信息。如需详细了解此消息,请参阅选项菜单中的 PDT 详细信息对话框。
- 增量表示持久化表是增量 PDT。
- 物化视图表示持久化表是数据库中的物化视图。
上次尝试状态
上次尝试状态列会显示每次尝试构建所列出的每个持久化表的状态:
- 重新生成表示可以查询持久化表,并且正在构建更新后的表。时间戳,用于指示持久化表开始构建的时间。
- 成功表示已成功构建持久化表。
- 正在构建表示正在构建持久化表,在构建完成之前无法查询该表。
- 未构建表示持久化表未构建。
- build 错误表示 build 期间发生了错误。您可以点击构建错误来查看错误的来源,如果您有查看 LookML 的相应权限,还可以前往持久化表的 LookML。如需详细了解如何从持久性派生表页面排查持久性表方面的问题,请参阅本页面的“选项”菜单部分。
上次尝试时间
上次尝试时间列表示上次尝试构建持久化表的时间。
上次成功构建时间
上次成功构建列表示上次成功构建持久化表的时间。
上次构建时长
上次 build 时长列显示了相应持久化表的最新 build 所用的时间(以秒为单位),以及构建持久化表的平均时长(以秒为单位)。
持久性规则
持久性规则列会显示应用于持久化表的持久性类型,如持久化表的 LookML 定义中所指定。它还会指明上次成功构建的持久表(对于触发器类型持久表)的检查时间,或成功构建的持久表(对于持久类型持久表)的到期时间。持久性规则列中显示了两种类型的持久性:
- 保留时间:(时间):针对使用
persist_for
参数保留的持久表显示。 - 对于使用
datagroup_trigger
参数持久化的持久化表,系统会显示触发器:(数据组名称)。您可以点击数据组名称链接,查看datagroup
参数的sql_trigger
值。 - 对于使用
sql_trigger_value
参数持久化的持久化表,系统会显示 Trigger: SQL。您可以点击相应链接查看sql_trigger_value
对账单。 - 物化视图显示为物化视图,它利用数据库的功能将派生表持久保存在数据库中。
项目
项目列表示定义了持久化表的 LookML 项目的名称。
连接
如果从连接选择器中选择所有连接,系统会显示连接列,其中显示已启用持久化表的连接的名称。
型号
模型列显示与持久化表相关联的模型文件的名称。对于 PDT,这通常是包含定义 PDT 的视图文件的模型文件。对于汇总表,这通常是定义汇总表的模型文件。
“选项”菜单
三点状选项菜单
对于排查意外行为特别有用。该页面提供的选项可让您查看表格上次构建的时间、构建所用的时间、最新构建时间与平均构建时间的比较情况,以及触发器是否正常运行。您可以从以下选项中进行选择:- 前往 LookML:如果您拥有查看 LookML 的相应权限,则会打开定义了持久化表的视图文件。
- PDT 活动信息中心:打开 PDT 活动信息中心,该信息中心经过过滤,可显示过去四周内所选持久化表的活动。
- PDT 详细信息:打开一个对话框,其中包含特定持久化表的更多信息和统计信息。如需了解详情,请参阅本页的 PDT 详情模态框部分。
如需获取问题排查提示,请参阅 Looker 中的派生表文档页面上的监控和排查 PDT 问题部分。
PDT 详情模态框
点击持久化表的三点状选项菜单
中的 PDT 详情选项,即可查看 PDT 详情模态框。模态框中的信息取决于持久性表的配置。以下是您可能会看到的信息:
- 表名称:最新成功构建的持久化表的 hash。
- 模型:持久化表的视图文件包含在其中的模型文件的名称。
- 稳定名称:如果持久化表已发布为稳定视图,则为持久化表在数据库中的稳定数据库视图的名称。您可以向 PDT 或汇总表添加
publish_as_db_view: yes
语句,将持久化表发布为数据库中的稳定视图;也可以使用materialized_view: yes
语句将派生表设为具体化视图。 - 连接:启用持久化表的连接的名称。
- 旧 build:一个布尔值,如果 build 是旧的持久化表 build,则显示是;否则显示否。
- 表类型:如果是旧版本,则会显示此字段,并显示表类型。值包括旧版表和替代表。
- 增量 PDT:一个布尔值,如果持久性表是增量 PDT,则显示是;否则显示否。
- 状态:提供上次尝试状态。对于失败的 build,如果用户有权查看 LookML,则提供 SQL 错误消息和指向相应模型 LookML 的链接。
- 依赖项:点击显示依赖关系图按钮,即可显示此持久表所依赖的所有派生表的关系图。图表中的每个节点都对应一个派生表。每个节点的颜色对应于相应派生表的状态,如下所示:
- 上次构建:
- 上次成功构建:最近一次成功构建持久化表的日期和时间。
- 最新 build 持续时间:最近一次持久化表格 build 所用的时间(以秒为单位;如果表格尚未构建,则显示 –)。
- 平均构建时长:构建持久化表的平均时长(以秒为单位;如果尚未构建表,则显示 –)。
- Build Reason:持久化表的构建原因(inception 表示初始构建;如果持久化表是使用数据组持久化的,则为 datagroup triggered;如果持久化表的 SQL 触发值已更改,则为 trigger value change)。
- 增量键:使用增量构建的持久性表的
increment_key
参数。 - 增量偏移量:使用增量构建的持久性表的
increment_offset
参数。 - 增量构建添加/移除的行数:上次增量构建表时添加到表中的行数或从表中移除的行数(如果表的持久性策略上次触发增量时未添加或移除任何行,则显示 –)。
- 上次尝试的 SQL:用于查询数据库以创建表的上一个 build 的 SQL。
- 持久性规则:
- 类型:表使用的持久性类型。如需了解可能的值,请参阅此页面上的“持久性规则”列部分。
- 保留时间:对于保留类型的持久化表,此值为保留时长。不适用于 Trigger 类型的持久表。
- 数据组:对于数据组触发的持久表,提供数据组的名称。
- SQL 代码块:对于数据组和 SQL 触发器持久表,代码块将显示触发器的 SQL 语句。对于数据组触发器,这是数据组的
sql_trigger
参数的 SQL。对于 SQL 触发器,这是sql_trigger_value
参数的 SQL。 - 触发器值:对于触发器类型的持久化表,触发持久化表构建的值(对于使用
datagroup_trigger
持久化的已成功构建的持久化表,系统会显示 –;如需查看数据组的最新触发器值,请参阅管理面板中的数据组页面)。 - 上次检查时间:对于持久性 触发器类型表,指上次检查触发器值的时间。
- 过期:持久化表过期时(如果适用;不适用于 datagroup 触发器)。
PDT 活动信息中心
PDT 活动信息中心会显示有关持久化表、其重建和查询的信息。
PDT 活动信息中心默认显示过去四周的活动信息。您可以使用信息中心顶部的过滤条件栏更改显示的时间段。PDT 活动信息中心包含显示以下信息的图块:
- 持久化表的摘要,包括定义持久化表的 LookML 模型和视图的名称、持久化表使用的数据库连接的名称、持久化表的成功和失败构建尝试的总次数,以及失败的构建尝试占总构建尝试次数的百分比。
- 持久化表的最近一次完整重建的日期和时间。
- 如果持久保留的表是增量 PDT,则为 PDT 最近一次增量重建的日期和时间。
- 如果持久化表是增量 PDT,则自最近一次完整重建以来发生的增量重建次数。
- 重建持久化表的平均时间。
- 一种可视化图表,用于显示近期发生的所有创建事件,并按导致这些事件的操作类型进行分组。
- 信息中心时间段内发生的所有持久性表重建的列表,包括每次重建完成的日期、完成每次重建所用的秒数、重建是否为增量构建、导致每次重建的触发器以及持久性表构建的数量。
- 所有失败的重建尝试的列表,包括失败的重建开始的日期和时间、导致失败的错误类型、错误消息和创建失败次数。
- 所有持久性表重建触发事件的列表,包括事件 ID 编号、事件日期、事件类型以及触发事件中包含的数据。
- 所有持久性表重建事件的列表,包括事件 ID 编号、事件日期、事件类型以及重建事件中包含的数据。
- 直接查询某个字段的查询数量,按查询来源和每个查询来源的平均运行时分组。
- 在持久化表上运行的查询总数。
- 所查询的所有持久化表字段的列表,包括定义该字段的 LookML 视图和模型、字段名称、包含该字段的探索运行的名称,以及该字段包含在查询中的次数。
PDT 事件日志探索
Looker 包含一个名为 system_activity
的预构建模型,可用于探索 PDT 事件日志。该日志是数据库连接的临时架构中的一个表,用于跟踪持久化表的触发和构建活动。
您可以通过以下方式访问该模型:在 Persistent Derived Tables(持久性派生表)页面的选项三点状菜单 中点击近期 build 事件和近期触发事件链接,或者在 Looker 管理面板的连接页面中访问。
如需从连接页面访问 PDT 事件日志探索,请针对每个连接从齿轮图标下拉菜单
中选择显示 PDT 事件日志选项。您可以像使用任何其他 Looker 探索一样探索该模型。从“连接”页面访问时,“PDT 事件日志”探索会针对整个连接进行过滤。从永久性派生表页面访问时,PDT 事件日志探索会针对特定持久性表进行过滤。
以下是 PDT 事件日志探索中可用字段的简要指南:
字段 | 说明 |
---|---|
操作 | 描述发生的动作;可能包括再生、丢弃、创建和收割活动。如需详细了解如何查看和了解 PDT 日志操作及其相应操作数据,请参阅了解 PDT 日志操作文档页面。 |
操作数据 | 提供有关操作的更具体详细信息,包括所用的触发器、触发器的值、持久性表的过期时间、重建的原因以及错误消息的文本。如需详细了解如何查看和了解 PDT 日志操作及其相应操作数据,请参阅了解 PDT 日志操作文档页面。 |
连接 | 派生表所在的连接的名称。 |
哈希 | 每个派生表都包含用于创建它的 SQL 的哈希值。 |
ID | 生成持久化表的 Looker 实例的唯一 ID。在许多情况下,只有一个 Looker 实例指向数据库,因此您只会看到一个 ID。不过,如果您有临时实例或类似实例,则可能会看到多个 ID。 |
模型名称 | 生成相应表的模型名称。 |
发生日期 | 相应事件发生的日期和时间。 |
发生 UTC 显示日期 | 相应事件发生的日期和时间(以世界协调时间 [UTC] 为准)。 |
序列 | 持久化表构建中的一个步骤编号。 |
短哈希 | 用于创建派生表的 SQL 的截断版哈希。 |
表名称 | 持久化表的完整名称,包括表类型前缀、哈希和视图名称。 |
Tid | 交易 ID。 |
视图名称 | 派生表的视图名称。 |