QVD對于僅加載增量數(shù)據(jù)(即附加或修改的記錄)也是必不可少的。

什么是QVD文件?
QVD是QlikView格式,只能由QlikView寫入和讀取。一個(gè)QVD文件可以存儲(chǔ)一個(gè)表,并在QVW文件的加載腳本中創(chuàng)建。
一個(gè)QVD文件由三部分組成:
-XML標(biāo)題來描述表中的字段,后續(xù)信息的布局和其他元數(shù)據(jù)。
-字符填充格式的符號表。
-實(shí)際的表格數(shù)據(jù)采用位填充的格式。
使用QVD的優(yōu)點(diǎn):
QVD文件為您的QlikView應(yīng)用程序提供了許多優(yōu)勢,其中包括:
- 更快的加載時(shí)間:從QVD讀取數(shù)據(jù)比其他來源快10-100倍,即減少加載時(shí)間。這是因?yàn)镼VD創(chuàng)建使用與QlikView使用的相同的算法將數(shù)據(jù)存儲(chǔ)在內(nèi)存中,與其他格式相比,QVD的加載速度更快。
- 數(shù)據(jù)庫和網(wǎng)絡(luò)的負(fù)載較?。阂坏?shù)據(jù)在QVD中導(dǎo)出,就不需要再與外部數(shù)據(jù)庫連接。它減少了外部數(shù)據(jù)庫和網(wǎng)絡(luò)的工作量。此外,當(dāng)幾個(gè)QlikView腳本共享相同的數(shù)據(jù)時(shí),只需要從源數(shù)據(jù)庫加載一次。其他應(yīng)用程序也可以通過QVD文件使用相同的數(shù)據(jù)。
- QVD的增量加載:增量加載(僅加載新/修改數(shù)據(jù)庫的細(xì)節(jié))只能通過使用QVD來完成。與完整的負(fù)載相比,它顯著減少了負(fù)載時(shí)間。
- 整合來自多個(gè)數(shù)據(jù)源和數(shù)據(jù)庫的數(shù)據(jù):當(dāng)從多個(gè)數(shù)據(jù)源提取數(shù)據(jù)時(shí),多層QVD用于創(chuàng)建一個(gè)具有健壯性的模型。
如何創(chuàng)建一個(gè)QVD?
在使用STORE命令執(zhí)行QlikView加載腳本期間,QVD最常見:
STORE <TableName> INTO <Path \ FileName.qvd>
有單獨(dú)的應(yīng)用程序來創(chuàng)建QVD文件是一個(gè)很好的做法。該層用于處理與源數(shù)據(jù)庫的所有交互。而這種交互的結(jié)果可以從QVD文件快速重新加載。
增量加載:如前所述,增量加載定義為只將來自數(shù)據(jù)庫的新記錄或更新記錄加載到已建立的QVD中。增量加載是有用的,因?yàn)樗鼈兊倪\(yùn)行速度遠(yuǎn)遠(yuǎn)超過滿載,特別是對于來自數(shù)據(jù)庫的大型數(shù)據(jù)集。(將在下一篇文章中詳細(xì)討論)
如何從QVD加載數(shù)據(jù)?
要從QVD讀取數(shù)據(jù),我們需要編寫一個(gè)LOAD語句(類似于加載CSV或Excel文件的命令)。
表名:
加載
FieldList中
FROM <Path \ FileName.qvd(qvd)> ;
QVD文件可以以標(biāo)準(zhǔn)(快速)和超快兩種模式讀取。所選模式由QlikView腳本引擎自動(dòng)確定。只有當(dāng)所有字段或其子集都需要被讀取而沒有任何操作(例如基于公式的字段生成)時(shí),才能使用超快速模式,盡管字段的重命名是允許的。
PS
管理QVD是任何QlikView應(yīng)用程序項(xiàng)目中最重要的部分之一。它可以用來提供一個(gè)邏輯數(shù)據(jù)層,因此它可以作為一個(gè)數(shù)據(jù)倉庫缺乏一個(gè)(與市場上的其他BI工具相比,Qlikview的一個(gè)巨大的好處之一)。
創(chuàng)建QVD有助于減少數(shù)據(jù)庫和網(wǎng)絡(luò)負(fù)載。一旦生成一個(gè)基礎(chǔ)QVD,就可以運(yùn)行一個(gè)增量加載腳本,只將新的或修改的記錄加載到QVD。增量加載也會(huì)刪除已刪除的記錄。因此,您的應(yīng)用程序占用的空間更少,所需的加載時(shí)間也更少。
參考資料
https://www.analyticsvidhya.com/blog/2014/08/qvds-qlikview-application-efficient/