QVD对于仅加载增量数据(即附加或修改的记录)也是必不可少的。
什么是QVD文件?
QVD是QlikView格式,只能由QlikView写入和读取。一个QVD文件可以存储一个表,并在QVW文件的加载脚本中创建。
一个QVD文件由三部分组成:
-XML标题来描述表中的字段,后续信息的布局和其他元数据。
-字符填充格式的符号表。
-实际的表格数据采用位填充的格式。
使用QVD的优点:
QVD文件为您的QlikView应用程序提供了许多优势,其中包括:
- 更快的加载时间:从QVD读取数据比其他来源快10-100倍,即减少加载时间。这是因为QVD创建使用与QlikView使用的相同的算法将数据存储在内存中,与其他格式相比,QVD的加载速度更快。
- 数据库和网络的负载较小:一旦数据在QVD中导出,就不需要再与外部数据库连接。它减少了外部数据库和网络的工作量。此外,当几个QlikView脚本共享相同的数据时,只需要从源数据库加载一次。其他应用程序也可以通过QVD文件使用相同的数据。
- QVD的增量加载:增量加载(仅加载新/修改数据库的细节)只能通过使用QVD来完成。与完整的负载相比,它显着减少了负载时间。
- 整合来自多个数据源和数据库的数据:当从多个数据源提取数据时,多层QVD用于创建一个具有健壮性的模型。
如何创建一个QVD?
在使用STORE命令执行QlikView加载脚本期间,QVD最常见:
STORE <TableName> INTO <Path \ FileName.qvd>
有单独的应用程序来创建QVD文件是一个很好的做法。该层用于处理与源数据库的所有交互。而这种交互的结果可以从QVD文件快速重新加载。
增量加载:如前所述,增量加载定义为只将来自数据库的新记录或更新记录加载到已建立的QVD中。增量加载是有用的,因为它们的运行速度远远超过满载,特别是对于来自数据库的大型数据集。(将在下一篇文章中详细讨论)
如何从QVD加载数据?
要从QVD读取数据,我们需要编写一个LOAD语句(类似于加载CSV或Excel文件的命令)。
表名:
加载
FieldList中
FROM <Path \ FileName.qvd(qvd)> ;
QVD文件可以以标准(快速)和超快两种模式读取。所选模式由QlikView脚本引擎自动确定。只有当所有字段或其子集都需要被读取而没有任何操作(例如基于公式的字段生成)时,才能使用超快速模式,尽管字段的重命名是允许的。
PS
管理QVD是任何QlikView应用程序项目中最重要的部分之一。它可以用来提供一个逻辑数据层,因此它可以作为一个数据仓库缺乏一个(与市场上的其他BI工具相比,Qlikview的一个巨大的好处之一)。
创建QVD有助于减少数据库和网络负载。一旦生成一个基础QVD,就可以运行一个增量加载脚本,只将新的或修改的记录加载到QVD。增量加载也会删除已删除的记录。因此,您的应用程序占用的空间更少,所需的加载时间也更少。
参考资料
https://www.analyticsvidhya.com/blog/2014/08/qvds-qlikview-application-efficient/