ヘッダーをスキップ
Oracle Warehouse Builderユーザーズ・ガイド
11gリリース1(11.1)
E05734-03
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

23 データ品質管理の理解

今日、組織では、これまで以上にデータ品質の重要性が認識されています。データ・ウェアハウスまたはビジネス・インテリジェンス・アプリケーションに高品質のデータを格納することは、依存するアプリケーションや分析用の情報の品質を確保することにつながります。

Oracle Warehouse Builderには、高品質な情報をビジネス・ユーザーに提供するデータ・システムの作成を支援する一連の機能が用意されています。品質を評価、設計、変換および監視する品質プロセスを実装できます。各フェーズ内では、Warehouse Builderの特定の機能を使用して、向上した品質情報を作成します。

この章の内容は次のとおりです。

データ品質管理プロセスについて

高品質なデータは、意思決定や計画の際に重要です。データ・ウェアハウスを構築する目的は、ビジネス上の決定を下すときに役立つ、統合かつ一元化されたデータを確保することです。通常、データは複数の異なるシステムから取得されるため、データ・ウェアハウスにロードされる前にデータが標準化および整備されていることが重要です。

Warehouse Builderは、データを評価、変換および監視することによってデータ品質を効率的に管理できる機能を備えています。Warehouse Builderを使用してデータを管理する利点は次のとおりです。

データ品質ライフサイクルにおけるフェーズ

データ品質の確保には、次のフェーズが含まれます。

図23-1に、ビジネス・ユーザーへの高品質の情報の提供に関連するフェーズを示します。

図23-1 高品質の情報を提供するプロセスのフェーズ

図23-1の説明が続きます
「図23-1 高品質の情報を提供するプロセスのフェーズ」の説明

品質評価

品質評価フェーズでは、ソース・データの品質を判断します。このフェーズの最初のステップは、ソース・データ(複数の異なるソースに格納されている場合もあります)をWarehouse Builderにインポートすることです。メタデータとデータは、OracleおよびOracle以外のソースからインポートできます。

ソース・データをロードした後に、データ・プロファイリングを使用してデータの品質を評価します。データ・プロファイリングとは、データ内の内容、構造および関係を分析して、データの変則、非一貫性および冗長性を検出するプロセスです。この分析とデータ検出の技術は、データ監視の基礎になります。

品質設計

品質設計フェーズは、品質プロセスの設計で構成されています。データ・ルールを使用してデータ・オブジェクト内に正当なデータを指定するか、またはデータ・オブジェクト間の正当な関係を指定できます。

また、データ品質に関する演算子を使用してデータを修正および追加できます。

品質設計フェーズの一部として、データ品質を確保するための変換も設計します。この変換は、データ・プロファイリングの結果としてWarehouse Builderで生成されたマッピング、またはユーザーが作成したマッピングの場合があります。


関連項目:


品質変換

品質変換フェーズでは、ソース・データの修正用に設計した修正マッピングを実行します。

品質監視

品質監視とは、ウェアハウスのデータを何時間にもわたって検証し、データ用のビジネス・ルール・セットにデータが違反する場合に警告するプロセスです。

データ・プロファイリングについて

データ・プロファイリングは、組織が情報の品質を向上させ、より適切な決定を下すための最初のステップです。これは、Warehouse Builderで使用できる堅牢なデータ分析方法で、データを使用する前にデータの欠陥を検出して評価するために使用できます。データ・プロファイリングは、Warehouse BuilderのETL機能、および他のデータ品質機能(データ・ルール、組込みのクレンジング・アルゴリズムなど)と統合されているため、データ・クレンジング・マッピングおよびスキーマ修正スクリプトも生成できます。これによって、データおよびメタデータの非一貫性、冗長性および不正確さを自動的に修正できます。

データ・プロファイリングを使用すると、データに関する重要な内容を検出できます。次に、一般的な検出内容を示します。

データ・プロファイリング・プロセスを開始するには、最初にデザイン・センターを使用してデータ・プロファイルを作成する必要があります。これにより、データ・プロファイルに含まれるオブジェクトをプロファイリングし、修正表およびマッピングを作成できます。

データ・プロファイリングの利点

Warehouse Builderのデータ・プロファイリング機能を使用して、次の作業を実行できます。

  • Warehouse Builderがアクセス可能なソースまたはソースの組合せからのデータをプロファイリングできます。

  • データ・プロファイリング結果を表形式またはグラフ形式で確認できます。

  • プロファイリング結果に関連する実際のデータにドリルダウンできます。

  • データ・プロファイリング結果に基づいて、データ・ルールを手動または自動で導出できます。

  • データ・ルールをターゲット・オブジェクトにアタッチし、ルールが失敗した場合に実行するアクションを選択できます。

  • データ・ルールからデータ監査を作成して、オブジェクトにロードされるデータの品質を継続して監視できます。

  • シックスシグマ評価などの品質指数を導出できます。

  • 導入前に検証が必要なデータ・ルールをプロファイリングまたはテストできます。

データ・プロファイリングのタイプ

データ・オブジェクトの選択に続いて、プロファイリングおよび分析の対象とするデータの側面を判断します。

データ・プロファイリングには、次の3タイプの主要な分析が用意されています。

これらの分析に加えて、データ・ルールを使用してカスタム・プロファイリング・プロセスを作成できるため、実際のデータに対してカスタム・ルールを検証し、その正確性のスコアを取得できます。

図23-2は、データ・プロファイリングのタイプおよび各タイプの実行方法を示しています。

図23-2 データ・プロファイリングの概要

図23-2の説明が続きます
「図23-2 データ・プロファイリングの概要」の説明

属性分析

属性分析では、特定の列または属性内に格納されたデータの構造と内容に関して、一般情報と詳細情報の両方を調べます。属性分析によって、パターン、ドメイン、データ型および一意の値に関する情報が検出されます。

属性分析は、パターン分析、ドメイン分析、データ型分析および一意キー分析で構成されます。

パターン分析

パターン分析では、属性内に格納されたデータの文字列を分析して、レコードのパターンと共通タイプを検出します。この分析では、属性内に存在する特定の正規表現の形式パターンに準拠するデータのパーセントを識別します。このパターン結果を使用して、現在のデータに関する問題をクリーンアップするのに役立つデータ・ルールと制約を作成できます。一般的に識別されるパターンには、日付、電子メール・アドレス、電話番号、社会保障番号などがあります。

表23-1に、パターン分析で使用できるサンプル属性「ジョブ・コード」を示します。

表23-1 パターン分析対象のサンプル列

ジョブID ジョブ・コード

7

337-A-55

9

740-B-74

10

732-C-04

20

43-D-4


表23-2は、このパターン分析の結果を示しています。ここで、Dは数値を表し、Xは文字を表します。この結果から、すべてのジョブ・コードをDDD-X-DDの形式にすることが会社のポリシーであることが判明し、この属性のすべての値がこのパターンに準拠することを要求するデータ・ルールを導出できます。

表23-2 パターン分析の結果

ジョブ・コード 発生率

DDD-X-DD

75%

DD-X-D

25%


ドメイン分析

ドメイン分析では、最も頻繁に発生する値を調べることによって、ドメイン、つまり属性内で共通して使用されている値を識別します。たとえば、顧客表の「婚姻」列をプロファイリングした結果、90%の値が「MARRIED」、「SINGLE」または「DIVORCED」のいずれかであることが判明したとします。さらに分析を進めてデータにドリルダウンしたところ、残りの10%は、わずかな例外を除いて、これらの語のスペルの間違いであることが判明しました。プロファイリングの構成によってドメインとして適格となる対象が決まるため、ドメイン値を受け入れる前に、構成を確認してください。その後、Warehouse Builderで、この属性に格納されるデータがドメインとして適格とされた3つの値のいずれかであることを要求するルールを導出できます。

データ型分析

データ型分析では、属性内のデータ型に関する情報を検出できます。このタイプの分析では、スケールや精度とともに文字長の最大値と最小値などのメトリックが判明します。たとえば、データベース列のデータ型はVARCHAR2ですが、この列の値がすべて数値である場合があります。この場合、ロード対象が数値のみであることを確認する必要があるとします。データ型分析を使用すると、Warehouse Builderで、属性内に格納されたすべてのデータが同じデータ型であることを要求するルールを導出できます。

一意キー分析

一意キー分析では、属性が一意キーであるかどうかを判断するための情報が提供されます。そのために、この分析では、属性内で発生する個別値のパーセントを調べます。70%以上の個別値を持つ属性を一意キー分析の対象としてフラグを付けることもできます。たとえば、一意キー分析を使用して、EMP_ID列の95%の値が一意であることが判明したとします。さらに分析を進めると、残り5%のほとんどの値は重複かNULL値であることが判明しました。このことから、EMP_ID列に入力するすべてのエントリは一意の値でNULL値でないことを要求するルールを導出できます。

関数従属性

関数従属性分析では、列の関係に関する情報を調べます。この分析によって、オブジェクト内のある属性によって別の属性が決定される関係などを検出できます。

表23-3に、部門所在地という属性が部門番号という属性に依存する従業員表の内容を示します。部門番号という属性は部門所在地という属性に依存していないことに注意してください。

表23-3 従業員表

ID 名前 給与 部門番号 部門所在地

10

Alison

1000

10

SF

20

Rochnik

1000

11

London

30

Meijer

300

12

LA

40

John

500

13

London

50

George

200

13

London

60

Paul

600

13

London

70

Ringo

100

13

London

80

Yoko

600

13

London

90

Jones

1200

10

SF


参照分析

参照分析では、他のオブジェクトを参照するデータ・オブジェクトの状態を調べます。このタイプの分析の目的は、プロファイリング対象のオブジェクトが他のオブジェクトとどのように関連または結合しているかを調べることです。このタイプの分析では2つのオブジェクトを比較するため、多くの場合、1つのオブジェクトを親オブジェクト、もう1つを子オブジェクトと呼びます。この分析で検出される一般的な状態には、親なしの子、子なしオブジェクト、冗長なオブジェクトおよび結合があります。親なしの子とは、子オブジェクトにあるが、親オブジェクトにない値です。子なしオブジェクトとは、親オブジェクトにあるが、子オブジェクトにない値です。冗長な属性とは、親オブジェクトと子オブジェクトの両方に存在する値です。

表23-4および表23-5に、参照分析の対象となる2つの表の内容を示します。表23-4は子オブジェクトで、表23-5は親オブジェクトです。

表23-4 従業員表(子)

ID 名前 部門番号 市区町村

10

Alison

17

NY

20

Rochnik

23

SF

30

Meijer

23

SF

40

Jones

15

SD


表23-5 部門表(親)

部門番号 所在地

17

NY

18

London

20

SF

23

SF

55

HK


これら2つのオブジェクトの参照分析によって、従業員表の部門番号15は親なしの子で、部門表の部門番号18、20および55は子なしであることが判明します。また、部門番号列の結合も判明します。

これらの結果に基づいて、2つの表の間のカーディナリティを判断する参照ルールを導出できます。

データ・ルール・プロファイリング

Warehouse Builderには、属性分析、関数従属性および参照分析に加えて、データ・ルール・プロファイリングが用意されています。データ・ルール・プロファイリングを使用すると、オブジェクト内またはオブジェクト間のプロファイル・パラメータを検出するルールを作成できます。

これは強力な機能で、ビジネス・ユーザーが定義した、明らかに存在するルールを検証できます。データ・ルールを作成し、このルールでプロファイリングすることによって、データが実際にルールに準拠しているかどうか、ルールの修正やデータの整備が必要かどうかを確認できます。

たとえば、表23-6に示す従業員表に対して、「収入=給与+ボーナス」というルールを作成したとします。これによって、従業員Alisonに見られるようなエラーを検出できます。

表23-6 サンプルの従業員表

ID 名前 給与 ボーナス 収入

10

Alison

1000

50

1075 X

20

Rochnik

1000

75

1075

30

Meijer

300

35

335

40

Jones

1200

500

1700


データ・プロファイル・エディタについて

データ・プロファイル・エディタは、データ・プロファイル情報の管理と表示およびメタデータとデータの修正を行うための単一のアクセス・ポイントを提供します。このエディタは、データ・プロファイラ、ターゲット・スキーマ・ジェネレータおよびデータ修正ジェネレータの機能を結合したものです。データ・プロファイラとして使用すると、選択したオブジェクトの属性分析と構造分析を実行できます。ターゲット・スキーマ・ジェネレータとして、プロファイル分析とソース表のルールに基づいてターゲット・スキーマを生成できます。データ修正ジェネレータとしては、データを修正するためのマッピングと変換を生成できます。

図23-3に、データ・プロファイル・エディタを示します。

図23-3 データ・プロファイル・エディタ

図23-3の説明が続きます
「図23-3 データ・プロファイル・エディタ」の説明

データ・プロファイル・エディタには、次のユーザー・インタフェースがあります。

  • メニュー・バー

  • ツールバー

  • オブジェクト・ツリー

  • プロパティ・インスペクタ

  • モニター・パネル

  • プロファイル結果キャンバス

  • データ・ドリル・パネル

  • データ・ルール・パネル

各パネルの内容の詳細は、オンライン・ヘルプを参照してください。

シックスシグマについて

Warehouse Builderには、データ品質に対する標準化された手法として、別のデータ・プロファイリング結果内に埋め込まれたシックスシグマ結果が用意されています。

シックスシグマの概要

シックスシグマとは、ビジネス・プロセスにおける品質の概念を標準化するための方法です。この方法では、ビジネス・プロセスのパフォーマンスを統計的に分析します。シックスシグマの目的は、欠陥を識別して把握し、欠陥の発生要因を排除することによって、ビジネス・プロセスのパフォーマンスを向上させることです。

シックスシグマ・メトリックによって、1,000,000機会当たりの欠陥数が量的な数値として示されます。「機会」という用語は、レコード数と解釈できます。満点のスコアは6.0です。6.0というスコアは、1,000,000機会当たりの欠陥数が3.4の場合のみ達成できます。スコアは、次の計算式を使用して計算されます。

  • 1,000,000機会当たりの欠陥数(DPMO)= (合計欠陥数 / 合計機会数) * 1,000,000

  • 欠陥率(%)= (合計欠陥数 / 合計機会数)* 100%

  • 歩留まり(%)= 100 - 欠陥率

  • シグマの生成= NORMSINV(1-(合計欠陥数 / 合計機会数)) + 1.5

    NORMSINVは、標準正規累積分布の逆数です。

データ・プロファイリングのシックスシグマ・メトリック

Warehouse Builderには、データ・プロファイリングのためにシックスシグマ・メトリックも用意されています。データ・プロファイリングを実行すると、検出された欠陥および変則の数がシックスシグマ・メトリックとして示されます。たとえば、データ・プロファイリングを実行して、最初の表と2番目の表の間に行関係があることが検出されたとします。この場合、最初の表でこの行関係に準拠しないレコードの数をシックスシグマ・メトリックを使用して示すことができます。

シックスシグマ・メトリックは、データ・プロファイル・エディタで次の方法で計算されます。

  • 集計: 各列について、表内の合計行数(機会)に対するNULL値(欠陥)の数。

  • データ型: 各列について、表内の合計行数(機会)に対する、文書化されたデータ型に準拠しない値(欠陥)の数。

  • データ型: 各列について、表内の合計行数(機会)に対する、文書化された長さに準拠しない値(欠陥)の数。

  • データ型: 各列について、表内の合計行数(機会)に対する、文書化されたスケールに準拠しない値(欠陥)の数。

  • データ型: 各列について、表内の合計行数(機会)に対する、文書化された精度に準拠しない値(欠陥)の数。

  • パターン: 各列について、表内の合計行数(機会)に対する、共通形式に準拠しない値(欠陥)の数。

  • ドメイン: 各列について、表内の合計行数(機会)に対する、文書化されたドメインに準拠しない値(欠陥)の数。

  • 参照: 各関係について、表内の合計行数(機会)に対する、文書化された外部キーに準拠しない値(欠陥)の数。

  • 参照: 各列について、表内の合計行数(機会)に対する、冗長な値(欠陥)の数。

  • 一意キー: 各一意キーについて、表内の合計行数(機会)に対する、文書化された一意キーに準拠しない値(欠陥)の数。

  • 一意キー: 各外部キーについて、表内の合計行数(機会)に対する、子なしの行(欠陥)の数。

  • データ・ルール: データ・プロファイルに適用された各データ・ルールについて、表内の行数に対する、データ・ルールが失敗した行数。

データの修正と改良について

Warehouse Builderでは、データ・プロファイリングの結果に基づいて、修正済データ・オブジェクトおよび修正マッピングを自動的に作成できます。データ品質のためにWarehouse Builderの基礎となるアーキテクチャを利用する自動化された修正に加えて、独自のデータ品質マッピングを作成してソース・データを修正およびクレンジングすることもできます。

データの修正と改良を実行するには、次のいずれかの方法を使用します。

データ・プロファイリング結果に基づいた自動データ修正

データ・プロファイリングを実行すると、Warehouse Builderはプロファイリングを実行したオブジェクトに対して修正を生成します。次に、データ・プロファイリングの結果に基づいて、修正されたオブジェクトを作成するかどうかを決定できます。修正は、修正されたオブジェクトにバインド可能なデータ・ルールの形式を取ります。

ソース・データに対する修正のタイプ

ソース・データに対しては次のタイプの修正を実行できます。

  • スキーマ修正

    スキーマ修正ではスクリプトが作成され、これを使用して、適用したデータ・ルールで修正されたソース・データ・オブジェクトのセットを作成できます。修正されたデータ・オブジェクトは、データ・プロファイリングの結果から導出されたデータ・ルールに準拠します。

    修正表には、接頭辞TMP__を持つ名前があります。たとえば、EMPLOYEES表をプロファイリングする場合、修正表はTMP__EMPLOYEESになります。

  • データ修正

    データ修正は、ソース・データを修正済データ・オブジェクトにロードする前にソース・データの変則および不整合を削除するための修正マッピングを作成するプロセスです。修正マッピングは、データ・オブジェクトに定義されているデータ・ルールを遵守します。プロファイル・ソース表内の劣化した古い表からデータを移動する際に、これらのマッピングにより、データ・ルールに準拠しないレコードが修正されます。

    修正マッピングの名前は、接頭辞M_を持つオブジェクト名です。たとえば、EMPLOYEE表の修正マッピングはM_EMPLOYEEになります。

データ修正の実行について

ソース・データに対してデータ修正を実行するには、次の項目を指定する必要があります。

データ修正アクション

データ・プロファイリングの結果に基づいて、Warehouse Builderによりデータ・ルールのセットが導出され、これを使用してソース・データをクレンジングできます。データ修正アクションを実行すると、これらのデータ・ルールに基づいた修正を自動的に生成できます。

データ・プロファイリングの結果として導出された各データ・ルールに対して、データ・ルール規定のために許容されないデータ値の処理方法を指定する修正アクションを選択する必要があります。次の修正アクションを選択できます。

  • 無視: データ・ルールは無視されるため、このデータ・ルールに基づいて拒否される値はありません。

  • レポート: データ・ルールは、レポート作成専用にデータがロードされた後にのみ実行されます。「無視」オプションと同様ですが、データ・ルールに違反していた値を含むレポートが作成されます。このアクションは、一部のルール・タイプに対してのみ使用できます。

  • 整備: このデータ・ルールで拒否された値はエラー表に移動され、そこでクレンジング方針が適用されます。このオプションを選択した場合は、クレンジング方針を指定する必要があります。

    クレンジング方針の指定の詳細は、「クレンジング方針」を参照してください。

データ修正のクレンジング方針

データ・プロファイリングの結果に基づいて修正オブジェクトの自動生成を決定する場合は、ソースの不整合データを修正済オブジェクトに格納する前のクレンジング方法を指定する必要があります。このために、修正オブジェクトに適用されるデータ・ルールごとにクレンジング方針を指定します。データ・ルールに準拠しないレコードの格納にはエラー表を使用します。

使用するクレンジング方針は、データ・ルールのタイプとルール構成によって異なります。表23-7にクレンジング方針と、各方針で使用可能なデータ・ルールのタイプを示します。

表23-7 データ修正のクレンジング方針

クレンジング方針 説明 適用可能なデータ・ルールのタイプ

削除

ターゲット表とエラー・レコードを移入しません。

すべて

カスタム

ヘッダーが格納されるターゲット表にファンクションが作成されます。実装詳細は含まれません。このファクションに実装詳細を追加する必要があります。

ドメイン・リスト

ドメイン・パターン・リスト

ドメイン範囲

共通形式

NULLなし

名前とアドレス

カスタム

最小値に設定

エラー・レコードの属性値をデータ・ルールに定義されている最小値に設定します。

定義された最小値を持つ「ドメイン範囲」ルール

最大値に設定

エラー・レコードの属性値をデータ・ルールに定義されている最大値に設定します。

定義された最大値を持つ「ドメイン範囲」ルール

類似度

許可されたドメイン値に基づく類似度アルゴリズムを使用して、エラー・レコードに類似した値が検出されます。類似した値が検出されない場合は元の値が使用されます。

文字データ型を持つ「ドメイン・リスト」ルール

Soundex

許可されたドメイン値に基づくSoundexアルゴリズムを使用して、エラー・レコードに類似した値が検出されます。Soundex値が検出されない場合は元の値が使用されます。

文字データ型を持つ「ドメイン・リスト」ルール

マージ

Match-Mergeアルゴリズムを使用して、重複レコードが1つの行にマージされます。

一意キー

モードに設定

失敗となった関数従属性パーティションにモード値がある場合は、モード値を使用してエラー・レコードを修正します。

関数従属性


演算子を使用したデータの修正と改良

Warehouse Builderは、ソース・データのデータ修正および改良プロセスを行うための機能を備えています。ソース・データの変換時に、次の演算子を使用してデータ品質を確保できます。

  • Match-Merge演算子

  • Name and Address演算子


関連項目:

これらの演算子と使用方法の詳細は、第24章「データ品質演算子」を参照してください。

データ・ルールについて

データ・ルールは、Warehouse Builderで作成できる有効なデータ値と関係の定義です。データ・ルールによって、表内の正当なデータ、または表間の正当な関係が判断されます。データ・ルールを使用すると、データ品質の確保に役立ちます。データ・ルールは、表、ビュー、ディメンション、キューブ、マテリアライズド・ビューおよび外部表に適用できます。また、データ・ルールは、データ・プロファイリング、データやスキーマのクレンジング、データ監査など多くの場合に使用されます。

データ・ルールのメタデータは、ワークスペースに格納されます。データ・ルールを使用するには、データ・ルールをデータ・オブジェクトに適用します。たとえば、有効値が'm'と'f'であることを指定するgender_ruleというデータ・ルールを作成したとします。このデータ・ルールは、Employees表のemp_gender列に適用できます。データ・ルールを適用することによって、emp_gender列に格納される値が'M'または'F'のいずれかであることが保証されます。データ・ルール・バインディングの詳細は、Employees表のデータ・オブジェクト・エディタの「データ・ルール」タブで表示できます。

データ・ルールを作成する方法は2通りあります。1つは、データ・ルールをデータ・プロファイリングの結果から導出する方法で、もう1つは、データ・ルール・ウィザードを使用して作成する方法です。データ・ルールの詳細は、「データ・ルールの使用」を参照してください。

データ・ルールのタイプ

表23-8に、データ・ルールのタイプを示します。

表23-8 データ・ルールのタイプ

データ・ルールのタイプ 説明

ドメイン・リスト

属性に使用可能な値リストを定義します。

Gender属性には「M」または「F」を使用できます。

ドメイン・パターン・リスト

属性が準拠可能なパターンのリストを定義します。パターンの定義には、Oracle Databaseの正規表現構文を使用します。

電話番号のパターンを次に示します。

(^[[:space:]]*[0-9]{ 3 }[[:punct:]|:space:]]?[0-9]{ 4 }[[:space:]]*$)

ドメイン範囲

属性に使用可能な値の範囲を定義します。

Salary属性の値には100から10000を使用できます。

共通形式

属性が準拠可能な既知の共通形式を定義します。

このルール・タイプには、「電話番号」、「IPアドレス」、「SSN」、「URL」、「電子メール・アドレス」という多くのサブタイプがあります。タイプごとに、事前定義の形式がリストされます。このリストには形式を追加することもできます。

電子メール・アドレスは次の形式で指定する必要があります。

^(mailto:[-_a-z0-9.]+@[-_a-z0-9.]+$)

NULLなし

属性にはNULL値を使用できないことを指定します。

Employees表の従業員のdepartment_id属性はNULLにできません。

関数従属性

関数従属性では、データ・オブジェクト内のデータを正規化可能として定義します。

Dept_name属性は、Dept_no属性に依存します。

一意キー

特定のデータ・オブジェクトで属性または属性のグループが一意であるかどうかを定義します。

部門名は一意である必要があります。

参照

値間で使用する必要がある関係のタイプ(1:x)を定義します。

Departments表のdepartment_id属性は、Employees表のdepartment_id属性と1:nの関係を持つ必要があります。

名前とアドレス

「Name and Address」のサポートを使用して、属性グループを名前またはアドレスとして評価します。

Departments表のdepartment_id属性は、Employees表のdepartment_id属性と1:nの関係を持つ必要があります。

カスタム

入力パラメータに指定するSQL式を適用します。

VALID_DATEというカスタム・ルールには、START_DATEおよびEND_DATEという2つの入力パラメータがあります。このルールの有効な式は、次のように定義されます。

"THIS"."END_DATE" > "THIS"."START_DATE".


データ・ルールの実装

Warehouse Builderでは、データ・ルールを修正オブジェクトに適用するために様々な方法を使用します。使用される方法は、実装するデータ・ルールのタイプによって異なります。

表23-9に、オブジェクト・スキーマの修正方法を示します。また、各修正で使用されるデータ・ルール・タイプも示します。

表23-9 スキーマ修正に対するデータ・ルールの実装

スキーマ修正方法 説明 修正方法を使用可能なデータ・ルールのタイプ

制約の作成

修正表にデータ・ルールを反映する制約が作成されます。制約を作成できない場合は、データ・ルールの適用ウィザードのデータ・ルール検証ページに検証メッセージが表示されます。

カスタム

ドメイン・リスト

ドメイン・パターン・リスト

ドメイン範囲

共通形式

NULLなし

一意キー

データ型の変更

プロファイリングの結果に従って列のデータ型がNUMBERまたはDATEに変更されます。データ型が、タイプIs NumberおよびIs Nameのデータ・ルール用に変更されます。


検索表の作成

検索表が作成され、修正された表および検索表に、該当する外部キー制約または一意キー制約が追加されます。

関数従属性

名前およびアドレスの解析

名前およびアドレス属性が修正表に追加されます。名前およびアドレス属性は、Name and Address演算子の出力値の選択に対応します。データ整備の目的で作成されたマップでは、Name and Address演算子は名前およびアドレス整備の実行に使用されます。

名前とアドレス


品質監視について

品質監視は、最初のデータ・プロファイリングとデータ品質の方針に基づきます。品質監視によって、データの品質を一定期間にわたって監視できます。また、データが準拠するビジネス・ルールを定義できます。

Warehouse Builderを使用してデータを監視するには、データ監査を作成する必要があります。データ監査によって、定義したビジネス・ルールにデータが準拠していることを確認できます。

データ監査について

データ監査は、一連のデータ・ルールに対してデータを検証し、レコードがルールに準拠しているかどうかを判断するプロセスです。データ監査では、監査データに対してエラーがいくつ発生しているかを監査し、マークすることで、システム内のデータがどの程度ルールに準拠しているかを示す統計メトリックを収集します。データ・オブジェクトを監視および監査するには、このデータ・オブジェクトに有効なデータを指定するデータ・ルールを最初に定義する必要があります。

データ監査は、システムのユーザーが設定した標準以上のデータ品質レベルを確保するための重要なツールです。また、データ監査は異常なデータの急激な増加を判断する場合に役立ち、イベントを急激な増加に結び付けることができます。

データ監査は、配布して随時実行できますが、通常は、データ・ウェアハウスやERPシステムなどの運用環境において、データの品質を監視するために実行します。したがって、データ監査は、プロセス・フローに追加したりスケジュールすることができます。

データ監査のしきい値

データ監査では、しきい値を使用します。これによって、ルールに準拠しないレコードが大量に発生するとプロセス・フローが正常に進行せず、エラーまたは通知ストリームが発生するという事実に基づいてロジックを作成できます。しきい値は、データ監査によって監査するデータ・ルールごとに指定できます。この値を使用して、定義した制限内にデータ・オブジェクトのデータが収まっているかどうかを判断できます。プロセスでは、このしきい値に基づいてアクションを選択できます。

たとえば、Employees表のデータを監査するデータ監査を作成するとします。この表には、emp_email_unique_ruleとemp_sal_min_ruleという2つのデータ・ルールが含まれます。これら両方のルールに対してしきい値として80%を指定します。つまり、Employees表の80%未満のデータがデータ・ルールに準拠しない場合、この表の監査は失敗します。


ヒント:

しきい値の指定の詳細は、「データ修正アクションの指定」を参照してください

データ監査の監査結果

ルールに準拠しないレコードにしきい値を設定する以外にも、監査結果を取得し、分析を目的としてこれらを格納することもできます。データ監査を実行すると、複数の出力値が設定されます。これらの値の1つが監査結果です。監査結果により、データ監査の実行時に発生するデータ・ルール違反の範囲に関する情報が提供されます。

データ・プロファイリングの実行

データ・プロファイリングは、定義上、見通しと計画を必要とするリソース集中型のプロセスです。データ・プロファイリングによってデータおよび列を分析し、多くの反復操作を実行してデータの欠陥や変則を検出します。これにより、見通しと計画ができるかぎり効率的であるように保証されます。

データ・プロファイリングを開始する前に、まずランダム・サンプリングを行ってデータ・セットの量を減らした後、対象となるデータ・オブジェクトを指定します。すべてのオブジェクトをプロファイリングするのではなく、重要とみなされるオブジェクトを選択してください。プロファイリングの対象としてソース・システム全体を一度に選択しないでください。リソースが無駄になるだけでなく、多くの場合、その必要はないからです。品質が重要で会計上の影響が最も大きいデータ範囲を選択してください。

たとえば、CUSTOMERSREGIONSORDERSPRODUCTSおよびPROMOTIONSの5つの表を含むデータ・ソースがあるとします。データ品質の観点から、最も重要な表はCUSTOMERSORDERSであると判断しました。CUSTOMERS表には多くの重複や誤ったエントリが含まれているため、マーケティング業務に支障が生じて会社の経費がかさんでいることが判明しています。ORDERS表には、受注に関するデータが不正確な形式で格納されていることが判明しています。このため、データ・プロファイリングの対象として、これら2つの表を選択します。

データ・プロファイリングの制限

  • デフォルト構成のデータのみプロファイリングできます。

  • プロファイリング・ワークスペース・ロケーションは、Oracle 10gデータベース以上である必要があります。

  • ソース・モジュールおよびデータ・プロファイルが異なるデータベース・インスタンス上にある場合は、複雑なデータ型を含むソース表をプロファイルできません。

  • 165を超える列が含まれる表はプロファイリングできません。

データ・プロファイリングの実行ステップ

プロファイリングするオブジェクトを選択した後は、次のステップに従ってプロファイリング・プロセスを実行します。

  1. メタデータのインポートまたは選択

  2. データ・プロファイルの作成

  3. データのプロファイリング

  4. プロファイル結果の表示

  5. データ・ルールの導出

  6. 修正の生成

  7. データ・ルールの手動による定義と編集

  8. 生成、配布および実行

データ・プロファイリング・プロセスは手順4で終了します。手順5から7は、データ・プロファイリングの後でデータの修正を実行する場合に、オプションで実行できます。手順8は、データ・プロファイリングおよびデータの修正を、データ・プロファイリングとともに実行する場合に必要です。

メタデータのインポートまたは選択

データ・プロファイリングでは、データ・プロファイリングを実行するプロジェクトにプロファイリング対象のオブジェクトが存在する必要があります。プロファイリング対象のオブジェクトがプロジェクトにインポートされているか、プロジェクト内に作成されていることを確認してください。また、データがオブジェクトにロードされていることも確認してください。データ・プロファイリングでは、データがロードされている必要があります。

データ・プロファイリングでは、マッピングを使用してプロファイリングを実行するため、使用するすべてのロケーションが登録されていることを確認してください。データ・プロファイリングでは、ロケーションの登録を試みます。なんらかの理由でデータ・プロファイリングでロケーションを登録できない場合は、プロファイリングを開始する前に、ロケーションを明示的に登録する必要があります。

データ・プロファイルの作成

システムを設定した後、デザイン・センターを使用してデータ・プロファイルを作成できます。データ・プロファイルは、ワークスペースのメタデータ・オブジェクトです。データ・プロファイルには、プロファイリングするデータ・オブジェクトのセット、プロファイリング操作の管理の設定、データをプロファイリングした後に戻す結果、および修正情報(これらの修正を使用する場合)が含まれます。

データ・プロファイルを作成する手順は、次のとおりです。

  1. プロジェクト・エクスプローラで、データ・プロファイルを作成する「プロジェクト」ノードを開きます。

  2. 「データ・プロファイル」を右クリックして「新規」を選択します。

    データ・プロファイルの作成ウィザードのようこそページが表示されます。

  3. 名前と説明ページで、データ・プロファイルの名前と説明(オプション)を入力します。「次へ」をクリックします。

  4. オブジェクトの選択ページで、データ・オブジェクトに含めるオブジェクトを選択し、矢印を使用してこれらを「選択済」リストに移動します。「次へ」をクリックします。

    複数のオブジェクトを選択するには、[Ctrl]キーを押しながらオブジェクトを選択します。データ・プロファイルには、表、ビュー、マテリアライズド・ビュー、外部表、ディメンションおよびキューブを含めることができます。

  5. (オプション)属性セットを含む表、ビューまたはマテリアライズド・ビューを選択した場合、「属性セットの選択」ダイアログ・ボックスが表示されます。このダイアログ・ボックスの最下部にあるリストに、データ・オブジェクトで定義した属性セットが表示されます。

    • 属性セットに定義されている属性のみをプロファイリングするには、リストから属性セットを選択します。

    • データ・オブジェクトのすべての列をプロファイリングするには、リストから<すべての列>を選択します。

  6. (オプション)「オブジェクトの選択」セクションで、ディメンション・オブジェクトを選択した場合、これらのディメンション・オブジェクトにバインドされるリレーショナル・オブジェクトもプロファイルに追加されることを示す警告が表示されます。次に進むには、「はい」をクリックします。

  7. サマリー・ページで、前のウィザード・ページでの選択を確認します。「戻る」をクリックして、選択した値を変更します。データ・プロファイルを作成するには、「終了」をクリックします。

    「Warehouse Builder注意」ノート・ダイアログが表示されます。「OK」をクリックし、新しく作成したデータ・プロファイルのデータ・プロファイル・エディタを表示します。

    ナビゲーション・ツリーの「データ・プロファイル」ノードに、この新規データ・プロファイルが追加されます。

属性セットを使用したデータ・オブジェクトの列のサブセットのプロファイル

属性セットを使用すると、データ・プロファイリング操作の対象を、表、ビューまたはマテリアライズド・ビューの列のサブセットに制限できます。属性セットを使用する理由は次のとおりです。

  • プロファイリング結果が必要でない列を除外することで、プロファイリングにかかる時間を短縮できます。

  • データ・プロファイリングでは、表、ビューまたはマテリアライズド・ビューの列を、一度に165までしかプロファイルできません。属性セットを使用して、オブジェクトから165以下の列を選択してプロファイルできます。

属性セットを使用したデータ・プロファイリングは、次の上位レベルの手順で構成されています。

  1. 属性セットの定義

  2. 属性セット内の列のプロファイリング

属性セットの定義次の手順で、表、ビューまたはマテリアライズド・ビューの属性セットを定義します。

  1. プロジェクト・エクスプローラで、表、ビューまたはマテリアライズド・ビューをダブルクリックします。

    選択したオブジェクトに対するデータ・オブジェクト・エディタが表示されます。

  2. 「詳細」パネルで、「属性セット」タブを選択します。

  3. 「属性セット」セクションで「名前」列の空白領域をクリックし、作成する属性セットの名前を入力します。

  4. データ・オブジェクト・エディタを閉じます。

  5. 手順3で作成した属性セットのデータ・オブジェクトをダブルクリックします。

    選択したオブジェクトに対するデータ・オブジェクト・エディタが表示されます。

  6. 「属性セット」タブで、手順3で作成した属性セットの名前を選択します。

    選択した属性セットの「属性」セクションに、データ・オブジェクトの属性が表示されます。

  7. 属性セットに含めるすべての属性で、「挿入」を選択します。

  8. 変更内容を保存して、データ・オブジェクト・エディタを閉じます。

属性セット内の列のプロファイリング次の手順で、属性セットに含まれる列をプロファイリングします。

  1. プロジェクト・エクスプローラで、「データ・プロファイル」ノードを右クリックして「新規」を選択します。

    データ・プロファイルの作成ウィザードのようこそページが表示されます。

  2. ようこそページで「次へ」をクリックします。

  3. 名前と説明ページで、データ・プロファイルの名前と説明(オプション)を入力します。「次へ」をクリックします。

  4. オブジェクトの選択ページでプロファイリングするデータ・オブジェクトを選択し、シャトル矢印を使用して、データ・プロファイルを「選択済」リストに移動します。

  5. 選択したデータ・オブジェクトに属性セットが含まれている場合は、「属性セットの選択」ダイアログ・ボックスが表示されます。

  6. プロファイリングする属性セットを選択して「OK」をクリックします。

    オブジェクトの選択ページが表示されます。

  7. オブジェクトの選択ページで「新規」をクリックします。

  8. サマリー・ページで、ウィザードのこれまでのページで選択したオプションを確認し、「終了」をクリックします。

    データ・プロファイルが作成され、ナビゲータ・ツリーに追加されます。

データのプロファイリング

選択したオブジェクトのディープ・スキャンを実行すると、データ・プロファイリングが実行されます。実行中のプロファイリングのオブジェクト数やタイプによって、時間がかかる場合があります。ただし、プロファイリングは非同期のジョブとして実行されるため、プロファイル・プロセス中にクライアントを閉じることができます。ジョブ・モニターで実行中のジョブを参照し、ジョブが完了すると、Warehouse Builderにより、ジョブが完了した旨が表示されます。

データ・プロファイリングの実行ステップ

データ・プロファイルを作成した後、それをデータ・プロファイル・エディタで開いてデータをプロファイリングしたり、以前に実行したプロファイルの結果を確認できます。データ・プロファイル・エディタのオブジェクト・ツリーには、プロファイルの作成時に選択したオブジェクトが表示されます。「プロファイル」「追加」の順に選択すると、プロファイルにオブジェクトを追加できます。

データをプロファイリングする手順は、次のとおりです。

  1. プロジェクト・エクスプローラで「データ・プロファイル」ノードを開き、データ・プロファイルを右クリックして「エディタを開く」を選択します。

    選択したデータ・プロファイルがデータ・プロファイル・エディタに開きます。

  2. データに対して実行する分析のタイプを指定するには、データ・プロファイルを構成します。

    「データ・プロファイルの構成」を参照してください。

  3. 「プロファイル」メニューから「プロファイル」を選択します。

    • (オプション)初めてデータをプロファイリングする場合は、「データ・プロファイル設定」ダイアログ・ボックスが表示されます。プロファイリング・ワークスペースの詳細を入力します。入力する情報の詳細は、「ヘルプ」をクリックしてください。

    Warehouse Builderでは、プロファイリングに使用するメタデータの準備を開始します。進行状況ウィンドウには、データをプロファイリングするために作成されているオブジェクト名が表示されます。メタデータの準備が完了した後、「プロファイリングが開始されました」ダイアログ・ボックスで、プロファイリング・ジョブが開始したことが通知されます。

  4. 「プロファイリングが開始されました」ダイアログ・ボックスで、「OK」をクリックします。

    プロファイリング・ジョブが開始すると、データ・プロファイリングは非同期ジョブとして実行されるため、処理を続行したり、クライアントを閉じることもできます。プロファイリング・プロセスは、完了するまで実行されます。

  5. データ・プロファイル・エディタの「モニター」パネルでプロファイリング・ジョブのステータスを確認します。

    プロファイリング・ジョブの進行状況は、「モニター」パネルで引き続きモニターできます。プロファイリング・ジョブが完了すると、ステータスが「完了」として表示されます。

  6. プロファイリングが完了すると、「プロファイル結果の取得」ダイアログ・ボックスが表示され、結果のリフレッシュが要求されます。「OK」をクリックしてデータ・プロファイリング結果を取得し、これらをデータ・プロファイル・エディタに表示します。

    前に同じデータ・プロファイルでデータをプロファイリングしたことがある場合は、このオプションを使用できます。これにより、新規のプロファイリング結果がデータ・プロファイル・エディタで参照可能になる時期を制御できます。


注意:

データ・プロファイリング結果は、以降にプロファイリングを実行すると上書きされます。

データ・プロファイルの構成

特定のタイプを分析する場合、または分析しない場合は、データ・プロファイルを実行する前に構成する必要があります。

データ・プロファイルは、次のいずれかのレベルで設定できます。

  • プロファイル全体(含まれるすべてのオブジェクト)

  • データ・プロファイルの個別オブジェクト

    たとえば、データ・プロファイルには3つの表が含まれます。1つの表に対して特定のタイプの分析を実行する場合、この表のみを構成します。

  • オブジェクト内の属性

    たとえば、表内で問題があるのは1列のみで、ほとんどのレコードは特定のドメイン内の値に準拠することが判明している場合は、プロファイリング・リソースをドメインの検出と分析にフォーカスできます。必要なプロファイリングのタイプを絞り込むことによって、使用するリソースが減り、結果をより速く取得できます。

データ・プロファイルの構成の実行ステップ
  1. プロジェクト・エクスプローラで、データ・プロファイルを右クリックして「エディタを開く」を選択します。

    データ・プロファイルに対するデータ・プロファイル・エディタが表示されます。

  2. 「プロパティ・インスペクタ」パネルで、必要なレベルで構成プロパティを設定します。

    データ・プロファイル全体を構成する手順は、次のとおりです。

    1. 「プロファイル・オブジェクト」タブで、データ・プロファイルを選択します。

    2. プロパティ・インスペク・タパネルで、データ・プロファイルの構成プロパティを設定します。

    データ・プロファイルの特定のオブジェクトを構成する手順は、次のとおりです。

    1. 「プロファイル・オブジェクト」タブで、データ・プロファイルを表すノードを展開します。

    2. データ・オブジェクトを選択します。

    3. 「プロパティ・インスペクタ」パネルで、オブジェクトの構成プロパティを設定します。

    データ・プロファイルのオブジェクト内の属性を構成する手順は、次のとおりです。

    1. 「プロファイル・オブジェクト」タブで、データ・プロファイルを表すノードを展開します。

    2. 属性が含まれるデータ・オブジェクトを開き、必要な属性を選択します。

    3. 「プロパティ・インスペクタ」パネルで、属性の構成プロパティを設定します。


    注意:

    データ・プロファイルに設定可能な構成パラメータの詳細は、「データ・プロファイリング構成パラメータの設定用の参照」を参照してください

    .

プロファイル結果の表示

プロファイリング操作が完了した後、データ・プロファイル・エディタでデータ・プロファイルを開き、結果を確認および分析できます。プロファイリング結果には、プロファイリングされたデータに関する様々な分析情報および統計情報が含まれています。異常が発生している箇所にすぐにドリルダウンして、その原因を確認できます。その後、修正する必要のあるデータを特定できます。

プロファイル結果を表示する手順は、次のとおりです。

  1. ナビゲーション・ツリーでデータ・プロファイルを選択し、右クリックして「エディタを開く」を選択します。

    データ・プロファイル・エディタが開き、データ・プロファイルが表示されます。

  2. 前にデータ・プロファイル・エディタにデータ・プロファイリング結果を表示したことがある場合は、最新の結果が表示されるように、プロンプトが表示された時点で表示をリフレッシュします。

    プロファイリングの結果がプロファイル結果キャンバスに表示されます。

  3. 「データ・ルール」パネルと「モニター」パネルの左上隅にある矢印記号をクリックし、この2つのパネルを最小化します。

    これにより、画面領域が最大化されます。

  4. オブジェクト・ツリーの「プロファイル・オブジェクト」タブでオブジェクトを選択し、特定のオブジェクトの結果にフォーカスを置きます。

    選択したオブジェクトのプロファイリング結果は、プロファイル結果キャンバスの次のタブを使用して表示されます。

データ・プロファイル内の様々なオブジェクトを切り替えることができます。前のオブジェクトで選択したタブは選択されたまま残ります。

データ・プロファイル

「データ・プロファイル」タブには、データ・プロファイルの一般情報が表示されます。このタブを使用して、データ・プロファイルに関するノートや情報を格納します。

プロファイル・オブジェクト

「プロファイル・オブジェクト」タブには「オブジェクト・データ」および「オブジェクト・ノート」という2つのサブタブがあります。「オブジェクト・データ」タブには、オブジェクト・ツリーの「プロファイル・オブジェクト」タブで選択したオブジェクト内のデータ・レコードがリスト表示されます。サンプルで使用した行数がリストされます。タブの上部にあるボタンを使用すると、問合せの実行、データの追加取得またはWHERE句の追加ができます。

集計

「集計」タブには、最小値、最大値、個別値の数およびNULL値など、各列の重要なメジャーがすべて表示されます。特定のデータ型の場合にのみ使用可能なメジャーがあります。たとえば、平均、中央値および標準偏差などのメジャーです。情報は、「表形式」サブタブまたは「グラフィカル」サブタブで参照できます。

表23-10に、「集計」タブで使用可能な測定結果を示します。

表23-10 集計結果

メジャー 説明

最小

特定のタイプのデータベース固有の順序付けに関する最小値

最大

特定のタイプのデータベース固有の順序付けに関する最大値

個別数

特定の属性の個別値の合計数

%個別

行セット数全体に対する個別値数の割合

NOT NULL

はいまたはいいえ

推奨NOT NULL

データ・プロファイリングでは、列値の分析に基づいて、この列にNULL値を許可しないように決定されます。

NULL数

特定の属性のNULL値の合計数

% NULL

行セット数全体に対するNULL値の割合

シックスシグマ

列ごとの、表の合計行数(可能性)に対するNULL値(欠損)の数

平均

行セット全体に対する特定の属性の平均値

中央値

行セット全体に対する特定の属性の中間値

標準偏差

特定の属性の標準偏差


集計結果表の値にハイパーリンクが付いている場合、この値をクリックするとデータにドリルダウンできます。これにより、この結果を生成したサンプル・データの分析が可能です。

たとえば、図23-4に示すように、SALARY列までスクロールして24000と表示されている「最大」セルの値をクリックすると、下部の「データ・ドリル・パネル」が変更され、この列のすべての個別値とカウントが左側に表示されます。右側のデータ・ドリルでは、個別値から選択した値にズームインして、これらの値が検出されたレコード全体を表示できます。

図23-4 表形式の集計結果

図23-4の説明が続きます
「図23-4 表形式の集計結果」の説明

グラフィカル分析では結果がグラフ形式で表示されます。グラフィカル・ツールバーを使用して表示を変更できます。また、「列」および「プロパティ」メニューを使用して、表示されるデータ・オブジェクトを変更することもできます。

データ型

「データ型」タブにはデータ型のプロファイリング結果が表示されます。これには、文字データ型の長さや数値データ型の精度とスケールなどのメトリックが含まれます。検出された各データ型は、属性全体で検出された主要なデータ型と比較され、主要なメジャーに準拠する行の割合が表示されます。

データ型のプロファイリングの一例は、VARCHARとして定義されていて実際には数値のみが格納されていた列を検出することです。この列のデータ型をNUMBERに変更すると、格納と処理の効率が向上します。

表23-11に、「データ型」タブで使用可能な測定結果を示します。

表23-11 データ型の結果

メジャー 説明

列の名前

文書化されたデータ型

ソース・オブジェクト内の列のデータ型

主要なデータ型

データ・プロファイリングでは、列値の分析に基づいて、これが主要な(最も頻度の高い)データ型であることが判別されます。

%主要なデータ型

列値が主要なデータ型を持つ行の合計行数に対する割合

文書化された長さ

ソース・オブジェクト内のデータ型の長さ

最小長

列に格納されているデータの最大長

最大長

列に格納されているデータの最小長

主要な長さ

データ・プロファイリングでは、列値の分析に基づいて、これが主要な(最も頻度の高い)長さであると判別されます。

%主要な長さ

列値が主要な長さである行の合計行数に対する割合

文書化された精度

ソース・オブジェクト内のデータ型の精度

最小精度

ソース・オブジェクト内の列の最小精度

最大精度

ソース・オブジェクト内の列の最大精度

主要な精度

データ・プロファイリングでは、列値の分析に基づいて、これが主要な(最も頻度の高い)精度であると判別されます。

%主要な精度

列値が主要な精度を持つ行の合計行数に対する割合

文書化されたスケール

ソース・オブジェクト内のデータ型に指定されているスケール

最小スケール

ソース・オブジェクト内のデータ型の最小スケール

最大スケール

ソース・オブジェクト内のデータ型の最大スケール

主要なスケール

データ・プロファイリングでは、列値の分析に基づいて、これが主要な(最も頻度の高い)スケールであると判別されます。

%主要なスケール

列値が主要なスケールを持つ行の合計行数に対する割合


ドメイン

「ドメイン」タブには、特定の属性に存在する可能性のある値セットに関する結果が表示されます。情報は、「表形式」サブタブまたは「グラフィカル」サブタブに表示できます。

図23-5は、データ・プロファイル・エディタの「ドメイン」タブを示しています。

図23-5 ドメイン検出結果

図23-5の説明が続きます
「図23-5 ドメイン検出結果」の説明

列のドメインを検出するプロセスには2つのフェーズがあります。最初に、列の個別値を使用して、その列がドメインで定義されている可能性があるかどうかが判別されます。通常、ドメインにはいくつか個別値が存在します。次に、可能性のあるドメインが識別され、個別値のカウントを使用して、その個別値がドメインに準拠しているかどうかが判別されます。ドメイン検出の両方のフェーズのしきい値を制御するプロパティは、プロパティ・インスペクタで設定できます。

詳細が必要な結果がみつかった場合は、ドリルダウンし、データ・ドリル・パネルを使用して、結果の原因に関する詳細を参照します。

たとえば、列REGION_IDについて4つの値3、2、4および1のドメインが検出されたとします。この検出結果に影響したレコードを調べるには、REGION_ID行を選択してデータ・ドリル・パネルで詳細を参照します。

表23-12に、「ドメイン」タブで使用可能な測定結果を示します。

表23-12 ドメイン結果

メジャー 説明

検出されたドメイン

検出されたドメイン値

%準拠

すべての列値のうち、検出されたドメイン値に準拠する列値の割合

シックスシグマ

ドメイン結果のシックスシグマ値


パターン

「パターン」タブには、属性内のパターンに関して検出された情報が表示されます。パターン検出とは、プロファイラが特定の属性について検出したデータの正規表現の生成を試行することです。パターン検出プロセスでは、英語以外の文字がサポートされていないことに注意してください。

表23-13に、「パターン」タブで使用可能な測定結果を示します。

表23-13 パターン結果

メジャー 説明

主要な文字パターン

最も検出頻度の高かった文字パターンまたはコンセンサス・パターン。

%準拠

データ・パターンが主要な文字パターンと一致した行の割合。

主要な単語パターン

最も検出頻度の高かった単語パターンまたはコンセンサス・パターン。

%準拠

データ・パターンが主要な単語パターンと一致した行の割合。

共通形式

名前、アドレス、日付、ブール、社会保障番号、電子メール、URL。これは、プロファイラによる参照しているデータへのセマンティクス認識の追加試行です。パターンと他のなんらかのテクニックに基づいて、特定の属性のデータが属しているドメイン・バケットの表現が試行されます。

%準拠

データ・パターンがコンセンサス共通形式パターンと一致した行の割合。


一意キー

「一意キー」タブには、データ・ディクショナリに文書化された既存の一意キー、およびデータ・プロファイリング操作で検出された一意キーまたはキーの組合せの候補に関する情報が表示されます。それぞれについて一意性の割合が表示されます。「文書化済ですか。」列が「いいえ」の一意キーは、データ・プロファイリングで検出された一意キーです。

たとえば、電話番号は98%のレコードで一意です。これは一意キーの候補として使用でき、準拠しないレコードを整備できます。また、ドリルダウン機能を使用して、電話番号の重複の原因をデータ・ドリル・パネルに表示することもできます。表23-14は、「一意キー」タブで使用可能な各種の測定結果を示しています。

表23-14 一意キーの結果

メジャー 説明

一意キー

検出された一意キー

文書化済ですか。

「はい」または「いいえ」。「はい」は、その列の一意キーがデータ・ディクショナリに存在することを示します。「いいえ」は、その一意キーがデータ・プロファイリングの結果として検出されたことを示します。

検出済ですか。

データ・プロファイリングでは、列値の分析に基づいて、「ローカル属性」列に表示される列に一意キーを作成する必要があるかどうかが判別されます。

ローカル属性

プロファイルされた表の列の名前

一意の数

ソース・オブジェクト内で、ローカル属性で表される属性が一意である行の数

%一意

ソース・オブジェクト内で、ローカル属性で表される属性が一意である行の割合

シックスシグマ

列ごとの、表の合計行数(可能性)に対するNULL値(欠損)の数


関数従属性

「関数従属性」タブには、他の属性に依存するか他の属性を決定付けると思われる属性の情報が表示されます。情報は、「表形式」サブタブまたは「グラフィカル」サブタブに表示できます。「表示」リストを使用すると、レポートのフォーカスを変更できます。データ・プロファイリング中は、データベース内で定義されている一意キーが関数従属性として検出されないことに注意してください。

表23-15に、「関数従属性」タブで使用可能な測定結果を示します。

表23-15 関数従属性の結果

メジャー 説明

決定子

「依存」に表示される属性を決定するものと判明した属性の名前

依存

他の属性の値により決定されることが判明した属性の名前

欠陥数

決定子属性の値のうち、依存属性により決定されなかった値の数

%準拠

検出された従属性に準拠する値の割合

シックスシグマ

シックスシグマ値

タイプ

検出された依存性に対する推奨アクション


たとえば、「表示」リストから「100%の依存性のみ」を選択すると、表示される情報は絶対依存性に限定されます。常に他の属性に依存する属性がある場合、その属性は参照表の候補として推奨されます。推奨事項は「タイプ」列に表示されます。属性を別の参照表に移動すると、スキーマが正規化されます。

「関数従属性」タブには「グラフィカル」サブタブも表示されるため、情報をグラフ形式で表示できます。リストから依存性とプロパティを選択し、グラフ・データを表示できます。

たとえば、図23-6では、DEPARTMENT_IDがCOMMISSION_PCTを決定付けると思われる依存性(DEPARTMENT_ID->COMMISSION_PCT)を選択しています。大多数の場合、COMMISION_PCTはNULLです。したがって、Warehouse BuilderではほとんどのDEPARTMENT_ID値がCOMMISION_PCTをNULLに決定付けるものと判断されます。プロパティを「非準拠」に切り替えると、この検出の例外を表示できます。図23-6は、80のDEPARTMENT_ID値についてCOMMISION_PCT値がNULLでないことを示しています。これは、DEPARTMENT_ID 80の部門がSales部門であることが検出された後に意味を持ちます。

図23-6 グラフ形式の「関数従属性」

図23-6の説明が続きます
「図23-6 グラフ形式の「関数従属性」の説明

参照

「参照」タブには、データ・ディクショナリに文書化されている外部キーとプロファイリング中に検出された関係に関する情報が表示されます。関係ごとに準拠レベルを表示できます。情報は、「表形式」サブタブと「グラフィカル」サブタブの両方で参照できます。また、他の2つのサブタブ「結合」サブタブおよび「冗長列」サブタブは、「参照」タブでのみ使用可能です。

表23-16に、「参照」タブで使用可能な測定結果を示します。

表23-16 参照の結果

メジャー 説明

関係

関係の名前

タイプ

関係のタイプ

文書化済ですか。

「はい」または「いいえ」。「はい」は、その列の外部キーがデータ・ディクショナリに存在することを示します。「いいえ」は、その外部キーがデータ・プロファイリングの結果として検出されたことを示します。

検出済ですか。

データ・プロファイリングでは、列値の分析に基づいて、「ローカル属性」に表示される列に外部キーを作成する必要があるかどうかが判別されます。

ローカル属性

ソース・オブジェクト内の属性の名前

リモート・キー

ローカル属性の参照先オブジェクト内のキーの名前

リモート属性

参照先オブジェクト内の属性の名前

リモート・リレーション

ソース・オブジェクトの参照先オブジェクトの名前

リモート・モジュール

参照オブジェクトを含むモジュールの名前

カーディナリティ範囲

2つの属性間のカーディナリティの範囲

たとえば、EMP表に5行の従業員データが含まれているとします。部門10および20にそれぞれ従業員が2人、部門30に従業員が1人います。DEPT表には3行の部門データがあり、それぞれのdeptno値が10、 20および30となっています。

データ・プロファイリングでは、EMP表とDEPT表の行関係が検索されます。カーディナリティ範囲は、1-2:1-1となります。これは、EMP表では個別値ごとの行数が1(deptno 30)から2(deptno 10および20)の範囲内にあるためです。DEPT表には、個別値(10、20および30)ごとに1行しかありません。

親なしの子の数

ソース・オブジェクト内の親なしの子行の数

%準拠

検出された従属性に準拠する値の割合

シックスシグマ

列ごとの、表の合計行数(可能性)に対するNULL値(欠損)の数


たとえば、EmployeesおよびDepartmentsという2つの表の参照関係を分析しているとします。図23-7に示した参照のデータ・プロファイリング結果を使用すると、Employees表のDEPARTMENT_ID列が、その時点でDepartments表の98%でDEPARTMENT_ID列に関連付けられていることがわかります。次に、「検出済ですか。」列でハイパーリンクとなっている「はい」をクリックすると、検出された外部キー関係に準拠していなかった行を表示できます。

また、「グラフィカル」サブタブを選択すると、情報をグラフ形式で表示できます。この表示は、親なしの子など非準拠レコードを表示する際に効率的です。「グラフィカル」サブタブを使用するには、「参照」および「プロパティ」リストから選択します。

「結合」サブタブには、「参照」リストから選択した参照の結合分析が表示されます。結果は、参照関係に可能性のある3つの結果(結合、親なしの子、子なしのオブジェクト)の相対サイズと正確なカウントを示します。

たとえば、EMPLOYEES表とDEPARTMENTS表の両方にDEPARTMENT_ID列が含まれているとします。DEPARTMENTS表のDEPARTMENT_ID列とEMPLOYEES表のDEPARTMENT_ID列の間には、1対多の関係が存在します。「結合」は、両方の表に値を持つ値を表します。「親なしの子」は、EMPLOYEES表にのみ存在してDEPARTMENTS表には存在しない値を表します。「子なし」の値は、DEPARTMENTS表には存在しますがEMPLOYEES表には存在しません。ダイアグラム上の値にドリルインして「データ・ドリル・パネル」に詳細を表示できます。

図23-8に、「参照」タブの「結合」サブタブを示します。

「冗長列」サブタブには、子表に含まれていて主表にも含まれている列に関する情報が表示されます。冗長列の結果を使用できるのは、プロファイリング中に完全に一意の列が検出された場合のみです。

たとえば、表23-17および表23-18に示すように、2つの表EMPおよびDEPTが、EMP.DEPTNO (uk) = DEPT.DEPTNO (fk)という外部キー関係を持つとします。

表23-17 EMP表

社員番号 Dept. No ロケーション

100

1

CA

200

2

NY

300

3

MN


表23-18 DEPT表

Dept No ロケーション Zip

1

CA

94404

3

MN

21122

3

MN

21122

1

CA

94404


この例で、EMP表のLocation列は、結合から同じ情報を取得できるため冗長列です。

データ・ルール

「データ・ルール」タブには、オブジェクト・ツリーで選択した表のデータ・プロファイリング結果として定義されたデータ・ルールが表示されます。各データ・ルールには、次の詳細が含まれています。

  • ルール名: データ・ルール名を表します。

  • ルール・タイプ: データ・ルールのタイプの簡潔な説明を入力します。

  • 元: データ・ルールの元を表します。たとえば、値「導出済」はデータ・ルールが導出されたことを示します。

  • %準拠: データ・ルールに準拠している行の割合。

  • 欠陥数: データ・ルールに準拠しない行数。

このタブに表示されるデータ・ルールは、「データ・ルール」パネルでアクティブになっているデータ・ルールを反映しています。このタブでデータ・ルールを直接作成することはできません。

データ・ルールの導出

データ・プロファイリング結果に基づいて、データのクリーンアップに使用可能なデータ・ルールを導出できます。データ・ルールは、データ・オブジェクト内に格納できる正当なデータのセットを判別する式です。データ・ルールは、データ・ルールに準拠する値のみをデータ・オブジェクト内で使用可能にする場合に使用します。データのクリーンアップが必要と判断した場合、データ・ルールがデータの修正または削除の基準となります。また、データ・ルールを使用して、ルールに準拠していないデータをレポートすることもできます。

データ・ルールを作成し、それをデータ・プロファイルに手動で適用できますが、導出したデータ・ルールを使用すると、データ・プロファイリングおよびデータ修正間を迅速でシームレスに移動させることができます。

たとえば、Employeesという表にEmployee_NumberGenderEmployee_Nameの各列が含まれているとします。プロファイリング結果は、Employee_Number列の値の90%が一意であり、一意キーの主要な候補であることを示しています。また、Gender列の値の85%が「M」または「F」であり、ドメインに適した候補でもあることを示しています。そこで、これらのルールを「プロファイル結果キャンバス」から直接導出できます。

データ・ルールの導出の実行ステップ

  1. ナビゲーション・ツリーでデータ・プロファイルを選択し、右クリックして「エディタを開く」を選択します。

    プロファイリング結果を示すデータ・プロファイル・エディタが表示されます。

  2. プロファイリング結果を確認し、データ・ルールに導出する検出内容を決定します。

    データ・ルールを保証する結果のタイプは様々です。一般にデータ・ルールに導出される結果によっては、検出されたドメイン、2つの属性間の関数従属性または一意キーが含まれることがあります。

  3. データ・ルールの導出元として使用する結果が表示されるタブをクリックします。

    たとえば、「EMPLOYEE_NUMBER」列に対して一意キー・ルールを施行するデータ・ルールを作成するには、「一意キー」タブにナビゲートします。

  4. データ・ルールに導出する結果が含まれるセルを選択します。

  5. 「プロファイル」メニューから「データ・ルールの導出」を選択します。または、「データ・ルールの導出」ボタンをクリックします。

    たとえば、「EMPLOYEE_NUMBER」列に一意キー・ルールを作成するには、この列を選択して「データ・ルールの導出」をクリックします。

    データ・ルールの導出ウィザードが表示されます。

  6. ようこそページで「次へ」をクリックします。

  7. 名前と説明ページで、「名前」フィールドにデータ・ルールのデフォルト名が表示されます。新しい名前を指定するには、名前を選択し、新しい名前を入力し、「次へ」をクリックします。

  8. ルールの定義ページで、データ・ルールのパラメータに関する詳細を入力し、「次へ」をクリックします。

    データ・ルールのタイプを表す「タイプ」フィールドには、データ・ルールの導出元となったタブに基づいて値が移入されます。データ・ルールのタイプは編集できません。

    このページの下部にある他のフィールドでは、データ・ルールのパラメータを定義します。一部のフィールドには、データ・プロファイリング結果に基づいて値が移入されます。フィールドの数とタイプは、データ・ルールのタイプに応じて異なります。

  9. サマリー・ページで、ウィザードで設定したオプションを確認します。選択した値の変更が必要な場合は、「戻る」をクリックします。データ・ルールを作成するには、「終了」をクリックします。

    データ・ルールが作成され、データ・プロファイル・エディタの「データ・ルール」パネルに表示されます。導出されたデータ・ルールは、プロジェクト・エクスプローラの「データ・ルール」ノードの下にある「Derived_Data_Rules」ノードにも追加されます。このデータ・ルールを他のデータ・オブジェクトにアタッチして再利用できます。

修正の生成

プロファイリング結果からデータ・ルールを導出した後、プロファイリング結果に基づいてソース・データの修正プロセスを自動化できます。スキーマ修正とマッピング修正を作成できます。スキーマ修正ではスクリプトが作成され、これを使用して、適用した導出済のデータ・ルールで修正されたソース・データ・オブジェクトのセットを作成します。マッピング修正では新しい修正マッピングが作成され、ソース・オブジェクトからデータを取得し、新しいオブジェクトにそのデータをロードします。

データ修正の自動化の実行ステップ

  1. データ・プロファイリング結果に基づいて修正オブジェクトを生成します。

    「修正の作成の実行ステップ」を参照してください。

    「修正表およびマッピングの表示」に示すように、修正したオブジェクトを表示できます。

  2. 生成した修正を配布し、修正したオブジェクトをターゲット・スキーマで作成します。

    「修正オブジェクトの配布の実行ステップ」を参照してください。

修正の作成の実行ステップ

データ・プロファイル・エディタを使用して、プロファイリング結果に基づいた修正を作成します。

修正を作成する手順は、次のとおりです。

  1. データ・プロファイルがまだ開いていない場合、プロジェクト・エクスプローラでそのデータ・プロファイルを右クリックし、「エディタを開く」を選択して開きます。

  2. 「プロファイル」メニューから「修正の作成」を選択します。

    修正の作成ウィザードが表示されます。

  3. ターゲット・モジュールの選択ページで、修正を含むターゲット・モジュールを指定し、「次へ」をクリックします。新しいモジュールを作成するか、既存のモジュールを使用できます。

    • 修正を既存のターゲット・モジュールに格納するには、「既存のモジュールを選択」を選択し、「使用可能」リストからモジュールを選択します。

    • 修正を新規ターゲット・モジュールに格納するには、「新規ターゲット・モジュールの作成」を選択します。モジュールの作成ウィザードが表示され、新規ターゲット・モジュールの作成ステップが示されます。

    「前の修正オブジェクトを削除します。」を選択して、前の修正の結果として作成した修正オブジェクトを削除できます。

  4. オブジェクトの選択ページで、「選択済」リストに移動することによって、修正するオブジェクトを選択し、「次へ」をクリックします。

    「フィルタ」リストを使用すると、選択可能なオブジェクトをフィルタできます。デフォルト選択は「すべてのオブジェクト」です。表やビューなど、特定タイプのデータ・オブジェクトのみを表示できます。

  5. データ・ルールおよびデータ型の選択ページで、オブジェクトごとに実装する修正を選択することによってスキーマ修正を実行します。「次へ」をクリックします。

    「修正済オブジェクトのデータ・ルールおよびデータ型の選択」を参照してください。

  6. (オプション)データ・ルール検証ページで、検証エラーを書き留め(存在する場合)、作業を進める前にこれらを修正します。

    修正対象として選択したオブジェクトに前のデータ修正アクションの修正オブジェクトが存在する場合、このページにメッセージが表示されます。「次へ」をクリックし、前に作成した修正オブジェクトを削除します。

  7. 修正された表の確認と受入ページで、修正するオブジェクトを選択し、「次へ」をクリックします。

    「修正するオブジェクトの選択」を参照してください。

  8. データ修正アクションの選択ページで、オブジェクトに対して実行する修正アクションを指定し、「次へ」をクリックします。

    「データ修正の選択およびアクションのクレンジング」を参照してください。

  9. サマリー・ページで、「終了」をクリックして修正オブジェクトを作成します。

修正スキーマが作成され、プロジェクト・エクスプローラに追加されます。修正オブジェクトおよびマッピングは、修正の作成ウィザードのターゲット・モジュールの選択ページでターゲット・モジュールとして指定したモジュールの下に表示されます。指定したデータ修正アクションによっては、修正オブジェクトにデータの整備および修正に使用される変換が含まれています。

修正するオブジェクトのデータ・ルールおよびデータ型の選択

このページを使用して、選択したオブジェクトに適用するデータ・ルールを選択します。修正用に選択したオブジェクトはページの左側にあるツリーにモジュール別に編成されています。右パネルには「データ・ルール」および「データ型」という2つのタブがあります。

データ・ルール: 「データ・ルール」タブには、オブジェクト・ツリーで選択されたオブジェクトに使用可能なデータ・ルールが表示されます。修正するオブジェクトに適用するデータ・ルールを指定するには、データ・ルールの左側にあるチェック・ボックスを選択します。Warehouse Builderは、スキーマ生成時にこれらのデータ・ルールを使用して表の制約を作成します。

「バインド」セクションには、ルールのバインド先となる表の列に関する詳細が含まれています。ルール名をクリックするとそのルールのバインドが表示されます。

修正表にデータ・ルールを適用するときに使用する方法は、実装するデータ・ルールのタイプによって異なります。

データ型: 「データ型」タブには、修正対象として選択している列が表示されます。変更は、データ型または精度の変更、あるいは固定長から可変長への変更になります。「文書化されたデータ型」列には既存の列定義が表示され、「新規データ型」列にはこの列定義に対して提案された修正内容が表示されます。

列定義を修正するには、列名の左側にあるチェック・ボックスを選択します。

修正するオブジェクトの選択

修正された表の確認と受入ページを使用して、修正するオブジェクトを確認します。このページには、適用されたルールを使用して変更された表およびデータ型の変更がリストされます。

このページでは、次のアクションを実行します。

  1. 修正するスキーマにデータ・オブジェクトを作成するには、オブジェクトの左側で「作成」を選択します。

    このページの下の部分には、選択されたオブジェクトの詳細が複数のタブを使用して表示されます。「列」タブには、修正するデータ・オブジェクトに作成する列の詳細が表示されます。「制約」タブには、修正するデータ・オブジェクトに作成する制約の詳細が表示されます。「データ・ルール」タブには、修正するデータ・オブジェクトに作成するデータ・ルールの詳細が表示されます。

  2. 「列」タブで、次のアクションを実行します。

    • 修正するデータ・オブジェクトに表示列を作成するには、「作成」を選択します。

    • 修正したオブジェクトから表示列を削除するには、列名の左側の「作成」の選択を解除します。

    • 修正するオブジェクト内の表示列を変更するには、「データ型」、「長さ」、「精度」、「秒精度」および「スケール」の各属性を編集します。ただし、列名は変更できません。

  3. 「制約」タブで、次のアクションを実行します。

    • さらに制約を追加するには、「制約の追加」をクリックします。

    • 修正するデータ・オブジェクトから制約を削除するには、制約を選択して「削除」をクリックします。

  4. 「データ・ルール」タブで、次のアクションを実行します。

    • 修正するオブジェクトに、データ・プロファイリングの結果に基づいて得られたデータ・ルールを適用するには、データ・ルールの左側のチェック・ボックスを選択します。

      「バインド」列には、データ・ルールを適用する必要のある列を必ず含めてください。

    • 修正するオブジェクトに新規データ・ルールを適用するには、「ルールの適用」をクリックします。データ・ルールの適用ウィザードによって、データ・ルールを適用する手順が示されます。

データ修正およびデータ・クレンジング・アクションの選択

データ修正アクションの選択ページを使用して、ソース・データ修正のために実行するアクションを選択します。このページには、「修正済の表の選択」および「データ修正アクションの選択」の2つのセクションがあります。「修正済の表の選択」セクションには、修正用に選択したオブジェクトがリストされます。このセクションにある表を選択すると、関連するデータ・ルールが「データ修正アクションの選択」セクションに表示されます。

データ修正アクションの選択: データ・ルールごとに、「アクション」列のメニューからアクションを選択します。ここで選択した設定により、データ・ルール規制のために許容されないデータ値の処理方法が決定されます。次のアクションから1つ選択します。

  • 無視

  • レポート

  • クレンジング


関連項目:

各修正アクションの説明は、「データ修正アクション」を参照してください。

「クリーンアップ方針」: 「クリーンアップ方針」リストを使用してクリーンアップ方針を指定します。このオプションは、「アクション」列で「整備」を選択した場合にのみ有効になります。整備方針は、データ・ルールのタイプとルール構成によって異なります。データ・ルールと一致しないレコードはエラー表に保存されます。

修正オブジェクトの配布の実行ステップ

データ修正プロセスの一環として作成した修正マッピングを配布するには、次の手順を実行します。

  1. ソース表のSELECT権限をPUBLICに付与します。

    たとえば、修正マッピングには、HRスキーマのEMPLOYEES表が含まれます。HR.EMPLOYEES表で、SELECT権限がPUBLICに付与される場合にのみ、この修正マッピングを正常に配布できます。

  2. ターゲット・スキーマに修正オブジェクトを作成するには、データ・プロファイリングの結果として作成された修正表を配布します。

  3. データをクレンジングするには、修正マッピングを配布して実行します。

修正表およびマッピングの表示

データ・オブジェクト・エディタで修正表を確認し、表設計の一部として作成したデータ・ルールと制約を確認できます。

修正マッピングを表示する手順は、次のとおりです。

  1. 表またはマッピングをダブルクリックし、対応するエディタでオブジェクトを開きます。

  2. マッピングが開いた後、「表示」「自動レイアウト」を順番に選択してマッピング全体を表示します。

    図23-9に、修正の作成ウィザードで生成された修正マップを示します。

    図23-9 生成された修正マッピング

    図23-9の説明が続きます
    「図23-9 生成された修正マッピング」の説明

  3. サブマッピングATTR_VALUE_1を選択し、ツールバーの「子グラフの表示」アイコンをクリックしてサブマッピングを表示します。

    図23-10に、表示されるサブマッピングを示します。

    図23-10 修正サブマッピング

    図23-10の説明が続きます
    「図23-10 修正サブマッピング」の説明

    サブマッピングは、修正の作成ウィザードで指定した実際の修正クレンジングを行うマッピング内の要素です。このサブマップの中央に、修正の作成ウィザードによりファンクションとして生成されたDOMAINSIMILARITY変換があります。

データ・ルールの手動による定義と編集

データ・ルールは、導出するか、手動で作成できます。修正を作成する前、または作成後に、追加のデータ・ルールを手動で定義できます。

データ・ルールを手動で定義および編集する詳細は、「データ・ルールの作成」を参照してください。

生成、配布および実行

最後に、修正マッピングとデータ・ルールを生成、配布および実行できます。修正マッピングをデータ・ルールとともに実行すると、データが修正されます。導出されたデータ・ルールは修正済スキーマのオブジェクトにアタッチされたままであるため、データ・モニターで使用することもできます。

データ・プロファイルの編集

データ・プロファイルの作成後に、データ・プロファイル・エディタを使用してプロファイルの定義を変更できます。また、既存のデータ・プロファイルにデータ・オブジェクトを追加することも可能です。オブジェクトを追加するには、メニュー・バーのオプションを使用する方法と「データ・プロファイルの編集」ダイアログの「オブジェクトの選択」タブを使用する方法があります。

データ・プロファイルを編集する手順は、次のとおりです。

  1. プロジェクト・エクスプローラで、データ・プロファイルを右クリックして「エディタを開く」を選択します。

    データ・プロファイル・エディタが表示されます。

  2. 「編集」メニューから「プロパティ」を選択します。

    「データ・プロファイルの編集」ダイアログ・ボックスが表示されます。

  3. データ・プロファイルの次のプロパティのいずれかを編集し、「OK」をクリックします。

    • データ・プロファイルの名前または説明を変更するには、「名前」タブで、名前または説明を選択し、新規値を入力します。

    • オブジェクトを追加または削除するには、「オブジェクトの選択」タブで、矢印を使用してデータ・プロファイルのオブジェクトを追加または削除します。

    • データ・プロファイリングのステージング領域の場所を変更するには、「データのロケーション」タブを使用します。

      矢印を使用して、新規ロケーションを「選択されたロケーション」セクションに移動します。このロケーションをデータ・プロファイルのデフォルトのプロファイリング・ロケーションとして設定するために「新規構成デフォルト」が選択されていることを確認します。


      注意:

      データ・プロファイリングを実行した後に、プロファイリングのロケーションを変更する場合、前のプロファイリング結果は失われます。

データ・プロファイルへのデータ・オブジェクトの追加

データ・プロファイルにデータ・オブジェクトを追加する手順は、次のとおりです。

  1. プロジェクト・エクスプローラで、データ・プロファイルを右クリックして「エディタを開く」を選択します。

    データ・プロファイル・エディタが表示されます。

  2. 「プロファイル」メニューから「オブジェクトの追加」を選択します。

    「プロファイル表の追加」ダイアログ・ボックスが表示されます。

  3. 「プロファイル表の追加」ダイアログ・ボックスで、データ・プロファイルに追加するオブジェクトを選択します。オブジェクトを選択し、矢印を使用してこれらを「選択済」セクションに移動します。

    オブジェクトの選択時に、[Ctrl]キーを押し続けることで複数のファイルを選択できます。

データ・プロファイリング構成パラメータの設定用の参照

データ・プロファイルに対して設定できる構成パラメータは、次のカテゴリに分類されています。

ロード構成

このカテゴリに含まれるパラメータは、次のとおりです。

  • データ型検出を使用可能にする: このパラメータをTRUEに設定すると、選択した表のデータ型検出が有効になります。

  • 共通形式検出を使用可能にする: このパラメータをTRUEに設定すると、選択した表の共通形式検出が有効になります。

  • データをワークスペースにコピー: このパラメータをTRUEに設定すると、ソースからプロファイル・ワークスペースへのデータのコピーが有効になります。

  • ランダム・サンプル率: この値は、ロード時にランダムに選択される合計行のパーセントを表します。

  • サンプル・セット・フィルタ: データをプロファイル・ワークスペースにロードするときにソースに適用されるWHERE句を表します。このフィールドの省略記号ボタンをクリックして、「式ビルダー」を表示します。これを使用してWHERE句を定義します。

  • NULL値表現: プロファイリング時にこの値はNULL値とみなされます。値は一重引用符で囲む必要があります。デフォルト値はNULLであり、データベースNULLとみなされます。

集計構成

このカテゴリは、「NOT NULL推奨率」というパラメータ1つで構成されています。列内のNULL値の割合がこのしきい値の割合より低い場合、その列はNOT NULLの可能性がある列として検出されます。

パターン検出構成

このカテゴリに含まれるパラメータは、次のとおりです。

  • パターン検出の有効化: これをTrueに設定すると、パターン検出が使用可能になります。

  • 最大パターン数: プロファイラが属性に対して取得するパターンの最大数を表します。たとえば、このパラメータを10に設定すると、プロファイラは属性に対して上位10パターンを取得します。

ドメイン検出構成

このカテゴリに含まれるパラメータは、次のとおりです。

  • ドメイン検出の有効化: これをTrueに設定すると、ドメイン検出が有効になります。

  • ドメイン検出最大個別値件数: 列内の個別値の最大数で、その列がドメインによって定義されている可能性があると検出されるためのものです。その列内の個別値の数が最大の個別値カウント・プロパティと同じかそれ以下で、個別値の数の行数合計に占める割合が最大の個別値パーセント・プロパティと同じかそれ以下である場合、列のドメイン検出が発生します。

  • ドメイン検出最大個別値パーセント: 列内の個別値の最大数を表中の行数合計に対する割合で表したもので、その列がドメインによって定義されている可能性があると検出されるためのものです。その列内の個別値の数が最大の個別値カウント・プロパティと同じかそれ以下で、個別値の数の行数合計に占める割合が最大の個別値パーセント・プロパティと同じかそれ以下である場合、列のドメイン検出が発生します。

  • ドメイン値準拠最小行数: 指定された個別値の行の最小数で、その個別値がドメインに準拠しているとみなされるための数値です。その値を持つ行の数が最小の行カウント・プロパティと同じかそれ以上で、その値を持つ行の数の行数合計に占める割合が最小の行パーセント・プロパティと同じかそれ以上である場合、値に対するドメイン値準拠が発生します。

  • ドメイン値準拠最小行パーセント: 指定された個別値の行の最小数を行数合計に対する割合で表したもので、その個別値がドメインに準拠しているとみなされるための数値です。その値を持つ行の数が最小の行カウント・プロパティと同じかそれ以上で、その値を持つ行の数の行数合計に占める割合が最小の行パーセント・プロパティと同じかそれ以上である場合、値に対するドメイン値準拠が発生します。

関係属性カウント構成

このカテゴリには、単一のパラメータ「最大属性カウント」が含まれています。これは、一意キー、外部キーおよび機能依存プロファイリングの属性の最大数です。

一意キー検出構成

このカテゴリに含まれるパラメータは、次のとおりです。

  • 一意キー検出の有効化: このパラメータをTrueに設定すると、一意キー検出が使用可能になります。

  • 最小一意性割合: これは、一意キー関係を満たすために必要な行の最小割合です。

関数従属性検出構成

このカテゴリに含まれるパラメータは、次のとおりです。

  • 関数従属性検出の有効化: このパラメータをTrueに設定すると、関数従属性検出が使用可能になります。

  • 最小関数従属性割合: これは、関数従属性を満たすために必要な行の最小割合です。

行関係検出構成

このカテゴリに含まれるパラメータは、次のとおりです。

  • 関係検出の有効化: このパラメータをTrueに設定すると、外部キー検出が使用可能になります。

  • 最小関係割合: これは、外部キー関係を満たすために必要な行の最小割合です。

冗長列検出構成

このカテゴリに含まれるパラメータは、次のとおりです。

  • 冗長列検出の有効化: このパラメータをTrueに設定すると、外部キーと一意キーのペアに関して冗長列検出が使用可能になります。

  • 最小冗長性割合: これは、冗長な行の最小割合です。

データ・ルール・プロファイリング構成

このカテゴリには、単一パラメータ「表のデータ・ルール・プロファイリングを使用可能にします。」が含まれています。このパラメータを「True」に設定すると、選択した表のデータ・ルール・プロファイリングが使用可能になります。この設定を適用できるのは表のみで、個別の属性には適用できません。

データ・プロファイリング・プロセスのチューニング

データ・プロファイリングは、プロセッサおよびI/Oへの集中度の高いプロセスであり、プロファイリングの実行時間は数分から数日にわたります。次の条件が満たされていることを確認することで、最大限のデータ・プロファイリング・パフォーマンスを達成できます。

データ・プロファイリングのパフォーマンス向上を目的としたデータ・プロファイルのチューニング

データ・プロファイルは、データ・プロファイリング結果を最適化するように構成できます。データ・プロファイルの構成には構成パラメータを使用します。

次のガイドラインに従うと、データ・プロファイリング・プロセスが高速になります。

  • 必要なタイプの分析のみを実行します。

    プロファイリング対象となるオブジェクトに特定のタイプの分析が不要であることがわかっている場合は、構成パラメータを使用して該当タイプのデータ・プロファイリングをオフにします。

  • 分析対象のデータ量を減らします。

    WHERE句とサンプル率構成パラメータを使用します。

プロファイリングのソース・データがOracle Databaseに格納されている場合は、ソース・スキーマをプロファイル・ワークスペースと同じデータベース・インスタンスに置くことをお薦めします。そのためには、ワークスペースをソース・スキーマ・ロケーションと同じOracleインスタンスにインストールします。これにより、データベース・リンクを使用してデータをソースからプロファイリング・ワークスペースに移動する必要がなくなります。

データ・プロファイリングのパフォーマンス向上を目的としたOracle Databaseのチューニング

データ・プロファイリング・パフォーマンスを向上させるには、Oracle Databaseを実行するコンピュータに特定のハードウェア機能が必要です。さらに、データ・プロファイリングを実行するOracle Databaseインスタンスを最適化する必要があります。

効率的なデータ・プロファイリングに該当する考慮事項は、次のとおりです。

  • マルチプロセッサ

  • メモリー

  • I/Oシステム

マルチプロセッサ

Oracle Databaseを実行するコンピュータには、複数のプロセッサが必要です。データ・プロファイリングは、Oracle Databaseが提供する並列化を最大限に利用するように設計されチューニングされています。大きい表(1000万行以上)をプロファイリングする間は、マルチプロセッサ・コンピュータを使用することをお薦めします。

データ・プロファイリングの実行に必要な問合せには、ヒントが使用されます。これにより、Oracle Databaseの初期化パラメータ・ファイルからの並列度が使用されます。デフォルトの初期化パラメータ・ファイルには、並列度を利用するパラメータが含まれています。

メモリー

データ・プロファイリング時には、高いメモリー・ヒット率を確保することが重要です。そのためには、システム・グローバル領域に割り当てるサイズを大きくします。システム・グローバル領域のサイズは500MB以上の値に構成することをお薦めします。可能であれば、2GBまたは3GBに構成してください。

上級データベース・ユーザーの場合は、バッファ・キャッシュ・ヒット率とライブラリ・キャッシュ・ヒット率を調べることをお薦めします。バッファ・キャッシュ・ヒット率は95%以上に、ライブラリ・キャッシュ・ヒット率は99%以上に設定してください。

I/Oシステム

I/Oシステムの処理能力は、データ・プロファイリングのパフォーマンスに直接影響します。データ・プロファイリング処理では、全表スキャンと大規模結合が頻繁に実行されます。現在のCPUではI/Oシステムの能力を容易に超えてしまう可能性があるため、I/Oサブシステムを慎重に設計して構成する必要があります。I/Oパフォーマンスの向上に役立つ考慮事項は、次のとおりです。

  • CPUとI/Oの中断なしの連携をサポートするには、多数のディスク・スピンドルが必要です。ディスクが少数しかなければ、I/Oシステムは高度な並列処理に適応しません。CPUごとに2枚以上のディスクを使用することをお薦めします。

  • ディスクを構成します。論理ストライプ・ボリュームを既存のディスク上に作成し、各ボリュームを使用可能な全ディスク間でストライプ化することをお薦めします。ストライプ幅の計算には、次の計算式を使用します。

    MAX(1,DB_FILE_MULTIBLOCK_READ_COUNT/number_of_disks) X DB_BLOCK_SIZE

    DB_FILE_MULTIBLOCK_SIZEおよびDB_BLOCK_SIZEは、データベース初期化パラメータ・ファイル内で設定するパラメータです。計算式で得られた値の倍数をストライプ幅として使用することもできます。

    論理ボリュームを作成してメンテナンスするには、Veritas Volume ManagerまたはSun Storage Managerなどのボリューム管理ソフトウェアが必要です。Oracle Database 10g以上を使用していて、ボリューム管理ソフトウェアがない場合は、Oracle Databaseの自動記憶域管理機能を使用してワークロードをディスクに分散できます。

  • 表領域ごとに異なるストライプ・ボリュームを作成します。表領域の一部に同じディスク・セットを使用することも可能です。

    データ・プロファイリングの場合、通常はUSERS表領域とTEMP表領域が同時に使用されます。そのため、この2つの表領域を別のディスクに配置して妨害を減らすことを検討できます。

データ・ルールの使用

データ・プロファイリング結果に基づいてデータ・ルールを導出するのみでなく、独自のデータ・ルールを定義することも可能です。データ・ルールは、それが定義されているプロジェクト内の複数の表にバインドできます。1つのオブジェクトに必要な数のデータ・ルールを含めることができます。

デザイン・センターを使用して、データ・ルールを作成および編集します。データ・ルールを作成した後、そのルールを次のようなシナリオで使用できます。

データ・プロファイリングでのデータ・ルールの使用

データ・プロファイリングを使用して表を分析する際に、データ・ルールを使用して、指定のルールに対するデータの準拠レベルを分析して統計を収集できます。その結果から、新規のデータ・ルールを導出できます。データ・プロファイリングにより大多数のレコードで特定の列の値がred、whiteおよびblueであることが判明した場合は、カラー・ドメイン(red、whiteおよびblue)を定義する新規データ・ルールを導出できます。その後、このルールを再利用して他の表をプロファイルしたり、整備や監査などに再利用できます。

データ整備とスキーマ修正でのデータ・ルールの使用

データ・ルールをデータ整備とスキーマ修正に使用するには、2つの方法があります。第1の方法は、ソース・スキーマを、新規表の構造がデータ・ルールに厳密に準拠しているターゲット・スキーマに変換することです。この新規表は適切なデータ型を持ち、制約が規定され、スキーマが正規化されます。第2の方法では、データ・ルールを修正マッピングに使用することです。この修正マッピングでは、ソース表のデータをデータ・ルールと比較検証し、準拠レコードと非準拠レコードを判別します。分析されたデータ・セットは修正され(孤立レコードの削除、不正確なドメイン値の修正など)、整備されたデータ・セットが修正済ターゲット・スキーマにロードされます。

データ監査でのデータ・ルールの使用

データ・ルールは、データ監査にも使用されます。データ監査とは、データを一連のデータ・ルールと比較検証して準拠レコードと非準拠レコードを判別するプロセスです。データ監査により、ルールに対するシステム内のデータの準拠レベルを示す統計メトリックが収集され、欠陥データが監査表とエラー表にレポートされます。その点では、データ・ルール・ベースの修正マッピングに似ていますが、この種の修正マッピングには、データ・ルールに準拠しないデータ用のレポート専用オプションも用意されています。

データ・ルール・フォルダの作成

各データ・ルールは、関連するデータ・ルールを分類するコンテナ・オブジェクトであるデータ・ルール・フォルダに属しています。

データ・ルール・フォルダを作成するには、ナビゲーション・ツリーで「データ・ルール」を右クリックして「新規」を選択します。「データ・ルール・フォルダの作成」ダイアログ・ボックスが表示されます。

データ・ルールの作成

プロジェクト・エクスプローラの「データ・ルール」フォルダに、データ・ルールが含まれています。すべてのデータ・ルールは、データ・ルール・フォルダに属している必要があります。サブフォルダ「DERIVED_DATA_RULES」には、データ・プロファイリングの結果として導出されたデータ・ルールが含まれています。追加のデータ・ルール・フォルダを作成して、作成したデータ・ルールを格納できます。

データ・ルールを作成する手順は、次のとおりです。

  1. データ・ルールの作成先の「データ・ルール」フォルダを右クリックし、「新規」を選択します。

    データ・ルールの作成ウィザードのようこそページが表示されます。

  2. ようこそページで「次へ」をクリックします。

  3. 名前と説明ページに、データ・ルールの名前と名前(オプション)を入力します。「次へ」をクリックします。

  4. ルールの定義ページで、作成するデータ・ルールのタイプを指定します。また、データ・ルールの作成に必要な追加情報も指定します。「次へ」をクリックします。

    データ・ルールの定義の詳細は、「データ・ルールの定義」を参照してください。

    たとえば、ドメイン範囲ルールを作成する場合、有効なドメイン値を表す値を指定する必要があります。

  5. サマリー・ページで、ウィザードでの選択項目を確認します。「戻る」をクリックして、選択した値を変更します。「終了」をクリックして、データ・ルールを作成します。

    データ・ルールは、作成先の「データ・ルール」フォルダに追加されます。

データ・ルールの定義

ルールの定義ページまたは「ルールの定義」タブを使用して、データ・ルールの詳細を指定します。このページの上部には、データ・ルールのタイプを示す「タイプ」リストが表示されます。データ・ルールを作成する場合は、「タイプ」フィールドを展開してデータ・ルールのタイプを表示し、作成するタイプを選択します。データ・ルールを編集する際、作成したデータ・ルールのタイプは変更できないため、「タイプ」フィールドは無効になります。データ・ルールのタイプの詳細は、「データ・ルールのタイプ」を参照してください。


注意:

データ・ルールを導出する際、「タイプ」フィールドには自動的に値が移入されますが、この値は編集できません。

このページの下のセクションで、データ・ルールに関する詳細を追加指定します。このセクションに表示されるフィールドの数と名前は、作成したデータ・ルールのタイプによって異なります。

たとえば、タイプとしてカスタムを選択した場合は、「属性」セクションを使用して、ルールに必要な属性を定義します。「式」フィールドの省略記号ボタンを使用して、「属性」セクションで定義した属性を含んだカスタム式を定義します。

データ・ルールのタイプとして「ドメイン範囲」を選択した場合、ページの下のセクションに、範囲、最小値および最大値のデータ・タイプを指定するためのフィールドが表示されます。データ・ルールを導出している場合、ルールの導出元となるプロファイリング結果に基づいて、これらのフィールドのいくつかに移入が行われます。

データ・ルールの編集

データ・ルールの作成後に、その定義を編集できます。データ・ルール名を変更し、説明を編集できます。データ・ルールのタイプは変更できません。ただし、データ・ルールに対して指定した他のパラメータは変更できます。たとえば、「ドメイン範囲」タイプのデータ・ルールの場合、範囲のデータ型、最小値および最大値を編集できます。

データ・ルールを編集する手順は、次のとおりです。

  1. プロジェクト・エクスプローラで、データ・ルールを右クリックして「エディタを開く」を選択します。

    「データ・ルールの編集」ダイアログ・ボックスが表示されます。

  2. 「名前」タブで、次のタスクを実行できます。

    • データ・ルールの名前を変更するには、名前を選択して新しい名前を入力します。

    • データ・ルールの説明を編集するには、説明を選択して新しい説明を入力します。

  3. 「定義」タブで、データ・ルールのプロパティを編集します。


    注意:

    データ・ルールのタイプは変更できません。変更できるのは、ドメインの境界、ドメイン・リスト、一意キー内の属性数などのデータ・ルールのタイプに関するプロパティのみです。

データ・ルールのオブジェクトへの適用

オブジェクトにデータ・ルールを適用すると、データ・ルールの定義がオブジェクトにバインドされます。たとえば、ルールをDept表にバインドすると、表に指定されている属性に対してルールが確実に実装されます。データ・ルールを適用するにはデータ・オブジェクト・エディタを使用します。データ・プロファイル・エディタの「データ・ルール」パネルから導出したデータ・ルールも適用できます。

データ・ルールの適用ウィザードを使用して、データ・オブジェクトにデータ・ルールを適用できます。事前に作成したデータ・ルールまたはデータ・オブジェクトに作成したデータ・ルールを適用できます。データ・ルールの適用先として可能なデータ・オブジェクトのタイプは表、ビュー、マテリアライズド・ビューおよび外部表です。

データ・ルールをデータ・オブジェクトに適用する手順は、次のとおりです。

  1. プロジェクト・エクスプローラで、データ・ルールを適用するオブジェクトを右クリックして「エディタを開く」を選択します。

    データ・オブジェクトに対するデータ・オブジェクト・エディタが表示されます。

  2. 「データ・ルール」タブに移動します。

    データ・オブジェクトにすでにバインドされているデータ・ルールがこのタブに表示されます。

  3. 「ルールの適用」をクリックします。

    データ・ルールの適用ウィザードが表示されます。

  4. ようこそページで「次へ」をクリックします。

  5. ルールの選択ページで、データ・オブジェクトに適用するデータ・ルールを選択して、「次へ」をクリックします。

    BUILT_INノード、DERIVED_DATA_RULESノード、および作成する任意の他のデータ・ルール・フォルダの下にデータ・ルールがまとめられます。

    BUILT_INノードには、ワークスペースで定義されたデフォルトのデータ・ルールが含まれています。たとえば、外部キー、一意キー、NOT NULLなどです。

    DERIVED_DATA_RULESノードには、データ・プロファイリングの結果として導出されたすべてのデータ・ルールが表示されます。

  6. 名前と説明ページに、適用したデータ・ルールの名前と説明(オプション)を入力します。「次へ」をクリックします。

  7. ルール・パラメータのバインド・ページで、「バインド」リストを使用して、データ・ルールを適用する必要のあるデータ・オブジェクトの列を選択します。「次へ」をクリックします。

  8. サマリー・ページで、前のウィザード・ページでの選択を確認します。「戻る」をクリックして、選択した値を変更します。データ・ルールを適用するには、「終了」をクリックします。

    データ・ルールはデータ・オブジェクトにバインドされ、「データ・ルール」タブにリストされます。

データ監査を使用したデータ品質の監視

データ監査はオブジェクトであり、ソース・スキーマを継続的にモニターしてデータが定義済のデータ・ルールに準拠していることを確認するために使用できます。モニターできるのは、データ・ルールが定義されているオブジェクトのみです。表、ビュー、マテリアライズド・ビューおよび外部表のデータ監査を作成できます。

データ品質を監視するには、次の手順を実行します。

  1. 監視するデータ・オブジェクトを含むデータ監査を作成します。

    「データ監査の作成」を参照してください。

  2. データ監査を実行して、データ・オブジェクトで定義しているデータ・ルールに準拠していないレコードを識別します。データ監査を手動で実行するか、指定した時間に実行するようにスケジューリングできます。

    データ監査の実行の詳細は、「データ監査を使用したデータ・オブジェクトの監査」を参照してください。


注意:

データ監査用のメタデータは、マージ・モードではインポートできません。インポート・モード・オプションの詳細は、Oracle Warehouse Builderインストレーションおよび管理ガイドを参照してください。

データ監査の作成

データ監査の作成ウィザードを使用して、データ監査を作成します。データ監査はプロジェクトのOracleモジュールの一部です。

データ監査を作成する手順は、次のとおりです。

  1. データ監査を作成するOracleモジュールを展開します。

  2. 「データ監査」を右クリックして、「新規」を選択します。

    データ監査の作成ウィザードが表示されます。

  3. 名前と説明ページに、データ監査の名前と説明(オプション)を入力します。「次へ」をクリックします。

  4. オブジェクトの選択ページで、監査するデータ・オブジェクトを選択して「次へ」をクリックします。

    「使用可能」セクションには、監査可能なオブジェクトのリストが表示されます。表示されるのは、データ・ルールがバインドされているオブジェクトだけです。「選択済」セクションには、監査用に選択されたオブジェクトが表示されます。シャトル・ボタンを使用して、オブジェクトを「選択済」セクションに移動します。オブジェクトの選択時に、[Ctrl]キーを押したままにすると複数のファイルを選択できます。

  5. アクションの選択ページで、選択したオブジェクトにバインドされているデータ・ルールに準拠していないレコードに対して実行されるアクションを指定します。「次へ」をクリックします。

    「データ修正アクションの指定」を参照してください。

  6. サマリー・ページで、選択項目を確認します。「戻る」をクリックして選択した値を変更するか、または「終了」をクリックしてデータ監査を作成します。

新しいデータ監査は、「データ監査」ノードに追加されます。この時点で、データ監査のメタデータのみがワークスペースに格納されます。このデータ監査を使用してデータ・オブジェクトのデータの品質を監視するには、データ監査を実行する必要があります。

データ修正アクションの指定

データ監査の作成ウィザードのアクションの選択ページまたは「データ監査の編集」ダイアログ・ボックスの「アクションの選択」タブを使用して、データ修正アクションを指定します。このページには、「エラーしきい値モード」と「データ・ルール」という2つのセクションが含まれます。

エラーしきい値モード

エラーしきい値モードは、オブジェクトのデータ・ルールに対するデータの準拠を判断するために使用されます。次のオプションから1つ選択します。

  • パーセント: データ監査により、データ・ルールに準拠しないレコードの割合に基づいて監査結果が設定されます。この割合は、ルールの欠陥しきい値に指定されます。

  • シックスシグマ: データ監査により、データ・ルールに対するシックスシグマ値に基づいて監査結果が設定されます。いずれかのルールによって計算されたシックスシグマ値が、指定されたシックスシグマ値より小さい場合は、データ監査により、AUDIT RESULTが2に設定されます。

データ・ルール

「データ・ルール」セクションには、オブジェクトの選択ページで選択したオブジェクトに適用したデータ・ルールがリストされています。各ルールに対して次を指定します。

  • アクション: ソース・オブジェクトのデータがデータ・ルールに準拠しない場合に実行されるアクション。データ・ルールが監査されるようにするには、「レポート」を選択します。データ・ルールが無視されるようにするには、「無視」を選択します。

  • 欠陥しきい値: 監査が確実に実行されるために、データ・ルールに準拠する必要があるレコードの割合。1から100の間の値を指定します。「エラーしきい値モード」セクションで「シックスシグマ」を選択している場合、この値は無視されます。

  • シグマしきい値: 必要な一致率。0から7の間の値を指定します。7に設定している場合、失敗は許容されません。「エラーしきい値モード」セクションで「パーセント」を選択している場合、この値は無視されます。

データ監査の編集

データ監査を作成した後、データ監査を編集し、そのプロパティを変更できます。

データ監査を編集する手順は、次のとおりです。

  1. プロジェクト・エクスプローラで、データ監査を右クリックして「エディタを開く」を選択します。

    「データ監査の編集」ダイアログ・ボックスが表示されます。

  2. 「名前」タブで、データ監査の新しい名前と説明を入力します。

  3. 「オブジェクトの選択」タブで、矢印を使用してデータ監査の一部として監査するオブジェクトを追加または削除します。

  4. 「アクションの選択」タブで、指定したデータ修正アクションを編集します。

    「データ修正アクションの指定」を参照してください。

  5. 「オブジェクトの調整」タブで、オブジェクトの左側にあるチェック・ボックスを選択し、最新のリポジトリ定義を使用してその定義を調整します。「調整」をクリックします。

  6. 「OK」をクリックし、「データ監査の編集」ダイアログ・ボックスを閉じます。

データ監査を使用したデータ・オブジェクトの監査

データ監査の作成後に、データ・オブジェクト内のデータのモニターに使用できます。これにより、オブジェクトのデータ・ルール違反が確実に検出されます。データ監査を実行すると、データ・オブジェクトについて定義済のデータ・ルールに違反しているレコードがエラー表に書き込まれます。

データ監査には2つの使用方法があります。

  • 手動によるデータ監査の実行

  • 自動によるデータ監査の実行

手動によるデータ監査の実行

データ・オブジェクト内のデータがそのオブジェクトに対して定義済のデータ・ルールに準拠しているかどうかをチェックするには、データ監査を実行する必要があります。データ監査は、デザイン・センターまたはコントロール・センター・マネージャから実行できます。データ監査をデザイン・センターから実行するには、データ監査を右クリックして「開始」を選択します。コントロール・センター・マネージャの場合は、データ監査を選択し、「ファイル」メニューから「開始」を選択します。結果は、「データ監査の実行結果」で説明したようにジョブ詳細ウィンドウに表示されます。

自動によるデータ監査の実行

データ監査の実行プロセスを自動化する手順は、次のとおりです。

  1. データ監査モニター・アクティビティを含むプロセス・フローを作成します。

  2. このプロセス・フローを事前定義済の時刻に実行するようにスケジュールします。

    オブジェクトのスケジューリングの詳細は、「スケジュールを定義して使用するためのプロセス」を参照してください。

図23-11は、データ監査モニター・アクティビティを含むプロセス・フローを示しています。このプロセス・フローでは、LOAD_EMP_MAPはデータをEMP表にロードするマッピングです。データ・ロードに成功すると、データ監査EMP_DATA_AUDITが実行されます。データ監査では、表に対して定義されたデータ・ルールに基づいてEMP表のデータがモニターされます。

図23-11 プロセス・フローにおけるデータ監査モニター・アクティビティ

図23-11の説明が続きます
「図23-11 プロセス・フローにおけるデータ監査モニター・アクティビティ」の説明

データ監査の実行結果

データ監査の実行後、ジョブ詳細ウィンドウに実行詳細が表示されます。ジョブ詳細ウィンドウには、「入力パラメータ」および「実行結果」という2つのタブがあります。ジョブ詳細ウィンドウが表示されるのは、配布プリファレンスの「モニターの表示」を「True」に設定している場合のみであることに注意してください。配布プリファレンスの詳細は、「配布プリファレンス」を参照してください。

図23-12に、ジョブ詳細ウィンドウの「実行結果」を示します。

図23-12 データ監査の実行結果

図23-12の説明が続きます
「図23-12 データ監査の実行結果」の説明

「入力パラメータ」タブには、データ監査の実行に使用された入力パラメータの値が表示されます。「実行結果」タブには、データ監査の実行結果が表示されます。このタブには「行アクティビティ」セクションと「出力パラメータ」セクションがあります。

「行アクティビティ」セクションには、各ステップにおけるエラー表への挿入の詳細が表示されます。複数のデータ・ルールを指定した場合、データ監査に複数表挿入が使用されることに注意してください。この場合、行数が正確になりません。

図23-12では、E_NOT_NULLというデータ・ルールによってエラー表に1つのレコードが挿入されています。

「出力パラメータ」セクションには、次の3つのパラメータがあります。

  • AUDIT_RESULT: データ監査の実行結果を示します。このパラメータに可能な値は次のとおりです。

    0: データ・ルール違反は発生しませんでした。

    1: データ・ルール違反が1つ以上発生しましたが、データ監査で定義された最低品質のしきい値を満たせないデータ・ルールはありませんでした。

    2: 1つ以上のデータ・ルールが最低品質のしきい値を満たせませんでした。

    しきい値の設定の詳細は、「データ監査の作成」でアクションを選択する手順を参照してください。

  • EO_<データ・ルール名>: 指定したデータ・ルールについて計算されたエラー品質を表します。0はすべてのエラー、100はエラーなしを示します。

  • SO_<データ・ルール名>: 指定したデータ・ルールについて計算されたシックスシグマ品質を表します。

データ監査の構成

構成フェーズ中に構成パラメータを設定して、作成したデータ監査に物理的な配布プロパティを割り当てます。「構成プロパティ」ダイアログ・ボックスでは、データ監査の物理プロパティを構成できます。

データ監査を構成する手順は、次のとおりです。

  1. プロジェクト・エクスプローラで、「データベース」ノード、続いて「Oracle」ノードを展開します。

  2. 構成するデータ監査の名前を右クリックして「構成」を選択します。

    「構成プロパティ」ダイアログ・ボックスが表示されます。

  3. 要件に基づいて、「ランタイム・パラメータデータ監査パラメータおよび「コード生成オプション」にリストされているパラメータを構成します。

ランタイム・パラメータ

デフォルト・パージ・グループ: このパラメータは、パッケージの実行時に使用されます。ランタイム・スキーマ内の各監査レコードは、指定したパージ・グループに割り当てられます。

バルク・サイズ: カーソルの処理中にバッチとしてフェッチされる行数。

表分析のサンプリング率: ターゲット表の分析時にサンプリングされる行の割合。ターゲット表を分析して、ターゲット表にデータをロードする間のパフォーマンス向上に使用できる統計を収集します。

コミット頻度: コミットの発行前に処理される行数。

エラーの最大数: このステップの実行が終了するまでに許容されるエラーの最大数。

デフォルト・オペレーティング・モード: 使用するオペレーティング・モード。選択できるオプションは、「行ベース」、「行ベース(ターゲットのみ)」、「セット・ベース」、「セット・ベースから行ベースへのフェイルオーバー」、「セット・ベースから行ベース(ターゲットのみ)へのフェイルオーバー」です。

デフォルト監査レベル: このパラメータを使用して、パッケージの実行時に使用する監査レベルを指定します。パッケージの実行時にランタイム・スキーマ内で取得される監査情報の量は、このパラメータの設定値に応じて異なります。

選択できるオプションは、次のとおりです。

ERROR DETAILS: 実行時には、エラー情報と統計監査情報が記録されます。

COMPLETE: 実行時にはすべての監査情報が記録されます。この設定では大量の診断データが生成され、割当済表領域がすぐにいっぱいになってしまう可能性があります。

NONE: 実行時に監査情報は記録されません。

STATISTICS: 実行時には統計監査情報が記録されます。

データ監査パラメータ

このカテゴリにはデータ監査と同じ名前が使用され、次の汎用的なデータ監査構成パラメータが含まれます。

生成コメント: 生成されたコードに関するコメントを追加指定します。

しきい値モード: 失敗のしきい値の測定に使用するモードを指定します。オプションは「PERCENTAGE」と「SIX SIGMA」です。

言語: 生成済コードの定義に使用する言語。オプションは、「PL/SQL」(デフォルト)と「UNDEFINED」です。「PL/SQL」(デフォルト)が選択されていることを確認してください。

配布可能: このデータ監査の配布が必要であることを示すには、このオプションを選択します。Warehouse Builderでコードが生成されるのは、データ監査が配布可能としてマークされている場合のみです。

参照カレンダ: データ監査に関連付けるスケジュールを指定します。スケジュールでは、データ監査の実行時期を定義します。

コード生成オプション

ANSI SQL構文: 生成されたコードでANSI SQLコードを使用するには、このオプションを選択します。このオプションを選択しなければ、Oracle SQL構文が生成されます。

コミット制御: コミットの実行方法を指定します。このパラメータに使用可能なオプションは、「自動」、「自動相関」および「手動」です。このパラメータが「自動」に設定されていることを確認してください。

パラレルDMLの有効化: 実行時にパラレルDMLを有効化するには、このオプションを選択します。

表統計の分析: データ監査用の統計収集に使用する文を生成するには、このオプションを選択します。ターゲット表がマッピングと同じスキーマにない場合に、その表を分析するには、マッピングを所有するスキーマにANALYZE ANYを付与する必要があります。

最適化コード: 最適化コードの生成を指定するには、このオプションを選択します。

生成モード: 最適化コードを生成する際のモードを選択します。選択できるオプションは、「すべてのオペレーティング・モード」、「行ベース」、「行ベース(ターゲットのみ)」、「セット・ベース」、「セット・ベースから行ベースへのフェイルオーバー」および「セット・ベースから行ベース(ターゲットのみ)へのフェイルオーバー」です。

ターゲット・ロード順序付けを使用: ターゲット・ロード順序付け用のコードを生成するには、このオプションを選択します。

エラー・トリガー: エラー・トリガー・プロシージャの名前を指定します。

バルク処理コード: バルク処理コードを生成するには、このオプションを選択します。

データ監査エラー表の表示

データ監査を、手動で実行するか、またはプロセス・フローの一部として実行する場合、データ監査に含まれるオブジェクトに定義されたデータ・ルールに準拠しないレコードはエラー表に書き込まれます。データ監査に含まれるオブジェクトごとに準拠しないレコードを格納する、オブジェクトに対応したエラー表があります。

リポジトリ・ブラウザを使用すると、エラー表に書き込まれた準拠しないレコードをすべて表示できます。

データ監査の実行結果として作成されたエラー表を表示するには、次の手順を実行します。

  1. 「エラー表の権限の付与」に示すように、エラー表の権限を付与します。

  2. リポジトリ・ブラウザを使用して、エラー表を表示します。次のステップを実行します。

エラー表に対する権限の付与

リポジトリ・ブラウザを使用して、エラー表に格納されているデータを表示する前に、エラー表の権限をOWBSYSユーザーに付与する必要があります。これにより、リポジトリ・ブラウザでエラー表データにアクセスできるようになります。

エラー表の権限を付与する手順は、次のとおりです。

  1. SQL*Plusで、エラー表が含まれるスキーマにログインします。

    オブジェクトのエラー表はオブジェクトと同じスキーマに格納されています。

  2. SQLスクリプトOWB_ORACLE_HOME¥owb¥rtp¥sql¥grant_error_table_privileges.sqlを実行します。

  3. プロンプトが表示された場合、権限を付与するエラー表の名前を入力します。

    「エラー表名」プロパティを使用してオブジェクトのエラー表の名前を指定しなかった場合、デフォルト名が表示されます。エラー表を使用するオブジェクトの場合、デフォルトのエラー表名は、「_ERR」という接頭辞が付いたオブジェクト名です。

  4. 権限を付与する各エラー表に対し手順2から3を繰り返します。

Oracle Master Data Management (MDM)で使用するデータの監視および修復の設定

データの監視および修復(DWR)は、Oracle Master Data Management(MDM)でのデータ管理を支援するために設計されたプロファイリングおよび修正ソリューションです。MDMアプリケーションは、統合された単一のデータ・ビューを提供する必要があります。これを実現するには、接続された複数のエンティティで共有する前に、システムのマスター・データをクリーンアップする必要があります。

MDMアプリケーションがデータの整備および統合を実行できるように、Warehouse Builderには、データ・プロファイリングおよびデータ修正機能が用意されています。DWRは次のMDMアプリケーションに使用できます。

MDMで使用するデータの監視および修復(DWR)の概要

データの監視および修復(DWR)では、次の機能を使用してMDMデータベースに格納されたデータの分析、整備、統合を行うことができます。

  • データ・プロファイリング

    データ・プロファイリングは、ソース・データの欠陥を検出および測定できるデータ分析方法です。

    データ・プロファイリングの詳細は、「データ・プロファイリングについて」を参照してください。

  • データ・ルール

    データ・ルールにより、ソース・データ内の有効なデータと関係を判別し、データ品質を確保できます。MDM固有のデータ・ルールをインポートしたり、独自のデータ・ルールを定義したり、データ・プロファイリングの結果からデータ・ルールを導出できます。

    データ・ルールの詳細は、「データ・ルールについて」を参照してください。

  • データ修正

    データ修正により、データおよびメタデータの矛盾、冗長性、誤りを修正できます。修正マッピングを自動的に作成し、ソース・データを整備できます。

    データ修正の詳細は、「データの修正と改良について」を参照してください。

DWRにより、重要なビジネス・ルールを定期的に測定できます。データに矛盾を検出した場合、新しいデータ・ルールを定義して適用し、データ品質を確保できます。

MDMで事前に定義されているデータ・ルール

Warehouse Builderには、MDMアプリケーションでよく利用されるデータ・ルールが事前定義されています。たとえば、次のカスタム・データ・ルールは、Customer Data Hub(CDH)およびUniversal Customer Master(UCM)の両方のアプリケーションで使用できます。

  • 属性の完全性

  • 連絡先の完全性

  • データ型

  • データ・ドメイン

  • 制限値

  • 一意キー検出

  • 完全名の標準化

  • 共通パターン

  • 名前の大文字化

  • 内線電話番号

  • 国際電話番号

  • 名前のみのアクセス・リストの禁止

  • 名前またはSSNによるアクセス・リストを禁止

  • 電子メール・リストの禁止

これらのデータ・ルールの詳細は、Oracle Watch and Repair for MDMユーザーズ・ガイドを参照してください。

データの監視および修復(DWR)を実行する際の前提条件

データの監視および修復(DWR)を使用するには、次のソフトウェアが必要です。

  • Oracle Database 11gリリース1(11.1)以上

  • Customer Data Hub(CDH)、Product Information Management(PIM)またはUniversal Customer Master(UCH)のうち、1つ以上のMaster Data Management(MDM)アプリケーション。

Oracle Databaseで実行されるMDMアプリケーションの場合、DWRを直接使用できます。ただし、Oracle Databaseで実行されないMDMアプリケーションの場合には、サード・パーティのデータベースとのゲートウェイをセットアップする必要があります。

Warehouse Builderを使用してデータの監視および修復(DWR)を実行する手順

  1. Master Data Management(MDM)アプリケーション・データベースに対応するロケーションを作成します。

    接続エクスプローラの「データベース」ノードの下にある「Oracle」ノードを使用します。ユーザー名、パスワード、ホスト名、ポート、サービス名、データベースのバージョンなど、MDMアプリケーションの詳細を指定します。

  2. プロジェクト・エクスプローラで「アプリケーション」ノードを開き、MDMアプリケーションのノードを表示します。

    「CDH」ノードはCustomer Data Hubアプリケーションを表します。「PIM」ノードはProduct Information Managementアプリケーションを表します。「UCM」ノードはUniversal Customer Masterアプリケーションを表します。

  3. DWRを実行するMDMアプリケーションのタイプに対応するノードを右クリックし、「CMIモジュールの作成」を選択します。

    モジュールの作成ウィザードを使用して、MDMメタデータ定義を格納するモジュールを作成します。モジュールの作成時の手順1で作成したロケーションを選択します。

  4. 手順3で作成したモジュールにMDMアプリケーションからメタデータをインポートします。モジュールを右クリックして、「インポート」を選択します。

    メタデータのインポート・ウィザードが表示されます。このウィザードでは、MDMメタデータをインポートできます。詳細は、「インポート・メタデータ・ウィザード」の使用」を参照してください。

  5. 「MDMデータ・ルールのインポート」で説明するように、MDM固有のデータ・ルールをインポートします。

  6. 「データ・ルールのオブジェクトへの適用」で説明するように、MDMアプリケーション表にデータ・ルールを適用します。

    データ・ルールを表に適用すると、表データがデータ・ルールのビジネス・ルールに準拠しているかどうかがわかります。手順5でインポートしたデータ・ルール、または作成した他のデータ・ルールも適用できます。

    データ・ルールの作成は、「データ・ルールの作成」を参照してください。

  7. プロファイリングするMDMアプリケーションのすべての表を含むデータ・プロファイルを作成します。

    データ・プロファイルの作成は、「データ・プロファイルの作成」を参照してください。

  8. 「データのプロファイリング」の説明に従って、MDMアプリケーション・オブジェクトにデータ・プロファイリングを実行します。

  9. 「プロファイル結果の表示」の説明に従って、データ・プロファイリングの結果を表示します。

  10. (オプション)「データ・ルールの導出」の説明に従って、データ・プロファイリングの結果に基づいてデータ・ルールを導出します。

    データ・プロファイリングの結果から導出したデータ・ルールは、自動的に表に適用されます。

  11. 「修正の作成手順」.に従って、修正マッピングを作成します。

  12. 「修正オブジェクトの配布手順」に従って、Warehouse Builderにより生成された修正マッピングでデータおよびメタデータを修正します。

  13. 「修正済データおよびメタデータのMDMアプリケーションへの書込み」の説明に従って、手順12で作成した修正オブジェクトに格納された修正済データをMDMアプリケーションに書き込みます。

MDMデータ・ルールのインポート

Customer Data Hub(CDH)およびUniversal Customer Master(UCM)アプリケーションに必要なデータ・ルールは、OWB_ORACLE_HOME/misc/dwr/customer_data_rules.mdlファイルに記述されています。これらのデータ・ルールをインポートするには、「設計」メニューから「インポート」「Warehouse Builderメタデータ」の順に選択します。「メタデータのインポート」ダイアログ・ボックスで、customer_data_rules.mdlを選択して「OK」.をクリックします。「メタデータのインポート」ダイアログの詳細は、このページのヘルプをクリックします。

インポートされたデータ・ルールは、グローバル・エクスプローラで「パブリック・データ・ルール」ノードの「MDM Customer Data Rules」ノードの下に表示されます。

修正済データおよびメタデータのMDMアプリケーションへの書込み

整備済および修正済のデータは、データ・プロファイリングの結果として作成される修正オブジェクトに保存されます。

より効果的に処理するために、修正が必要な行のみを書き込みことができます。これは、生成された修正マッピングを変更することで実現します。未変更の準拠行を通過するブランチを削除します(このブランチには、負のフィルタと集合演算子が含まれています)。修正マッピングでブランチを処理している修正済の行のみを保持します。

ソースのMDMアプリケーションに修正データを書き込むには、次の手順に従います。

  1. マッピング・エディタを使用してマッピングを作成します。

  2. 修正済の表をマッピング・エディタにドラッグ・アンド・ドロップします。これがソース表になります。

  3. UCMの場合は、作業する実表に対応するインタフェースをドラッグ・アンド・ドロップします。

    MDMアプリケーション・ツールおよびドキュメントを使用して、特定のインタフェース表の実表を判別します。

  4. 修正済の表からインタフェース表に列をマッピングします。

  5. マッピングを配布して実行し、修正済のデータをソースMDMアプリケーションに書き込みます。

  6. インタフェース表に対する変更で実表を更新します。Siebel Enterprise Integration Manager(EIM)を使用できます。EIMはコマンドラインで実行することも、Graphical User Interface(GUI)からでも実行できます。

    EIMの使用方法の詳細は、Siebel Enterprise Integration Manager管理ガイドを参照してください。