プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Business Intelligence Enterprise Editionメタデータ・リポジトリ作成者ガイド
12c (12.2.1.3.0)
E90110-03
目次へ移動
目次

前
次

17 Oracle BIリポジトリ・ファイルの管理

この章では、Oracle BIリポジトリ・ファイルの管理(リポジトリの比較とマージ、オブジェクトの等化、メタデータの問合せと管理、リポジトリのパスワードの変更など)に関連する作業について説明します。

この章のトピックは、次のとおりです:

リポジトリの比較

2つの異なるリポジトリ内のすべてのリポジトリ・オブジェクトを比較する方法について学習します。

Oracle BI Applicationsのリポジトリを使用していて、その内容をカスタマイズ済の場合、この機能を使用してカスタマイズ済のリポジトリをOracle BI Applicationsを使用して受信した新しいバージョンのリポジトリと比較できます。

「リポジトリのマージ」を参照してください。

この項では、次の項目について説明します。

「比較」ダイアログを使用したリポジトリの比較

このタスクでは、Oracle BI管理ツールでリポジトリを比較します。

開くリポジトリは、現行のリポジトリと呼ばれます。リポジトリを開く方法の指示については、オンラインとオフラインのリポジトリ・モードの使用を参照してください。

  1. 管理ツールで、リポジトリをオフライン・モードで開きます。
  2. ファイル」メニューで、「比較」を選択します。
  3. 「元のリポジトリの選択」ダイアログで、開いているリポジトリと比較するリポジトリを選択します。サブメニューから「リポジトリ」を選択してRPD形式のバイナリ・リポジトリ・ファイルを選択するか、「XML」を選択して一連のMDS XMLドキュメントを選択します。
  4. オフラインで開くダイアログで、リポジトリ・パスワードを入力し、「OK」をクリックします。
  5. 「リポジトリの比較」ダイアログを使用して、リポジトリ間の相違点を確認します。

comparerpdを使用したリポジトリの比較

comparerpdユーティリティを使用してリポジトリを比較し、パッチ・ファイルを作成できます。

管理ツールを使用できない場合、LinuxシステムおよびUNIXシステムではcomparerpdを使用します。

comparerpdユーティリティを実行する場合、システムはリポジトリ・オブジェクトを等化します。等化のプロセスはmy_current_rpd_equalized.rpdファイルを出力します。この情報ファイルには、比較したリポジトリ間の等化済の出力が含まれます。等化により、同一の完全修飾名を持つオブジェクトに、同一の一意の識別子(UID)が付与されます。UIDが異なる同じ名前のオブジェクトは、自動的に更新され同一のUIDを持つようになり、つまり等化されます。等化が不要な場合にも、my_current_rpd_equalized.rpdファイルが生成されます。my_current_rpd_equalized.rpdファイルは、元のリポジトリの場所に保存されます。

comparerpdユーティリティの場所は、次のとおりです。

BI_DOMAIN/bitools/bin

構文

comparerpdユーティリティは次のパラメータを取ります。

comparerpd [-P modified_rpd_password] -C modified_rpd_pathname 
[-W original_rpd_password] -G original_rpd_pathname {-O output_csv_file_name | 
-D output_patch_file_name | -M output_mds_xml_directory_name} -A -E -8

説明:

-P modified_rpd_passwordは、変更済リポジトリのリポジトリ・パスワードで、カスタマ・リポジトリまたはカスタマイズ済リポジトリとも呼ばれます。

-C modified_rpd_pathnameは、変更済リポジトリの名前および場所です。

-W original_rpd_passwordは、元のリポジトリのリポジトリ・パスワードです。

-G original_rpd_pathnameは、元のリポジトリの名前および場所です。

-O output_csv_file_nameは、リポジトリ・オブジェクトの比較の出力を格納するcsvファイルの名前と場所です。

-D output_patch_file_nameは、2つのリポジトリ間の相違を格納するXMLパッチ・ファイルの名前と場所です。

-M output_mds_xml_directory_nameは、MDS XML形式で差異情報を格納する先の最上位レベルのディレクトリです。削除されたXMLファイルのリストは、ディレクトリ・ツリーで最上位レベルのディレクトリの下のディレクトリ・ツリーに格納されます。

oracle\bi\server\base\DeletedFiles.txt

-Oを使用して出力CSVファイルを、-Dを使用してXMLパッチ・ファイルを、-Mを使用してMDS XMLディレクトリ・ツリーを指定することができます。複数の出力タイプを同時に指定することはできません。

パッチに接続プール・パスワードなどのパスワードが含まれている場合、そのパッチ・ファイルは、現行のリポジトリからリポジトリ・パスワードを使用して暗号化されます。現行のリポジトリ・パスワードは、事実上、そのパッチ・ファイルのパスワードになります。このパッチ・ファイル・パスワードが元のリポジトリのリポジトリ・パスワードと異なるときは、パッチを適用するときにそのパッチ・ファイル・パスワードを指定することが必要な場合があります。

-Aはオプションの引数で、XMLパッチ・ファイルに接続プールの暗号化されたパスワードが含まれないようにします。このパラメータは、-Dパラメータと組み合せて使用します。

-Eは、オプションの引数であり、式のテキストの比較にUIDが使用されるようになります。このパラメータを使用すると、名前が同じでもUIDが異なるオブジェクトに必ず同じUIDが割り当てられます。このアクションにより、作成済および削除済としてレポートされるのではなく、変更済としてオブジェクトが比較されます。-Eを指定しない場合、文字列が使用されます。

-8はUTF-8エンコーディングを指定します。

注意:

modified_rpd_passwordoriginal_rpd_passwordの引数はオプションです。パスワード引数を入力しないと、コマンドを実行したときに、必要なパスワードの入力を求めるプロンプトが表示されます。セキュリティ侵害のリスクを最小限にとどめるために、パスワード引数をコマンドラインやスクリプトで指定しないことをお薦めします。これらのパスワード引数は下位互換性のためにのみサポートされています。スクリプト上の理由から、標準入力によってパスワードを指定できます。

例:

comparerpd -C customer.rpd -G original.rpd -O diff.csv
Give password for customer repository: my_cust_password
Give password for original repository: my_orig_password

この例では、customer.rpdリポジトリとoriginal.rpdリポジトリから、diff.csvというCSV形式の比較差異ファイルを生成します。

comparerpd -C customer.rpd -G original.rpd -D my_patch.xml
Give password for customer repository: my_cust_password
Give password for original repository: my_orig_password

この例では、customer.rpdリポジトリとoriginal.rpdリポジトリから、my_patch.xmlというXMLパッチ・ファイルを生成します。

比較モードをオフにする

「リポジトリの比較」オプションおよび「リポジトリのマージ」オプションを使用中にオブジェクトに適用したマークを削除できます。

比較モードをオフにする」オプションは、「比較」アクションの間に「マーク」をクリックした後にのみ使用できます。マークされているリポジトリ・オブジェクトがない場合、このオプションは使用できません。

  • 管理ツールで、「ファイル」を選択してから、「比較モードをオフにする」を選択します。

オブジェクトの等化

同じ名前であってもアップグレードIDの異なる2つのリポジトリにオブジェクトがある場合、これらを同じオブジェクトとして処理する必要が生じる場合があります。

equalizerpdsユーティリティを使用して、リポジトリにあるオブジェクトに同じアップグレードIDを付けます。マージ・プロセスの一部として、これらのオブジェクトを等化できます。

「リポジトリの比較」ダイアログから使用可能な「オブジェクトの等化」ダイアログを使用して、equalizerpdsユーティリティを実行した後のリポジトリをプレビューすることもできます。

この項では、次の項目について説明します。

オブジェクトの等化について

Oracle BI管理ツールでオブジェクトのアップグレードIDを使用して各リポジトリ・オブジェクトの履歴が追跡されるため、オブジェクトの等化が必要になる場合があります。

アップグレードIDは、各オブジェクトに一意の識別子です。

アップグレードIDは、ユーザー・アクションのため、またはマージ中に変更される場合があります。変更が発生し、その後で比較が行われると、Oracle BI管理ツールでは、新しいアップグレードIDを新しいオブジェクトとして処理し、欠落した元のアップグレードIDを削除されたオブジェクトとして処理します。

たとえば、2つの同一のリポジトリがあるとします。一方のリポジトリで、プレゼンテーション列を削除し、これを再作成します。「リポジトリの比較」ダイアログを使用して2つのリポジトリを比較するとき、プレゼンテーション列に2つのエントリがあります。一方は古いオブジェクトを削除済として示し、もう一方は新しいオブジェクトを作成済として示します。「リポジトリの比較」ダイアログを使用しないと、管理ツールでは通常はオブジェクト名とプロパティのみを表示し、基礎となるアップグレードIDを表示しないため、この処理が行われたかどうかの判別が困難になります。

アップグレードIDは一意ではありません。まれにマージするリポジトリに同じアップグレードIDが含まれる場合があります。equalizerpdsユーティリティを実行すると、重複したアップグレードIDの問題が修正され、マージの実行中のエラーが防止されます。

リポジトリをマージして変更を等化する前に、リポジトリに対してequalizerpdsユーティリティを実行します。相反する変更(複製した列を名前変更する場合など)を等化すると、基礎となるアップグレードIDがクリーンアップされ、マージ中の意図しない名前変更が回避されます。

オブジェクトを等化するとき、正規のオブジェクト名変更が異なるオブジェクトになるため、オブジェクトの名前変更の追跡が失われる場合があります。リポジトリ内で実行した意図的な名前変更によって異なるアップグレードIDに変更され、これに続くマージによって、名前変更されたオブジェクトが新しいオブジェクトとして誤って処理される場合があります。この名前変更と新しいオブジェクトに関する状況を回避するには、意図的に名前変更したオブジェクトの変更前の名前と変更後の名前を名前変更マップ・ファイルに入力し、このファイルをユーティリティに渡します。equalizerpdsユーティリティによってこのファイル内の情報が使用され、名前変更された現行のオブジェクトで元のIDが使用されるようになります。

「リポジトリの問合せ」ダイアログを使用して、リポジトリ・オブジェクトのアップグレードIDを表示できます。「リポジトリ・オブジェクトのアップグレードIDの表示」を参照してください。

リポジトリ・オブジェクトのアップグレードIDの表示

「リポジトリの問合せ」ダイアログを使用して、リポジトリ・オブジェクトのアップグレードIDを表示できます。このタスクを使用すると、アップグレードIDを表示した新しい列が「結果」リストに表示されます。

「オプション」ダイアログの「一般」タブで「問合せリポジトリにアップグレードIDを表示」を選択していない場合は、列のオプションとして「アップグレードID」を使用できません。管理ツールのオプションの設定を参照してください。

  1. Oracle BI管理ツールで、リポジトリをオフライン・モードで開きます。
  2. ツール」→「リポジトリの問合せ」を選択します。
  3. 「リポジトリの問合せ」で、「列」をクリックします。
  4. 「列の選択」で、リストから「アップグレードID」を選択するか、「検索」を使用して「アップグレードID」を検出します。
  5. 「問合せ」をクリックします。

「オブジェクトの等化」ダイアログの使用

「オブジェクトの等化」ダイアログを使用すると、リポジトリでequalizerpdsユーティリティを実行した場合のリポジトリの外観をプレビューできます。

「オブジェクトの等化」ダイアログは、同じ名前のオブジェクトに関する変更を比較する便利な方法を提供しますが、変更はいずれも永続しません。

注意:

「オブジェクトの等化」ダイアログを大きなリポジトリに対して使用すると、非常に時間がかかる場合があります。

  1. 管理ツールで、リポジトリをオフライン・モードで開きます。
  2. ファイル」メニューで、「比較」を選択します。
  3. 「元のリポジトリの選択」ダイアログで、サブメニューから「リポジトリ」をクリックしてRPD形式のバイナリ・リポジトリ・ファイルを選択するか、「XML」を選択して一連のMDS XMLドキュメントを選択します。
  4. オフラインで開くダイアログで、リポジトリ・パスワードを入力し、「OK」をクリックします。
  5. 「リポジトリの比較」ダイアログで、「等化」をクリックします。
  6. 「オブジェクトの等化」ダイアログに、異なるアップグレードIDを持つオブジェクトを同じオブジェクトとして見なす変更のリストが表示されます。次のオプションを使用して、変更を等化する方法をモデル化できます。
    • 同じ名前のオブジェクトに関する変更を自動的に等化するには、「自動」をクリックします。この変更は、「等化済」表に表示されます。

      等化できる変更がない場合、表には何も表示されず、「OK」ボタンは無効のままになります。

    • 「削除済」リストでオブジェクトを選択し、「作成」リストで対応するオブジェクトを選択し、「追加」または「プラスの追加」をクリックしてオブジェクトを等化します。「プラスの追加」をクリックすると、該当のオブジェクトおよびその子オブジェクトが「等化済」表に追加されます。「追加」をクリックすると、選択したオブジェクトのみが追加されます。たとえば、「サブジェクト・エリア」を選択して、「プラスの追加」をクリックすると、基礎の「プレゼンテーション」表および「プレゼンテーション」列も追加されます。

      手動選択すると、「自動」ボタンは無効になります。

    • 「等化済」表で行を選択し、「削除」または「すべて削除」をクリックして、「等化済」表からオブジェクトを削除します。「すべて削除」をクリックすると、該当のオブジェクトおよびその子オブジェクトが削除されます。「削除」をクリックすると、選択したオブジェクトのみが削除されます。

      すべての手動選択が削除されると、「自動」ボタンは有効になります。

  7. 変更のモデル化を終了したら「OK」をクリックします。変更が「リポジトリの比較」ダイアログに表示されますが、この変更は、ダイアログを閉じた後には存続しません。

equalizerpdsユーティリティの使用

equalizerpdsユーティリティを使用して、2つの異なるリポジトリにあるオブジェクトのアップグレードIDを等化できます。複数のオブジェクトが同じアップグレードIDを持っている場合、これらは同じオブジェクトと見なされます。このユーティリティは、第1のリポジトリ(元のリポジトリ)のアップグレードIDを2番目のリポジトリ(変更済リポジトリ)のアップグレードIDと比較します。次に、元のリポジトリのアップグレードIDを使用して、同じ名前のオブジェクトのアップグレードIDを等化します。

equalizerpdsユーティリティは、WindowsシステムとUNIXシステムの両方で使用できます。equalizerpdsは、RPD形式のバイナリ・リポジトリでのみ使用できます。

equalizerpdsユーティリティの場所は、次のとおりです。

BI_DOMAIN/bitools/bin

構文

equalizerpdsユーティリティは次のパラメータを取ります。

equalizerpds [-B original_repository_password] -C original_repository_name
{-E modified_repository_password]|-G} -F modified_repository_name [-I input_UDML_script_name][-J rename_map_file]
[-O output_repository_name] [-R output_apply_result_file] [-U output_id_map_file][-Y equalStringSet]

説明:

Gは、変更されたリポジトリ・パスワードに元のリポジトリ・パスワードを使用することを指定します。

rename_map_fileは、名前変更され、等化するオブジェクトのリストを含むテキスト・ファイルです。形式は、次の列を含むタブ区切りファイルです。

TypeName     Name1     Name2

たとえば、Name1からName2に名前変更されたマップ・ファイルに論理列を含めるには、次のように入力します。

ATTRIBUTE "BusinessModel"."Table"."Name1"     "BusinessModel"."Table"."Name2"

タブ区切りは正しくコピーされない場合があるため、ご使用のファイルの基盤としてこの例をカット・アンド・ペーストしないでください。正しいタブを指定した新しいファイルを作成してください。

「TypeNameの値について」を参照してください。

equalStringSetは、同一として処理する文字のセットです。

original_repository_password引数およびmodified_repository_password引数はオプションです。これらのパスワード引数を入力しないと、コマンドを実行したときにこれらのパスワードの入力を求めるプロンプトが表示されます(password1およびpassword2)。セキュリティ侵害のリスクを最小限にとどめるために、パスワード引数をコマンドラインやスクリプトで指定しないことをお薦めします。これらのパスワード引数は下位互換性のためにのみサポートされています。スクリプト上の理由から、標準入力によってパスワードを指定できます。

例:

equalizedrpds -C original.rpd -F modified.rpd -O modified_equalized.rpd
password1: my_original_rpd_password
password2: my_modified_rpd_password

この例では、original.rpdmodified.rpdと比較され、original.rpdのアップグレードIDを使用してアップグレードIDが等化されます。最終結果はmodified_equalized.rpdに書き込まれます。

注意:

入力ファイルと出力ファイルが別のディレクトリにある場合は、両方のファイルについて、リポジトリ・ファイルへの完全なパス名を指定してください。

TypeNameの値について

使用可能なオブジェクト・タイプおよびTypeName用のこれらに対応する値について学習します。

この表は、使用可能なオブジェクト・タイプおよびTypeName用のこれらに対応する値を示します。

オブジェクト・タイプ TypeNameの値

データベース

DATABASE

接続プール

CONNECTION POOL

物理カタログ

CATALOG

物理スキーマ

SCHEMA

物理表示フォルダ

PHYSICAL DISPLAY FOLDER

物理表

TABLE

物理キー

TABLE KEY

物理外部キー

FOREIGN KEY

物理列

COLUMN

物理複合結合

JOIN

物理階層

HIERARCHY

物理レベル

PHYSICAL LEVEL

キューブ列

COLUMN

キューブ表

CUBE TABLE

LDAPサーバー

LDAP SERVER

カスタム・オーセンティケータ

CUSTOM AUTHENTICATOR

変数

VARIABLE

アプリケーション・ロール

SECURITY ROLE

ユーザー

USER

ユーザー・データベース・サインオン

USER DATABASE SIGNON

プロジェクト

PROJECT

ビジネス・モデル

SUBJECT AREA

論理ディメンション

DIMENSION

論理レベル

LEVEL

論理表示フォルダ

LOGICAL DISPLAY FOLDER

論理表

LOGICAL TABLE

論理ソース・フォルダ

LOGICAL SOURCE FOLDER

論理表ソース

LOGICAL TABLE SOURCE

論理列

ATTRIBUTE

論理結合

ROLE RELATIONSHIP

論理キー

LOGICAL KEY

論理外部キー

LOGICAL FOREIGN KEY

プレゼンテーション・カタログ

CATALOG FOLDER

プレゼンテーション表

ENTITY FOLDER

プレゼンテーション列

FOLDER ATTRIBUTE

プレゼンテーション階層

PRESENTATION HIERARCHY

プレゼンテーション・レベル

PRESENTATION LEVEL

カタログ・リンク

CATALOG LINK

ターゲット・レベル

CUSTOMER TYPE

リスト・カタログ

LIST CATALOG

修飾項目

QUALIFIED ITEM

修飾キー

QUALIFYING KEY

サンプリング表

SAMPLING TABLE

セグメンテーション・カタログ

SEGMENTATION CATALOG

リポジトリのマージ

管理ツールで「リポジトリ・マージ・ウィザード」を使用して、Oracle BIリポジトリをマージできます。

リポジトリは、バイナリ(RPD)形式またはMDS XML形式でマージできます。次の3つのタイプのマージがあります。

  • 完全なマージは、一般的に、2つの異なるリポジトリをマージする必要がある開発プロセス中に使用されます。管理ツール は、3方向マージ機能を提供します。この機能を使用すると、両方とも3番目の元のリポジトリから派生した2つのリポジトリをマージできます。完全なマージは、一方のリポジトリから他方のリポジトリにオブジェクトをインポートする場合も使用できます。

  • パッチ・マージは、同じリポジトリの2つのバージョンの間の差を適用するときに使用されます。たとえば、開発バージョンのリポジトリから本番リポジトリに変更を適用するため、またはOracle BI Applicationsのリポジトリをアップグレードするためにパッチ・マージを使用する必要があります。

    デフォルトでは、patchrpdユーティリティのマージ機能は、パッチ・モードを使用します。リポジトリ・マージ・ウィザードを設定してpatchrpdユーティリティのデフォルトのマージ機能と一致させるには、リポジトリ・マージ・ウィザードをパッチ・モードで実行する必要があります。

  • マルチユーザー開発マージは、マルチユーザー開発環境を使用して変更をプロジェクトに公開する際に使用されます。「マルチユーザー開発のマージ・プロセスについて」を参照してください。

リポジトリ・オブジェクトのマージ方法の詳細は、「マージ・ルール」を参照してください。

この項では、次の項目について説明します。

完全なリポジトリ・マージの実行

Oracle BI管理ツールを使用して、異なるリポジトリをマージできます。

この項では、管理ツールで完全な(標準)リポジトリ・マージ機能を使用する方法について説明します。

この項では、次の項目について説明します。

完全なリポジトリ・マージについて

マージ・プロセスには、一般的に次の3つのバージョンのOracle BIリポジトリが関与しています。元のリポジトリ、変更済リポジトリおよび現行のリポジトリです。

元のリポジトリとは元のリポジトリ(親リポジトリ)ですが、変更済リポジトリと現行リポジトリは、マージする2つのリポジトリです。現行のリポジトリは、管理ツールで開いているリポジトリです。

マージ・プロセス中、管理ツールは、現行のリポジトリを使用して、元のリポジトリを変更済リポジトリおよび現行のリポジトリと比較します。2つの比較から生じる未解決の変更がある場合、競合が発生します。たとえば、変更済リポジトリでオブジェクトAをBに名前変更したが、現行のリポジトリでオブジェクトAをCに名前変更すると、競合が発生します。

リポジトリのマージ機能を使用すると、オブジェクト・ベースで最終的なマージ・リポジトリで維持する変更を決定できます。競合がない場合、マージは自動的に実行されます。

完全なマージには、次の2つのタイプがあります。

  • 共通の親。このマージは、3方向マージと呼ばれ、共通の親リポジトリおよび2つの派生リポジトリがある場合に便利です。1つの親(元の)リポジトリと2つの派生リポジトリがあります。マージ後、4番目のマージ済リポジトリが作成されます。

    次の図の例では、バイナリ(RPD)リポジトリをマージしていると想定していますが、MDS XMLリポジトリでこのタイプのマージを実行することもできます。

  • 共通の親なし

    オブジェクトに共通の親を使用しないマージは、2方向マージとも呼ばれます。一方のリポジトリから他方のリポジトリにオブジェクトをインポートする場合は、2方向マージを使用します。共通の親を使用しないオブジェクトのマージを実行するには、管理ツールで空のリポジトリを元のリポジトリとして、3方向マージを使用します。

    次の図で示す例では、バイナリ(RPD)リポジトリをマージしています。MDS XMLリポジトリでこのタイプのマージを実行することもできます。

共通の親を使用した完全なリポジトリ・マージの実行

Oracle BI管理ツールを使用して、共通の親を使用した完全なリポジトリ・マージを実行する方法について説明します。

この方法は、元の親リポジトリがあり、変更済の2つのリポジトリ・バージョン(現行のバージョンおよび変更済バージョン)にあるオブジェクトに対して実行された変更をマージする場合に使用します。現行のリポジトリに存在しないオブジェクトが新しいオブジェクトとして作成されます。

「オブジェクトの等化」および「マージ戦略の参照」を参照してください。

  1. 管理ツールで、現行のリポジトリをオフライン・モードで開きます。
  2. 管理ツールのメニューで、「ファイル」「マージ」を選択します。
  3. 「入力ファイルの選択」画面で、「マージ・タイプ」に「完全なリポジトリ・マージ」を選択します。
  4. 元のマスター・リポジトリ」の横にある「選択」をクリックして元の親リポジトリを選択します。サブメニューから「リポジトリ」を選択してRPD形式のバイナリ・リポジトリ・ファイルを選択するか、「XML」を選択して一連のMDS XMLドキュメントを選択します。

    バイナリ・リポジトリの場合は、元のリポジトリを参照して選択し、「開く」をクリックします。MDS XML形式のリポジトリの場合は、「フォルダの参照」ダイアログを使用して、MDS XMLドキュメントのルート・フォルダの場所を選択し、「OK」をクリックします。

  5. 適切な「リポジトリ・パスワード」フィールドに元のリポジトリのパスワードを入力します。
  6. 修正済リポジトリ」の横にある「選択」をクリックして変更済リポジトリを選択します。サブメニューから「リポジトリ」を選択してRPD形式のバイナリ・リポジトリ・ファイルを選択するか、「XML」を選択して一連のMDS XMLドキュメントを選択します。

    バイナリ・リポジトリの場合は、変更済リポジトリを参照して選択し、「開く」をクリックします。MDS XML形式のリポジトリの場合は、「フォルダの参照」ダイアログを使用して、MDS XMLドキュメントのルート・フォルダの場所を選択し、「OK」をクリックします。

  7. 適切な「リポジトリ・パスワード」フィールドに変更済リポジトリのパスワードを入力します。
  8. オプションで、「マージ済リポジトリに名前を付けて保存」フィールドの横にある「選択」をクリックして、保存済(マージ済)リポジトリのデフォルトの名前および場所を変更できます。サブメニューから「リポジトリ」を選択してマージ済リポジトリをRPD形式のバイナリ・リポジトリ・ファイルとして保存するか、「XML」を選択してマージ済リポジトリを一連のMDS XMLドキュメントとして保存します。

    バイナリ・リポジトリの場合は、新しい名前と場所を指定して、「保存」をクリックします。MDS XML形式のリポジトリの場合は、「フォルダの参照」ダイアログを使用して、MDS XMLドキュメントのルート・フォルダの場所を選択し、「OK」をクリックします。

  9. マージする前に、変更を等化して基礎のオブジェクトIDをクリーンアップすることをお薦めします。変更を等化していない場合、「マージ中に等化」を選択して、マージ・プロセスの一部としてオブジェクトを等化します。このオプションを選択すると、マージのパフォーマンスに影響する場合があります。
  10. 「次」をクリックします。競合がある場合、「リポジトリ・マージ・ウィザード」の「マージ戦略の定義」画面が表示されます。競合がない場合、「リポジトリ・マージ・ウィザード」は閉じます。
  11. 「マージ戦略の定義」画面には、このマージに関する競合を示すデシジョン表が表示されます。

    マージ済リポジトリにオブジェクトを含めるか、ここからオブジェクトを除外するかを決定するには、「デシジョン」リストで「現行」または「変更済」を選択します。「現行」を選択して現行のリポジトリにある選択したオブジェクトに対する変更を保持するか、または「変更済」を選択して変更済リポジトリにある選択したオブジェクトに対する変更を保持します。

    デシジョン表でオブジェクトを選択すると、デシジョン表の下の読取り専用テキスト・ボックスに、現在のリポジトリでそのオブジェクトに加えられた変更に関する説明が表示されます。さらに、ダイアログの下部のツリー・パネルに、選択した行に関して影響を受けるオブジェクトが表示されます。また、ツリー・ビューの1つでオブジェクトを選択して、デシジョン表の対応する行を自動的にハイライト表示にできます。

    「デシジョン」リストの「変更済」オプションには、オブジェクトをマージ済リポジトリに追加するか、またはマージ済リポジトリから削除するかを示す接尾辞が表示されます。「変更済(A)」はこのオブジェクトが追加されることを示し、「変更済(D)」はこのオブジェクトが削除されることを示します。

    競合のタイプは、「競合」表の「説明」列に表示されます。選択できる決定は、この列に表示される競合のタイプによって異なります。次のリストに、様々なタイプの競合に対する結果の例を示します。

    • 現行に追加されました: 「現行」を選択すると、新しいオブジェクトがマージ済リポジトリに保持されます。「変更済(D)」を選択すると、新しいオブジェクトがマージ済リポジトリから削除されます。

    • 現行から削除: 「現行」を選択すると、リポジトリはそのままです(オブジェクトはマージ済リポジトリに追加されません)。「変更済(A)」を選択すると、オブジェクトがマージ済リポジトリに戻されます。

    • 両方で変更(異なる): オブジェクトは、追加も削除もされませんでしたが、少なくともプロパティの1つが変更されました。行の左側のプラス記号(+)をクリックして、変更されたプロパティ、および元のバージョン、現行バージョン、ならびに変更済バージョンのリポジトリにおける変更されたプロパティの値を表示します。プロパティの値は、短い文字列のみで表示されます。説明、機能、init文字列などの長い文字列は表示されません。

      マージ済バージョンのリポジトリに保持する値のオプションをクリックします。エイリアスなど一部のプロパティでは、「選択内容のマージ」オプションを選択して、1つずつ選択するのではなくプロパティをマージできます。このオプションは、プロパティをマージできる場合のみ使用できます。

      注意:

      通常、「変更済」リポジトリに追加したオブジェクトまたはここから削除したオブジェクトに関して、マージ・デシジョンを行う必要はありません。ただし、このマージの変更統計を表示して、「変更済」に追加したオブジェクトやここから削除したオブジェクトなどの変更のサマリーを確認できます。

    マージ・デシジョンを行うと、表内のそのデシジョンの行が赤から黒に変わります。すべての行に「デシジョン」フィールドの値が含まれると、「終了」ボタンが有効になります。

  12. マージ・デシジョンの実行に加えて、「マージ戦略の定義」画面では別の操作を実行できます。
  13. 「終了」をクリックします。
マージ戦略の参照

この表を使用して、共通の親を使用したリポジトリをマージするときのマージ・デシジョンに役立ててください。

この表では、「マージ戦略の定義」画面の要素をリストし、説明します。

要素 説明

「競合」表

「競合」表には、次の列があります。

  • タイプ: 競合があるオブジェクトのタイプ、たとえば「プレゼンテーション列」。

  • 名前: 競合があるオブジェクトの名前。

  • 説明: 競合の理由(「現行に追加されました」など)。様々な競合タイプの説明は、前のステップを参照してください。

  • デシジョン: マージ済リポジトリに保持する変更に応じてデシジョン(「現行」、「変更済(A)」、「変更済(D)」、「プロパティ別」など)を選択します。様々なデシジョンの結果の説明は、前のステップを参照してください。

各リポジトリで変更されるプロパティを持つオブジェクトの場合、変更されるプロパティの詳細を含むサブ表(グリッド)が表示されます。このグリッドには、次の列が含まれます。

  • プロパティ: 各リポジトリで変更されたプロパティの名前。

  • オリジナル: 元のリポジトリにあるプロパティの値。

  • 変更済: 変更済リポジトリにあるプロパティの値。この値を保持するには、このオプションを選択します。

  • 現行: 現行のリポジトリにあるプロパティの値。この値を保持するには、このオプションを選択します。

  • 選択内容のマージ: エイリアスなど一部のプロパティでは、このオプションを選択して、いずれかを選択するのではなく、プロパティ値をマージできます。

修飾名の表示

これを選択すると、デシジョン表にあるオブジェクトの完全修飾名が表示されます(「Paint」...「Month Year Ago fact」など)。

「修飾名の表示」オプションが選択されている場合、オブジェクト名の一部が長すぎて、デシジョン表のセルに入らない場合があります。省略された名前の上にマウスを移動して、オブジェクトまたはプロパティの完全な名前を表示します。あるいは、手動で列のサイズを変更するか、または列セパレータをダブルクリックして列をオブジェクト名の幅に広げます。

デフォルト・デシジョンの設定

クリックすると、管理ツールによる競合の解決方法を選択できます。各競合のデシジョンを手動で設定しない場合はこのオプションを使用します。

管理ツールがすべての未解決および解決済の競合(つまり、デシジョンをすでに指定した競合)を解決する場合は、「すべて」を選択します。このオプションを選択すると、管理ツールはすでに指定した競合のデシジョンを確認し、必要に応じて変更します。

管理ツールが未解決の競合のみを解決する場合は、未決定のみを選択します。つまり、デシジョンを指定していないすべての競合にデシジョンを割り当てます。このオプションを選択すると、管理ツールはすでに指定した競合のデシジョンを保持します。

マージされたRPDの整合性のチェック

これを選択すると、マージ済ファイルが保存される前に整合性のチェックが実行されます。

オブジェクト・ビューの非表示

ダイアログのツリー・パネルを非表示にするには、このオプションを選択します。ツリー・パネルは、競合デシジョン表で選択した行に関して影響を受けるオブジェクトを表示します。

ツリー・パネルを非表示にすると、マージ戦略の定義」画面のパフォーマンスを向上できます。

ファイルへのデシジョンの保存

リポジトリ・サブディレクトリにある一時的な変更を含むファイルを保存し、マージに関する作業を停止し、後で継続できるようにします。変更(デシジョン)を保存した後、「取消」をクリックして、リポジトリのマージダイアログを閉じます。

デシジョンの数が多い場合、マージ・デシジョンをCSVファイルに保存し、このファイルをExcelまたはテキスト・エディタで開き、マージ・デシジョンを手動で変更することにより、時間を節約できます。次に、更新したマージ・デシジョン・ファイルを「マージ戦略の定義」画面でロードするか、そのデシジョン・ファイルをpatchrpdの引数として含めることができます。

デシジョン・ファイルのロード

保存したデシジョン・ファイルをリポジトリ・サブディレクトリからロードし、リポジトリのマージ処理を続行できるようにします。

このオプションは、特に、patchrpdを使用した自動パッチ・マージの実行後に競合を解決する際に役立ちます。「patchrpdを使用したパッチの適用」を参照してください。

名前またはタイプによる検索

オブジェクトの「名前」および「タイプ」で検索します(「初期化ブロック」など)。

再検索

最新の「検索」値を再検索します。

変更統計の表示

このマージの統計(変更済リポジトリから削除されたオブジェクトの数、両方のリポジトリで変更されたオブジェクトの数など)を表示します。

Details

別のウィンドウのデシジョン表の下の読取り専用のテキスト・ボックスにテキストを表示します。

元の/変更済/現行のリポジトリの表示

選択したリポジトリで影響を受けるオブジェクトのプロパティを表示します。

共通の親を使用しない完全なリポジトリ・マージの実行

Oracle BI管理ツールを使用して、共通の親を使用せずに完全なリポジトリ・マージを実行する方法について説明します。

この方法は、あるリポジトリ(変更済リポジトリ)から別のリポジトリ(現行のリポジトリ)にオブジェクトをインポートする場合に使用します。

注意:

現行のとして定義することを選択したリポジトリでは、「プレゼンテーション」レイヤーは、「物理」レイヤーまたは「ビジネス・モデルとマッピング」レイヤーの、保持するオブジェクトを参照します。「プレゼンテーション」レイヤーのオブジェクトによって参照されない現行のリポジトリのビジネス・モデル、データベースや接続プールなどのオブジェクトは、マージ中に廃棄されます。必要に応じて、マージを実行する前に、これらのオブジェクトを参照するプレースホルダ・サブジェクト・エリアを追加して、必要なオブジェクトが保持されるようにする必要がある場合があります。

マージ・プロセス中にどのオブジェクトが保持され、どのオブジェクトが廃棄されるかの詳細は、「マージ・ルール」を参照してください。

  1. 管理ツールで、「ファイル」を選択してから、マージで元のリポジトリとして機能する「新規リポジトリ」を選択します。
  2. 新規リポジトリの作成ウィザードで、リポジトリの名前を入力します(たとえば、 blank.rpd)。
  3. 「メタデータのインポート」「いいえ」を選択します。
  4. このリポジトリに使用するリポジトリ・パスワードを入力し、確認します。
  5. 「終了」をクリックします。
  6. 空のリポジトリを閉じます。
  7. オフライン・モードで現行のリポジトリ(つまり、インポートするオブジェクトを含むリポジトリ)を開きます。
  8. 管理ツールのメニューで、「ファイル」「マージ」を選択します。
  9. 「入力ファイルの選択」で、「マージ・タイプ」「完全なリポジトリ・マージ」を選択します。
  10. 「元のマスター・リポジトリ」の横にある「選択」をクリックし、「リポジトリ」をクリックします。
  11. 空のリポジトリ・ファイルに移動して「開く」をクリックし、パスワード・フィールドは空白のままにします。
  12. 「修正済リポジトリ」フィールドの横にある「選択」をクリックして、目的のリポジトリを選択します。
    1. サブメニューから「リポジトリ」を選択してRPD形式のバイナリ・リポジトリ・ファイルを選択するか、「XML」を選択して一連のMDS XMLドキュメントを選択します。
    2. バイナリ・リポジトリの場合は、変更済リポジトリを参照して選択し、「開く」をクリックします。
    3. MDS XML形式のリポジトリの場合は、「フォルダの参照」ダイアログを使用して、MDS XMLドキュメントのルート・フォルダの場所を選択し、「OK」をクリックします。
  13. 適切な「パスワード」フィールドに変更済リポジトリのパスワードを入力します。
  14. 「次」をクリックします。

    競合がある場合は、リポジトリ・マージ・ウィザードの「マージ戦略の定義」にメッセージが表示されます。

  15. 「マージ戦略の定義」で、「デシジョン」リストから「現行」または「変更済」を選択します。

    デシジョン表でオブジェクトを選択すると、デシジョン表の下の読取り専用テキスト・ボックスに、現在のリポジトリでそのオブジェクトに加えられた変更に関する説明が表示されます。「マージ戦略の定義」の追加オプション(マージ・デシジョンのカンマ区切り形式(.csv)ファイルへの保存など)の詳細は、表を参照してください。

    マージ・デシジョンを行うと、表内のそのデシジョンの行が赤から黒に変わります。

  16. 「終了」をクリックします。

パッチ・マージの実行

パッチ・マージを使用して、リポジトリに加えられた変更のみを格納したXMLパッチ・ファイルを生成できます。

このパッチを古い(元の)バージョンのリポジトリに適用し、新しいバージョンを作成できます。

このマージ方法は、開発から本番へのシナリオに関して非常に便利であり、Oracle BI Applicationsの顧客がリポジトリをアップグレードする場合にも使用できます。

この項では、2つのリポジトリ間の相違点を含むパッチを生成し、このパッチをリポジトリ・ファイルに適用する方法について説明します。

この項では、次の項目について説明します。

パッチ・マージについて

パッチ・マージでは、現行のリポジトリと元のリポジトリの間の相違点を含むパッチを作成します。

このパッチ・ファイルを変更済リポジトリに適用します。現在および元のリポジトリの違いは、両方のリポジトリの既存のプロジェクトの一致に存在する必要があります。

開発から本番へのシナリオ。元の親リポジトリ、開発の最新変更が組み込まれた現行リポジトリ、および元のリポジトリのデプロイ済コピーである変更済リポジトリが存在します。

パッチを生成するには、現行のリポジトリを開き、元のリポジトリを選択し、次にパッチを作成します。

パッチを適用するには、変更済リポジトリを開いて元のリポジトリを選択してパッチを適用します。

Oracle BI Applicationsのリポジトリ・アップグレード・シナリオ。現行のリポジトリはオラクル社から出荷された最新バージョンのリポジトリで、元のリポジトリはオラクル社から出荷された元のリポジトリです。変更済リポジトリは元のリポジトリにユーザーによる変更が加えられたものです。

リポジトリ・パッチの生成

Oracle BI管理ツールを使用して2つのリポジトリ間の相違点を含むパッチを生成します。

「オブジェクトの等化」を参照してください。

  1. 管理ツールで、現行のOracle BI EEリポジトリをオフライン・モードで開きます。つまり、パッチに入れる変更を含む更新済リポジトリを開きます。

    注意:

    プロジェクトを使用して変更が行われる場合、メタデータの変更を既存のプロジェクトに追加する必要があります。新しいプロジェクトに行われた変更は、パッチ・モード・プロセス中に失われます。

  2. ファイル」を選択し、「比較」を選択します。
  3. 元のOracle BI EEリポジトリを選択します。サブメニューから「リポジトリ」を選択してRPD形式のバイナリ・リポジトリ・ファイルを選択するか、「XML」を選択して一連のMDS XMLドキュメントを選択します。
  4. オフラインで開くダイアログで、リポジトリ・パスワードを入力し、「OK」をクリックします。
  5. パッチを生成する前に、変更を等化して基礎のオブジェクトIDをクリーンアップすることをお薦めします。
  6. 「リポジトリの比較」ダイアログで、リポジトリ間の変更を確認します。次に、「パッチの作成」をクリックします。
  7. 「パッチの作成」ダイアログで、パッチ・ファイルの名前(my_patch.xmlなど)を入力し、「保存」をクリックします。

パッチに接続プール・パスワードなどのパスワードが含まれている場合、そのパッチ・ファイルは、現行のリポジトリからリポジトリ・パスワードを使用して暗号化されます。現行のリポジトリ・パスワードは、事実上、そのパッチ・ファイルのパスワードになります。このパッチ・ファイル・パスワードが元のリポジトリのリポジトリ・パスワードと異なるときは、パッチを適用するときにそのパッチ・ファイル・パスワードを指定することが必要な場合があります。

comparerpdユーティリティを使用してコマンドラインでパッチを生成することもできます。「comparerpdを使用したリポジトリの比較」を参照してください。

リポジトリ・パッチの適用

Oracle BI管理ツールを使用して2つのリポジトリ間の相違点を含むパッチを適用します。

注意:

大きなマルチユーザー・リポジトリから小さなサブセット抽出リポジトリにパッチを適用できます。この場合、サブセット内の変更のみがパッチから適用されます。

  1. 管理ツールで、Oracle BIリポジトリをオフライン・モードで開いて、パッチを適用します。
  2. ファイル」→「マージ」を選択します。「リポジトリ・マージ・ウィザード」が表示されます。
  3. マージ・タイプ」で、「パッチ・リポジトリ・マージ」を選択します。このオプションを選択すると、「サブセットの部分マージ」フィールドが表示されます。デフォルトでは、このフィールドが選択され、パッチがサブセットの部分マージとして適用されます。パッチをリポジトリ全体に適用する場合、このオプションをクリアします。
  4. 元のマスター・リポジトリ」の横にある「選択」をクリックして元の親リポジトリを選択します。サブメニューから「リポジトリ」を選択してRPD形式のバイナリ・リポジトリ・ファイルを選択するか、「XML」を選択して一連のMDS XMLドキュメントを選択します。

    バイナリ・リポジトリの場合は、元のリポジトリを参照して選択し、「開く」をクリックします。MDS XML形式のリポジトリの場合は、「フォルダの参照」ダイアログを使用して、MDS XMLドキュメントのルート・フォルダの場所を選択し、「OK」をクリックします。

    注意:

    元のリポジトリは変更済(現在開いている)リポジトリと同じにはできません。

  5. 元のリポジトリのリポジトリ・パスワードを入力します。
  6. 「パッチ・ファイル」の横にある「選択」をクリックします。適用するパッチ・ファイルを参照して選択し、「開く」をクリックします。パッチ・ファイルはXML形式であることが必要です。
  7. 多くの場合、パッチ・パスワードフィールドは空白のままでかまいません。パッチ・ファイル・パスワードを入力する必要があるのは、接続プール・パスワードなどオブジェクトのパスワードがパッチ・ファイルに含まれている場合と、そのパッチ・ファイル・パスワードが元のリポジトリ・パスワードとは異なる場合のみです。パッチ・ファイル・パスワードは、現行のリポジトリのパスワードと同じです。
  8. オプションで、「マージ済リポジトリに名前を付けて保存」フィールドの横にある「選択」をクリックして、保存済(パッチ適用済)リポジトリのデフォルトの名前および場所を変更できます。サブメニューから「リポジトリ」を選択してマージ済リポジトリをRPD形式のバイナリ・リポジトリ・ファイルとして保存するか、 「XML」を選択してマージ済リポジトリを一連のMDS XMLドキュメントとして保存します。

    バイナリ・リポジトリの場合は、新しい名前と場所を指定して、「保存」をクリックします。MDS XML形式のリポジトリの場合は、「フォルダの参照」ダイアログを使用して、MDS XMLドキュメントのルート・フォルダの場所を選択し、「OK」をクリックします。

  9. 「終了」をクリックします。
patchrpdを使用したパッチの適用

patchrpdユーティリティを使用してパッチを適用できます。

管理ツールを使用できないLinuxシステムおよびUNIXシステムでリポジトリのパッチ適用を行う場合にpatchrpdを使用します。patchrpdユーティリティは、WindowsシステムとUNIXシステムの両方で使用できます。patchrpdは、RPD形式のバイナリ・リポジトリでのみ実行できます。

管理ツールのパッチ機能と異なり、patchrpdではデフォルトのデシジョンを競合に自動的に適用できます。patchrpdでは、デシジョン・ファイルにすべての競合を保存して、結果を確認し、追加の手動変更が必要かどうかを決定できます。「パッチ・プロセスを自動化するためのPatchrpdの使用方法」を参照してください。

patchrpdには、マージ・ルールのセットを選択して適用する機能もあります。デフォルトではパッチのマージ・ルールが使用されますが、オプションで完全な(アップグレード)マージ・ルールまたはマルチユーザー開発マージ・ルールを使用することを選択できます。

patchrpdユーティリティの場所は、次のとおりです。

BI_DOMAIN/bitools/bin

構文

patchrpdユーティリティは次のパラメータを取ります。

patchrpd [-P modified_rpd_password] -C modified_rpd_pathname 
[-Q original_rpd_password] -G original_rpd_pathname [-S patch_file_password] 
-I patch_file_pathname [-S patch_file_2_password -I patch_file_2_pathname ...]
[-D input_decision_file_pathname] -O output_rpd_pathname 
[-V output_decision_file_pathname] [-E] [-M mode] [-R] [-A] [-U] [-N] [-8]

説明:

-P modified_rpd_passwordは、変更済リポジトリのリポジトリ・パスワードで、カスタマ・リポジトリまたはカスタマイズ済リポジトリとも呼ばれます。

-C modified_rpd_pathnameは、変更済リポジトリの名前および場所です。

-Q original_rpd_passwordは、元のリポジトリのリポジトリ・パスワードです。

-G original_rpd_pathnameは、元のリポジトリの名前および場所です。

-S patch_file_passwordは、パッチ・ファイルのパスワードです。パッチ・ファイル・パスワードは、現行のリポジトリのパスワードと同じです。パッチ・ファイル・パスワードを入力する必要があるのは、接続プール・パスワードなどオブジェクトのパスワードがパッチ・ファイルに含まれている場合と、そのパッチ・ファイル・パスワードが元のリポジトリ・パスワードとは異なる場合のみです。

-I patch_file_pathnameは、適用するXMLパッチ・ファイルの名前と場所です。複数の-I引数(およびペアの-S引数も必要)を含めることで複数のパッチを適用できます。

-D input_decision_file_pathnameは、このパッチ・マージの動作に影響を与えるために使用するCSV形式のデシジョン・ファイルの名前と場所です。この引数はオプションです。

-O output_rpd_pathnameは、生成するRPD出力ファイルの名前と場所です。

-V output_decision_file_pathnameは、CSV形式のデシジョン・ファイルの生成を可能にするオプションの引数です。デシジョン・ファイルは、マージによるすべての競合を示します。つまり、デシジョン・ファイルには、管理ツールのマージ・ウィザードの「マージ戦略の定義」画面に表示されるデシジョンがリストされます。デシジョン・ファイルは、ユーザーの入力によって影響を受ける可能性があるすべてのアイテムの記録を提供します。この引数は、-U引数とともに使用する必要があります。

-Eは、等化ステップのスキップを可能にするオプションの引数です。

-M modeは、マージのモードの変更を可能にするオプションの引数です。デフォルトでは、patchrpdはパッチ・モードで実行され、可能なかぎり多くの変更が警告なしで適用されます。このデフォルトを変更するため、モードについては、マルチユーザー開発マージのマージ・ルールを使用するにはmudを、完全なマージのマージ・ルールを使用するにはupgradeを指定します。「マージ・ルール」を参照してください。

デフォルトでは、管理ツールのマージ機能は完全なマージを使用します。管理ツールのデフォルト・マージ機能と一致させるためにpatchrpdユーティリティを実行する場合、-M mode引数のupgradeを指定する必要があります。

-Rは、論理列の整合性チェックをスキップするオプションの引数です。このオプションは、パッチ・ファイルに論理列から物理列へのマッピングが含まれていない場合に、パッチ・プロセスを高速化できます。

-Aは、マルチユーザー開発環境でサブセット・パッチをスキップし、かわりに入力リポジトリ・ファイルを使用してパッチを適用できるオプションの引数です。

-Uは、競合に対してデフォルトのデシジョンを自動的に適用して、patchrpdを正常に終了できるようにするオプションの引数です。このパラメータを含めない場合、競合が検出されると、patchrpdによって警告が表示されて終了します。

-Nは、すべての非致命的エラーを無視するために使用するオプションの引数です。非致命的エラーの例として、未解決のオブジェクト、重複したオブジェクト、壊れた式または不正確な式などがあります。

-8はUTF-8エンコーディングを指定します。

注意:

modified_rpd_passwordoriginal_rpd_passwordおよびpatch_file_passwordなどのすべてのパスワードの引数はオプションです。パスワード引数を入力しないと、コマンドを実行したときに、必要なパスワードの入力を求めるプロンプトが表示されます。セキュリティ侵害のリスクを最小限にとどめるために、パスワード引数をコマンドラインやスクリプトで指定しないことをお薦めします。これらのパスワード引数は下位互換性のためにのみサポートされています。スクリプトのために、パスワードを標準入力によって送信できます。

例:

patchrpd -C customer.rpd -G original.rpd -I patch.xml -O patched.rpd 
-V decision.csv -U
Give password for customer repository: my_modified_rpd_password
Give password for original repository: my_original_rpd_password

この例では、patch.xmlというパッチがcustomer.rpdリポジトリに適用され、patched.rpdという出力リポジトリおよびdecision.csvという出力デシジョン・ファイルが生成されます。

注意:

すべてのファイル(リポジトリ・ファイルとXMLパッチ・ファイルを含む)のフルパス名を入力にしてください(これらが異なるディレクトリにある場合)。

リポジトリ・メタデータの問合せおよび管理

リポジトリ問合せを使用してリポジトリ・メタデータを管理し、大きい複雑な問合せを処理するようにリポジトリを設定できます。

この項では、次の項目について説明します。

関連オブジェクトの問合せ

「問合せ関連オブジェクト」では、「物理」レイヤー、「ビジネス・モデルとマッピング」レイヤーまたは「プレゼンテーション」レイヤーから選択した1つ以上のオブジェクトと関連するオブジェクトの問合せを実行できます。

この機能は、同じレイヤーから選択したオブジェクトでのみ使用できます。たとえば、「物理」レイヤーのオブジェクトと「ビジネス・モデルとマッピング」レイヤーのオブジェクトの両方と関連するオブジェクトの問合せは実行できません。「リポジトリ問合せのオプション」を参照してください。

  1. 管理ツールで、リポジトリを開きます。
  2. 単一のレイヤーから同じタイプのオブジェクトを1つ以上選択します(たとえば「ビジネス・モデルとマッピング」レイヤーから一連の論理列)。
  3. オブジェクトを右クリックし、「問合せ関連オブジェクト」を選択します。
  4. オブジェクト・タイプを選択して特定のタイプのオブジェクトに検索を絞り込むか、または「すべてのタイプ」を選択してソース・オブジェクトに関連するオブジェクトすべての問合せを実行します。

オブジェクト・タイプを選択すると、「問合せ関連オブジェクト」ダイアログが表示され、「名前」リストにソース・オブジェクトに関連するオブジェクトが表示されます。

リポジトリ問合せのオプション

「リポジトリの問合せ」ダイアログで使用できるオプションの詳細は、このトピックを確認してください。

オプション 説明

マーク

選択したオブジェクトにマークを付けるには、「名前」リストで1つ以上のオブジェクトを選択し、「マーク」をクリックします。オブジェクトのマークを取るには、オブジェクトを選択し、「マーク」を再クリックします。オブジェクトにマークを付けると、メタデータを作成するときに、視覚的な識別が簡単になります。

アイコンの設定

オブジェクトに別のアイコンを選択するには、「名前」リストで1つ以上のオブジェクトを選択し、「アイコンの設定」をクリックします。オブジェクトに特定のアイコンを設定すると、共通の特性を持つオブジェクトを視覚的に識別できます。たとえば、特定のアイコンを選択し、特定のユーザー・グループのみが使用する列を識別できます。

元のアイコンに戻すには、オブジェクトを選択し、「アイコンの設定」を再クリックします。次に、「関連アイコンの削除」を選択し、「OK」をクリックします。

修飾名の表示

問合せで検出されたオブジェクトの完全修飾名を表示するには、このオプションを使用します。

たとえば、論理列を問い合せる場合、「名前」リストのデフォルト値は、列名です。ただし、「修飾名の表示」を選択した場合、「名前」リストの値はbusinessmodel.logicaltable.columnに変わります。

親の表示

オブジェクトの親階層を表示するには、「名前」リストでオブジェクトを選択し、「親の表示」をクリックします。オブジェクトに親がない場合、メッセージが表示されます。「親の表示」は、ユーザーまたはアプリケーション・ロールとともには使用できません。

「親階層」ダイアログでは、オブジェクトを編集または削除できます。このダイアログでオブジェクトを削除すると、選択したオブジェクトの子オブジェクトもすべて削除されます。

移動

リポジトリの管理ツール・ビューのオブジェクトに移動するには、「名前」リストで1つ以上のオブジェクトを選択して、「移動」をクリックします。選択したオブジェクトは、「物理」レイヤー、「ビジネス・モデルとマッピング」レイヤーまたは「プレゼンテーション」レイヤーにハイライト表示されます。

このオプションを選択すると、「問合せ関連オブジェクト」ダイアログは閉じます。

リポジトリの問合せ

リポジトリのオブジェクトを問い合せて、リポジトリの内部構造を調査して更新します。

リポジトリを問い合せ、論理ソースにマップされたすべての表、特定の物理列へのすべての参照、論理ソース用のコンテンツ・フィルタ、初期化ブロック、セキュリティ権限、ユーザー権限などの項目を示すレポートを表示します。リポジトリに影響を及ぼす可能性があるデータベース内の物理変更を行う前に、レポートを実行します。レポートは、ファイルにカンマ区切り形式(CSV)またはタブ区切り形式で保存できます。

フィルタを作成して特定の値を表示するための結果の制限、問合せの保存、以前に保存した問合せの実行、または新しいリポジトリ・オブジェクトの作成を実行できます。「問合せ結果に対するフィルタの作成」を参照してください。

  1. 管理ツールで、リポジトリを開きます。
  2. ツール」→「リポジトリの問合せ」を選択します。
  3. 「リポジトリの問合せ」ダイアログで、表を参考にして問合せ情報をすべて入力します。
  4. 「問合せ」をクリックします。

問合せ結果に対するフィルタの作成

「リポジトリ・フィルタの問合せ」ダイアログを使用して、結果で返すデータを選択する基準を作成します。

複雑なフィルタを作成している場合、各制約を追加してフィルタ構造が各制約に対して有効であることを確認してから「OK」をクリックする必要がある場合があります。

複数のフィルタを作成できます。このようにすると、「演算子」フィールドがアクティブになります。「演算子」フィールドがアクティブのとき、「AND」条件および「OR」条件を設定できます。

「問合せのフィルタの例」を参照してください。

「一般」タブの「オプション」ダイアログで「問合せリポジトリにアップグレードIDを表示」を選択し、「アップグレードID」によるフィルタを有効化します。

  1. 管理ツール「ツール」を選択してから、「リポジトリの問合せ」を選択します。
  2. 「リポジトリの問合せ」ダイアログで、「結果」リストの項目を選択するか、または「タイプ」リストから項目を選択し、「フィルタ」をクリックします。
  3. 「リポジトリ・フィルタの問合せ」ダイアログで、「項目」フィールドをクリックします。「項目」リストには、フィルタ処理できる項目が含まれています。
  4. 「項目」リストで、前のステップで選択した「結果」または「タイプ」オブジェクトに適用するフィルタを選択します。
  5. 必要に応じて、「値」列に情報を入力します。
  6. OK」をクリックして、「リポジトリの問合せ」ダイアログに戻ります。

問合せのフィルタの例

例を確認して、問合せでフィルタを使用する方法を理解してください。

ビジネス・モデルで参照されるすべてのデータベースの表示

次の例は、特定のビジネス・モデルで参照されるデータベースをすべて表示するフィルタの作成方法を示します。

  1. 「リポジトリの問合せ」ダイアログで、「タイプ」リストから「データベース」を選択し、「フィルタ」をクリックします。

  2. 「リポジトリ・フィルタの問合せ」ダイアログで、「項目」フィールドをクリックし、「関連先」を選択します。

  3. 」フィールドの右側の省略記号ボタンをクリックし、このリストで「オブジェクトの選択」を選択します。

  4. 「選択」ダイアログで、フィルタ処理するビジネス・モデルを選択し、「選択」をクリックします。選択項目が「」フィールドに表示されます。

  5. OK」をクリックして、「リポジトリの問合せ」ダイアログに戻ります。「フィルタ」ボタンの左側のボックスにフィルタが表示されます。

  6. 「問合せ」をクリックします。「結果」リストに、選択したビジネス・モデルが参照するデータベースが表示されます。

論理列にマップされるすべてのプレゼンテーション列の表示

次の例は、特定の論理列にマップされるプレゼンテーション列をすべて表示するフィルタの作成方法を示します。

  1. 「リポジトリの問合せ」ダイアログで、「タイプ」リストから「プレゼンテーション列」を選択し、「フィルタ」をクリックします。

  2. 「リポジトリ・フィルタの問合せ」ダイアログで、「項目」フィールドをクリックし、「」を選択します。

  3. 」フィールドの右側の省略記号ボタンをクリックし、このリストで「オブジェクトの選択」を選択します。

  4. 「選択」ダイアログで、フィルタ処理する列を選択し、「選択」をクリックします。選択項目が「」フィールドに表示されます。

  5. OK」をクリックして、「リポジトリの問合せ」ダイアログに戻ります。「フィルタ」ボタンの左側のボックスにフィルタが表示されます。

  6. 「問合せ」をクリックします。「結果」リストに、選択した論理列にマップされるプレゼンテーション列が表示されます。

ネストされた問合せ

次の例は、フィルタ自身が別の問合せであるネストされた問合せを示します。

  1. 「リポジトリの問合せ」ダイアログで、「タイプ」リストから「論理列」を選択し、「フィルタ」をクリックします。

  2. 「リポジトリ・フィルタの問合せ」ダイアログで、「項目」フィールドをクリックし、「関連先」を選択します。

  3. 」フィールドの右側の省略記号ボタンをクリックし、このリストで「物理列の条件の設定」を選択します。

  4. 新しい「リポジトリ・フィルタの問合せ」ダイアログで、「項目」フィールドをクリックし、「ソース列」を選択します。
  5. 」フィールドの右側の省略記号ボタンをクリックし、このリストで「オブジェクトの選択」を選択します。

  6. 「参照」ダイアログで、ソース物理列(たとえば、列A)を選択し、「選択」をクリックします。

  7. サブ問合せ条件の「リポジトリ・フィルタの問合せ」ダイアログで「OK」をクリックします。サブ問合せは、選択したソース列に対してすべてのエイリアスを問い合せます。

  8. メイン問合せの「リポジトリ・フィルタの問合せ」ダイアログで、次の行の「項目」フィールドをクリックし、「関連先」を選択します。

  9. 」フィールドの右側の省略記号ボタンをクリックし、このリストで「オブジェクトの選択」を選択します。

  10. 「参照」ダイアログで、同じソース物理列(たとえば、列A)を選択し、「選択」をクリックします。

  11. 演算子」リストから、「OR」を選択します。

  12. OK」をクリックして、「リポジトリの問合せ」ダイアログに戻ります。「フィルタ」ボタンの左側のボックスにフィルタが表示されます。

  13. 「問合せ」をクリックします。「結果」リストに、列Aまたは列Aのエイリアスのいずれかに関連する論理列のリストが表示されます。

大きい複雑な問合せのためのリポジトリの構成

Oracle BIサーバーによるメモリー制限を超える複雑で長い問合せをサポートするには、obis.propertiesファイルのOBIS_DISABLE_QUERY_GOVERN_MEMORYパラメータ値を変更します。

OBIS_DISABLE_QUERY_GOVERN_MEMORYの値を変更しても、再帰的問合せによってOracle BIサーバーが中断するのを防ぐわけではありません。デフォルトでは、サービスの中断を防ぐために、すべての問合せに対してメモリー制限が適用されます。ただし、問合せが組込み制限を超える場合には、制限によって複雑な大きい問合せを実行できなくなる場合もあります。OBIS_DISABLE_QUERY_GOVERN_MEMORY値を1に設定して問合せガバナーのメモリー制限を無効化すると、複雑な大きい問合せの実行が許可される場合があります。ただし、Oracle BIサーバーは、その可用性を中断する可能性のある再帰的問合せから保護されなくなります。

次のエラー・メッセージが表示された場合は、OBIS_DISABLE_QUERY_GOVERN_MEMORY値を変更してメモリー制限をバイパスすることを検討してください。

State: HY000. Code: 43119. [nQSError: 43119] Query Failed: (HY000)
State: HY000. Code: 59151. [nQSError: 59151] The user query with request
id:request_ID and logical hash:hash_number exceeded the maximum query governing
memory limit. (HY000)
  1. 次の場所から編集するobis.propertiesファイルを開きます。

    obiee_home/user_projects/domains/bi/config/fmwconfig/bienv/OBIS/obis.properties

  2. ファイルに次の情報を付加します。

    OBIS_DISABLE_QUERY_GOVERN_MEMORY=1

  3. Oracle BIサーバーを再起動し、問合せを再試行します。

Oracle BIリポジトリのパスワードの変更

各Oracle BIリポジトリには、その内容を暗号化するために使用するパスワードがあります。

新しいOracle BIリポジトリ・ファイルを作成するとき、または以前のリリースのOracle Business Intelligenceからリポジトリをアップグレードするときにリポジトリ・パスワードを作成します。

管理ツールをオフライン・モードで使用して、またはobieerpdpwdchgユーティリティを使用して、リポジトリ・パスワードを変更できます。管理ツール でリポジトリをオンライン・モードで開いているときには、リポジトリ・パスワードを変更できません。

obieerpdpwdchgユーティリティは、管理ツールを使用できないLinuxシステムおよびUNIXシステムでリポジトリ・パスワードを変更する場合に特に有効です。

注意:

SampleAppLite.rpdまたはSampleApp.rpdサンプル・リポジトリを使用している場合、セキュリティ上の理由により、管理ツールでこのリポジトリを最初に開くときに、デフォルトのパスワードを変更する必要があります。サンプルのリポジトリは、「SampleApp.rpdデモ・リポジトリについて」を参照してください。

この項では、次の項目について説明します。

管理ツールを使用したOracle BIリポジトリ・パスワードの変更

管理ツールでパスワードを変更し、変更済リポジトリを公開する方法について説明します。

リポジトリのアップロード・コマンドを使用して、リポジトリ・パスワードを変更し、変更済リポジトリを公開します。

  1. 管理ツールで、リポジトリをオフライン・モードで開きます。
  2. ファイル」→「パスワードの変更」を選択します。
  3. 現在の(古い)パスワードを入力します。
  4. 新しいパスワードを入力し、これを確認します。リポジトリ・パスワードは5文字より長い必要があり、空にはできません。
  5. 「OK」をクリックします。
  6. リポジトリを保存して閉じます。

obieerpdpwdchgユーティリティを使用したOracle BIリポジトリ・パスワードの変更

リポジトリ・パスワードの変更方法を説明します。

次のステップを使用して、obieerpdpwdchgユーティリティを使用してリポジトリ・パスワードを変更し、さらに変更後のリポジトリを「リポジトリのアップロード・コマンド」で公開します。

5文字より長いリポジトリ・パスワードを定義する必要があります。コマンドに-Cオプションを含めてマスキングを無効にしていない場合、パスワードはコマンドラインでマスキングされます。

  1. 次の場所にあるobieerpdpwdchgユーティリティに移動します。

    BI_DOMAIN/bitools/bin

  2. obieerpdpwdchgの次の引数を入力します。
    • -I name_and_path_of_existing_repository

    • -O name_and_path_of_new_repository

    さらに、現在の(古い)パスワードを入力してから、プロンプトに従って例のように新しいパスワードを入力します。

    obieerpdpwdchg  -I my_repos.rpd -O my_changed_repos.rpd
    Please enter the repository password:
    
    Please enter a new repository password:
    

OBISメタデータの互換性

現行のOBIS (Oracle Business Intelligence Server)メタデータ・ファイルは、過去のバージョンのOracle Business Intelligenceでも使用できます。

そのため、リポジトリ(RPD)、XUDML (Oracle BI Server XML API)、またはBAR (BIアーカイブ)ファイルを12.2.1.3などのOracle BI EEバージョンから開いて、そのファイルを12.2.1.1の管理ツールbiserverxmlexecなどのツールやユーティリティで変更できます。

また、それよりも古いOBISメタデータ・ファイルを現行バージョンのOracle BI EEで使用することもできます。