# 提高应用程序性能的最佳实践

了解如何确保您的应用程序响应迅速且可用。您可以通过只使用必要的字段、删除重复维度以及在已发布的应用程序版本中工作来提高应用程序的速度和整体性能。

请记住，Insight Advisor 只使用数据模型中包含的数据。当您在 Insight Advisor 中提问时，创建主维度和度量可以帮助您。

## 使用 Insight Advisor 提高应用程序性能

通过对应用程序及其数据进行分析，Insight Advisor 几乎可以在打开应用程序后立即返回建议。应用程序中可用元数据的大小可能会影响 Insight Advisor 初始配置新应用程序所需的时间。

如果您的应用程序包含超过 500 个字段，则在对通用维度或度量以外的字段进行分类时 Insight Advisor 会不太准确。

如果您的应用程序包含超过 100 个主度量，或超过 100 个主要维度，则在对通用维度或度量以外的项目进行分类时 Insight Advisor 会不太准确。例如，如果您有 100 多个主维度，则打算作为地理维度的主维度只能分类为维度。该阈值单独为主维度和主度量定义。

作为最佳实践，只加载相关字段以确保应用程序不会达到难以维护的大小。

要提高应用程序的性能，请考虑以下操作：

* 仅加载应用程序的必填字段。

* 指定可以在数据值查找问题中引用的值。

* 正在从数据模型中删除重复维度。

## 通过 Insight Advisor 提高分析质量

以下是可以提高 Insight Advisor 中分析质量的几个最佳实践。

### 避免向应用程序添加过多维度

尽可能多地向应用程序添加维度可能很诱人。包含过多的维度可能会导致重复，从而使用户更难创建可视化和分析数据。

### 命名主条目时避免使用最高级

最好在命名主条目时排除正则表达式最高级。

例如，Insight Advisor 可能会将标记为 This Week’s Sales 的以下主条目识别为多个令牌：This Weeks 作为相对时间筛选器，以及 Sales 作为数据模型中维度的名称。在命名主条目时，您可以使用 Latest Sales 等词，以确保引擎将整个术语识别为问题。

### 在逻辑模型中设置数据值查找

数据模型有时包含具有相同或几乎相同名称的多个字段。通过更改逻辑模型中这些字段的数据值查找值，可以确保用户提出的问题引用了正确的字段。自定义数据值查找列有助于引擎在询问问题时识别正确的字段。

例如，数据模型可以包含两个国家维度，客户国家和供应商国家。如果您的用户通常询问其客户的国家/地区，则可以从数据值查找列中删除供应商国家/地区。

从数据值查找列中删除维度

从数据值查找列中删除维度

从数据值查找列中删除维度 ![此图显示了 Qlik Cloud 的逻辑模型选项卡中的字段和组菜单。](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Resources/Images/InsightAdvisorbestPractices_DataValueLookup.png)

有关使用数据值查找的详细信息，请参阅[定义字段和组中的Insight Advisor](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/BusinessLogic/business-logic-fields-groups.htm)。

## 在托管空间中使用应用程序

Insight Advisor 在托管空间中的应用程序中的行为有所不同。在个人或共享空间中，您通常可以访问应用程序中的所有字段。在已发布的应用程序中，您只能访问主条目。在将应用程序发布到托管空间之前，请确保为所需维度和度量创建了主条目。

自然语言问题在具有有限和特定字段数的应用程序中效果最佳。因此，发布的应用程序比共享或个人空间中的应用程序更具响应性。

信息注释

当应用程序位于个人和共享空间时，Insight Advisor 可以对简单的主维度进行计数。当应用程序位于托管空间中时，这是不可能的，因为用户无法访问基础字段。