管理设置 - 永久性派生表

Looker 永久派生表管理页面会显示 Looker 实例的永久表(包括永久派生表汇总表)的状态。

永久派生表管理页面会显示多项管理功能,可帮助您跟踪和排查永久表行为问题。如需了解如何排查持久化表的问题,请参阅 Looker 中的派生表文档页面。

Looker 管理员和拥有 see_pdts 权限的用户可以访问永久派生表页面。

如需打开永久派生表页面,请按以下步骤操作:

  1. 点击 Looker 的主菜单图标 ,然后选择管理(如果管理菜单尚未显示)。(如果您位于 Looker 主菜单探索开发部分,则可能需要点击返回箭头才能看到管理菜单。)
  2. 管理菜单中,选择永久派生表

永久性派生表页面仅显示为 PDT 启用的连接,并且仅显示符合以下条件的永久表:

  • 持久表是在生产环境中的视图文件中定义的,除非您处于开发模式,在这种情况下,您可以使用开发标签页查看持久表的开发版本。
  • 持久化表是已正确配置的模型的一部分。
  • 持久表是您有数据访问权限的模型的一部分。

本页中的信息基于内部 PDT 事件日志,如本页的 PDT 事件日志探索部分所述。

自定义表格

默认情况下,“永久性派生表”页面最多会显示 25 个永久性表,并会为您在 Looker 实例上拥有数据访问权限的所有连接加载永久性表。您可以通过以下几种方式更改表格中显示的数据:

  1. 如需仅查看特定连接中的永久性表,请点击所有连接旁边的箭头,然后选择特定连接的名称。该选择器仅会显示已为 PDT 启用且您有数据访问权限的关联。
  2. 在搜索框中输入关键字,以将永久性表列表缩小到名称包含该关键字的永久性表。表格中会显示保留的表格,其中匹配的搜索字词会以粗体显示。点击搜索栏中的 X 可清除搜索查询字词。
  3. 点击过滤条件图标,为表定义过滤条件
  4. 点击关闭/打开图标可显示或隐藏资讯一览部分。
  5. 点击某个列的名称,即可按该列对表格进行排序。再次点击列名称可将排序顺序倒转。
  6. 点击选择要显示的列图标,即可隐藏或显示表格中的列。
  7. 使用显示选择器选择单个页面上显示的结果数量。如果表格超出单页显示范围,您可以点击页面底部中间的箭头,前往下一页或上一页。

过滤

您可以使用搜索栏旁边的过滤条件图标,选择要在永久派生表页面上显示哪些永久表。例如,您可以按上次构建状态过滤,以仅查看出现构建错误的永久性表,也可以按模型过滤,以限制显示给特定模型的永久性表。

如需过滤永久派生表页面,请按以下步骤操作:

  1. 点击过滤器图标
  2. 从过滤器菜单中的第一个过滤条件选择器中选择一个过滤条件选项。您可以使用以下选项:
    • 在过去未触发:按在指定时数和分钟数内未触发的永久性派生表过滤永久性派生表页面。
    • 在过去触发:按在指定时长内触发的永久性表过滤永久性派生表页面。
    • 模型:在永久性派生表页面中过滤出包含在指定模型中的永久性表。
    • 持久性规则:按持久性类型过滤永久性派生表页面。
    • 上次尝试状态:按指定的永久表状态过滤永久性派生表页面。
    • 已发布为稳定版视图:一个布尔值,用于过滤永久派生表页面中的永久表,并根据其 publish_as_db_view 参数值,针对已发布为稳定版视图的永久表显示 Yes,针对未发布为稳定版视图的永久表显示 No
    • 上次构建时长超过:按构建时长超过指定秒数的永久性派生表过滤永久性派生表页面。
    • 项目:按指定 LookML 项目中的永久性表过滤永久性派生表页面。
  3. 在第二个过滤条件选择器中,选择要用于过滤永久派生表页面的值。对于在过去未触发在过去触发选项,请输入小时数或分钟数。对于上次构建时长超过选项,请输入秒数。
  4. 点击添加过滤条件以添加更多过滤条件,然后针对要添加的每个过滤条件重复第 2 步和第 3 步。
    • 如需清除所选过滤条件并随时重新开始,请点击全部清除
    • 如需移除任何单个附加过滤条件,请点击要移除的过滤条件的清除选项。
  5. 如需将所选过滤条件应用于永久派生表页面,请点击应用

您会在永久派生表页面顶部看到已应用的过滤条件。

永久派生表页面上,点击已应用的过滤条件旁边的 X,即可从永久派生表页面中移除该过滤条件。点击全部清除可清除所有过滤条件。

了解“永久性派生表”页面

以下部分介绍了永久派生表页面上的信息。

“生产”和“开发”标签页

如果您是处于开发模式的 LookML 开发者,则“永久性派生表”表将包含两个标签页:

  • 默认情况下,系统会选择生产环境标签页,并显示生产环境中持久化表。这些是已部署到实例生产环境中的永久表;这些永久表为用户的“探索”查询提供数据。(如果您处于正式版模式或没有 develop 权限,则“永久派生表”页面不会显示任何标签页,并且该页面仅会显示正式版永久表的信息。)

  • 开发标签页会显示开发持久化表。开发环境中持久化表尚未推送到生产环境。

当处于开发模式的 LookML 开发者进行更改,而这些更改会影响持久化表中的数据或持久化表的查询方式时,Looker 会创建开发持久化表。这些更改会促使 Looker 创建开发持久表,但除非在进行更改后查询持久表,否则 Looker 实际上不会构建持久表。开发标签页可帮助您确定 Looker 创建了哪些开发持久表,以及这些表是否已构建。

如需详细了解促使 Looker 创建开发持久表的因素以及开发持久表在数据库中保留的时长,请参阅 Looker 中的派生表文档页面。

“资讯一览”部分

一目了然部分会以直观的方式汇总“持久化表”表中显示的持久化表的状态。如果您为表格定义了过滤条件,或者使用了页面顶部所有关联旁边的箭头将表格缩小到特定关联,资讯一览部分将缩小结果,以与保留的表格中显示的内容相匹配。

点击该部分顶部的关闭/打开图标,即可显示或隐藏资讯一览部分。

表列

以下部分介绍了永久派生表页面上的表格列。您可以点击选择要显示的列图标,隐藏或显示某些表格列。如需了解详情,请参阅本页面上的自定义表格部分。

PDT 名称

PDT 名称列会显示持久化表的名称,该名称在持久化表的 LookML 视图文件的 view 参数中定义。

PDT 名称列会在永久性表名称下显示此类附加信息(如果适用):

  • 旧 build 表示该行显示的是有关旧持久化表 build 的信息。如需详细了解此消息,请参阅 Options 菜单中的 PDT Details 对话框。
  • 增量表示永久性表是增量 PDT
  • 具体化视图表示持久化表是数据库上的具体化视图

上次尝试状态

上次尝试状态列会显示上次尝试构建每个列出的永久表的状态:

  • 正在重新生成表示可以查询已持久化表,并且正在构建更新后的表。一个时间戳,表示持久化表的开始构建时间。
  • 成功表示已成功构建永久表。
  • 正在构建表示正在构建永久表,在构建完成之前无法进行查询。
  • 未构建表示未构建永久表。
  • 构建错误表示构建过程中发生了错误。您可以点击构建错误查看错误的来源,如果您拥有查看 LookML 的适当权限,还可以前往持久化表的 LookML。如需详细了解如何从永久派生表页面排查永久表问题,请参阅本页上的“选项”菜单部分。

上次尝试时间

上次尝试时间列表示上次尝试构建永久表的时间。

上次成功构建时间

上次成功构建时间列表示上次成功构建永久表的时间。

上次构建时长

上次构建时长列会显示该永久性表的最新 build 所用时间(以秒为单位),以及构建该永久性表的平均时间(以秒为单位)。

持久性规则

持久化规则列会显示应用于持久化表的持久化类型,如持久化表的 LookML 定义中所指定。它还会指明上次检查成功构建的永久表的时间(对于触发器类型的永久表),或者成功构建的永久表的到期时间(对于永久保留类型的永久表)。“持久化规则”列中会显示两种类型的持久化:

  • 对于使用 persist_for 参数保留的表,系统会显示保留时长:(时间)
  • 对于使用 datagroup_trigger 参数持久化的表,系统会显示 Trigger: (datagroup name)。您可以点击数据集组名称链接,查看 datagroup 参数的 sql_trigger 值。
  • 对于使用 sql_trigger_value 参数保留的永久性表,系统会显示 Trigger: SQL。您可以点击链接查看 sql_trigger_value 语句。
  • 系统会针对物化视图显示物化视图,这种视图会利用数据库的功能在数据库中保留派生表。

项目

Project(项目)列表示定义永久性表的 LookML 项目的名称。

连接

如果从连接选择中选择 All Connections(所有连接),系统会显示 Connection(连接)列,并显示启用了永久性表的连接的名称。

型号

“模型”列会显示与持久化表关联的模型文件的名称。对于 PDT,这通常是包含定义 PDT 的视图文件的模型文件。对于汇总表,这通常是定义汇总表的模型文件。

“选项”菜单

三点状 Options 菜单 特别适合用于排查意外行为。借助该页面提供的选项,您可以查看表的上次构建时间、构建所用时间、最新构建时间与平均构建时间的对比情况,以及触发器是否正常运行。您可以选择以下选项:

  • 前往 LookML:如果您拥有查看 LookML 的适当权限,则会打开用于定义永久表的视图文件。
  • PDT 活动信息中心:打开 PDT 活动信息中心,该信息中心会过滤出所选持久化表在过去四周内的活动。
  • PDT 详细信息:打开一个对话框,其中包含特定持久化表的更多信息和统计数据。如需了解详情,请参阅本页的 PDT 详情模态部分。

如需获取问题排查提示,请参阅 Looker 中的派生表文档页面中的“监控和排查 PDT 问题”部分

PDT 详情模态窗口

点击保留表格的三点状 Options 菜单 中的 PDT Details 选项,以查看 PDT 详情模态。

模态窗口中的信息取决于持久化表的配置。您可能会看到以下信息:

  • 表名称:最近一次成功构建的永久表的哈希值
  • 模型:包含持久化表的视图文件的模型文件的名称。
  • 稳定名称:持久化表在数据库中的稳定数据库视图的名称(如果持久化表已发布为稳定视图)。您可以通过以下方式将持久化表发布为数据库中的稳定视图:将 publish_as_db_view: yes 语句添加到 PDT 或汇总表,或使用 materialized_view: yes 语句将派生表转换为具体化视图。
  • 连接:启用了永久性表的连接的名称。
  • 旧 build:一个布尔值,如果 build 是旧的持久表 build,则显示 Yes;如果不是,则显示 No
    • 表类型:对于旧版 build,此字段会显示,并显示表类型。值包括旧版表替代表
  • 增量 PDT:如果某个永久表是增量 PDT,则显示 Yes;如果不是,则显示 No。这是一个布尔值。
  • 状态:提供上次尝试状态。对于失败的 build,如果用户具有查看 LookML 的适当权限,则会提供 SQL 错误消息和指向模型的 LookML 的链接。
  • 依赖项:点击显示依赖关系图按钮,即可显示此永久性表依赖的所有派生表的关系图。该图中的每个节点都对应于一个派生表。每个节点的颜色都对应于派生表的状态,如下所示:
    • 绿色节点表示已成功构建的永久表。
    • 黄色节点表示正在构建或递增的永久表。
    • 红色节点表示构建失败的永久表。
    • 灰色节点表示尚未构建的永久表。
    • 白色节点表示临时派生表,Looker 不会构建此类表。
  • 上次 build
    • 最近一次成功构建时间:最近一次成功构建永久性表的日期和时间。
    • 最新 build 时长:最近一次持久化表 build 所用时长(以秒为单位;如果表尚未构建,则显示 )。
    • 平均构建时长:构建永久表的平均用时(以秒为单位;如果表尚未构建,则显示 )。
    • 构建原因:构建永久性表的原因(如果是初始构建,则为 inception;如果永久性表是使用数据集进行持久化的,则为 datagroup triggered;如果永久性表的 SQL 触发器值发生了更改,则为 trigger value change)。
    • 增量键:适用于使用增量 build 的永久表的 increment_key 参数。
    • 增量偏移量:适用于使用增量 build 的永久表的 increment_offset 参数。
    • 增量 build 添加/移除的行数:上次递增表时向表中添加或从表中移除的行数(如果表的持久化策略上次触发递增时未添加或移除任何行,则显示 )。
    • 上次尝试的 SQL:用于查询数据库以创建表的上一个 build 的 SQL。
  • 持久性规则
    • Type:表所使用的持久性类型。如需了解可能的值,请参阅此页面上的持久化规则部分。
    • 保留时长:对于保留类型的永久性表,保留时长值。不适用于 Trigger 类型的永久表。
    • Datagroup:对于基于数据集群组触发器的持久化表,提供数据集群组的名称。
    • SQL 代码块:对于数据集群和 SQL 触发器持久化表,代码块将显示触发器的 SQL 语句。对于数据集群触发器,这是数据集群的 sql_trigger 参数的 SQL。对于 SQL 触发器,这是 sql_trigger_value 参数的 SQL。
    • 触发器值:对于触发器类型的永久性表,触发永久性表构建的值(对于使用 datagroup_trigger 持久化的成功构建的永久性表,显示 ;如需查看数据集群的最新触发器值,请参阅管理面板中的数据集群页面)。
    • 上次检查时间:对于触发器类型的永久表,上次检查触发器值的时间。
    • 到期时间:持久化表的到期时间(如果适用,不适用于数据集群组触发器)。

PDT 活动信息中心

PDT 活动信息中心会显示有关持久化表、其重新构建和查询的信息。

PDT 活动信息中心默认显示过去四周的活动信息。您可以使用信息中心顶部的过滤条件栏来更改显示的时间段。PDT 活动信息中心包含显示以下信息的功能块:

  • 持久化表的摘要,其中包含定义持久化表的 LookML 模型和视图的名称、持久化表使用的 connection 数据库的名称、持久化表成功和失败的 build 尝试次数的总数,以及失败的 build 尝试次数占总 build 尝试次数的百分比。
  • 持久化表最近一次完整重建的日期和时间。
  • 如果持久化表是增量 PDT,则为该 PDT 最近一次增量重新构建的日期和时间。
  • 如果持久化表是增量 PDT,则表示自最近一次完整重建以来发生的增量重建次数。
  • 重建持久化表所需的平均时间。
  • 一个可视化图表,显示最近发生的所有创建事件,按导致事件的操作类型的摘要进行分组。
  • 信息中心所涵盖时间段内发生的所有持久表重新构建的列表,其中包括每次重新构建的完成日期、每次重新构建所用的时间(以秒为单位)、重新构建是否为增量构建、导致每次重新构建的触发器,以及持久表构建的数量。
  • 所有失败的重新构建尝试的列表,包括失败的重新构建开始的日期和时间、导致失败的错误类型、错误消息和创建失败的次数。
  • 所有持久表重新构建触发器事件的列表,包括事件 ID 编号、事件日期、事件类型以及触发器事件包含的数据。
  • 所有持久表重新构建事件的列表,包括事件 ID 编号、事件日期、事件类型以及重新构建事件包含的数据。
  • 直接查询字段的查询数量,按查询来源分组,以及每个查询来源的平均运行时。
  • 对持久化表运行的查询总数。
  • 查询的所有持久化表字段的列表,包括定义该字段的 LookML 视图和模型、字段名称、包含该字段的“探索”运行的名称,以及该字段在查询中出现的次数。

PDT 事件日志探索

Looker 包含一个名为 system_activity 的预构建模型,可用于探索 PDT 事件日志。PDT 事件日志是数据库连接的临时架构中的一个表,用于跟踪持久化表的触发器和构建活动。

您可以通过 Persistent Derived Tables 页面 Options 三点状菜单 中的 Recent Build EventsRecent Trigger Events 链接访问该模型,也可以通过 Looker Admin 面板中的 Connections 页面访问该模型。

如需从连接页面访问 PDT 事件日志“探索”,请为每个连接从齿轮图标下拉菜单 中选择显示 PDT 事件日志选项。

您可以像探索任何其他 Looker 探索一样探索该模型。从连接页面访问时,系统会针对整个连接过滤 PDT 事件日志探索。从永久性派生表页面访问时,系统会针对特定永久性表过滤 PDT 事件日志“探索”。

以下是 PDT 事件日志“探索”部分中可用字段的简要指南:

字段说明
操作描述所发生的操作;这可能包括重新生成、丢弃、创建和收割活动。

如需详细了解如何查看和了解 PDT 日志操作及其对应的操作数据,请参阅了解 PDT 日志操作文档页面。
操作数据提供有关操作的更具体详细信息,包括所使用的触发器、触发器的值、永久表的到期时间、重新构建的原因以及错误消息的文本。

如需详细了解如何查看和了解 PDT 日志操作及其对应的操作数据,请参阅了解 PDT 日志操作文档页面。
连接派生表所在连接的名称。
哈希每个派生表都包含用于创建它的 SQL 的哈希值。
ID生成永久表的 Looker 实例的唯一 ID。在许多情况下,指向数据库的 Looker 实例只有一个,因此您只会看到一个 ID。不过,如果您有预演版实例或类似实例,则可能会看到多个 ID。
模型名称用于生成表格的模型的名称。
发生日期事件发生的日期和时间。
Occur Utc Display Date事件发生的日期和时间(以世界协调时间 [UTC] 为准)。
序列持久化表 build 中的步骤编号。
短哈希用于创建派生表而编写的 SQL 的经过截断的哈希版本。
表名称持久化表的完整名称,包括表类型前缀、哈希和视图名称。
Tid交易 ID。
视图名称派生表的视图名称。