应用程序性能评估 | Qlik Cloud帮助
跳到主要内容 跳到补充内容

应用程序性能评估

性能评估允许您在开发应用程序时评估其性能。性能评估提供清晰、可操作的指标,例如公共工作表和对象的响应时间。您可以使用这些见解来识别性能瓶颈,并比较应用程序版本之间的指标。

谁可以使用性能评估

性能评估专为希望衡量和提高应用程序性能的应用程序开发人员而设计。

要运行性能评估,您必须具有以下角色之一:

  • 租户管理员

  • 空间所有者

  • 具有以下角色之一的空间成员:

    • 可编辑

    • 可编辑应用程序中的数据

    • 可管理

    • 可操作(在托管空间中)

信息注释
  • 所有用户(包括租户管理员)必须至少具有该空间的查看权限,才能评估其中的应用程序。

  • 租户管理员始终可以查看所有应用程序的性能评估结果,即使他们没有该空间或应用程序的访问权限。

使用性能评估

您可以评估 Qlik Cloud 中任何 Qlik Sense 应用程序的性能。使用性能评估来:

  • 衡量您的应用程序的性能。

  • 检查对应用程序的更改是否影响了性能。

  • 获取有关如何优化应用程序性能的建议。

性能评估分析应用程序中所有公共工作表和对象的响应时间。仅包含已发布的工作表,因此开发中的工作表通常不会影响结果——但是,评估还会评估正在使用哪些字段,这可能会导致对未发布工作表的分析。

使用结果来识别可能需要优化的对象。请记住,结果旨在作为一般指导,可能无法反映实时生产环境中的确切性能。

注意事项

  • 性能评估在基于云的环境中运行,因此响应时间可能会因延迟和带宽波动而有所不同。

  • 为确保更一致的比较,请在时间上紧密地运行评估。

  • 如果在不同大小的分析引擎上运行评估,结果可能会受到影响。

有关性能因素的更多信息,请参阅 优化应用程序性能

用于应用程序评估的引擎

当您在 Qlik Cloud 中运行应用程序性能评估时,评估将在专用引擎上运行。

默认情况下,评估使用 20 GB 引擎 (Standard-20)。如果您的许可证包含大型应用程序支持,当应用程序需要更多内存且空间配置为大型应用程序时,评估可能会在更大的引擎(Large-40 到 Large-200)上运行。

评估中使用的引擎大小与真实用户打开应用程序时使用的引擎大小相同。这使您可以在预期的运行时环境中观察性能。

更大的引擎通常会缩短响应时间,但改进也可能来自应用程序设计或优化。比较不同引擎大小的结果可以帮助您区分容量影响和应用程序调整。

提示注释

管理员可以手动将引擎分配给应用程序,以测试不同引擎大小的性能。有关详细信息,请参阅 分配引擎以提高应用程序性能

引擎大小

  • Standard-20:默认引擎 (20 GB)

  • Large-40Large-60、… Large-200:更大的引擎(数字表示内存的 GB 数)

引擎规格
引擎 内存 最高核心数*
Large-40 40 GB 10 个核心
Large-60 60 GB 14 个核心
Large-80 80 GB 20 个核心
Large-120 120 GB 30 个核心
Large-160 160 GB 40 个核心
Large-200 200 GB 50 个核心

* “最高核心数”表示根据需要配置资源——尽管并非所有计算都可以同时使用所有核心。

容量使用情况

  • 在大型应用程序上运行性能评估会使用部分大型应用程序重新加载容量,即使未重新加载该应用程序。Qlik Cloud 会临时配置一个更大的引擎来执行评估,

  • 直接打开应用程序以测试性能会消耗该会话的大型应用程序消耗容量,就像正常使用一样。

有关大型应用程序容量的更多信息,请参阅 大型应用程序支持

在应用程序上运行性能评估

要运行性能评估,您必须具有该应用程序的重新加载权限。您可以从以下位置运行性能评估:

  • 您的活动中心

  • 应用程序详细信息

从您的活动中心运行性能评估

  1. 在您的活动中心,单击要评估的应用程序上的 更多

  2. 选择工具 > 性能评估

  3. 单击立即评估

    评估完成后,您将收到通知。

从应用程序详细信息运行性能评估

  1. 在您的活动中心,单击要评估的应用程序上的 更多

  2. 选择 信息图标 详细信息,然后单击 性能评估图标 性能评估

  3. 单击立即评估

    评估完成后,您将收到通知。

从应用程序运行性能评估

  1. 在您的应用程序中,单击应用程序名称以打开详细信息

  2. 选择工具 > 性能评估

  3. 单击立即评估

    评估完成后,您将收到通知。

查看评估结果

根据您是要查看单个性能评估还是比较两个性能评估,结果表会有所不同。

信息注释

应用程序性能评估结果保留 90 天。

查看单个性能评估

  1. 要查看性能评估,请单击应用程序上的 更多

  2. 选择 信息图标 详细信息,然后单击 性能评估图标 性能评估。所有评估都列在性能评估表中。

    提示注释您也可以通过单击通知中的查看结果转到结果。
  3. 单击要查看的评估上的查看

    评估概览。

    显示多个性能评估运行的性能评估详细信息窗口。
  4. 结果窗口提供有关性能评估结果的信息。

    提示注释有关特定指标的详细信息,请参阅 性能评估信息

    评估信息选项卡。

    显示信息选项卡的性能评估详细信息窗口。
  5. 选择结果选项卡以查看更具体的性能信息。

    评估结果选项卡。

    显示信息选项卡的性能评估详细信息窗口。
  6. 单击 向下箭头 以显示每行的详细信息。您也可以单击每个工作表的 向下箭头 以显示加载时间最长的对象。

  7. 单击 新选项卡图标 以打开包含该对象的应用程序。特定对象在工作表上突出显示。

  8. 选择建议选项卡以查看有关提高应用程序性能的建议。有关每项建议的详细信息,请参阅 应用程序性能建议

    建议选项卡。

    显示建议选项卡的性能评估详细信息窗口。

比较性能评估

  1. 要查看性能评估,请单击应用程序上的 更多

  2. 选择 信息图标 详细信息,然后单击 性能评估图标 性能评估。所有评估都列在性能评估表中。

  3. 选择要查看的两个评估,然后单击比较

    比较两个评估。

    选择了两行并显示比较按钮的性能评估表。
  4. 评估结果在窗口中打开。有关特定指标的详细信息,请参阅 性能评估信息 信息选项卡显示所选性能评估的指标,以及它们之间的差异。

    评估比较信息。

    选择了两行并显示比较按钮的性能评估表。
  5. 选择结果选项卡以查看更具体的性能信息。对于每一行,将显示绝对和相对变化。

    您可以对绝对变化和相对变化列进行排序。单击列标题以按升序或降序排序。

    评估比较结果。

    选择了两行并显示比较按钮的性能评估表。
  6. 单击 向下箭头 以显示每行的详细信息。

信息注释比较两个评估时,仅当差异大到足以显示性能下降或提高时,才会突出显示差异。

性能评估信息

这些指标要么从应用程序元数据中获取,要么在性能评估期间测量。

信息注释展开 更多 更多菜单以下载所选评估的日志文件。

信息选项卡

信息选项卡显示所选版本的基本应用程序信息。

分析引擎

  • 显示评估期间使用的分析引擎。

    信息注释如果启用了大型应用程序支持,则可能会使用更大的引擎,而不是 Standard-20 引擎。

状态

  • 显示性能评估的状态。

    • 准备好进行审核 - 性能评估已成功完成。

    • 警告 - 性能评估已完成,但某些结果缺失或不准确。

    • 评估失败 - 性能评估未成功完成,结果缺失或不准确。

应用程序大小

  • 指标来源:应用程序元数据

  • 显示在没有初始选择的情况下,内存中应用程序数据模型的总大小。

行数

  • 指标来源:应用程序元数据

  • 显示应用程序数据模型中表包含的总行数。

应用程序中的公共工作表

  • 指标来源:应用程序元数据

  • 显示应用程序中的公共工作表总数。

应用程序中的公共对象

  • 指标来源:应用程序元数据

  • 显示应用程序中的公共对象总数。

    信息注释在性能评估结果中,公共工作表不计为公共对象。

未评估

  • 指标来源:已测量

  • 列出所有无法完全评估的对象。典型原因可能包括对象具有未满足的计算条件,或者不支持评估该对象类型。例如,应用程序评估器不知道客户开发的扩展行为,可能无法正确评估。

警告

  • 指标来源:已测量

  • 列出存在与应用程序开发相关的问题的对象,这些问题可能需要解决。例如,在工作表中起作用但具有错误代码的对象(例如没有度量或维度的对象)列在警告下。如果对象发回的数据页面超过指定大小,也会在此处列出,并显示有效负载过大

严重错误

  • 指标来源:已测量

  • 列出阻止评估完成的错误,以及租户或应用程序配额。这可能包括应用程序评估器错误或其他阻止完成的基础设施问题,例如是否超出了应用程序评估的配额,或者应用程序是否超过了 20 GB 的应用程序评估大小限制且无法打开。

结果选项卡

结果选项卡提供有关性能评估的更具体信息。

表现出缓存问题的对象

  • 指标来源:已测量

  • 列出未有效缓存的对象。这是通过加载每个对象两次来确定的。在已经加载过一次对象之后,可以预期更快的响应时间,因为结果集应该已输入到缓存中。可以通过调整数据模型或表达式来进行潜在的改进。有关更多信息,请参阅数据模型最佳实践在可视化中使用表达式

  • 有关一般应用程序优化的更多信息,请参阅 优化应用程序性能

单线程对象

  • 指标来源:已测量

  • 此部分包含其性能指标表明在加载期间主要进行单线程处理的对象。如果某个对象出现在此部分中,并且认为用户的响应时间过长,则应检查由该对象中的任何表达式产生的查询是否存在瓶颈。可以通过调整数据模型或表达式来进行潜在的改进。

  • 有关单线程性能的更多信息,请参阅 尽可能避免在聚合表内部使用来自不同表的字段。

超出内存限制的对象

  • 指标来源:已测量

  • 此部分包含已达到内存限制的对象,并带有相应的错误代码。这些可能包括达到引擎对象沙盒限制、超出引擎总内存或达到相关内存边界的对象。

应用程序打开时间

  • 指标来源:已测量

  • 此部分概述了打开应用程序过程中的每个步骤及其所需的时间。

按初始加载时间排序的公共工作表

  • 指标来源:已测量

  • 每个工作表的响应时间测量。这些测量值是从第一次遍历应用程序并逐个请求每个工作表时提取的。此部分中包含的值表示每个工作表的最坏情况加载时间。对于每个工作表,可以通过单击行右侧的箭头图标来查看其中包含的前 5 个最慢的对象。这使您可以快速了解加载工作表时时间花费在哪里。

  • 如果评估因超时而停止,只要至少完成了一个工作表评估,工作表列表就可用。您可以使用此列表来确定首先调查哪些工作表或对象。

缓存的工作表加载时间

  • 指标来源:已测量

  • 每个工作表的响应时间测量。当第一次请求所有工作表时,它们通常应该已被缓存。这些测量值是从第二次遍历应用程序并逐个请求每个工作表时提取的。同样在这里,您可以通过使用右侧的按钮展开行来检索基于对象的时间花费细分。

初始对象加载时间

  • 指标来源:已测量

  • 每个对象的响应时间测量。这些测量值是从第一次遍历应用程序并逐个请求每个对象时提取的。此部分中包含的值表示每个对象的最坏情况加载时间。

  • 例如,您可以通过使用主条目来改善缓存的使用。有关更多信息,请参阅 用于表达式的主条目或变量

缓存的对象加载时间

  • 指标来源:已测量

  • 每个对象的响应时间测量。当第一次请求所有对象时,它们通常应该已被缓存。这些测量值是从第二次遍历应用程序并逐个请求每个对象时提取的。

每个表的内存分配

  • 指标来源:应用程序元数据

  • 数据模型中包含的表及其大小的列表。在尝试最小化数据模型的大小时,此部分将很有用,这会转化为提高的响应能力。

  • 您可以在加载脚本中删除未在任何表达式中使用的字段和表,以提高速度和资源使用率。有关更多信息,请参阅 数据模型性能

每个字段的内存分配

  • 指标来源:应用程序元数据

  • 数据模型中包含的字段及其大小的列表。在尝试最小化数据模型的大小时,此部分将很有用,这会转化为提高的响应能力。

  • 您可以在加载脚本中删除未在任何表达式中使用的字段和表,以提高速度和资源使用率。有关更多信息,请参阅 数据模型性能

应用程序性能建议

提供建议以帮助您优化应用程序性能。在建议视图中,建议按区域分组,例如应用程序设计和数据加载。每个建议都显示为一张卡片,其中包含标题、描述以及打开受影响的对象、工作表、应用程序或 数据加载编辑器 的操作。

建议提供一般指导。超过建议的阈值并不一定意味着应用程序不正确或质量差,但它可以指示需要审查的区域。例如,大量的对象可能会影响性能,因此如果您在使用应用程序时遇到问题,请使用这些建议作为调查的起点。

添加图表计算条件

对于超时的图表

当图表在计算期间超时时,会出现此建议。使用建议卡片上的操作在工作表上打开受影响的对象,然后查看图表在用户进行选择之前尝试计算多少数据。

要提高性能:

  • 添加计算条件,以便图表仅在用户进行减少结果集的选择后才呈现。

  • 在显示详细结果之前,使用高影响力的过滤器,例如日期、区域或产品。

  • 如果用户仅在探索后才需要详细信息,请从更高级别的聚合或向下钻取方法开始。

  • 再次运行性能评估以确认超时已解决。

有关计算条件的更多信息,请参阅 优化应用程序性能

对于具有许多维度的图表

当图表具有许多维度且响应缓慢时,会出现此建议。建议卡片会打开该对象,以便您可以查看维度设置和默认显示的详细信息量。

要提高性能:

  • 添加计算条件,以便仅在缩小数据范围后才计算图表。

  • 减少一次显示的维度数量,尤其是在宽表或高度详细的表中。

  • 当用户不需要将所有维度放在一起时,将一个复杂的图表拆分为较小的图表或单独的工作表。

  • 在初始视图中仅保留分析所需的字段。

有关可视化设计最佳实践的更多信息,请参阅 优化应用程序性能

缩短图表标题、副标题或脚注

当图表标题、副标题或脚注异常长时,会出现此建议。当加载许多对象时,长标题会增加开销,尤其是在大型应用程序中。

要提高性能:

  • 保持图表标题简短,并专注于图表回答的问题。通常建议的准则是最大长度为 256 个字符。

  • 将解释性文本、假设或说明从标题移至支持性工作表文本或相关文档中。

  • 对相似的图表使用一致的命名,以便用户无需冗长的标题即可理解它们。

如果几个图表都有长标题,请整体审查工作表设计,并在可能的情况下简化措辞。

缩短工作表描述

当工作表描述异常长时,会出现此建议。描述对于上下文很有用,但非常长的描述会增加不必要的开销。

要提高性能:

  • 将描述保持为工作表用途的简短摘要。通常建议的准则是最大长度为 1000 个字符。

  • 将分步说明或广泛的业务上下文移至工作表文本、注释或相关帮助内容中。

  • 审查是否仍然需要该描述,特别是对于仅用于开发的工作表。

减少应用程序中的图表数量

当应用程序在已发布的工作表上包含大量图表时,会出现此建议。使用建议操作打开应用程序,并查看用户实际需要哪些工作表和对象。

要提高性能:

  • 删除或重新设计重复相同分析的图表。

  • 将开发或故障排除内容保留在私有工作表上,以便不将其包含在已发布工作表的评估中。

  • 将相关的见解整合到更少、更清晰的图表中,而不是许多小的可视化中。

  • 定期审查较旧的工作表和未发布的内容,以防止应用程序不必要地增长。

有关一般设计指导,请参阅 优化应用程序性能

减少工作表上的图表数量

当一个工作表包含许多图表时,会出现此建议。建议卡片会打开受影响的工作表,以便您可以查看当用户登陆该工作表或进行选择时计算的内容。

要提高性能:

  • 将拥挤的工作表拆分为较小的、以任务为中心的工作表。

  • 将最重要的图表保留在工作表上,并删除用户很少需要的次要分析。

  • 使用使用选择或向下钻取的单个图表替换相似图表组。

  • 检查是否可以将大表隐藏在选择后面或移至单独的分析工作表。

将计算维度移至加载脚本

当计算维度导致响应时间变慢时,会出现此建议。使用建议操作打开 数据加载编辑器,并查看是否可以在重新加载期间而不是在查询时预先生成维度逻辑。

要提高性能:

  • 在加载脚本中为基于稳定业务规则的维度创建字段。

  • 当输出不需要随每次选择动态更改时,使用可重用字段替换重复的图表表达式。

  • 重新加载应用程序并更新受影响的图表以使用新字段。

  • 再次运行评估以比较更新后的响应时间。

有关数据模型设计的更多信息,请参阅 数据模型性能

简化区域权限表

当区域权限处理导致加载缓慢时,会出现此建议。从建议卡片打开 数据加载编辑器,并查看在区域权限中使用的脚本逻辑。

要提高性能:

  • 通过仅包含所需的用户、组和减少字段,使区域权限表尽可能小。

  • 删除未使用的列,并避免在脚本的区域权限部分内进行复杂的转换。

  • 如果可能,在安全数据到达应用程序加载脚本之前准备好安全数据。

  • 更改后与代表性用户一起测试应用程序,以确认数据减少仍按预期工作。

有关更多信息,请参阅 用 Section Access 管理数据安全

连接表并删除未使用的表

当数据模型包含增加加载时间和内存使用量的不必要的表或字段时,会出现此建议。使用建议操作打开 数据加载编辑器 并查看模型。

要提高性能:

  • 删除未在图表、表达式或安全逻辑中使用的字段和表。

  • 在某些情况下,连接表有助于提高性能。建议连接表的示例情况:

    • 可以将多个事实表合并为一个表。

    • 当计算分布在许多表中时,请考虑连接表,以使相关表彼此更接近,并减少表之间的跳跃。

  • 删除数据转换后不再需要的中间表或临时表。

  • 进行更改后,重新加载应用程序并验证受影响的图表。

有关更多信息,请参阅 数据模型性能

减少图表和工作表的数量

当打开应用程序并初始化用户状态花费太长时间时,会出现此建议。使用建议卡片打开应用程序,并查看作为已发布体验的一部分加载了多少工作表和对象。

要提高性能:

  • 归档、取消发布或删除用户不再需要的工作表。

  • 保持登陆工作表轻量级,以便初始体验不需要大量计算。

  • 将专门的或很少使用的分析移至单独的工作表或应用程序。

  • 审查是否可以用更简单的导航和更小的默认布局替换大型对象组。

减少应用程序中的工作表数量

当应用程序包含许多工作表时,会出现此建议,这会增加打开时间并降低导航效率。使用建议操作打开应用程序,并查看当前用户工作流仍然需要哪些已发布的工作表。

要提高性能:

  • 删除用户不再需要的工作表。

  • 将涵盖相似分析的工作表合并为更少、更清晰的以任务为中心的工作表。

  • 通过将关键见解放在少量主要工作表上,保持默认用户路径的专注。

  • 如果可能,将探索性或不常用的分析移至单独的应用程序。

有关更多信息,请参阅 优化应用程序性能

未使用的字段分析

此建议可帮助您识别加载到应用程序中但未在可视化、表达式或其他活动逻辑中使用的字段。删除未使用的字段可以减少重新加载时间、内存使用量和模型复杂性。

信息注释下游使用情况检测是尽力而为的,可能无法识别每个依赖项。在进行更改之前,请验证对应用程序及其数据的潜在下游影响。
信息注释关键字段永远不会包含在建议删除的字段列表中,也不会包含在用于删除未使用字段的自动生成的脚本中。

要应用该建议:

  • 通过单击分析运行未使用的字段分析。

  • 查看报告为未使用的字段,并确认未来开发、书签或安全规则不需要它们。

  • 如果生成了脚本并且您对其感到满意,请单击复制到剪贴板以复制它。转到 数据加载编辑器,并将内容粘贴到加载脚本的末尾。然后重新加载应用程序。

  • 重新加载后,测试重要的图表和工作表,以确认应用程序仍按预期运行。

有关更多信息,请参阅 数据模型性能

删除未使用的字段

当加载某些字段花费的时间比预期的长时,会出现此建议。

考虑运行未使用的字段分析,以识别可以删除以优化性能的字段。在建议选项卡中,展开未使用的字段分析,然后单击分析

有关未使用的字段分析的更多信息,请参阅 未使用的字段分析

通知首选项

您可以选择在性能评估完成或失败时收到通知。

单击应用程序上的 更多 并选择通知。以下性能评估通知可用:

  • 此应用程序的性能评估已准备好进行审核

  • 此应用程序的性能评估运行失败

限制

  • 仅评估应用程序中的公共工作表,包括其上的所有对象。

  • 处理评估超时

    如果应用程序有许多对象或非常大,性能评估可能会超时。超时并不意味着评估完全失败。即使它提前停止,您仍然可以查看截至该点评估的最慢的工作表和对象。使用此列表来调查性能问题。

    要降低超时的风险:

    • 在运行评估之前,将不相关的工作表设为私有。

    • 对于已发布的应用程序,您可以复制该应用程序并发布包含较少公共工作表的副本。

    超时和内存警告对于复杂的应用程序来说是正常的。它们指示优化、更少的数据或更大的引擎可能会提高性能的区域。

  • 并非所有图表对象都受支持。如果不支持某个对象,则会在结果的未评估部分中提及。

  • 从 2020 年 6 月之前的图表建议创建的图表对象需要手动更新才能受支持。

  • 如果应用程序使用区域权限来减少数据,则评估将使用为当前用户减少的数据执行。这意味着您需要作为有权访问要评估的数据集的用户来运行评估。比较具有不同区域权限的用户的评估结果没有意义。

  • 默认情况(无大型应用程序支持):应用程序性能评估限制为 20 GB 引擎容量。需要更多内存的应用程序将无法通过评估并显示错误消息。

  • 具有大型应用程序支持:如果您购买了大型应用程序支持,则可以使用具有更高容量的引擎评估高达 50 GB 的应用程序。有关支持的应用程序大小的更多信息,请参阅 大型应用程序支持

  • 应用程序性能评估不支持注释表。

本页面有帮助吗?

如果您发现此页面或其内容有任何问题 – 打字错误、遗漏步骤或技术错误 – 请告诉我们!