# 应用程序性能评估

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

## 谁可以使用绩效评估

性能评估专为希望衡量和改进应用程序性能的应用程序开发者而设计。

要运行绩效评估，您必须具备以下角色之一：

* 租户管理员

* 空间所有者

* 具有其中一种角色的空间成员：

  * 可编辑

  * 可以编辑应用程序中的数据

  * 可管理

  * 可以运行（在托管空间内）

信息注释

* 包括租户管理员在内的所有用户都必须至少拥有该空间的查看权限，才能对该处的应用程序进行评估。

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

## 使用性能评估

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

* 衡量应用程序的性能。

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

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

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

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

### 需要考虑的事项

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

* 为确保比较更加一致，应在时间上相近的地方进行评估。

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

有关性能系数的更多信息，请参阅[优化应用程序性能](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance.htm)。

## 用于应用程序评估的引擎

当您在 Qlik Cloud 中运行应用程序性能评估时，评估会在根据评估设置选择的引擎上运行。

使用自动设置时，评估将使用用户打开并使用该应用程序时通常使用的相同引擎大小。这让您能够在预期的运行时环境中评估性能，并了解应用程序可能在用户端表现如何。如果该空间不支持大型应用程序，则评估仅限于 20 GB 引擎 (Standard-20)。

通过使用自定义设置评估，您可以为最大 50 GB 的应用程序选择可用引擎。此设置允许您在更大的引擎上测试应用程序，无论空间设置如何，或者租户是否具备大型应用程序容量。

更大的引擎可以缩短响应时间，但性能也取决于应用程序的设计和优化。对比不同引擎规格的评估结果，有助于您了解引擎容量对性能的影响。

您可以选择自定义引擎大小，以便在单次评估运行中临时在更大的引擎上测试性能。要将应用程序永久分配到更大的引擎，管理员可以使用放置 API。有关详细信息，请参阅[分配引擎以提高应用程序性能](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance-select-engine.htm)。

#### 发动机排量

* Standard-20：默认引擎 (20 GB)

* Large-40、Large-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 可能会限制或禁用此功能，以防止滥用或产生过高费用。

有关大应用程序容量的更多信息，请参阅[大型应用程序支持](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Admin/large-app-support.htm)。

## 对应用程序运行性能评估

若要运行性能评估，您必须具有应用程序的重新加载权限。您可以从以下项运行性能评估：

* 您的活动中心

* 应用程序详细信息

### 从活动中心运行性能评估

执行以下操作：

1. 在活动中心中，在要评估的应用程序上单击 the 更多 icon。

2. 选择 工具 &gt; 性能评估。

3. 单击 评估应用程序，然后选择 使用自动设置评估 或 使用自定义设置评估。有关自定义引擎规格选择的详细信息，请参阅 [使用自定义引擎规格运行评估](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance-evaluation.htm#Running_an_evaluation_with_a_custom_engine_size)。

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

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

执行以下操作：

1. 在活动中心中，在要评估的应用程序上单击 the 更多 icon。

2. 并选择the 信息图标 icon详细信息，然后单击the 性能评估图标 icon性能评估。

3. 单击 评估应用程序，然后选择 使用自动设置评估 或 使用自定义设置评估。有关自定义引擎规格选择的详细信息，请参阅 [使用自定义引擎规格运行评估](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance-evaluation.htm#Running_an_evaluation_with_a_custom_engine_size)。

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

### 从应用程序运行性能评估

执行以下操作：

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

2. 选择 工具 &gt; 性能评估。

3. 单击 评估应用程序，然后选择 使用自动设置评估 或 使用自定义设置评估。有关自定义引擎规格选择的详细信息，请参阅 [使用自定义引擎规格运行评估](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance-evaluation.htm#Running_an_evaluation_with_a_custom_engine_size)。

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

### 使用自定义引擎规格运行评估

您可以选择特定的引擎大小，而不是使用自动选择的引擎，以查看应用程序在更大引擎上的性能表现。

执行以下操作：

1. 单击 评估应用程序，然后选择 使用自定义设置评估。

2. 在自定义引擎大小列表中，选择引擎大小。

3. 点击立即运行。

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

信息注释所选引擎大小仅适用于本次评估运行。若要永久分配引擎大小，请使用 placement API。有关详细信息，请参阅[分配引擎以提高应用程序性能](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance-select-engine.htm)。

## 查看评估结果

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

* [查看单个性能评估](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance-evaluation.htm#Viewing_a_single_performance_evaluation)

* [比较性能评估](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance-evaluation.htm#Comparing_performance_evaluations)

信息注释

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

### 查看单个性能评估

执行以下操作：

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

2. 并选择the 信息图标 icon详细信息，然后单击the 性能评估图标 icon性能评估。所有评估都列在绩效评估表中。

   提示注释也可以通过单击通知中的查看结果转到结果。

3. 单击要查看的评估上的查看。

   评估概览。

   评估概览。

   评估概览。 ![显示多个性能评估运行的性能评估详细信息窗口。](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Resources/Images/ui_performance-evaluation_overview_2.png)

4. “结果”窗口提供了性能评估结果的信息。

   提示注释有关特定指标的详细信息，请参阅[性能评估信息](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance-evaluation.htm#Performance_evaluation_information)。

   评估信息选项卡。

   评估信息选项卡。

   评估信息选项卡。 ![显示“信息”选项卡的“性能评估详细信息”窗口。](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Resources/Images/ui_performance-evaluation_info.png)

5. 选择结果选项卡以查看更具体的性能信息。

   评估结果选项卡。

   评估结果选项卡。

   评估结果选项卡。 ![显示“信息”选项卡的“性能评估详细信息”窗口。](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Resources/Images/ui_performance-evaluation-results.png)

6. 单击 the 向下箭头 icon 以显示每行的详细信息。也可以单击每个工作表的 the 向下箭头 icon 以显示加载时间最长的对象。

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

8. 选择 建议 选项卡以查看有关提高应用程序性能的建议。有关每项建议的详细信息，请参阅 [应用程序性能建议](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance-evaluation.htm#Recommendations)。

   “建议”选项卡。

   “建议”选项卡。

   “建议”选项卡。 ![显示“建议”选项卡的性能评估详情窗口。](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Resources/Images/ui_performance-evaluation_recommendations.png)

### 比较性能评估

执行以下操作：

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

2. 并选择the 信息图标 icon详细信息，然后单击the 性能评估图标 icon性能评估。所有评估都列在绩效评估表中。

3. 选择要查看的两个，然后单击比较。

   比较两次评估。

   比较两次评估。

   比较两次评估。 ![选择两行并显示比较按钮的绩效评估表](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Resources/Images/ui_performance-evaluation_compare.png)

4. 评估结果将在窗口中打开。有关特定指标的详细信息，请参阅[性能评估信息](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance-evaluation.htm#Performance_evaluation_information)。信息选项卡显示所选绩效评估的指标，以及它们之间的差异。这包括每次运行所使用的分析引擎，因此您可以查看结果差异是否与引擎大小有关。

   评估比较信息。

   评估比较信息。

   评估比较信息。 ![选择两行并显示比较按钮的绩效评估表](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Resources/Images/ui_performance-evaluation_compare_information.png)

5. 选择结果选项卡以查看更具体的性能信息。对于每一行，将显示绝对和相对变化。

   您可以按“绝对更改”和“相对更改”列进行排序。单击列标题以升序或降序排序。

   评估比较结果。

   评估比较结果。

   评估比较结果。 ![选择两行并显示比较按钮的绩效评估表](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Resources/Images/ui_performance-evaluation_compare_results.png)

6. 单击 the 向下箭头 icon 以显示每行的详细信息。

信息注释在比较两个评估时，只有当差异显著到足以表现性能下降或改善时，才会突出显示差异。

### 性能评估信息

这些指标可以从应用程序元数据中获得，也可以在性能评估期间进行测量。

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

#### 信息选项卡

信息标签显示所选版本的基本应用程序信息。

分析引擎

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

状态

* 显示性能评估的状态。

  * 准备好供审核 - 绩效评估已成功完成。

  * 警告 - 绩效评估已完成，但某些结果缺失或不准确。

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

应用程序大小

* 指标源：应用程序元数据

* 显示内存中应用程序数据模型的总大小，无初始选择。

行数

* 指标源：应用程序元数据

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

应用程序中的公共工作表

* 指标源：应用程序元数据

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

应用程序中的公共对象

* 指标源：应用程序元数据

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

  信息注释在绩效评估结果中，公共工作表不算作公共对象。

未评估

* 指标来源：已测量

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

警告

* 指标来源：已测量

* 列出存在与应用程序开发相关问题的对象，这些问题可能需要解决。例如，在工作表中起作用但具有错误代码的对象，例如没有度量值或尺寸的对象，将列在警告下。如果一个对象发送回一个指定大小的数据页，该数据页也将在有效负载过大的情况下在此处列出。

关键错误

* 指标来源：已测量

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

#### 结果选项卡

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

表现缓存问题的对象

* 指标来源：已测量

* 列表对象未被有效缓存。这是通过加载每个对象两次来确定的。在已经加载对象一次之后，可以预期更快的响应时间，因为结果集应该输入到高速缓存中。可以通过调整数据模型或表达式来进行改进。有关更多信息，请参阅[数据建模的最佳实践](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataModeling/best-practices-data-modeling.htm)和[在可视化中使用表达式](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/use-expressions-in-visualizations.htm)。

* 有关一般应用程序优化的更多信息，请参阅 [优化应用程序性能](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance.htm)。

单线程对象

* 指标来源：已测量

* 本节包含的对象的性能指标表明加载期间主要是单线程处理。如果对象出现在本节中并且用户的相应时间似乎过长，则应检查由对象中的任何表达式生成的查询是否存在瓶颈。可以通过调整数据模型或表达式来进行改进。

* 有关单线程性能的更多信息，请参阅[尽可能避免在聚合表内部使用来自不同表的字段。](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance.htm#singlethreaded)

对象超过内存限制

* 指标来源：已测量

* 本部分包含已达到内存限制的对象以及相应的错误代码。这些可能包括达到引擎对象沙盒限制、超过引擎总内存或达到相关内存边界的对象。

应用程序打开时间

* 指标来源：已测量

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

按初始加载时间列出的公共工作表

* 指标来源：已测量

* 测量每个工作表的响应时间。这些测量值是从第一次遍历应用程序时提取的，每个工作表都被逐个请求。本节中包含的值表示每个工作表的最坏情况加载时间。对于每张工作表，单击该行右侧的箭头图标可以查看其中包含的前 5 个最慢的对象。这可以快速细分加载工作表时所花费的时间。

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

已缓存工作表加载时间

* 指标来源：已测量

* 测量每个工作表的响应时间。当所有工作表第一次被请求时，它们通常应该被缓存。这些测量值是从第二次遍历应用程序时提取的，每个工作表都被逐个请求。此外，您还可以通过使用右侧的按钮展开一行来检索对象上所花费时间的明细。

初始对象加载时间

* 指标来源：已测量

* 测量每个对象的响应时间。这些测量值是从第一次遍历应用程序时提取的，每个对象都被逐个请求。本节中包含的值表示每个对象的最坏情况加载时间。

* 例如，可以通过使用主条目来改进缓存的使用。有关更多信息，请参阅[用于表达式的主条目或变量](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance.htm#Master)。

已缓存对象加载时间

* 指标来源：已测量

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

每个表的内存分配

* 指标源：应用程序元数据

* 数据模型中包含的表列表及其大小。当试图最小化数据模型的大小时，这一部分将很有意义，这将有助于提高响应能力。

* 可以删除加载脚本中任何表达式中未使用的字段和表，以提高速度和资源利用率。有关更多信息，请参阅[数据模型性能](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance.htm#Data)。

每个字段的内存分配

* 指标源：应用程序元数据

* 数据模型中包含的字段表及其大小。当试图最小化数据模型的大小时，这一部分将很有意义，这将有助于提高响应能力。

* 可以删除加载脚本中任何表达式中未使用的字段和表，以提高速度和资源利用率。有关更多信息，请参阅[数据模型性能](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance.htm#Data)。

## 应用程序性能建议

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

建议提供一般性指导。超过推荐的阈值并不一定意味着应用程序存在错误或质量较差，但这可以指示需要审查的方面。例如，对象数量过多可能会影响性能，因此，如果您遇到应用程序问题，可以将这些建议作为排查的切入点。

### 添加图表计算条件

#### 对于超时的图表

当图表在计算过程中超时时，将显示此建议。使用建议卡片上的操作打开其工作表上受影响的对象，然后查看在用户进行选择之前图表尝试计算的数据量。

若要提高性能：

* 添加计算条件，使图表仅在用户做出缩减结果集的选择后才渲染。

* 在显示详细结果之前，使用日期、区域或产品等高影响力筛选器。

* 如果用户仅在探索后才需要详细信息，可以先从更高层级的聚合或下钻方式开始。

* 重新运行性能评估，以确认超时问题已解决。

有关计算条件的更多信息，请参阅 [优化应用程序性能](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance.htm)。

#### 对于包含多个维度的图表

当图表包含许多维度且响应缓慢时，会显示此建议。推荐卡会打开该对象，以便您可以查看维度设置以及默认显示的详细程度。

若要提高性能：

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

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

* 当用户不需要同时查看所有维度时，将一个复杂图表拆分为较小的图表或独立的工作表。

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

有关可视化设计最佳实践的详细信息，请参阅 [优化应用程序性能](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance.htm)。

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

当图表标题、副标题或脚注异常长时，会显示此建议。较长的标题可能会在加载大量对象时增加开销，尤其是在大型应用程序中。

若要提高性能：

* 保持图表标题简短，并聚焦于图表所解答的问题。最大长度为 256 个字符是通常推荐的准则。

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

* 为相似图表使用一致的命名，以便用户无需冗长的标题即可理解。

如果多个图表的标题较长，请整体审查工作表设计，并在可能的情况下简化用词。

### 缩短工作表描述

当工作表描述异常长时，会显示此建议。描述有助于提供上下文，但过长的描述可能会增加不必要的开销。

若要提高性能：

* 将描述保持为工作表用途的简短概述。通常建议的最大长度为 1000 个字符。

* 将分步说明或详细的业务背景移至工作表文本、注释或相关帮助内容中。

* 检查是否仍需要该描述，尤其是仅用于开发的工作表。

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

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

若要提高性能：

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

* 将开发或故障排除内容保留在私有工作表上，这样它就不会包含在已发布工作表的评估中。

* 将相关洞察整合到更少、更清晰的图表中，而不是使用许多小型可视化图表。

* 定期审查旧工作表和未发布的内容，以防止应用程序不必要地膨胀。

有关一般设计指南，请参阅 [优化应用程序性能](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance.htm)。

### 减少工作表上的图表数量

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

若要提高性能：

* 将拥挤的工作表拆分为更小、专注于特定任务的工作表。

* 在工作表上保留最重要的图表，并移除用户很少需要的次要分析。

* 将相似图表组替换为使用选择或下钻的单个图表。

* 检查大型表格是否可以隐藏在选择项后面，或者移动到单独的分析工作表。

### 将计算维度移至加载脚本

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

若要提高性能：

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

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

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

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

有关数据模型设计的详细信息，请参阅 [数据模型性能](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance.htm#Data)。

### 简化部分访问表

当部分访问处理导致加载缓慢时，会出现此建议。从推荐卡片中打开 数据加载编辑器 并检查 部分访问 中使用的脚本逻辑。

若要提高性能：

* 通过仅包含所需的用户、组和缩减字段，使部分访问表尽可能小。

* 移除未使用的列，并避免在脚本的 section access 部分中进行复杂的转换。

* 如果可能，请在安全数据到达应用程序加载脚本之前对其进行准备。

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

有关更多信息，请参阅[用 Section Access 管理数据安全](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/Security/manage-security-with-section-access.htm)。

### 连接表并删除未使用的表

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

若要提高性能：

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

* 在某些情况下，连接表有助于提高性能。建议使用表连接的场景示例：

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

  * 当计算分散在多个表中时，请考虑联接表，以使具有依赖关系的表彼此更靠近，从而减少表之间的跳转。

* 删除数据转换后不再需要的中间表或暂存表。

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

有关更多信息，请参阅[数据模型性能](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance.htm#Data)。

### 减少图表和工作表的数量

当打开应用程序和初始化用户状态耗时过长时，将显示此建议。使用推荐卡打开应用程序，并查看作为已发布体验的一部分加载了多少张工作表和对象。

若要提高性能：

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

* 保持登陆工作表轻量化，使初始体验不需要大量计算。

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

* 检查是否可以将大量对象组替换为更简单的导航和更小的默认布局。

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

当应用程序包含大量工作表时会显示此建议，这可能会增加打开时间并降低导航效率。使用建议操作打开应用程序，并检查当前用户工作流仍需要哪些已发布的工作表。

若要提高性能：

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

* 将涵盖类似分析的工作表合并为数量更少、更清晰且以任务为中心的工作表。

* 通过将关键洞察放置在少数主要工作表上，保持默认用户路径聚焦。

* 在可能的情况下，将探索性或不常用的分析移至单独的应用程序。

有关更多信息，请参阅[优化应用程序性能](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance.htm)。

### 未使用字段分析

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

信息注释下游使用情况检测属于尽力而为，可能无法识别所有依赖项。在进行更改之前，请确认对应用程序及其数据的潜在下游影响。

信息注释键字段绝不会包含在建议删除的字段列表中，也不会包含在用于删除未用字段的自动生成脚本中。

若要应用此建议：

* 单击分析以运行未使用的字段分析。

* 检查报告为未使用的字段，并确认未来的开发、书签或安全规则中不需要这些字段。

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

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

有关更多信息，请参阅[数据模型性能](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance.htm#Data)。

### 删除未使用的字段

当加载某些字段所用的时间长于预期时，会显示此建议。

建议运行未使用字段分析，以识别可删除的字段，从而优化性能。在建议选项卡中，展开未使用字段分析并点击分析。

有关未使用字段分析的更多信息，请参阅 [未使用字段分析](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance-evaluation.htm#UnusedFields)。

## 通知首选项

您可以选择绩效评估完成或失败时收到通知。

单击应用程序上的 the 通知 icon 并选择。有以下是绩效评估通知可用：

* 此应用程序的性能评估已准备好接受审查

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

## 限制

* 仅会评估应用程序中的公开工作表，包括其上的所有对象。

* 并非所有图表对象都受支持。不受支持的对象列在结果的 未评估 部分中。

* 根据 2020 年 6 月之前的图表建议创建的图表对象必须手动更新方可获得支持。

* 如果应用程序使用部分权限来减少数据，则评估使用当前用户的数据减少。以有权访问要评估的数据集的用户身份运行评估。具有不同部分访问权限的用户得出的结果无法直接进行比较。

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

## 处理评估超时

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

为降低超时风险：

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

* 对于已发布的应用程序，您可以复制该应用程序并发布一个公共工作表较少的副本。

复杂的应用程序可能会出现超时和内存警告。它们可以表明，优化、减少数据量或使用更大的引擎可能会提高性能。

有关引擎设置和支持的应用程序大小的详细信息，请参阅 [用于应用程序评估的引擎](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Apps/app-performance-evaluation.htm#Engines_used_for_application_evaluations) 和 [大型应用程序支持](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Admin/large-app-support.htm)。