# QVD ファイルでの作業

QVD (QlikView Data) ファイルは、Qlik Sense アプリケーションまたはスクリプトからエクスポートされたデータのテーブルを含むファイルです。QVD はネイティブの Qlik 形式で、Qlik Sense または QlikView でしか書き込みと読み出しを行えません。ファイル形式は、スクリプトからデータを迅速に読み取れるように最適化されており、サイズもコンパクトです。QVD ファイルからのデータの読み取りは、他のデータ ソースから読み取る場合よりも、一般に 10～100 倍速くなっています。

QVD ファイルは、標準 (高速) と最適化 (超高速) の 2 つのモードで読み取ることができます。使用されるモードは、スクリプト エンジンによって自動的に決定されます。

最適化されたロードに関して、いくつかの制限があります。項目の名前は変更できますが、ここで言及されている操作のいずれかによって、最適化されているロードが無効になり、標準のロードとなります。

* ロードされた項目に対する変換。
* where 節を使用すると、Qlik Sense でレコードが解凍されます。
* ロードされた項目でのマップの使用。

## QVD ファイルの使用目的

QVD ファイルは多数の目的に使用することができ、どのような状況でも複数の目的を適用できます。少なくとも主に 4 つの目的で使用されます。

* データベース サーバーの負荷の減少

  外部データ ソースから取得するデータ量を大幅に削減できます。これにより、外部データベースおよびネットワーク トラフィックの負荷が減少します。さらに複数のスクリプトが同じデータを共有する場合は、ソース データベースからQVDファイルに一度データをロードするだけで済みます。他のアプリケーションまたはスクリプトでも、この QVD ファイルを使用することで同じデータを活用できます。

* 複数のアプリケーションからのデータ統合

  binary スクリプト ステートメントでは、単一のアプリケーションから別のアプリケーションまたはスクリプトにデータをロードできますが、QVD ファイルでは、ロード スクリプトで任意の数のアプリケーションまたは他のデータ ソースからのデータを組み合わせることができます。これにより、さまざまな部署の類似データを統合するなど、アプリケーションおよびスクリプトの可能性が広がります。

* 増分

  多くの場合、QVD の機能を活用することで、増大するデータベースから新しいレコードだけをロードする増分ロードを簡単に実行できます。

  詳細については、「[増分ロードにより新規および更新された記録をロード](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/LoadData/use-QVD-files-incremental-load.htm)」を参照してください。

  情報メモ

  Qlik コミュニティが Qlik Automate を使用して QVD のロード時間を改善する方法については、「[自動化を使用して QVD を分割し、リロードを改善する方法](https://community.qlik.com/t5/Official-Support-Articles/How-to-split-QVDs-using-an-automation-to-improve-reloads/ta-p/1997153)」を参照してください。

## QVD ファイルの作成

QVD ファイルは、ロード スクリプト内で Store コマンドを使用して作成し、名前を付けることができます。スクリプトで、以前に読み取ったテーブルまたはその一部を、選択した場所にある明示的に指定されたファイルにエクスポートするように記述します。

詳細については、「[Store](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptRegularStatements/Store.htm)」を参照してください。

## QVD ファイルからのデータのロード

次の方法で、QVDファイルの読み込みやアクセスを実行します。

* 明示的なデータ ソースとしての QVD ファイルのロード。QVDファイルは、その他のテキスト ファイル (csv、fix、dif、biffなど) と同様にスクリプトのLOADステートメントで参照できます。

  例:

  * `LOAD  * from [lib://DataFiles/xyz.qvd];``LOAD Name, RegNo from [lib://DataFiles/xyz.qvd];``LOAD Name as a, RegNo as b from [lib://DataFiles/xyz.qvd];`

* スクリプトからの QVD ファイルへのアクセス。(qvd で始まる) いくつかのスクリプト関数を使用して、QVD ファイルの XML ヘッダーにあるデータのさまざまな情報を取得できます。

## QVD 形式

QVD ファイルは、厳密に 1 つのデータ テーブルを保持し、次の 3 つの部分で構成されます。

* ヘッダー

  情報メモ QVD ファイルが QlikView で作成された場合、ヘッダーはテーブル内の項目や、後続情報およびその他のメタデータのレイアウトを適格に記述する XML ヘッダー (UTF-8 文字セット) です。

* バイト埋め込み形式のシンボル テーブル。

* ビット埋め込み形式の実際のテーブル データ。