合成钥
当两个或多个内部表格拥有两个或多个共同字段时,这意味着存在复合的关键字段关系。Qlik Sense 会通过合成钥来处理。这些关键字段是一种匿名字段,表示所有发生的复合关键字段的组合。
复合键数量的增加会导致内存使用率的提高,并会影响性能。这也可能取决于数据量、表结构和其他因素。只要有多个合成钥彼此依赖,那么最佳实践是将其删除。
现在需要加载数据的最终集合。
执行以下操作:
- 在 Scripting Tutorial 应用程序中,打开数据加载编辑器。
- 单击
以新增脚本段。
- 命名部分为 Customers。
-
在右菜单的 DataFiles 下,单击选择数据。
- 上传然后选择 Customers.xlsx。数据预览窗口打开。
- 选择 Sheet1。
- 单击插入脚本。
- 单击加载数据。
- 打开数据模型查看器。
现在您可以在数据加载进度窗口中看到,合成钥已经创建。
带有合成密钥警告的数据加载进度窗口

看到已经创建了新表格 $Syn 1 Table,我们便可看到已经创建了一个合成钥。其包含连接的表格 Sheet1 和 Region 共同具有的所有字段、Region 和Region code。在此情况下,会使连接让人混淆并产生误导,因此不需要保留。
数据模型查看器 显示合成钥

解决合成钥
消除合成钥的最简单方法是以重命名表格中的一个或多个字段。可以在加载数据时进行此操作。现在,我们将逐步进行如何删除合成钥的步骤。
执行以下操作:
- 打开数据加载编辑器。
- 单击段 Customers 并删除 LOAD 语句中的以下行:
- 单击加载数据。
- 打开数据模型查看器。
Region,
已删除了合成钥。
显示出合成钥已被删除的数据模型查看器
