Oracle® Fusion Middleware Oracle Business Intelligence Enterprise Editionメタデータ・リポジトリ作成者ガイド 12c (12.2.1.1.0) E77227-02 |
|
前へ |
次へ |
MUDは、リポジトリ・モデル内の相互関係および依存性が複雑であっても、開発者のチームによる任意のサイズのプロジェクトで並列作業を実現できる機能のセットです。
次の処理を実行できます。
リポジトリ・ファイルのサブセットへの分割
リポジトリが大規模な場合、ユーザーは管理可能なサブセットで作業できます。
各開発者またはチームでサブセットごとに独立にテストできます。
ブランチ・サブセットをチェックアウトした後でマージが管理しやすくなります。
独立のセマンティック・モデルを開発用のセキュアなブランチに分割できます。
段階的な開発、テストおよび移行
ユーザーの変更間の競合に対処するサブセットおよびブランチのマージ
変更を終えてパッケージ化されたBIアプリケーションへのOracle更新の適用
個別に開発されたアプリケーションの単一のリポジトリへのマージ
履歴ログおよび監査情報へのアクセス
過去のリポジトリ状態へのロールバック
マルチユーザー開発機能には、その他にも次のような有用な機能があります。
マスターへのマージの調整(元のリポジトリ・ファイルの追跡など)
ロックを使用した確実な更新
変更のログへの記録
破損が発生する可能性のある各操作の前の、リポジトリの自動バックアップ
この項では、次の項目について説明します。
開発環境での複数のユーザーによる作業の基本について学習します。
複数のユーザーでの基本的な作業フローは次のとおりです。
開発者は、「初期」物理レイヤーおよび基本ファクトおよびサブジェクト・エリアを定義します。これにより、MUDプロジェクトをアンカーするためのいくつかの基本オブジェクトを指定します。
MUD管理者はプロジェクトを定義し、RPDをメイン・ブランチのMUDディレクトリに配置します。
注意:
マスター・リポジトリが格納されるMUDディレクトリは、Oracle BIサーバー・ローカル・リポジトリ・ディレクトリと同じにすることはできません。
これで、開発者は1つ以上のプロジェクトをチェックアウトして、開発作業を実行し、変更をMUDディレクトリに公開することでマスターにマージできます。
その間に、他の開発者は、同じプロジェクトまたは別のプロジェクトをチェックアウトして開発作業を行います(プロジェクトは、サブセット用のものであり、セキュリティを適用するためのものではありません)。公開手順では3方向マージを使用するため、ユーザーは変更のチェックアウト、開発、公開を任意の順序で実行できます。複数のユーザーによる1つのオブジェクトに対するプロパティの変更もマージできます。ユーザー間で競合が発生した場合、3方向マージ機能では開発者がどのオブジェクトを保持するのかを選択できます。競合の回避および解決にはユーザー間のコミュニケーションが重要であり、そのような競合を回避するために、管理プロセスによって主要なオブジェクトの所有権が割り当てられるようにする必要があります。
開発フェーズを完了したら、MUD管理者はコンテンツをテスト・システムに移行できます。チェックアウト、不具合の修正、公開および再テストの順に何回か繰り返す場合があります。リポジトリがテスト・フェーズに合格したら、MUD管理者はそれを本番環境に移行できます。
MUD管理者は、複数の開発ブランチを大きなMUDプロジェクトとして作成および管理できます。ブランチは1つの開発チームのみで作業するように保護できます。ブランチは、独自の委任MUD管理者により、メインとして再帰的に処理することもできます。
マルチユーザー開発機能は、プロジェクトというメタデータ・オブジェクトの周辺で構築されます。プロジェクトとは、マスター・リポジトリからのチェックアウト、およびその後のマージおよび公開までの単位です。
マスター・リポジトリが大規模になると、プロジェクトは開発者がチェックアウトして作業できる程度の管理可能なサイズのサブセットになります。これは、整合性チェッカ(コンパイル時のコードのチェックのようなものです)を実行して、Oracle BIサーバー上でアンサーなどのクライアントにより実行時にそれをテストできるように、自己完結型に設計されています。結果に満足であれば、それをマスター・リポジトリにマージしなおして、大きなアプリケーションの一部にすることができます。一方、履歴はログに記録され、リポジトリ・バックアップは主要な時点で自動的に作成されます。
管理ツールのMUD機能では、ファイングレイン開発者プロジェクトに対してこのフローを合理化します。同様に、スーパーセット・プロジェクトでもブランチの管理およびマージを合理化します。
プロジェクト・サブセットには、メタデータ・オブジェクトのセットが含まれます。オブジェクトの最小セットを明示的に含めるようにプロジェクトを定義しますが、その他の多数のオブジェクトは暗示的に含まれます。オブジェクトを暗示的にプロジェクトに追加することで、プロジェクト管理タスクが単純化されます。
次のオブジェクトは、MUD管理者によりプロジェクトのメンバーとして明示的に指定されます。
論理ファクト表
プレゼンテーション・レイヤーのサブジェクト・エリア
アプリケーション・ロール
ユーザー(ただし、RPDロジックでアプリケーション・ロールのみを使用することをお薦めします)
初期化ブロック
変数
その他すべてのオブジェクトはプロジェクトに暗示的に含まれており、チェックアウト処理時に管理ツールで表示されます。次に例を示します。
明示的に定義されたオブジェクトの子孫。たとえば、論理ファクト表が明示的に含まれる場合、そのすべての論理列もプロジェクトに暗示的に含まれます。
選択された論理ファクト表に結合された論理ディメンション表および結合オブジェクト自身。
含まれている論理ファクト表およびディメンション表の論理表ソース。
プロジェクトに含まれる論理表にマップされた物理表およびそれらの間の結合。
マーケティング・ターゲット・レベルおよびリスト・カタログ。
明示的に定義されたオブジェクトのリストにあるオブジェクトは、暗示的に含まれる場合もあります。たとえば、論理列の式に変数が含まれる場合、MUD管理者が明示的にそれを追加しなくても、その変数はプロジェクトに暗示的に含まれます。
プロジェクトは重複しても問題ありません。1つのプロジェクトに表示されるオブジェクトが、別のプロジェクトにも表示されても問題ありません。たとえば、独立したセマンティック・モデルごとに全体的なプロジェクトを作成するとともに、個別の開発作業ユニットをチェックアウトするために、各独立モデル内により小さいプロジェクトを作成することを好む顧客が存在します。複数のプロジェクトを同時にチェックアウトし、より大きなセットのメタデータで作業することもできます。
詳細は、プロジェクトの設定も参照してください。
ブランチ、サイド・ブランチおよび委任管理ブランチの作成方法について学習します。
この項では、次の項目について説明します。
最終的なマスター・リポジトリは、通常、メイン・ブランチでソースが管理され、すべてのブランチ、さらに最終的にはすべての開発プロジェクトは、そこからチェックアウトします。
通常、メイン・ブランチは本番でリポジトリをステージングします。つまり、コンテンツを本番に移行するには、それをメイン・ブランチに移行してから、メイン・リポジトリを本番システムに移行します。
同様に、本番の不具合を修正するには、通常、開発者はメイン・ブランチからチェックアウトします。開発者は不具合を修正すると、それをテストおよび本番への移行用のメイン・ブランチにマージしなおします。一方、サイド・ブランチの並列開発には影響しません。
MUD管理者としてメイン・ブランチを作成するには、まず共有ディレクトリを作成して、マスター・リポジトリ・ファイルをそこにコピーする必要があります。ディレクトリはWindowsまたはUNIX上のいずれに配置してもかまいませんが、UNIX共有の場合はWindowsユーザーがアクセスできるようにする必要があります。
適切な開発者のみにアクセスを許可するように共有上にセキュリティを設定します。要件に応じて、メイン・ブランチ・マスター・リポジトリではなく、サイド・ブランチ・マスター・リポジトリのみに開発者のアクセスを許可することもできます。
これが新規プロジェクトの場合、一般的には、ブランチ・プロジェクトに容易に分割できる初期コンテンツでリポジトリをシードするように開発者に指示します。
ブランチを使用する場合、スーパーセットMUDプロジェクトで開始して、MUDチェックアウト、マージおよび公開機能を使用することをお薦めします。そこで、個々のユーザーまたはサブブランチでファイングレイン・プロジェクトを使用してブランチ・マスターからチェックアウトします。この機能のMUDを使用すると、チェックアウト・ポイントで自動バックアップが提供され、元のリポジトリが追跡されて正しいマージが確保され、ユーザーの介入が少なくて済む、より楽観的なマージの想定を使用して、履歴およびロールバックを使用できます。
MUD管理者としてサイド・ブランチを作成する手順は次のとおりです。
ブランチを使用して、メタデータ・サブセットを管理および保守する組織にそのローカル管理を委任できます。そのためには、ブランチMUD管理者をブランチに割り当てます。ブランチMUD管理者はメインMUD管理者と同じロールを実行します。
メタデータが他のグループと重複しないような独立のセマンティック・モデルでは、このアプローチが最適に機能します。
委任ブランチMUD管理者は、詳細ブランチのプロジェクトの定義や開発者用のファイングレイン・プロジェクトの作成などを含め、メイン・ブランチ管理者と同じタスクを実行します。
メインMUD管理者として委任管理ブランチを作成する手順は次のとおりです。
メインMUD管理者およびメインMUD管理者の代替要員のみがアクセス権を持つように、メインMUDディレクトリに権限を設定します。
前の項で説明されているように、ブランチMUDプロジェクト、ブランチMUDディレクトリ、およびチェックアウトされたブランチ・マスター・リポジトリを作成します。
メインMUD管理者および委任ブランチMUD管理者がアクセス権を持つようにブランチMUDディレクトリにセキュリティを設定します。
ブランチ管理者は、詳細ブランチのプロジェクト、および開発者用のファイングレイン・プロジェクトを定義します。必要に応じて、ブランチ管理者は開発イニシアティブの委任ブランチ以外の追加ブランチを、開発者がそのリポジトリにチェックアウトできるように権限を設定してデプロイします。
個々の開発者は、メイン・ブランチへのアクセスが許可されていないため、委任ブランチMUDディレクトリからチェックアウトして本番の不具合を修正します。
開発者がすべての変更を公開したら、ブランチ管理者は統合テスト用の委任ブランチにそれらのブランチをチェックインします。
統合テストが完了した後に委任ブランチを本番にプロモートするには、メインMUD管理者は次の2つの手順を実行します。
委任ブランチ・リポジトリ共有ディレクトリからブランチ・マスター・リポジトリを削除して、管理ツールを使用してそれをメイン・ブランチにチェックインしなおします。
メイン・ブランチ・マスター・リポジトリを本番に移行します。
通常、メインMUD管理者はブランチを再度チェックアウトして、次の開発フェーズ用の委任ブランチ共有MUDディレクトリにブランチ・リポジトリを配置します。ブランチ管理者は次のレベルのブランチをチェックアウトしてブランチ共有MUDディレクトリにリポジトリを配置することで、開発者がファイングレイン・プロジェクトをチェックアウトして作業を開始できるようにします。
様々な状況や環境に対して最適化される様々なマージ・ツールがあります。
使用するマージ・アプローチおよびユーティリティを決定する場合、WindowsまたはUNIXシステムでタスクを実行する必要があるかどうかを検討する必要があります。また、セマンティック・モデルに加えた変更をマージする必要があるかどうか、様々な開発の取組みから2つのセマンティック・モデルを組み合せる必要があるかどうかなどの要件も検討する必要があります。
重要
Oracle BI EEツール(nqcmd
、biserverxmlcli
、comparerpd
など)を使用するときには、SQLが受け入れる形式と一致するように入力を編集する必要があります。たとえば、XMLコンテンツには一重引用符を含めないようにします。
この表は、様々な要件を満たすマージ・アプローチおよびツールを示しています。
要件 | マージ・アプローチ | 使用するツール | プラットフォーム |
---|---|---|---|
|
3方向マージ |
MUDマージ |
Windows |
|
3方向マージ |
リポジトリ・マージ・ウィザードで、完全なマージを使用します。 |
Windows |
|
3方向マージ |
パッチ・マージを選択したリポジトリ・マージ・ウィザードで、Patchrpdユーティリティを使用します。 |
|
|
2方向マージ |
リポジトリ・マージ・ウィザードで、ブランクのオリジナルを選択します。 |
Windows |
|
挿入-更新-削除 |
XMLのコピー/貼付け |
すべて |
|
挿入-更新-削除 |
|
Windows |
マージの詳細は、リポジトリのマージを参照してください。