整合性のチェックの使用
このトピックでは、整合性のチェック機能および拡張チェッカ機能を使用して、セマンティック・モデルでエラーおよび警告を確認する方法について説明します。
整合性のチェックについて
整合性のチェック機能を使用して、セマンティック・モデル・オブジェクトまたはセマンティック・モデル全体を検証します。整合性のチェックは、実行時に問合せ生成が失敗する原因となる問題を特定し、修正するのに役立ちます。
整合性のチェックでは、次のタイプのメッセージが示されます:
- エラー - エラー・メッセージは、修正が必要なエラーを示しています。メッセージ内の情報を使用して不整合を修正し、整合性のチェックを再度実行して、エラーが修正されたことを確認します。
- 警告 - これらのメッセージは、修正が必要になる可能性のある状況を示しています。たとえば、論理階層レベルの欠落した表示キーに関する警告メッセージなどです。他のメッセージとしては、整合性のない値や、デフォルトと一致しない機能表の変更の警告などがあります。
エラーおよび警告メッセージの例については、「一般的な整合性チェック・メッセージ」を参照してください。
整合性チェックの結果はタブに表示され、レポートにリストされているオブジェクトを理解し、ナビゲートして修正するために使用できる情報が含まれています。各エラーまたは警告は、その名前とオブジェクト・タイプ(論理表や初期化ブロックなど)によって識別されます。リスト内のオブジェクトを名前、エラー・メッセージ番号などで検索することもできます。

図consistency_checker_tab.pngの説明
整合性チェックに合格しても、セマンティック・モデルが正しく作成されていることは保証されませんが、多くの一般的な問題が除去されます。
整合性チェックでは、接続を使用しているメタデータの外部にあるオブジェクトの妥当性はチェックされません。メタデータの整合性のみをチェックし、メタデータ外部にある物理オブジェクトへのマッピングはチェックしません。接続が機能していない場合やデータベースでオブジェクトが削除されていた場合、整合性チェックでは、これらのエラーは報告されません。
参照表を使用して、多言語スキーマでローカライズされたフィールド名を保存している場合、その参照表に対しては整合性チェックのルールが緩和されます。
Oracle Analyticsのアップグレード後にセマンティック・モデルの整合性をチェックすると、以前の整合性チェックには含まれていなかったエラーが表示される場合があります。
セマンティック・モデルの整合性チェックのタイプ
実行できる整合性チェックには、整合性のチェックと詳細チェックの2つがあります。
整合性のチェック
整合性のチェックでは、個々のセマンティック・オブジェクトおよび他のオブジェクトとの関係を調べ、特定の種類のエラーおよび不整合を検出します。個々のオブジェクト、選択したオブジェクトのグループまたはセマンティック・モデル全体に対して整合性のチェックを実行できます。詳細チェックを実行する前に、整合性のチェックを実行してすべてのエラーを解決します。
整合性のチェックの実行例を次に示します:
- 論理ソースが構成されていない論理表を検索します。
- 物理ソースにマップされていない論理列を検索します。
- 未定義の論理結合条件を確認します。
- ビジネス・モデルで参照されている物理表が、ビジネス・モデルで参照されている他の表に結合されていないかどうかを判別します。
- 各ビジネス・モデルに対応するサブジェクト領域があるかどうかを確認します。
セマンティック・モデルの開発中には、オブジェクトおよびモデル全体に対して整合性のチェックを実行し、エラーを検出および修正することをお薦めします。「セマンティック・モデルの整合性のチェック」を参照してください。
詳細チェック
セマンティック・モデルをデプロイする前に、詳細チェックを実行します。
セマンティック・モデルを正常にデプロイするには、詳細チェックに合格する必要があります。ただし、移行の問題をトラブルシューティングするために、セマンティック・モデルが詳細チェックに合格する必要はありません。整合性のチェックのみに合格したセマンティック・モデルを.rpdファイルに変換できますが、問合せ生成を妨げる問題が含まれている可能性があることに注意してください。
詳細チェックでは、次の処理が実行されます:
-
整合性のチェックを実行して、モデル全体をチェックします。セマンティック・モデラーで詳細チェックを実行するには、整合性チェックをエラーなしにする必要があります。
詳細チェックで整合性のチェックが実行され、エラーが見つかった場合は、整合性のチェックのエラーのみが表示されます。整合性のチェックのすべてのエラーが解決されるまで、詳細チェックのエラーは検出も表示もされません。
- セマンティック・モデルをSMMLから.rpdファイルに変換し、.rpdに対して詳細チェックを実行します。モデルに整合性のチェックのエラーが含まれている場合、詳細チェックではSMMLからa.rpdファイルへの変換ができず、詳細チェックを実行できません。
- 問合せ生成のナビゲーション・スペース・エラーがあるシナリオを検索します。
一般的な整合性チェック・メッセージ
このトピックは、整合性チェックの最も一般的な警告およびエラーのいくつを理解および修正するために役立ちます。
このトピックでは、整合性のチェックのメッセージの部分的なリストを示します。可能性のあるすべての警告およびエラーについて説明しているわけではありません。
エラーまたは警告の例 | エラーまたは警告 | 詳細 |
---|---|---|
[14031] 論理表FACT_TABLE_NAMEのソースの索引フィルタは、複数のディメンションを参照します。 |
エラー |
論理表に、複数のディメンションを参照するWHERE句フィルタを含む論理表ソースがあることを示します。複数のディメンションを含むWHERE句は無効です。 |
[38126] 'Logical Table' '"Technology - WFA"."Fact WFA WO "'の名前の先頭または末尾にスペースがあります。 |
エラー |
オブジェクト名の先頭または末尾にスペースがあります。オブジェクト名の先頭にスペースがあると、問合せまたはレポートで問題が発生する場合があります。 |
[38012] 論理列DIM_Start_Date.YEAR_QUARTER_NBRには物理データ型のマッピングがなく、派生列でもありません。 [38001] 論理列DIM_Start_Date.YEAR_QUARTER_NBRに物理データ・ソースのマッピングが含まれていません。 |
エラー |
論理列がどの論理表ソースにもマップされていないことを示します。これらのマッピングは無効であり、問合せは失敗します。 どちらの検証ルールも、同じ問題に関連しています。 |
[39062] レポート問合せに使用されている接続プール'"My_DB". "My_CP"'が初期化ブロック'Authorization'で使用されています。これは問合せのパフォーマンスに影響する場合があります。 |
警告 |
同じ接続プールが問合せと初期化ブロックの両方に使用されていることを示しています。この構成はお薦めしません。 この問題を修正するには、初期化ブロックに専用の接続プールを作成します。そうしないと、問合せのパフォーマンスが低下したり、認証の初期化ブロックを実行できない場合に、ユーザー・ログインの応答が停止する可能性があります。 |
[39028] データベース'MyDB'の機能がデフォルトと一致しません。この結果、問合せ問題が発生する可能性があります。 |
警告 |
一部のデータベース機能のデフォルトがOracle Analyticsのこのリリースで変更されたことを示します。機能セットに特定のカスタマイズがなければ、データベース機能を新しいデフォルトにリセットすることをお薦めします。 |
[39003] 列DIM_Offer_End_Date.CREATE_DTの機能依存結合が見つかりません。 |
警告 |
特定の列が無効な論理表ソースにのみマップされていることを示します。この警告では、デフォルトの動作を使用するかどうかを決定するよう求められます。 |
[39059] 論理ディメンション表MY_DIMのレベルDailyに、上位レベルのファクト・ソースMY_FACT_SUM.MTHLY_SUMと結合するソースMY_DIM_DAILYがあります |
警告 |
ファクト論理表ソースにこのディメンションで設定された集計グレインがありますが、このディメンションの論理表ソースに接続する結合が見つからなかったか、無効な結合が見つかりました。 これは、結合が存在しないか、存在しているが高レベルのファクト・ソースと低レベル次元ソースを接続しているため、潜在的に不正であることを意味します。このような結合は、実行すると問合せ結果でダブル・カウントが発生する可能性があるため、潜在的に不正です。 たとえば、「Select year, yearlySales」という問合せについて考えます。monthTable表とyearlySales表との間にyearIdでの結合が存在していても、この結合により結果が12の倍数(各年の月数)に増加するため、これは使用できません。 アップグレード後に39059警告が発生したら、結合が仕様どおりに機能しているか、および結果が不正にダブル・カウントされていないかどうかを確認します。結合が仕様どおりであれば、39059警告は無視してください。 |
[39055] ファクト表"HR"."FACT - HC Budget"は論理ディメンション"HR"."DIM - HR EmployeeDim"の表と結合していません。これにより、プロジェクトの抽出時に問題が発生する可能性があります。 |
警告 |
特定のファクトとディメンション・ソースの間に物理結合があるが、ファクト表とディメンション表の間に対応する論理結合がないことを示します。 |
[39057] 論理表ソース""HR"."Dim - Schedule"."SCH_DEFN""には、列マッピングまたは式で使用されていない物理表がマップされています。 |
警告 |
特定の論理表ソースにマッピングで使用されていない表が含まれていることを示します。この状況でエラーが発生することはありません。 |
セマンティック・モデルの整合性のチェック
整合性のチェックを実行して、セマンティック・モデルのすべてのオブジェクトとオブジェクト間の関係を検証します。整合性のチェックでは、実行時問合せの生成が失敗する可能性のある構文またはセマンティックのエラーおよび警告のリストが表示されます。
1つ以上のセマンティック・モデル・オブジェクトの整合性のチェック
整合性のチェックを使用して、特定のセマンティック・モデル・オブジェクトまたは選択したオブジェクトを検証します。整合性のチェックでは、実行時問合せが失敗する可能性のある構文またはセマンティックのエラーおよび警告のリストが表示されます。
セマンティック・モデルのデプロイ前の拡張整合性チェックの実行
詳細チェックを実行して、セマンティック・モデルのデプロイおよび正常な問合せ生成の準備ができていることを確認します。
セマンティック・モデラーで詳細チェックを実行し、詳細チェック・エラーを表示するには、整合性チェックをエラーなしにする必要があります。詳細チェックを実行しても、整合性チェックと詳細チェックの両方のエラーのリストが表示されるわけではありません。
詳細チェックを実行すると、最初に整合性のチェックが実行され、モデル全体がチェックされます。整合性エラーが見つかった場合はタブにエラーが表示され、詳細チェックを再実行する前にエラーを解決する必要があります。
詳細チェックで整合性のチェックが正常に実行された後、セマンティック・モデルがSMMLから.rpdファイルに変換され、問合せ生成のナビゲーション・スペース・エラーがないかどうかがチェックされます。
- ホーム・ページで、「ナビゲータ」、「セマンティック・モデル」の順にクリックします。
- 「セマンティック・モデル」ページで、セマンティック・モデルをクリックして開きます。
- 必要に応じてセマンティック・モデルを更新し、「保存」をクリックしてセマンティック・モデルを保存してから、詳細チェックを実行します。
- ツールバーで、「整合性のチェック」アイコンの横にある下矢印をクリックし、「詳細チェック」を選択します。
- Oracle Analyticsのフッターに移動し、詳細チェックのステータスを確認します。フッターに「整合性エラーが見つかりました」と表示されている場合は、それをクリックし、「結果の表示」を選択して、エラーのリストが含まれる「詳細チェック」タブを表示します。
- 「詳細チェック」タブで、オブジェクトのリンクをクリックし、そのオブジェクトを見つけて開きます。
- オブジェクトを修正し、「保存」をクリックしてセマンティック・モデルを保存します。
- ツールバーで、「整合性のチェック」アイコンの横にある下矢印をクリックし、「詳細チェック」を選択して詳細チェックを再実行します。
詳細チェック履歴の検索および表示
自分または他のユーザーがセマンティック・モデルで実行した前の5回の詳細チェックの結果を検索および表示できます。
- ホーム・ページで、「ナビゲータ」、「セマンティック・モデル」の順にクリックします。
- 「セマンティック・モデル」ページで、セマンティック・モデルをクリックして開きます。
- ツールバーで、「整合性のチェック」の隣にある下矢印
をクリックします。
- 「詳細チェック履歴」にマウス・ポインタを重ねて、表示する詳細チェック履歴レコードをクリックします。
詳細チェック・レコードが別の言語で表示される理由
拡張整合性チェックを実行した場合、Oracle Analyticsにログインしたときに選択した言語によって、エラーおよび警告メッセージを含むレコードの出力および格納に使用される言語が決まります。
たとえば、ログインしたときにドイツ語を選択して拡張整合性チェックを実行した場合、Oracle Analyticsはレコードをドイツ語で生成して保存します。
ユーザーがログインして拡張整合性チェック・レコードを開くと、レコードの生成に使用された言語でレコードが表示されます。たとえば、レコードがドイツ語で生成され、別のユーザーがログイン時に英語を選択した場合、レコードはドイツ語で表示されます。
この問題を回避するには、レコードを開くユーザーが拡張整合性チェックを再実行する必要があります。次に、ログイン時にユーザーが選択した言語を使用して、レコードが生成および格納されます。
詳細チェック警告メッセージの表示または非表示
詳細チェックを実行すると、Oracle Analyticsによってデフォルトで、詳細チェックに関する情報を含むメッセージが表示されます。このメッセージは、インスタンス内で非表示にすることも、メッセージを非表示にした後で再度表示することもできます。
- ホーム・ページで、「ナビゲータ」、「セマンティック・モデル」の順にクリックします。
- 「セマンティック・モデル」ページで、セマンティック・モデルをクリックして開きます。
- 「ページ・メニュー」、「プリファレンス」の順にクリックします。
- 「ユーザー・プリファレンス」ダイアログ・ボックスで、「一貫性チェック」までスクロールし、「詳細チェック警告メッセージを表示します。」チェック・ボックスの選択を解除してメッセージをオフにするか、チェック・ボックスを選択してメッセージをオンにします。
- 「適用」をクリックします。
CSVファイルへの整合性チェック結果のエクスポート
整合性のチェックまたは詳細チェックを実行した後、結果をCSVファイルにエクスポートできます。
- ホーム・ページで、「ナビゲータ」、「セマンティック・モデル」の順にクリックします。
- 「セマンティック・モデル」ページで、セマンティック・モデルをクリックして開きます。
- セマンティック・モデルを更新した場合は、「保存」をクリックして保存してから、整合性のチェックまたは詳細チェックを実行します。
- モデルまたはモデル・オブジェクトに対して整合性のチェックを実行するか、またはモデルに対して詳細チェックを実行します:
- 「整合性のチェック」タブまたは「詳細チェック」タブで、「CSVにエクスポート」をクリックします