ユーザーガイド > TDVキャッシング > キャッシュのメンテナンス > キャッシュのインデックス作成
 
キャッシュのインデックス作成
TDVには、キャッシュされたデータにインデックスを作成するためのオプションがいくつかあります。キャッシュからデータのサブセットをフィルタリングして表示するために特定の列が共通に使用される場合、データにインデックスを作成するとパフォーマンスを向上させることができます。インデックスを追加すると、キャッシュ更新のパフォーマンスが低下する可能性がありますが、キャッシュ結果の取得のパフォーマンスは向上する可能性があります。
実装するキャッシュオプションに応じて、さまざまなインデックスオプションを使用できます。
完全更新タイプのキャッシュの場合は、キャッシュ更新の前後に実行するスクリプトを指定できます。それらの各スクリプトに、キャッシュされたデータのインデックスを削除または作成するロジックを含めることができます。
複数テーブルオプションを使用する完全更新キャッシュの場合は、更新のたびにキャッシュされたデータに自動的にインデックスを作成するようにTDVを構成できます。これを選択する場合は、キャッシュするテーブルまたはビューの[Index(インデックス)]タブでインデックス定義を指定する必要があります。
プルベースのインクリメンタルキャッシングの場合は、追加のインデックス作成動作を定義するロジックをインクリメンタルキャッシングスクリプトに追加できます。
インデックス作成を直接サポートしないTDVキャッシングオプションの場合は、特定のキャッシュターゲットに対して使用可能なデータベースツールを使用して、キャッシュされたデータに直接インデックスを作成できます。このソリューションでは、キャッシュの更新後もインデックスの有効性を維持するために必要なプロセスについて検討することが必要になる場合もあります。
キャッシュされたビューの結果セット内の特定の列にインデックスを作成すると、パフォーマンスが向上します。TDVには、キャッシュされたデータの開始または更新、およびインデックス作成に使用できるスクリプトまたはプロシージャを定義する機能もあります。
キャッシュキー列を使用すると、キャッシュテーブルに送られるデータをフィルタリングできます。キャッシュキー列は特定のキャッシュスナップショットの一意の値であるため、キャッシュデータにインデックスを作成するカスタムスクリプトを記述する際には、キャッシュキーをインデックスの最初の列にすることをお勧めします。これは、プロシージャキャッシュのバリアントが多数あり、共通に使用されるクエリーが行の大きなサブセットを返さない場合に特に当てはまります。
完全更新複数テーブルキャッシングが有効になっている場合にキャッシュにインデックスを作成するには
1.次のトピックの手順を参照してください。
データベースターゲットでの複数テーブルキャッシュの作成
2.[Indexes(インデックス)]タブで必要なインデックスが定義されていることを確認します。
[Indexes(インデックス)]タブの使用法については、「クエリーのパフォーマンスを向上させるためのインデックス、主キー、外部キーの使用」を参照してください。
完全更新キャッシュにインデックスを作成するには
1.次のトピックの手順を参照してください。
完全更新モードキャッシュの事前アクションと事後アクションの定義
2.インデックスを管理および定義するロジックを追加します。
3.パフォーマンスをテストし、キャッシュインデックスのパフォーマンス目標が達成されていることを確認します。
プルベースのインクリメンタルキャッシュにインデックスを作成するには
1.次のトピックの手順を参照してください。
プルベースのインクリメンタルキャッシュの設定
2.インデックスを管理および定義するロジックを追加します。
3.パフォーマンスをテストし、キャッシュインデックスのパフォーマンス目標が達成されていることを確認します。
キャッシュターゲットで直接キャッシュデータにインデックスを作成するには
1.次のトピックの手順を参照してください。
キャッシングの設定
2.キャッシュターゲットデータベースタイプに対して使用可能なデータベースツールを使用してインデックスを定義します。
3.キャッシュの更新後もインデックスを機能させるために必要な他のスクリプトまたはプロセス変更を特定します。
4.パフォーマンスをテストし、キャッシュインデックスのパフォーマンス目標が達成されていることを確認します。