この章では、Database Migration Assistant for Unicode (DMU)のユーザー・インタフェースの要素を示し、これらを使用して様々なオブジェクト・プロパティを表示および設定する方法について説明します。
データベース、スキーマ、表などのデータベース・オブジェクトの様々なプロパティを表示するには、ナビゲータ・ペインでオブジェクトのノードを右クリックし、コンテキスト・メニューから「プロパティ」を選択します。DMUメイン・ウィンドウのクライアント・ペインに、このタイプのオブジェクトにあわせて調整されたプロパティ・タブが表示されます。各プロパティ・タブには、最大4つのサブタブ(「一般」、「スキャン」、「準備状況」および「変換」)が含まれます。サブタブを表示するには、タブの左サイドバーでサブタブの名前をクリックします。
サブタブには、移行プロセスの特定のステップに関連するプロパティおよび情報が表示されます。「一般」サブタブには、移行のすべてのフェーズに関連するプロパティが表示されます。スキャン・サブタブには、スキャン・プロセスを制御するパラメータおよびスキャン結果が表示されます。準備状況サブタブには、オブジェクトに含まれるデータが実際の変換ステップに対して準備できているかが表示されます。データが準備できていない場合、このサブタブにその理由が表示されます。変換サブタブには、変換ステップを制御するパラメータが表示されます。次の各項で、すべてのオブジェクト・プロパティ・タブで使用可能なプロパティについて説明します。
プロパティ・タブでプロパティを変更した場合は、「適用」をクリックして変更を保存します。
この章は次の項で構成されています。
図3-1に示すように、データベース・プロパティ・タブには4つのサブタブ(「一般」、「スキャン」、「準備状況」および「変換中」)が含まれます。
データベース・プロパティ・タブの「一般」サブタブには、次のプロパティが表示されます。
ユーザー名やホスト名などの接続詳細
接続詳細は、「データベース接続の作成」を参照してください。接続詳細は、この項の説明に従って変更してください。
データベースのキャラクタ・セットの情報
データベース・キャラクタ・セットの情報は、次の3つのプロパティで構成されます。
現行データベース・キャラクタ・セット
これは、データ型VARCHAR2
、CHAR
、LONG
およびCLOB
の列に格納されたデータを解釈するために使用されるデータベースの現行の宣言済キャラクタ・セットです。
想定データベース・キャラクタ・セット
DMUでは、移行中に文字データをスキャンおよび変換するとき、想定データベース・キャラクタ・セットがデフォルトのソース・キャラクタ・セットとして使用されます。データベースが適切なキャラクタ・セット構成で使用されていれば、想定キャラクタ・セットはデータベース・キャラクタ・セットと同じになります。ただし、「データの無効なバイナリ記憶域表現」で説明されているように、パススルー構成においては、文字列の全部または大部分に、宣言済データベース・キャラクタ・セットとは異なるクライアント・ワークステーションのキャラクタ・セットでデータが格納されることがあります。このような場合、データベースの内容の実際のキャラクタ・セットを特定した後、これを想定データベース・キャラクタ・セット・プロパティの値として設定して、データの正しい解釈方法をDMUに指定します。
ターゲット・データベース・キャラクタ・セット
これは移行のターゲット・キャラクタ・セットで、UTF8かAL32UTF8のいずれかです。このプロパティを変更するには、移行リポジトリをアンインストールしてから再びインストールする必要があります。
「適用」をクリックして、このサブタブで行った変更を保存します。
データベース・プロパティ・タブのスキャン・サブタブでは、このデータベース内のスキャン・プロセスを制御する一般的なパラメータを設定し、データベースのスキャン結果の集計を参照できます。スキャン・サブタブの図は、図3-2を参照してください。
スキャン・サブタブのプロパティは次のとおりです。
スキャン・プロセス数
これは、データベースのスキャンに使用される同時プロセスの数を指定します。各スキャン・プロセスは、DMU内のパラレル・スレッドと、このスレッドによりサーバー上に作成されたデータベース・セッションで構成されます。このプロパティのデフォルト値は、データベース・サーバー上のCPUの数から導出されます。この値を調整するには、値を変更し、1回のデータベース・スキャンを完了するために必要な時間を測定します。少数の小さな表をスキャンするようにDMUに指定した場合、このスキャンに使用されるプロセスの数がこのプロパティの値より少なくなることがあります。
また、「スキャン・プロセス数」はスキャン・ウィザードでも変更できます。詳細は、「データベース・スキャン・レポートの概要」を参照してください。
スキャン・バッファ・サイズ
このプロパティは、DMUで表をスキャンするために各データベース・サーバー・セッションに割り当てられるバッファのサイズ(バイト)を制御します。デフォルト値は1000KBです。1回のスキャンで使用される合計バッファ領域は、スキャン・プロセスの数にこのプロパティ値を乗算した値です。このプロパティの値を大きくすると、割り当てられたバッファ・メモリーがデータベース・サーバー上の使用可能なRAMに収まっているかぎり、スキャンの速度が上がる可能性があります。
また、「スキャン・バッファ・サイズ」はスキャン・ウィザードでも変更できます。詳細は、「スキャン・ウィザードを使用したデータベースのスキャン」を参照してください。
スキャン・ステータス
このプロパティには、データベースのスキャン・ステータスの集計が表示されます。次の値を指定できます。
未スキャン
最後に移行リポジトリがインストールされてから、スキャンは実行されていません。
進行中
スキャンは現在進行中です。
スキャン済
データベース内のすべての表のスキャンが完了し、有効なスキャン結果が存在しています。
一部スキャン済
データベース内の一部の表のスキャンが完了し、有効なスキャン結果が存在していますが、その他の表はまだスキャンされていないか、クレンジング・アクションまたはDMU外部でのその構造(メタデータ)の変更によってスキャン結果が無効化されています。
問題検出済
データベース内の1つ以上の表に、変換可能性の問題があるデータが含まれています。長さ制限(拡張)または無効なバイナリ表現の問題があるか、またはデータ・ディクショナリ内に変換可能データが存在する可能性があります。
失敗
予期しないエラーが発生したため、データベース内の1つ以上の表をスキャンできませんでした。
変換する表
これは、変換ステップ中に変換が必要であるとすでに特定されているデータベース内の表の数です。
変換する行
これは、データベース内で変換が必要なすべての表の変換する行プロパティ値の合計です。
スキャン結果
スキャン結果には、データベース内のすべての表のすべてのスキャン済データ・セルが変換可能性の各カテゴリに分類されて表示されます。セルとは、特定の行内の特定の列の値です。カテゴリは次のとおりです。
無効なバイナリ表現
セル・データのバイナリ表現は、現行データベース・キャラクタ・セットでは無効です(変換された値に置換文字が含まれます)。つまり、列の想定キャラクタ・セットが不適切であるか、データがバイナリである(セルにJPEGイメージ、暗号化結果、またはバイナリ形式のテキスト・ドキュメントが格納されているなど)か、値にいくつかの破損した文字コードが含まれています。
データ型制限超過
変換後のセル・データの長さがデータ型を超えています。
列制限超過
変換後のセル・データが列に収まりません。
変換の必要あり
ターゲット・キャラクタ・セットのバイナリ表現が現行キャラクタ・セットの表現と異なっていますが、長さ制限の問題も無効な表現の問題も見つからなかったため、セル・データを変換する必要があります。
変換の必要なし
変換によってデータのバイナリ表現は変更されないため、データに問題はありません。
セルは前述のカテゴリに2回割り当てられます。1つ目の分類は「現在のデータ」という見出しの下に表示され、データベース内の現在の列定義に基づいています。2つ目の分類は「スケジュール済クレンジングの結果を含める」という見出しの下に表示され、スケジュール済クレンジング・アクションを適用した結果の列定義に基づいています。変換ステップでデータが原因で発生するエラーに対応しているのは2つ目の分類のみなので、データベースの内容の変換の準備状況を判断するためにはこの分類を使用します。1つ目の分類は、すべてのスケジュール済クレンジング・アクションが削除された場合に、データベースの内容の変換可能ステータスを判断する基準として使用できます。
データベース・サイズ
スキャン結果には、次の各表領域に関する詳細が含まれます。
表領域
スキャンされた表領域の名前。
使用済
使用された領域のサイズ(MB単位)。
空き
空き領域のサイズ(MB単位)。
合計
表領域の合計サイズ(MB単位)。
自動拡張
表領域がサイズ制限に達した場合に、指定したサイズまで自動拡張されるように設定するかどうか。
最小拡張
表が1つずつ順次に変換されるベスト・シナリオを想定した場合、変換領域要件を満たすために表領域を拡張する必要のある最小サイズ(MB単位)。変換後のデータ・サイズ拡張と、CTAS方法を使用して変換された最大表の一時領域要件を考慮して計算されます。
空の値は、その表領域がデータベース変換の影響を受けないことを示します。値がゼロの場合、その表領域に最小変換領域要件を満たす十分な未使用領域があることを示します。値がゼロより大きい場合、最小変換領域要件を満たすためにその値の分だけ表領域を拡張する必要があることを示します。表領域の自動拡張が可能であり、デバイスに拡張サイズを格納する十分な空き領域がある場合、データベース変換の開始前に拡張する必要はありません。
最大拡張
CTAS変換方法を使用して最大表が同時に変換される最悪のシナリオを想定した場合、変換領域要件を満たすために表領域を拡張する必要のある最大サイズ(MB単位)。変換後のデータ・サイズ拡張と、CTAS方法を使用して変換された最初のN個の最大表の一時領域要件を考慮して計算されます(Nは変換ワーカー・スレッド数)。
空の値は、その表領域がデータベース変換の影響を受けないことを示します。値がゼロの場合、その表領域に最大変換領域要件を満たす十分な未使用領域があることを示します。値がゼロより大きい場合、最大変換領域要件を満たすためにその値の分だけ表領域を拡張する必要があることを示します。表領域の自動拡張が可能であり、デバイスに拡張サイズを格納する十分な空き領域がある場合、データベース変換の開始前に拡張する必要はありません。
表領域の見積り
このボタンをクリックすると、DMUですべての表領域の最小表領域拡張と最大表領域拡張が計算されます。この結果を、表領域のサイズを決定するためのガイドラインとして使用してください。十分な記憶域が使用可能な場合は、表領域を最大拡張サイズ近くまで拡張すれば、変換フェーズ中の領域割当てエラーが発生する可能性が低くなります。
DMUでは、Unicodeへの変換時にインラインのままになるインラインCLOB
データの情報が考慮されませんので注意してください。DMUでは、処理を簡単にするために、変換後のセグメントのサイズを見積もる際に、すべてのCLOB
データがLOB
セグメントに格納されると想定します。
「適用」をクリックして、このサブタブで行った変更を保存します。
このサブタブには、変換するデータの準備状況が表示されます。図3-3を参照してください。変換するデータの準備状況プロパティの値は、次のいずれかです。
変換の必要なし
データベース内のすべてのデータは変換の必要なしとして分類され、データベースは「変換の準備」で説明されているすべての変換実行可能性テストにパスしました。
変換準備完了
データベース内のすべてのデータは変換の必要なしまたは変換の必要ありとして分類され、データベースはすべての変換実行可能性テストにパスしました。
変換準備未完了
データベース内の一部のデータが無効なバイナリ表現を持つ、または長さ制限を超えるとして分類されたか、データベースがいくつかの変換実行可能性テストにパスしませんでした。
準備状況のステータスが「変換準備未完了」の場合、問題を説明する追加情報が表示されます。
このサブタブのプロパティを使用すると、変換処理の特定の局面を制御できます。図3-4を参照してください。次のプロパティを設定できます。
並列度
DMUでCREATE
TABLE
AS
SELECT
(CTAS)文を使用して表が変換される場合、このプロパティは、データベースのパラレル実行機能で操作に使用される並列度を設定します。
変換プロセス数
これは、データベースの変換に使用される同時処理の数を指定します。各変換プロセスは、DMU内のパラレル・スレッドと、このスレッドによりサーバー上に作成されたデータベース・セッションで構成されます。このプロパティのデフォルト値は、データベース・サーバー上のCPUの数から導出されます。
パーティション表の行移動を有効化
レンジ・パーティション表またはハッシュ・パーティション表内のパーティション化キー列値を変換すると、変換後のキーが現在行を含んでいるパーティション以外のパーティションを指し示す可能性があります。キー値の更新が正常に完了したら、データベースは行を古いパーティションから新しいパーティションに移動する必要があります。行移動が無効化されている場合にCTASを想定プロパティで説明されているように、行移動は、ALTER
TABLE
ENABLE
ROW
MOVEMENT
文で明示的に有効化されている表でのみ許可されます。パーティション表の行移動を有効化プロパティを「はい」に設定すると、DMUでは、変換の必要なパーティション化キー列を含むパーティション表の行移動が一時的に有効化されます。
行移動が無効化されている場合にCTASを想定
CTAS文を使用して表を変換すると、表内の行の物理アドレス(行識別子)が変更されるため、これらのアドレスを永続的に格納するアプリケーションは、変換後に行を検出できなくなる可能性があります。このためDMUでは、ALTER
TABLE
ENABLE
ROW
MOVEMENT
文で表内の行の移動が明示的に許可されている場合を除いて、デフォルトではCTAS変換方法は表に割り当てられません。これに対し、新しい表に対する行移動は、CREATE
TABLE
文で明示的に有効化されていないかぎり、デフォルトで無効化されています。このため、アプリケーションにより行識別子が格納されることはほとんどありませんが、ほとんどのデータベース内のほとんどの表では行の移動は許可されません(行の参照には主キーを使用することをお薦めします)。データベースに接続するアプリケーションが行識別子を格納しないとわかっている場合、行移動が無効になっている場合にCTASを想定プロパティを「はい」に設定すると、DMUによって行移動が有効になっていない表にもCTAS変換方法を割り当てることができます。
ユーザー指定のLOBセグメントの場合にCTASを想定
デフォルトでは、LOBセグメント名はCTAS変換メソッドでは保管できないため、DMUはユーザー指定のLOBセグメントを含む表のCTAS変換メソッドを割り当てません。ユーザー指定のLOBセグメント名を保管する必要がない場合には、このプロパティを「はい」に設定することで、CTAS変換メソッドを想定できるようになり、変換にちなんで"$DMU"接尾辞をつけることによって名前が変更されます。
読取り専用マテリアライズド・ビューの処理
このプロパティは、マスター表の変換完了後に読取り専用マテリアライズド・ビューを処理する方法を指定します。次の選択項目があります。
変換後に自動的にリフレッシュする
変換後フェーズで読取り専用マテリアライズド・ビューを自動的にリフレッシュします。これがデフォルトのオプションです。
SQLスクリプトの生成
マテリアライズド・ビューを自動的にリフレッシュせず、DMU外部で後から実行できる、読取り専用マテリアライズド・ビューをリフレッシュするための文を含むSQLスクリプトを生成します。
何もしない
読取り専用マテリアライズド・ビューに対して何もアクションを実行しません。
更新可能マテリアライズド・ビューの処理
このプロパティは、マスター表の変換完了後に更新可能マテリアライズド・ビューを処理する方法を指定します。次の選択項目があります。
変換後に自動的にリフレッシュする
変換後フェーズで更新専用マテリアライズド・ビューを自動的にリフレッシュします。
SQLスクリプトの生成
マテリアライズド・ビューを自動的にリフレッシュせず、DMU外部で後から実行できる、更新可能マテリアライズド・ビューをリフレッシュするための文を含むSQLスクリプトを生成します。
何もしない
更新可能マテリアライズド・ビューに対して何もアクションを実行しません。これがデフォルトです。
マテリアライズド・ビューのリフレッシュ中のエラー・ハンドリング
このプロパティは、マテリアライズド・ビューのリフレッシュ中のエラーに対処する方法を指定します。次の選択項目があります。
変換を一時停止して問合せ
失敗したSQL文を一時停止し、ユーザーが適切な処理を選択できるようにします。これがデフォルトのオプションです。ユーザーは失敗したSQL文を再試行するか、SQL文を外部スクリプトにエクスポートして続行するか、またはエクスポートせずにスキップするかを選択できます。
失敗したSQLをスキップして続行
失敗したSQL文を自動的にスキップし、変換を続行します。
失敗したSQLをスクリプトにエクスポートして続行
失敗したSQL文をDMU外で実行できる外部スクリプトに自動的にエクスポートし、変換を続行します。
削除されたドメイン索引の処理
このプロパティは、削除されたドメイン索引を処理する方法を指定します。次の選択項目があります。
変換後に自動的に再作成する
変換後フェーズで、削除されたドメイン索引を自動的に再作成します。これがデフォルトのオプションです。
SQLスクリプトの生成
削除されたドメイン索引を再作成せずに、DMU外部で後から実行できる、削除されたドメイン索引を再作成するための文を含むSQLスクリプトを生成します。
何もしない
削除されたドメイン索引に対して何もアクションを実行しません。
ドメイン索引の再作成中のエラー・ハンドリング
このプロパティは、ドメイン索引の再作成中のエラーに対処する方法を指定します。次の選択項目があります。
変換を一時停止して問合せ
失敗したSQL文を一時停止し、ユーザーが適切な処理を選択できるようにします。これがデフォルトのオプションです。ユーザーは失敗したSQL文を再試行するか、SQL文を外部スクリプトにエクスポートして続行するか、またはエクスポートせずにスキップするかを選択できます。
失敗したSQLをスキップして続行
失敗したSQL文を自動的にスキップし、変換を続行します。
失敗したSQLをスクリプトにエクスポートして続行
失敗したSQL文をDMU外で実行できる外部スクリプトに自動的にエクスポートし、変換を続行します。
その他の索引の再作成中のエラー・ハンドリング
このプロパティは、その他の索引の再作成中のエラーに対処する方法を指定します。次の選択項目があります。
変換を一時停止して問合せ
失敗したSQL文を一時停止し、ユーザーが適切な処理を選択できるようにします。これがデフォルトのオプションです。ユーザーは失敗したSQL文を再試行するか、SQL文を外部スクリプトにエクスポートして続行するか、またはエクスポートせずにスキップするかを選択できます。
失敗したSQLをスキップして続行
失敗したSQL文を自動的にスキップし、変換を続行します。
失敗したSQLをスクリプトにエクスポートして続行
失敗したSQL文をDMU外で実行できる外部スクリプトに自動的にエクスポートし、変換を続行します。
SQLスクリプトのディレクトリおよびその場所(「参照」ボタン)
出力されたSQLスクリプトを格納する場所、およびその場所にナビゲートするための「参照」ボタンを表示します。
読取り専用マテリアライズド・ビューのリフレッシュ・スクリプトのデフォルト名は次のようになります。
RefreshMV_connectionName_timestamp.sql
更新可能マテリアライズド・ビューのリフレッシュ・スクリプトのデフォルト名は次のようになります。
RefreshUpdMV_connectionName_timestamp.sql
ドメイン索引再作成スクリプトのデフォルト名は次のようになります。
DomainIndexDDL_connectionName_timestamp.sql
失敗したマテリアライズド・ビューのリフレッシュSQL文のスクリプトのデフォルト名は次のようになります。
FailedMVRefresh_connectionName_timestamp.sql
失敗したドメイン索引再作成SQL文のスクリプトのデフォルト名は次のようになります。
FailedDomainIndex_connectionName_timestamp.sql
失敗したその他の索引再作成SQL文のスクリプトのデフォルト名は次のようになります。
FailedOtherIndex_connectionName_timestamp.sql
変換中にスクリプト・ディレクトリ位置を変更すると、その変更は次に作成されるSQLスクリプトから有効になることに注意してください。
「適用」をクリックして、このサブタブで行った変更を保存します。
スキーマ・プロパティ・タブには、3つのサブタブ(「一般」、「スキャン」および「準備状況」)が含まれます。変換に関連するスキーマ・レベル・プロパティはありません。
スキーマ・プロパティ・タブの「一般」サブタブには、スキーマの名前と、このスキーマ内に作成された表などの記憶域オブジェクトのデフォルト表領域が表示されます。これらのプロパティは読取り専用です。
スキーマ・プロパティ・タブのスキャン・サブタブには、このスキーマ内のオブジェクトのスキャン結果の集計が表示されます。
スキャン・サブタブのプロパティは次のとおりです。
スキャン・ステータス
このプロパティには、スキーマのスキャン・ステータスの集計が表示されます。次の値を指定できます。
未スキャン
最後に移行リポジトリがインストールされてから、このスキーマ内の表はスキャンされていません。
進行中
スキーマ内の表は現在スキャン中です。
スキャン済
スキーマ内のすべての表のスキャンが完了し、有効なスキャン結果が存在しています。
一部スキャン済
スキーマ内の一部の表のスキャンが完了し、有効なスキャン結果が存在していますが、その他の表はまだスキャンされていないか、クレンジング・アクションまたはDMU外部でのその構造(メタデータ)の変更によってスキャン結果が無効化されています。
結果が無効化済
スキーマ内のすべての表のスキャン結果は、クレンジング・アクションまたはDMU外部での表構造(メタデータ)の変更によって無効化されています。
問題検出済
データベース内の1つ以上の表に、変換可能性の問題があるデータが含まれています。長さ制限(拡張)または無効なバイナリ表現の問題があるか、データ・ディクショナリ・スキーマの場合は変換可能データが存在する可能性があります。
失敗
予期しないエラーが発生したため、スキーマ内の1つ以上の表をスキャンできませんでした。
変換する表
これは、変換ステップで変換が必要であるとすでに特定されているスキーマ内の表の数です。
変換する行
これは、スキーマ内で変換が必要なすべての表の変換する行プロパティ値の合計です。
スキャン結果
スキャン結果には、スキーマの表のすべてのスキャン済データ・セルが各変換カテゴリに分類されて表示されます。セルとは、特定の行内の特定の列の値です。この分類はデータベースの分類と似ていますが、結果がデータベース内のすべての表に対してでなくスキーマ内のすべての表に対して集計される点が異なります(「データベースのスキャン」を参照)。
前述のプロパティはすべて読取り専用です。
このサブタブには、変換するデータの準備状況が表示されます。変換するデータの準備状況プロパティの値は、次のいずれかです。
変換の必要なし
スキーマ内のすべてのデータは、変換の必要なしとして分類されています。
変換準備完了
スキーマ内のすべてのデータが変換の必要なし、または変換の必要ありとして分類されています。データに変換の問題はありません。
変換準備未完了
スキーマ内の一部のデータが無効なバイナリ表現を持つ、または長さ制限を超えるとして分類されているか、欠落しているスキャン結果があります。
準備状況のステータスが「変換準備未完了」の場合、問題を説明する追加情報が表示されます。
表プロパティ・タブには、4つのサブタブ(「一般」、「スキャン」、「準備状況」および「変換中」)が含まれます。表の変換準備ができていない場合、または表に変換の必要がない場合、変換サブタブは表示されないことがあります。
表プロパティ・タブの「一般」サブタブには、次の表プロパティが表示されます。
表名
これは表の名前です。
スキーマ名
これは、表が属するスキーマの名前です。
表領域
これは、表を含む表領域の名前です。パーティション表の場合、このプロパティには新しいパーティションのデフォルト表領域が表示されます。
表サイズ
これは、最高水位標で指定された表のサイズです。
テキストを含む可能性のある列
これは、データベース・キャラクタ・セットで文字データを含む可能性があり、そのために変換が必要な可能性のある表の列のリストです。このリストには、列の名前、列のデータ型、長さ制約、NOT
NULL
制約の有無、および列が表の主キーに属するかどうかの情報が表示されます。
これらのプロパティは読取り専用です。
表プロパティ・タブのスキャン・サブタブでは、表のスキャンを制御し、この表の列のスキャン結果の集計を参照できます。
スキャン・サブタブのプロパティは次のとおりです。
使用可能な行識別子
このプロパティは、最後の表スキャンで特定タイプのセル・データを含む行を識別する行識別子が収集されたかどうかを示します。値は次のとおりです。
なし
この表の行識別子は収集されていません。
変換対象すべて
変換が必要な1つ以上の列値を含むすべての行の行識別子が収集されました。これらの行識別子は、変換方法「変換可能な行のみを更新」を使用する場合に必要です。
問題あり
変換の問題がある列値を1つ以上含む行の行識別子のみが収集されました。これらの行識別子によって、クレンジング・エディタの操作効率が向上することがあります。第6章「DMUを使用したデータのクレンジング」を参照してください。
収集する行識別子
このプロパティを設定して、次回の表スキャンで収集する行識別子をDMUに指定できます。このプロパティの使用可能な値は、使用可能な行識別子プロパティと同じです。
このプロパティの値は、スキャン・ウィザードで上書きできます。「データベースのスキャン」を参照してください。
しきい値を超えた場合に分割
このプロパティを「はい」に設定すると、DMUでは表が複数のチャンクに分割され、これらのチャンクが複数のスキャン・プロセスでパラレルにスキャンされます。DMUでは、表は内部計算されたしきい値を超えた場合にのみ分割されます。
分割して完了
このプロパティの値は、最後の表スキャンが複数のチャンクに対してパラレルに実行されたかどうかを示します。
スキャン・ステータス
このプロパティには、表のスキャン・ステータスの集計が表示されます。次の値を指定できます。
未スキャン
最後に移行リポジトリがインストールされてから、この表の列はスキャンされていません。
進行中
表は現在スキャン中です。
スキャン済
表内のすべての列のスキャンが完了し、有効なスキャン結果が存在しています。
一部スキャン済
表内の一部の列のスキャンが完了し、有効なスキャン結果が存在していますが、その他の列はまだスキャンされていないか、クレンジング・アクションまたはDMU外部でのその構造(メタデータ)の変更によってスキャン結果が無効化されています。
結果が無効化済
表のすべての列のスキャン結果は、クレンジング・アクションまたはDMU外部での表構造(メタデータ)の変更によって無効化されています。
問題検出済
表内の1つ以上の列に、変換の問題があるデータが含まれています。長さ制限(拡張)または無効なバイナリ表現の問題があるか、データ・ディクショナリ表の場合は変換可能データが存在する可能性があります。
失敗
予期しないエラーが発生したため、この表の列の最後のスキャンは失敗しました。
変換する行
これは、変換が必要な列値を1つ以上含む表の行の数です。
スキャン結果
スキャン結果には、表のすべてのスキャン済データ・セルが各変換カテゴリに分類されて表示されます。セルとは、特定の行内の特定の列の値です。この分類はデータベースの分類と似ていますが、結果がデータベース内のすべての表に対してでなく表のすべての列に対して集計される点が異なります。「データベースのスキャン」を参照してください。
データ型がネストした表である列のスキャン結果は、列を含む表の結果に追加されません。DMUでは、ネストした表の列の記憶表が個別の表として表示されます。
「適用」をクリックして、このサブタブで行った変更を保存します。
このサブタブには、変換する表データの準備状況が表示されます。変換するデータの準備状況プロパティの値は、次のいずれかです。
変換の必要なし
表内のすべてのデータは、変換の必要なしとして分類されています。
変換準備完了
表内のすべてのデータが変換の必要なし、または変換の必要ありとして分類されています。データに変換の問題はありません。
変換準備未完了
表内の一部のデータが無効なバイナリ表現を持つ、または長さ制限を超えるとして分類されているか、欠落しているスキャン結果があります。
準備状況のステータスが「変換準備未完了」の場合、問題を説明する追加情報が表示されます。
このサブタブのプロパティを使用すると、表の変換の特定の局面を制御できます。次のプロパティを設定できます。
変換方法
このプロパティでは、DMUで表のデータを更新してターゲット・キャラクタ・セットに変換する方法を指定します。値は次のとおりです。
変換から除外
表は変換されません。スケジュール済のクレンジング・アクションのみを適用できます。
CREATE
TABLE
AS
SELECT
を使用してデータをコピー
CTAS文によって表のコピーが作成され、元の表は削除されます。列の値は、この文に含まれる問合せによって変換されます。
すべての行を更新
表のすべての行を更新する場合は、WHERE
句なしのUPDATE
文を使用します。
変換可能な行のみを更新
UPDATE
文によって、最後の表スキャンで行識別子が収集された行のみが更新されます。
変換で変更される行のみをスキャンして更新
UPDATE
文によって、文のWHERE
句に含まれる内部スキャン関数で指定されている変換可能な列値を含む表の行のみが更新されます。
DMUでは、スキャン済の各表に前述の変換方法のいずれかが自動的に割り当てられます。前述のいずれの方法が表に有効であるかは、その表の様々な機能や、表のデータが変換可能かどうかによって決まります。有効な方法が複数あり、テストでそれらの方法の効率に違いがあることがわかった場合は、このプロパティの値を変更して自動割当てを変更できます。
ユーザーの優先変換方法
このプロパティを使用すると、DMUの推奨変換方法を必要に応じて上書きできます。ユーザーがこれを明示的に特定の変換方法に設定した場合、選択したその変換方法を現在の表に適用できない場合を除いて、その設定が優先されます。デフォルト値は「プリファレンスなし」であり、DMUの推奨変換方法が使用されます。
ターゲット表領域
表の変換方法を「CREATE
TABLE
AS
SELECT
を使用してデータをコピー」にした場合、このドロップダウン・リストから表領域を選択して、変換された表コピーを作成する表領域を指定できます。このプロパティのデフォルト値は、表が含まれる表領域です。
LONG
列の位置を保持
CTAS文の制約により、表の変換方法が「CREATE
TABLE
AS
SELECT
を使用してデータをコピー」の場合、表のLONG
列はいずれも表の他の列とは別に変換してコピーする必要があります。このような場合にDMUで適用されるデフォルトの処理によって、表のLONG
列の位置が変更される可能性があります。この場合、アスタリスク構文(SELECT
*
FROM
)を使用して表から列を選択するアプリケーションは壊れる可能性があります。このようなアプリケーションがわかっていれば、このプロパティを「はい」に設定して、効率は悪くてもLONG
列の位置が保持されるような方法をDMUで適用できます。
「適用」をクリックして、このサブタブで行った変更を保存します。
列プロパティ・タブには、4つのサブタブ(「一般」、「スキャン」、「準備状況」および「変換中」)が含まれます。列の変換準備ができていない場合、または列に変換の必要がない場合、変換サブタブは表示されないことがあります。
列プロパティ・タブの「一般」サブタブには、次の表プロパティが表示されます。
列名
これは列の名前です。
列の型
これは列のデータ型です。
列の長さ
これは列の長さ制約です。長さ制約が発生する可能性があるのは、VARCHAR2
列とCHAR
列のみです。
NULL
を許可
このプロパティの値が「はい」の場合、列にNULL
値を含めることができます。それ以外の場合、NOT
NULL
制約またはPRIMARY
KEY
制約により、列内のNULL
値は許可されません。
主キーに属する
このプロパティの値が「はい」の場合、列はPRIMARY
KEY
制約に属します。
これらのプロパティは読取り専用です。
列プロパティ・タブのスキャン・サブタブには、この列のスキャン結果が表示されます。スキャン・サブタブのプロパティは次のとおりです。
想定列キャラクタ・セット
このプロパティの値には、クレンジング・エディタで設定されている列の想定キャラクタ・セットが表示されます。第6章「DMUを使用したデータのクレンジング」を参照してください。
スキャン・ステータス
このプロパティには、列のスキャン・ステータスが表示されます。次の値を指定できます。
未スキャン
最後に移行リポジトリがインストールされてから、この表の列はスキャンされていません。
進行中
表は現在スキャン中です。
スキャン済
表内のすべての列のスキャンが完了し、有効なスキャン結果が存在しています。
結果が無効化済
列のスキャン結果は、クレンジング・アクションまたはDMU外部での表構造(メタデータ)の変更によって無効化されています。
問題検出済
列に、変換の問題があるデータが含まれています。長さ制限(拡張)または無効なバイナリ表現の問題があるか、データ・ディクショナリ表の場合は変換可能データが存在する可能性があります。
失敗
予期しないエラーが発生したため、この列の最後のスキャンは失敗しました。
変換前の最大長
このプロパティには、列の現在の最長値(バイト)が表示されます。
変換後の最大長
このプロパティには、ターゲット・キャラクタ・セットへの変換後の列の最長値(バイト)が表示されます。
スキャン結果
スキャン結果には、すべてのスキャン済データ・セル(行の値)が各変換カテゴリに分類されて表示されます。この分類はデータベースの分類と似ていますが、結果がデータベース内のすべての表に対してでなく単一の列に対して提供される点が異なります。「データベース・プロパティの表示および設定」を参照してください。
このサブタブのプロパティは読取り専用です。
列プロパティ・タブの準備状況サブタブには、次のプロパティが表示されます。
スケジュール済クレンジング・アクション
このプロパティには、クレンジング・エディタで列に定義されているスケジュール済クレンジング・アクションが表示されます。第6章「DMUを使用したデータのクレンジング」を参照してください。
データの変換の準備状況
このプロパティは、列内のデータの変換の準備ができているかどうかを示します。値は次のいずれかです。
変換の必要なし
列内のすべてのデータは、変換の必要なしとして分類されています。
変換準備完了
表内のすべてのデータが変換の必要なし、または変換の必要ありとして分類されています。データに変換の問題はありません。
例外データあり
スキーマ内の一部のデータが、無効なバイナリ表現を持つ、または長さ制限を超えるとして分類されています。
準備状況のステータスが「変換準備未完了」の場合、問題を説明する追加情報が表示されます。
このサブタブのプロパティを使用すると、列の変換の特定の局面を制御できます。次のプロパティを設定できます。
変換から除外する
このプロパティを「はい」に設定すると、DMUではこの列のデータが更新されません。
問題のあるデータの変換を許可する
このプロパティを「はい」に設定すると、列のスキャン結果でいくつかの値に変換の問題がある、つまり変換後の値に置換文字が含まれるか、変換後の値が切り捨てられる問題があることが示された場合でも、DMUでデータの変換を実行できます。列またはデータ型の制限を超えたデータを自動的に切り捨てる場合や、破損した値があってもこのデータを使用するアプリケーションにとって大きな影響はないような場合には、これを使用すると便利です。データのクレンジング・プロセスを回避するのみの目的でこのプロパティを「はい」に設定しないように注意してください。
「適用」をクリックして、このサブタブで行った変更を保存します。