レコードの同期化
File Manager は、いくつかの方法で、比較のためにレコードを同期化します。
- 1.One-to-one (1 対 1)
- このオプションを選択すると、比較セットでは、対応する順序でレコードが入っているものと想定されます。
一致しないレコードは、変更レコードであるとみなされます。一致しないレコードが見つかった場合に比較セットの再同期化は行われず、比較はそれぞれの比較セットの次のレコードから進められます。「新規」比較セットの中の後書きレコードは対でない挿入と見なされ、「旧」比較セットの中の後書きレコードは対でない削除と見なされます。
- 2.Read-ahead (先読み)
- データ・セットには、おおまかに対応するレコードが含まれることが前提となります。
指定の要件
先読み同期の要求時には、先読み同期処理の限度と長さを指定します。
先読み同期の限度を指定すると、不一致レコードのペアが検出された場合に File Manager が一致レコードの検索をどの程度先まで行うかが制御されます。データ・セットに見つかると考えられる、連続する不一致レコードの最大数より多少多めに先読み限度を指定するようにしてください。
先読み同期の長さを指定すると、同期が認識される場合に検出される必要のある、連続する一致レコードの数が決定されます。ブランク・レコードやその他の一般的に反復されるレコードによる誤った一致が発生することのない「データ」レコードの比較では、先読み同期の長さを小さい値 (デフォルト値 1 など) に指定することをお勧めします。ブランク・レコードやその他の一般的に反復されるレコードによる誤一致が頻繁に起こる「テキスト」レコードや「ソース」レコードの比較では、先読み同期の長さを 1 より大きい値に指定することをお勧めします。
レコードを同期化する方法
不一致レコードが見つかると、File Manager は先読み限度で指定されたレコード数まで各データ・セットを先読みして、データ・セットを再同期化しようとします。再同期化が正常に実行されると、不一致レコードは、再同期が行われた位置に応じて、対の挿入/削除と対でない挿入/削除の組み合わせとみなされます。再同期化に失敗すると、最初の不一致から再同期化限度までのすべての「旧」レコードと「新規」レコードが対の挿入/削除とみなされます。
注: 先読み同期は一致レコードと挿入/削除レコードのみを生成できます。定義上、変更レコードは存在しないため、「Highlight changes」オプションを選択しても、変更の強調表示や変更行の生成は実行されません。 - 3.Keyed (キー順)
- このオプションを選択する場合は、比較セットは、レコードの 1 つ またはいくつかの (16 までの) セグメントから構成される、キーの順序になると想定されています。(残りのオプションについて選択を行った後で) Enter キーを押してこのパネルを処理すると、「Keyed Synchronization Settings (キーによる同期化の設定)」パネルが表示されます。ここで、少なくとも 1 つのキー・セグメント (最大 16 個のキー・セグメント) を指定する必要があります。組み込まれたキー順データ・セットから引き出された情報などの既存のキー・セグメント情報がある場合には、それがパネルに表示されます。これらの詳細を編集または変更できます。
テンプレートを使用しなかった場合は、以下が適用されます。
- ユーザーのデータ・セットに、KSDS データ・セットでの場合と同様に、組み込みキーが含まれている場合、File Manager はこのキーを同期キーでの最初の (または唯一の) セグメントとして自動的に使用しようとします。
- キー・セグメントの位置、長さ、およびデータ・タイプを、「Compare Options (比較オプション)」パネルの後で表示される「Keyed Synchronization Settings (キーによる同期設定)」パネルで指定できます。データ・タイプを明示的に指定しない場合、タイプ AN が使用されます。
複数のキー・セグメントを定義すると、各セグメントは指定したキー・セグメント順にチェックされます。英数字キー・フィールドの一部または全体がレコード外にあってキーが切り捨てられている場合、キーの比較は、16 進ゼロまたは (埋め込みオプションがオンの場合は) 埋め込み文字がキーに埋め込まれているものとして実行されます。他のキー・タイプの場合、最初のレコードの後でキーが切り捨てられると、結果としてシーケンス・エラーおよび切り捨てエラーになります。
キーが一致しない場合、レコードは、一致するか大きい順序付けキーが見つかるまで、小さい順序付けキーを持つ比較セットから読み取られます。一致するキーを持つ非一致レコードは、変更レコードとみなされます (比較要約に対の変更として記録される)。一致しないキーを持つレコードは、対でない挿入/削除とみなされます。順序どおりでないキーを持つレコードには、比較報告書でプラス符号 (+) のフラグが付けられます。切り捨てられたキーを持つレコードには、比較報告書で負符号 (-) のフラグが付けられます。順序どおりでなく、切り捨てられているキーを持つレコードには、比較報告書でアスタリスク (*) のフラグが付けられます。
「旧」データ・セットおよび「新規」データ・セットの両方からの組み込みキーを使用するように選択した場合に、長さの不一致が検出されると、File Manager はその 2 つのキーの短いほうをセグメント長として使用します。「旧」データ・セットおよび「新規」データ・セットに定義されたキー・セグメントに他のタイプまたは長さの不一致がある場合は、「Keyed Synchronization Settings」パネルにその矛盾を示す追加の列が表示されます。
その矛盾を無視して、「旧」データ・セットについて表示された値を使用して、 パネルを処理することもでき、または「旧」キー・セグメント情報を編集してから 続行することもできます。
- 4.Read-ahead Keyed (キー順先読み)
- データ・セットには、おおまかに対応するレコードが含まれることが前提となります。
指定の要件
キー順先読み同期の要求時には、同期処理に使用する、先読み同期処理の限度と長さ、およびキー・フィールドを指定します。そのため、先読みとは異なり、キー順先読みでは、キー・フィールドに従って同期しているが比較に関しては異なるレコードの変更を検出および報告することができます。キー・フィールドの順序は、同期化処理では使用されません。
キー順先読み同期の限度は、不一致キー・フィールドの対が検出されたときに、File Manager が一致キーの検索をどの程度先まで行うかを制御します。データ・セットに見つかると考えられる、連続する不一致キー・フィールドの最大数よりも、やや多めに先読み限度を指定してください。
キー順先読み同期の長さは、同期が認識される場合に検出される必要のある、連続する一致キー・フィールドの数を決定します。- ブランク・レコードやその他の一般的に反復されるレコードによる誤った一致が発生することのない「データ」レコードの比較では、キー順先読み同期の長さを小さい値 (デフォルト値 1 など) に指定することをお勧めします。
- ブランク・レコードやその他の一般的に反復されるレコードによる誤一致が頻繁に起こる「テキスト」レコードや「ソース」レコードの比較では、キー順先読み同期の長さを 1 より大きい値に指定することをお勧めします。
レコードを同期化する方法
不一致キー・フィールドが見つかると、File Manager は先読み限度で指定されたレコード数まで各データ・セットを先読みして、データ・セットを再同期化しようとします。再同期化が正常に実行されると、不一致レコードは、再同期化が行われた位置に応じて、対の挿入/削除と対でない挿入/削除の組み合わせとみなされます。再同期化に失敗すると、最初の不一致から再同期化限度までのすべての「旧」レコードと「新規」レコードが対の挿入/削除とみなされ、比較は終了します。
データ・セットが明確に同期されるように、レコード選択を使用することもできます。簡単な例として、1 つのファイルをコピーして、先頭に 10 個の新規レコードを挿入したと考えてください。既存のレコードが壊れていないことを検証するために、元のデータ・セットを新しいデータ・セットと比較します。限度 10 の先読み比較 (追加されたレコードが対でない挿入として示されます) を要求することもできます。あるいは、スキップ・カウント 10 で「新規」データ・セットの 1 対 1 比較を 要求することもできますが、これは追加されたレコードを完全に無視する 新しい比較セットを作成することになります。