この章の内容は次のとおりです。
配布は、Warehouse Builderリポジトリ内の論理オブジェクトから、ターゲット・ロケーション内に物理オブジェクトを作成するプロセスです。
マッピングまたはプロセス・フローの配布には、次の手順が含まれます。
必要に応じて、PL/SQL、SQL*LoaderまたはABAPスクリプトを生成します。
スクリプトをデザイン・センターからコントロール・センターにコピーします。また、SQL*Loader制御ファイルもコントロール・センターにコピーします。
新しいコネクタを配布します。つまり、ロケーション間にデータベース・リンクとデータベース・ディレクトリを作成します。
マッピングまたはプロセス・フローを配布した後は、「ETLプロセスの開始」の説明に従って、スクリプトを明示的に起動する必要があります。
配布できるのは、ユーザーにCOMPILE
権限があるオブジェクトのみです。デフォルトでは、リポジトリ内のすべてのオブジェクトに対してこの権限があります。ただし、リポジトリの所有者が異なるセキュリティ・ポリシーを設定している場合があります。
デザイン・センターのナビゲーション・ツリーから直接配布するか、またはコントロール・センター・マネージャを使用して配布できます。
注意: オブジェクトは常にWarehouse Builderを使用して保守してください。配布した物理オブジェクトをSQLで手動で変更しないでください。そうしないと、論理オブジェクトと物理オブジェクトの同期がとれなくなり、予測できない結果を引き起こす可能性があります。 |
注意: オブジェクトを配布するたびに、Warehouse Builderでは、すべての設計オブジェクトに対するすべての変更がリポジトリに自動的に保存されます。「プリファレンス」ダイアログ・ボックスの「コミットを要求」を選択すると、警告メッセージの表示を選択できます。 |
コントロール・センターには、すべての配布に関する詳細情報が格納されます。次の情報が含まれており、オブジェクト単位またはジョブ単位でアクセスできます。
各オブジェクトの現在の配布ステータス
各オブジェクトに対するすべての配布試行の履歴
各マッピングおよびプロセス・フローに対するすべてのETL開始試行の履歴
すべての配布ジョブからのメッセージの完全ログ
コントロール・センターは、ターゲット・ロケーションと同じデータベース内にスキーマとして実装されています。各リポジトリにはデフォルトのコントロール・センターがあり、これは、リポジトリ所有者のスキーマ内に作成されています。たとえば、REP_OWNER
リポジトリの所有者には、REP_OWNER
というスキーマがあり、このスキーマには、デザイン・センターとデフォルトのコントロール・センターの両方からのメタデータが格納されます。
ローカル・システムに配布するには、デフォルトのコントロール・センターを使用できます。または、別のシステムに配布するために、追加のコントロール・センターを作成できます。一度に1つのコントロール・センターのみアクティブにできます。
コントロール・センター・マネージャでは、配布のすべての側面を表示および管理できる総合的な配布コンソールが提供されます。ここから、アクティブなコントロール・センターに格納されている情報にアクセスできます。
リポジトリ・ブラウザを使用して、配布データ・レポートにアクセスすることもできます(第30章「配布と実行の監査」を参照)。
新規コントロール・センターを作成する手順は、次のとおりです。
接続エクスプローラで、「コントロール・センター」を右クリックして「新規」を選択します。
「コントロール・センターの作成」ダイアログ・ボックスが表示されます。
このダイアログ・ボックスを完了します。詳細は、「ヘルプ」ボタンをクリックしてください。
コントロール・センターは、構成の作成ウィザードを使用して作成することもできます。
コントロール・センターをアクティブにする手順は、次のとおりです。
コントロール・センターを使用するように、構成を作成または編集します。
「新規構成の作成」を参照してください。
その構成をアクティブ化します。
「構成のアクティブ化」を参照してください。
Warehouse Builderでは、オブジェクトの論理設計が配布の物理詳細から分離されています。この分離は、構成パラメータに物理詳細を格納することによって実現します。構成と呼ばれるオブジェクトには、すべての構成設定が格納されます。各配布ロケーションには、それぞれのオブジェクト・パラメータに異なる設定を指定して、異なる構成を作成できます。
配布前に、ターゲット・オブジェクト、マッピングおよびモジュールの構成を確認してください。
オブジェクトが配布可能になる条件は、次のとおりです。
そのターゲット・ロケーションが完全に定義され、有効であり、オブジェクトのモジュールに対して選択されている必要があります。
その配布可能パラメータが選択されている(デフォルト)必要があります。
検証および生成がエラーなしに実行されている必要があります。
デザイン・センターで定義した新規オブジェクトは、ただちにコントロール・センター・マネージャにリストされます。各オブジェクトには表示可能なデフォルトの配布アクションがあります。このデフォルトは以前のアクションによって設定され、オブジェクトのタイプによって異なります。デフォルトは、コントロール・センター・マネージャで別の配布アクションを選択することで上書きできます。
次の配布アクションがあります。
作成: ターゲット・ロケーションにオブジェクトを作成します。指定した名前のオブジェクトがすでに存在している場合は、エラーが発生する可能性があります。
アップグレード: 可能な場合、データを喪失することなくオブジェクトを変更します。アップグレードは、元に戻して再実行できます。このアクションは、スケジュールなど、一部のオブジェクト・タイプには使用できません。
削除: ターゲット・ロケーションからオブジェクトを削除します。
置換: オブジェクトを削除して再作成します。このアクションは、アップグレードより高速ですが、データはすべて削除されます。
データ・システムのライフサイクル期間中は、通常、配布プロセスで次の手順を実行します。
オブジェクト設定および使用するコントロール・センターが指定された構成を選択します。
オブジェクトをターゲット・ロケーションに配布します。個別に配布、1つずつ順に配布、すべて一度に配布のいずれも可能です。
配布の結果を確認します。オブジェクトの配布に失敗した場合は、問題を修正し、再試行してください。
ETLプロセスを開始します。
ユーザーの要求やソース・データの変更などにあわせて、ターゲット・オブジェクトの設計を変更します。
変更したオブジェクトの配布アクションを「アップグレード」または「置換」に設定します。
これらの手順を繰り返します。
注意: Warehouse Builderでは、配布前に、リポジトリに対するすべての変更が自動的に保存されます。 |
スケジュールを使用して、Warehouse Builderで設計した操作の実行時期および実行頻度を計画します。スケジュールは、Oracle Databaseリリース10g以上で実行するマッピングおよびプロセス・フローに適用できます。
Warehouse Builderを使用する開発フェーズでは、マッピングとプロセス・フローをスケジューリングするかわりに、 第29章「ターゲット・システムの配布」で説明するように、「コントロール・センター」からすぐに起動および停止します。
スケジュールは、1度実行するように定義するか、またはユーザー・インタフェースで定義する間隔に基づいて繰返し実行するように定義できます。定義する各スケジュールに対して、Warehouse Builderにより、iCalカレンダ標準に準拠するコードが生成されます。
図11-1に示すように、プロジェクト・エクスプローラでは、スケジュールはプロジェクトのコンテキストで定義され「スケジュール」ノードの下のスケジュール・モジュールに含まれます。
Warehouse Builderでは、新規に作成するプロジェクトごとにデフォルトのスケジュール・モジュールMY_CAL_MODULE
が作成されます。デフォルト・モジュールの下にスケジュールを作成するか、「スケジュール」ノードを右クリックして「新規」を選択し、新規モジュールを作成します。
Oracle WorkflowへのWarehouse Builderスケジュールの配布
Warehouse BuilderスケジュールをOracle Workflowに正常に配布するには、Oracle Warehouse Builderインストレーションおよび管理ガイドで説明するように、正しいバージョンのOracle Workflowにアクセスします。
ターゲット・ロケーションが'CREATE SYNONYM'システム権限を持っていることを確認します。「評価ロケーション」が指定されているか、配布ロケーションが「コントロール・センター」スキーマと異なるデータベース・インスタンスを参照している場合、配布ロケーションには'CREATE DATABASE LINK'システム権限が必要です。
スケジュールを作成するには、スケジュール・モジュールを右クリックして「新規」を選択します。
Warehouse Builderにより、スケジュール ウィザードが起動します。
名前と説明ページで、24文字以内でスケジュールの名前を入力します。
Warehouse Builderオブジェクトでは、ほとんどの場合、物理名は1から30文字までの英数字、およびビジネス名は1から2000文字までの英数字を使用できるというルールがあります。
スケジュールウィザードの指示に従ってください。
ウィザードを使用して、「開始日」、「終了日」、「開始時間」、「終了時間」、「頻度単位」、および「繰返し」の値を指定します。ウィザードを完了すると、Warehouse Builderにより、選択したスケジュール・モジュールの下にスケジュールが保存されます。
プロジェクト・エクスプローラで、ウィザードを使用して作成したスケジュールを右クリックして「エディタを開く」を選択します。
Warehouse Builderにスケジュール・エディタが表示されます。選択内容をレビューして計算済実行時間の一覧を表示します。複合スケジュールの場合、「句」の値を入力できます。
マッピングまたはプロセス・フローにスケジュールを適用するには、プロジェクト・エクスプローラのオブジェクトの上で右クリックし、「構成」を選択します。「参照カレンダ」フィールドでは、省略記号ボタンを選択して既存のスケジュールを表示します。
スケジュールするマッピングおよびプロセス・フローでは、物理名は25文字以内、ビジネス名は1995文字以内である必要があります。この制限により、Warehouse Builderでは、配布および実行で必要な接尾辞_jobおよびその他の内部文字をマッピング名に追加できるようになります。
スケジュールを配布します。
マッピングを配布する場合、たとえば関連するマッピングおよびプロセス・フローおよびターゲット・データ・オブジェクトも配布する必要があります。同様に、関連するスケジュールもすべて配布する必要があります。
関連するオブジェクトとともに正しく配布された場合、ターゲット・スキーマは作成したスケジュールに基づいてマッピングまたはプロセス・フローを実行します。
配布は、生成したコードを使用して、メタデータからターゲット・ロケーションに物理オブジェクトを作成するプロセスです。オブジェクトは、プロジェクト・エクスプローラから配布することも、コントロール・センター・マネージャを使用して配布することもできます。Warehouse Builderでは、オブジェクトを自動的に検証して生成します。
プロジェクト・エクスプローラからの配布は、デフォルト・アクションに制限されています。デフォルト・アクションは、「作成」、「置換」、「削除」または「更新」に設定されている可能性があります。このデフォルト・アクションを上書きするには、配布プロセスを完全に制御するコントロール・センター・マネージャを使用します。
プロジェクト・エクスプローラから配布する手順は、次のとおりです。
該当するオブジェクトを選択して、ツールバーの「配布」アイコンをクリックします。
ステータス・メッセージが、デザイン・センター・ウィンドウの下部に表示されます。配布が完了したことを通知する場合は、配布前にプリファレンスで「配布完了メッセージの表示」を選択します。
コントロール・センター・マネージャを開く手順は、次のとおりです。
プロジェクトを開きます。
「ツール」メニューから「コントロール・センター・マネージャ」を選択します。
このメニューを選択できない場合は、適切な構成と、コントロール・センターがアクティブであることを確認します。「追加構成の作成」を参照してください。
ETLは、データをそのソース・ロケーションから抽出し、マッピングで定義したとおりに変換し、ターゲット・オブジェクトにロードするプロセスです。ETLを開始するときは、データをジョブとしてWarehouse Builderジョブ・キューに送信します。このジョブは、すぐに開始できます。また、Oracle Enterprise Managerのスケジューラなど、スケジューラを使用する場合は、スケジュールされた時間に開始できます。ETLは、配布と同様に、プロジェクト・エクスプローラから開始することも、コントロール・センター・マネージャを使用して開始することもできます。SQLスクリプトを実行するWarehouse Builder外部のツールをして、ETLを開始することもできます。
プロジェクト・エクスプローラからETLを開始する手順は、次のとおりです。
マッピングまたはプロセス・フローを選択して、「設計」メニューから「開始」を選択します。