データ ウェアハウスの更新スケジュールの定義

Spectrum™ Technology Platformはデータフローのスケジュールを設定して、データ ソース内の正規化構造からデータを抽出したり、データ ウェアハウス内のスター スキーマ構造に変換したりできます。ほとんどのロード操作は営業日には使用できないシステム リソースを必要とするので、データフローのスケジューリングは有用です。

更新スケジュールを決定する際には、次の点を考慮します。

  • 頻度
  • シーケンス
  • 依存関係

頻度

きわめて詳細なファクト テーブルの粒度に基づいて実行するデータフローをスケジュールする必要があります。例:

  • ファクト テーブルの粒度が日単位の場合は、ファクト テーブルの設定データフローを毎日実行するようにスケジュールします。
  • 粒度が月単位の場合、ユーザは過去何か月かのデータのみを使用して作業するので、設定データフローをすぐに実行するのではなく、毎月実行するようにスケジュールします。

ほとんどの設定データフローは大量のデータを処理するので、Spectrum™ Technology Platformサーバ、ソース データベース、データ ウェアハウス データベース、およびネットワークの使用量が最小のときに設定データフローを実行するようにスケジュールします。

初期ロード時にすべてのディメンション テーブルとファクト テーブルを設定します。初期ロードの後、追加または変更された内容に基づいてテーブルを更新します。通常、ファクト テーブルはディメンション テーブルよりも頻繁に更新されます。その理由は次のとおりです。

  • 通常、ディメンション テーブルはソース内の属性が変更または追加されない限り、静的です。
  • 一般的に、意思決定支援データベース内のファクト テーブル データは長期的なものであり、最新の状態を維持するために定期的な追加や更新を必要とします。初期ロードやほとんどの増分ロードはファクト テーブルに影響を与えます。

シーケンス

データ ウェアハウス データベース内のデータ間には依存関係があるので、実行スケジュールの設定前に設定データフローを実行する順序を決定します。

ファクト テーブルの前にディメンション テーブルを設定します。関連ファクト テーブルを設定する前に、すべてのディメンション レコードおよびキーが存在している必要があるからです。この制限は、スター スキーマにおけるディメンション テーブルとファクト テーブルとの間の主キーと外部キーの関連性によるものです。

意思決定支援データベース内の集計テーブルを設定する前に、ベースレベルのテーブルを更新します。この順序により、ベースレベル テーブルと集計テーブルの同期が確実に維持されます。

設定データフローを実行する適切な順序は、次のとおりです。

  1. ベースレベル ディメンション テーブルの計画
  2. ベースレベル ファクト テーブルの計画
  3. 集計ディメンション テーブルの計画
  4. 集計ファクトテーブルの計画

依存関係

複数の設定データフローを特定の順序で実行する必要がある場合や、データフローの実行にかかる合計時間が予測できない場合は、データフロー依存関係を作成できます。データフローは、前のデータフローの完了、前のデータフローでのエラー発生など、特定の要件が満たされた場合にのみ実行されます。

データフロー依存関係を作成するには、Enterprise Designer でプロセス フローを作成します。プロセス フローの詳細については、『Dataflow Designer ガイド』を参照してください。