JPH1040145A - レコード比較方法 - Google Patents

レコード比較方法

Info

Publication number
JPH1040145A
JPH1040145A JP8189707A JP18970796A JPH1040145A JP H1040145 A JPH1040145 A JP H1040145A JP 8189707 A JP8189707 A JP 8189707A JP 18970796 A JP18970796 A JP 18970796A JP H1040145 A JPH1040145 A JP H1040145A
Authority
JP
Japan
Prior art keywords
record
comparison
range
records
match
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP8189707A
Other languages
English (en)
Inventor
Motoji Nagahara
基司 長原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Software Engineering Co Ltd
Original Assignee
Hitachi Software Engineering Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Software Engineering Co Ltd filed Critical Hitachi Software Engineering Co Ltd
Priority to JP8189707A priority Critical patent/JPH1040145A/ja
Publication of JPH1040145A publication Critical patent/JPH1040145A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 挿入または削除が行われたレコード以降の比
較結果が全て不一致となることを防止して異なるファイ
ルの比較処理の比較精度を向上させることが可能な技術
を提供する。 【解決手段】 異なるファイル中の複数のレコードの内
容を比較するレコード比較方法において、前記異なるフ
ァイルのレコードの内容を先頭レコード及び最終レコー
ドから比較してファイルの前部及び後部の一致範囲であ
る前後一致範囲を確定し、前記前後一致範囲外のレコー
ドについて正方向の一致レコード検索と逆方向の一致レ
コード検索を行い、前記正方向の一致レコード検索及び
逆方向の一致レコード検索の双方向で一致したレコード
を一致レコードとして判定し、前記前後一致範囲内のレ
コードと前記双方向の一致レコード検索で一致した一致
レコードとを除くレコードを不一致レコードとして判定
するものである。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、異なるファイル中
のレコードを比較するレコード比較方法に関し、特に、
比較レコードを特定するキーを持たないファイルのレコ
ードを追加又は削除を行うことによりファイルを更新し
たときに、その更新個所以降の比較で比較レコードのず
れによる不一致を少なくする様にレコードの比較を行う
レコード比較方法に適用して有効な技術に関するもので
ある。
【0002】
【従来の技術】従来のコンピュータの処理では、コンピ
ュータに格納されている異なるファイルの内容を比較す
る処理が行われている。
【0003】例えば、前記従来のコンピュータにおい
て、ファイル中のレコードを追加または削除を行うこと
によってコンピュータに格納された特定のファイルを更
新したときに、更新前のファイルと更新後のファイルの
内容とを比較して前記更新の内容を抽出している。
【0004】異なるファイルに格納されたレコードを比
較する従来のレコード比較方法において、ファイル中の
レコード或いはアイテムの追加又は削除による更新が行
われた場合に、更新前のファイルと更新後のファイルを
正しく比較する為には、比較レコードを特定するキーが
必要であった。
【0005】例えば、キー索引テーブルを用いて大規模
なデータ・ファイルの比較時間を短縮するデータ・ファ
イルの比較方法及びシステムについては、特開平6−4
4299号に記載されている。
【0006】前記従来のレコード比較方法において、比
較レコードを特定するキーを持たない場合には、通常は
ファイルの先頭から比較を行う比較単位毎にレコードの
内容を比較しているが、ファイル中のレコードの追加ま
たは削除を行うと、前記追加または削除を行ったレコー
ド以降のレコードにずれが生じる為、その更新個所以降
の比較では、比較レコードのずれによりほとんどのレコ
ードが不一致となっていた。
【0007】また、従来のレコード比較方法では、前記
比較レコードのずれにより生じるレコードのずれを減少
させる為、比較する相手を1レコードに限定せず、予め
設定したスクロール範囲によって比較する方法(一般に
はスクロール比較と呼ばれている)や、ランゲージプロ
セッサのソースレコード比較の様に、特定レコード中に
特定のキーワードを含んでいるかどうかという特定レコ
ードの性質を利用した比較などが用いられている。
【0008】
【発明が解決しようとする課題】ところで、上述の様な
従来のレコード比較方法においては、次の様な問題点が
発生していた。
【0009】(1)前記従来のレコード比較方法におい
て、比較レコードを特定するキーを使用して比較を行う
場合には、キーを用いて比較レコードを特定する為、キ
ーを持たないファイルを比較することができないという
問題があった。
【0010】(2)前記従来のレコード比較方法におい
て、比較レコードを特定するキーを使用せずにファイル
の先頭から一比較単位毎にレコードの内容を比較する場
合には、比較ファイル内に同じ内容のレコードが複数存
在することがある為、レコードの内容によって不一致レ
コードを特定することが困難な場合があるという問題が
あった。
【0011】(3)前記従来のレコード比較方法のスク
ロール比較においては、予め比較するスクロール範囲を
設定しておく必要があるが、更新内容によって設定すべ
きスクロール範囲が異なる為、最適なスクロール範囲の
設定が困難であるという問題があった。
【0012】(4)前記従来のレコード比較方法におい
て、特定レコード中に特定のキーワードを含んでいるか
どうかという特定レコードの特徴を抽出して比較する場
合には、処理対象のファイルが前記特定のキーワードを
含む形式のファイルである必要がある為、処理対象のフ
ァイルが特定形式のファイルに限定されるという問題が
あった。
【0013】(5)前記従来のレコード比較方法におい
て、特定レコード中に特定のキーワードを含んでいるか
どうかという特定レコードの特徴を抽出して比較する場
合には、レコード中の特定のキーワードの検索を行って
レコードの特徴を抽出して比較する為、処理時間がかか
るという問題があった。
【0014】本発明の目的は、挿入または削除が行われ
たレコード以降の比較結果が全て不一致となることを防
止して異なるファイルの比較処理の比較精度を向上させ
ることが可能な技術を提供することにある。
【0015】本発明の前記並びにその他の目的と新規な
特徴は、本明細書の記述及び添付図面によって明かにな
るであろう。
【0016】
【課題を解決するための手段】本願によって開示される
発明のうち、代表的なものの概要を簡単に説明すれば、
下記のとおりである。
【0017】すなわち、異なるファイル中の複数のレコ
ードの内容を比較するレコード比較方法において、前記
異なるファイルのレコードの内容を先頭レコード及び最
終レコードから比較してファイルの前部及び後部の一致
範囲である前後一致範囲を確定し、前記前後一致範囲外
のレコードについて正方向の一致レコード検索と逆方向
の一致レコード検索を行い、前記正方向の一致レコード
検索及び逆方向の一致レコード検索の双方向で一致した
レコードを一致レコードとして判定し、前記前後一致範
囲内のレコードと前記双方向の一致レコード検索で一致
した一致レコードとを除くレコードを不一致レコードと
して判定するものである。
【0018】前記レコード比較方法では、まず、異なる
ファイルのレコードの内容を先頭レコードから比較して
ファイルの前部の一致範囲を判定し、次に、前記異なる
ファイルのレコードの内容を最終レコードから比較して
ファイルの後部の一致範囲を判定し、前記ファイルの前
部及び後部の一致範囲を併せて前後一致範囲を確定す
る。
【0019】前記異なるファイル中の前記前後一致範囲
外のレコードについて正方向の一致レコード検索と逆方
向の一致レコード検索を行って、前記前後一致範囲外に
一致レコードが存在しているかどうかを調べる。
【0020】次に、前記正方向の一致レコード検索及び
逆方向の一致レコード検索の双方向で一致したレコード
を一致レコードとして判定する。
【0021】前記前後一致範囲内のレコードと前記双方
向の一致レコード検索で一致した一致レコードとを除く
レコードを不一致レコードとして判定し、前記不一致レ
コードが存在する範囲を不一致範囲として確定する。
【0022】上記の様に、前記レコード比較方法では、
前後一致範囲外のレコードの内で、正方向及び逆方向の
レコード検索で一致するレコードを一致レコードとする
ので、キーを持たない異なるファイルの比較を行うとき
に、挿入または削除が行われたレコード以降のレコード
が全て不一致となることを防ぐことが可能である。
【0023】また、前記レコード比較方法を可変長のレ
コードの比較に適用した場合には、比較の最小単位を処
理の最小単位(1バイト等)にすることにより、挿入ま
たは削除が行われたレコード以降の比較結果がすべて不
一致と成ることを防ぐことが可能である。
【0024】また、前記レコード比較方法は、処理ロジ
ックが比較的簡単であるので、異なるファイルの比較を
高速に行うことが可能である。
【0025】以上の様に、前記レコード比較方法によれ
ば、前後一致範囲外のレコード中から正方向及び逆方向
のレコード検索で一致するレコードを一致レコードとし
て判定するので、挿入または削除が行われたレコード以
降の比較結果が全て不一致となることを防止して異なる
ファイルの比較処理の比較精度を向上させることが可能
である。
【0026】
【発明の実施の形態】以下に、本発明のレコード比較方
法において、異なるファイルのレコードを比較する一実
施形態のレコード比較方法について説明する。
【0027】図1は、本実施形態のレコード比較方法に
おける実施装置の概略構成を示す図である。図1におい
て、100はCPU、101は前後一致範囲確定処理
部、102は正逆一致レコード検索処理部、103は不
一致範囲判定処理部、110はメモリ、111及び11
2は比較入力エリア、113及び114は比較結果格納
スタック、115及び116は比較先頭ポインタ、11
7及び118は比較最終ポインタ、119及び120は
不一致範囲スタック、130は磁気ディスク装置、13
1及び132は処理対象ファイルである。
【0028】図1に示す様に、本実施形態のレコード比
較方法における実施装置では、磁気ディスク装置130
に格納されている処理対象ファイル131及び132の
内容をメモリ110上に比較入力A及びBとして入力
し、比較処理を行っている。
【0029】本実施形態のレコード比較方法の前後一致
範囲確定処理部101は、比較入力A及びBを前後から
比較し、その一致範囲を確定する処理部である。
【0030】本実施形態のレコード比較方法の正逆一致
レコード検索処理部102は、前後一致範囲確定処理部
101によって確定された前後一致範囲以外の範囲内
で、正方向及び逆方向の一致レコードの検索を行う処理
部である。
【0031】本実施形態のレコード比較方法の不一致範
囲判定処理部103は、正逆一致レコード検索処理部1
02の検索結果により、不一致範囲を判定する処理部で
ある。
【0032】本実施形態のレコード比較方法の比較入力
エリア111は、処理対象ファイル131の比較入力A
を入力するエリアであり、比較入力エリア112は、処
理対象ファイル132の比較入力Bを入力するエリアで
ある。
【0033】本実施形態のレコード比較方法の比較結果
格納スタック113は、比較入力A及びBの比較結果及
び一致したときの比較入力Bのアドレスを比較入力Aの
レコード単位に格納するスタックである。
【0034】本実施形態のレコード比較方法の比較結果
格納スタック114は、比較入力A及びBの比較結果及
び一致したときの比較入力Aのアドレスを比較入力Bの
レコード単位に格納するスタックである。
【0035】本実施形態のレコード比較方法の比較先頭
ポインタ115は、比較入力Aの先頭から比較する際に
比較レコードの位置を示すポインタであり、比較先頭ポ
インタ116は、比較入力Bの先頭から比較する際に比
較レコードの位置を示すポインタである。
【0036】本実施形態のレコード比較方法の比較最終
ポインタ117は、比較入力Aの最後から比較する際に
比較レコードの位置を示すポインタであり、比較最終ポ
インタ118は、比較入力びBの最後から比較する際に
比較レコードの位置を示すポインタである。
【0037】本実施形態のレコード比較方法の不一致範
囲スタック119は、比較入力Aの不一致範囲のアドレ
スを格納するスタックであり、不一致範囲スタック12
0は、比較入力Bの不一致範囲のアドレスを格納するス
タックである。
【0038】図2は、本実施形態のレコード比較方法に
おける前後一致範囲確定処理の概要を示す図である。図
2において、210〜215は比較レコード、220〜
225は比較レコード、230〜235は相手先アドレ
ス、240〜245は相手先アドレス、250及び26
0は不一致範囲先頭アドレス、251及び261は不一
致範囲最終アドレスである。
【0039】図2に示す様に、本実施形態のレコード比
較方法における前後一致範囲確定処理では、比較入力エ
リア111及び112に入力された比較入力A及びBを
前後から比較し、その一致範囲を確定する前後一致範囲
確定処理部101の処理を示している。
【0040】図2において、記号「○」が付加された矢
印は、当該矢印が指し示す比較入力エリア111及び1
12の比較入力A及びBのレコードの内容が一致してい
ることを示し、記号「×」が付加された矢印は、当該矢
印が指し示す比較入力エリア111及び112の比較入
力A及びBのレコードの内容が一致していないことを示
している。
【0041】また、比較結果格納スタック113の記号
「○」は、比較結果格納スタック113の各欄に対応す
る比較入力エリア111の比較入力Aのレコードの内容
が、比較入力エリア112の比較入力Bのレコードの内
容と一致していることを示しており、相手先アドレス2
30〜235には、一致する比較入力Bのレコードのア
ドレスが格納されている。
【0042】すなわち、比較結果格納スタック113の
相手先アドレス230は、比較入力Aの比較レコード2
10の内容と一致する比較入力Bの比較レコード220
のアドレスを示しており、相手先アドレス231は比較
レコード221のアドレス、相手先アドレス234は比
較レコード224のアドレス、相手先アドレス235は
比較レコード225のアドレスを示している。
【0043】同様にして、比較結果格納スタック114
の記号「○」は、比較結果格納スタック114の各欄に
対応する比較入力エリア112の比較入力Bのレコード
の内容が、比較入力エリア111の比較入力Aのレコー
ドの内容と一致していることを示しており、相手先アド
レス240〜245には、一致する比較入力Aのレコー
ドのアドレスが格納されている。
【0044】また、比較結果格納スタック114の相手
先アドレス240は、比較入力Bの比較レコード220
の内容と一致する比較入力Aの比較レコード210のア
ドレスを示しており、相手先アドレス241は比較レコ
ード211のアドレス、相手先アドレス244は比較レ
コード214のアドレス、相手先アドレス245は比較
レコード215のアドレスを示している。
【0045】不一致範囲スタック119の不一致範囲先
頭アドレス250には、比較入力エリア111の比較入
力Aの不一致範囲の先頭にある比較レコード212のア
ドレスが格納され、不一致範囲最終アドレス251に
は、比較入力エリア111の比較入力Aの不一致範囲の
最後にある比較レコード213のアドレスが格納され
る。
【0046】また、不一致範囲スタック120の不一致
範囲先頭アドレス260には、比較入力エリア112の
比較入力Bの不一致範囲の先頭にある比較レコード22
2のアドレスが格納され、不一致範囲最終アドレス26
1には、比較入力エリア112の比較入力Bの不一致範
囲の最後にある比較レコード223のアドレスが格納さ
れる。
【0047】図3は、本実施形態のレコード比較方法に
おける前後一致範囲確定処理の処理手順を示すフローチ
ャートである。
【0048】図3に示す様に、本実施形態のレコード比
較方法における前後一致範囲確定処理では、比較入力エ
リア111及び112に入力された比較入力A及びBを
前後から比較し、前から比較したときの一致範囲と、後
ろから比較したときの一致範囲を確定する処理を行って
いる。
【0049】本実施形態のレコード比較方法の前後一致
範囲確定処理部101は、まず、ステップ301の処理
で、比較の為に磁気ディスク装置130から読み込まれ
た処理対象ファイル131及び132のレコードを、メ
モリ110上の比較入力エリア111及び112に入力
する。
【0050】次に、ステップ302の処理で、比較先頭
ポインタ115及び116並びに比較最終ポインタ11
7及び118に、比較入力A及びBのレコードの位置を
示すポインタの初期値を設定する。
【0051】本実施形態のレコード比較方法では、最初
は全てのレコードが比較範囲となる為、ステップ302
の処理で、比較先頭ポインタ115及び116並びに比
較最終ポインタ117及び118には、比較入力エリア
111及び112にそれぞれ読み込まれた比較入力A及
びBのレコードの先頭アドレスと最終アドレスが格納さ
れる。
【0052】次に、ステップ310の処理で、比較先頭
ポインタ115及び116の内容を参照し、比較入力エ
リア111及び112に格納された比較入力Aの先頭レ
コードである比較レコード210及び比較入力Bの先頭
レコードである比較レコード220を読み出す。
【0053】ステップ311の処理で、前記読み出した
比較入力Aの比較レコード210の内容と比較入力Bの
比較レコード220の内容とが一致しているかどうかを
調べ、前記2つのレコードの内容が一致している場合に
はステップ312の処理に進む。
【0054】ステップ312の処理では、比較入力Aの
比較レコード210に対応する比較結果格納スタック1
13の欄に、比較入力Aの比較レコード210の内容と
比較入力Bの比較レコード220の内容とが一致したこ
とを示す一致フラグを設定し、比較レコード210の相
手先のレコードである比較レコード220のアドレスを
相手先アドレス230に格納する。
【0055】同様にして、比較入力Bの比較レコード2
20に対応する比較結果格納スタック114の欄に一致
フラグを設定し、比較レコード220の相手先のレコー
ドである比較レコード210のアドレスを相手先アドレ
ス240に格納する。
【0056】ステップ313の処理では、比較入力エリ
ア111及び112の比較入力A及びBに次のレコード
があるかどうかを調べ、次のレコードがある場合には、
比較先頭ポインタ115及び116の値を増加させ、ス
テップ314の処理に進む。
【0057】ステップ314の処理では、比較先頭ポイ
ンタ115及び116の内容を参照し、比較入力エリア
111に格納された比較入力Aの比較レコード210の
次のレコードである比較レコード211と、比較入力エ
リア112に格納された比較入力Bの比較レコード22
0の次のレコードである比較レコード221とを読み出
し、ステップ311の処理に戻る。
【0058】ステップ311の処理で比較入力A及びB
のレコードの内容が一致しているかどうかを調べた結
果、比較入力Aの比較レコード212及び比較入力Bの
比較レコード222の様にレコードの内容が一致してい
ない場合には、ステップ315の処理に進む。
【0059】ステップ315の処理では、不一致範囲ス
タック119の不一致範囲先頭アドレス250に、内容
が一致していない比較入力Aの先頭のレコードである比
較レコード212のアドレスを格納し、不一致範囲スタ
ック120の不一致範囲先頭アドレス260に、内容が
一致していない比較入力Bの先頭のレコードである比較
レコード222のアドレスを格納する。
【0060】次に、ステップ320の処理で、比較最終
ポインタ117及び118の内容を参照し、比較入力エ
リア111及び112に格納された比較入力Aの最終レ
コードである比較レコード215及び比較入力Bの最終
レコードである比較レコード225を読み出す。
【0061】ステップ321の処理で、前記読み出した
比較入力Aの比較レコード215の内容と比較入力Bの
比較レコード225の内容とが一致しているかどうかを
調べ、前記2つのレコードの内容が一致している場合に
はステップ322の処理に進む。
【0062】ステップ322の処理では、比較入力Aの
比較レコード215に対応する比較結果格納スタック1
13の欄に、比較入力Aの比較レコード215の内容と
比較入力Bの比較レコード225の内容とが一致したこ
とを示す一致フラグを設定し、比較レコード215の相
手先のレコードである比較レコード225のアドレスを
相手先アドレス235に格納する。
【0063】同様にして、比較入力Bの比較レコード2
25に対応する比較結果格納スタック114の欄に一致
フラグを設定し、比較レコード225の相手先のレコー
ドである比較レコード215のアドレスを相手先アドレ
ス245に格納する。
【0064】ステップ323の処理では、比較入力エリ
ア111及び112の比較入力A及びBに前のレコード
があるかどうかを調べ、前のレコードがある場合には、
比較最終ポインタ117及び118の値を減少させ、ス
テップ324の処理に進む。
【0065】ステップ324の処理では、比較最終ポイ
ンタ117及び118の内容を参照し、比較入力エリア
111に格納された比較入力Aの前のレコードである比
較レコード214と、比較入力エリア112に格納され
た比較入力Bの前のレコードである比較レコード224
とを読み出し、ステップ321の処理に戻る。
【0066】ステップ321の処理で比較入力A及びB
のレコードの内容が一致しているかどうかを調べた結
果、比較入力Aの比較レコード213及び比較入力Bの
比較レコード223の様にレコードの内容が一致してい
ない場合には、ステップ325の処理に進む。
【0067】ステップ325の処理では、不一致範囲ス
タック119の不一致範囲最終アドレス251に、内容
が一致していない比較入力Aの最終のレコードである比
較レコード213のアドレスを格納し、不一致範囲スタ
ック120の不一致範囲最終アドレス261に、内容が
一致していない比較入力Bの最終のレコードである比較
レコード223のアドレスを格納し、前後一致範囲確定
処理を終了する。
【0068】図4は、本実施形態のレコード比較方法に
おける正逆一致レコード検索処理の概要を示す図であ
る。図4において、410及び420は比較レコード、
430及び440は相手先アドレスである。
【0069】図4に示す様に、本実施形態のレコード比
較方法における正逆一致レコード検索処理では、前後一
致範囲確定処理部101によって確定された前後一致範
囲外にあるレコードについて、正方向及び逆方向の一致
レコードの検索を行う正逆一致レコード検索処理部10
2の処理を示している。
【0070】本実施形態のレコード比較方法の正逆一致
レコード検索処理の正方向の比較では、比較入力エリア
111の比較入力Aの前後一致範囲外の先頭レコードか
らの1レコードに対し、比較入力エリア112の比較入
力Bの前後一致範囲外の先頭レコードからの全レコード
を対象として比較を行って一致レコードを探し、一致レ
コードが見つかった場合には、比較結果格納スタック1
13に一致フラグ及び当該レコードの相手先のレコード
のアドレスである相手先アドレス430を格納する。
【0071】比較入力Bに一致するレコードがない場
合、比較入力Aの前記先頭レコードの次のレコードを基
準にして同様の比較を行う。この時、既に一致した比較
入力Bのレコードは対象範囲から除かれるものとし、こ
の作業を比較入力Aの不一致範囲スタック119で示さ
れる前後一致範囲外の全てのレコードについて行う。
【0072】次に、逆方向の比較では、比較入力エリア
112の比較入力Bの前後一致範囲外の最終レコードか
らの1レコードに対し、比較入力エリア111の比較入
力Aの前後一致範囲外の最終レコードからの全レコード
を対象として比較を行って、一致レコードを探し、一致
レコードが見つかった場合には、比較結果格納スタック
114に一致フラグ及び当該レコードの相手先のレコー
ドのアドレスである相手先アドレス440を格納する。
【0073】比較入力Aに一致するレコードがない場
合、比較入力Bの前記最終レコードの前のレコードを基
準にして同様の比較を行う。この時、既に一致した比較
入力Aのレコードは対象範囲から除かれるものとし、こ
の作業を比較入力Bの不一致範囲スタック120で示さ
れる前後一致範囲外の全てのレコードについて行う。
【0074】図5は、本実施形態のレコード比較方法に
おける正方向一致レコード検索処理の処理手順を示すフ
ローチャートである。
【0075】図5に示す様に、本実施形態のレコード比
較方法における正方向一致レコード検索処理では、前後
一致範囲確定処理部101によって確定された前後一致
範囲外で、正方向の一致レコードの検索を行う処理手順
を示している。
【0076】本実施形態のレコード比較方法の正逆一致
レコード検索処理部102は、まず、ステップ501の
処理で、不一致範囲スタック119の不一致範囲先頭ア
ドレス250の内容を参照し、比較入力エリア111の
比較入力Aの前後一致範囲外の先頭レコードである比較
レコード212を読み出す。
【0077】次に、ステップ502の処理で、不一致範
囲スタック120の不一致範囲先頭アドレス260の内
容を参照し、比較入力エリア112の比較入力Bの前後
一致範囲外の先頭レコードである比較レコード222を
読み出す。
【0078】ステップ503の処理では、比較結果格納
スタック113の相手先アドレス430の内容を参照
し、前記読み出した比較入力Bの比較レコード222の
アドレスが、一致フラグの設定された相手先アドレス4
30として既に格納されているかどうかを調べる。
【0079】ステップ503の処理で比較結果格納スタ
ック113の相手先アドレス430の内容を調べた結
果、前記読み出した比較入力Bの比較レコード222の
アドレスが、一致フラグの設定された相手先アドレス4
30として格納されていない場合にはステップ504の
処理に進み、一致フラグの設定された相手先アドレス4
30として既に格納されている場合にはステップ505
の処理に進む。
【0080】ステップ504の処理では、比較入力Aの
比較レコード212及び比較入力Bの比較レコード22
2を比較してレコードの内容が一致しているかどうかを
調べ、比較入力A及びBのレコードの内容が一致してい
ない場合にはステップ505の処理に進む。
【0081】ステップ505の処理では、比較入力Bの
比較レコード222の次にレコードが有るかどうかを調
べ、比較入力Bの比較レコード222の次にレコードが
有る場合にはステップ506の処理に進み、比較入力B
の比較レコード222の次のレコードである比較レコー
ド420を読み出してステップ503の処理に戻る。
【0082】ステップ505の処理で比較入力Bの比較
レコード222の次にレコードが有るかどうかを調べた
結果、比較レコード222の次にレコードが無い場合に
はステップ508の処理に進む。
【0083】ステップ504の処理で比較入力A及びB
のレコードの内容が一致しているかどうかを調べた結
果、比較入力Aの比較レコード212及び比較入力Bの
比較レコード420の様に、レコードの内容が一致して
いる場合にはステップ507の処理に進む。
【0084】ステップ507の処理では、比較入力Aの
比較レコード212に対応する比較結果格納スタック1
13の欄に一致フラグを設定し、比較入力Aの比較レコ
ード212の相手先のレコードである比較入力Bの比較
レコード420のアドレスを相手先アドレス430とし
て格納してステップ508の処理に進む。
【0085】ステップ508の処理では、比較入力Aの
比較レコード212の次にレコードが有るかどうかを調
べ、比較レコード212の次にレコードがある場合には
ステップ509の処理に進み、比較入力Aの比較レコー
ド212の次のレコードを読み出してステップ502の
処理に戻る。
【0086】ステップ508の処理で比較入力Aの比較
レコード212の次にレコードが有るかどうかを調べた
結果、比較レコード212の次にレコードが無い場合に
は、正方向一致レコード検索処理を終了する。
【0087】図6は、本実施形態のレコード比較方法に
おける逆方向一致レコード検索処理の処理手順を示すフ
ローチャートである。
【0088】図6に示す様に、本実施形態のレコード比
較方法における逆方向一致レコード検索処理では、前後
一致範囲確定処理部101によって確定された前後一致
範囲外で、逆方向の一致レコードの検索を行う処理手順
を示している。
【0089】本実施形態のレコード比較方法の正逆一致
レコード検索処理部102は、まず、ステップ601の
処理で、不一致範囲スタック120の不一致範囲最終ア
ドレス261の内容を参照し、比較入力エリア112の
比較入力Bの前後一致範囲外の最終レコードである比較
レコード223を読み出す。
【0090】次に、ステップ602の処理で、不一致範
囲スタック119の不一致範囲最終アドレス251の内
容を参照し、比較入力エリア111の比較入力Aの前後
一致範囲外の最終レコードである比較レコード213を
読み出す。
【0091】ステップ603の処理では、比較結果格納
スタック114の相手先アドレス440の内容を参照
し、前記読み出した比較入力Aの比較レコード213の
アドレスが、一致フラグの設定された相手先アドレス4
40として既に格納されているかどうかを調べる。
【0092】ステップ603の処理で比較結果格納スタ
ック114の相手先アドレス440の内容を調べた結
果、前記読み出した比較入力Aの比較レコード213の
アドレスが、一致フラグの設定された相手先アドレス4
40として格納されていない場合にはステップ604の
処理に進み、一致フラグの設定された相手先アドレス4
40として既に格納されている場合にはステップ605
の処理に進む。
【0093】ステップ604の処理では、比較入力Aの
比較レコード213及び比較入力Bの比較レコード22
3を比較してレコードの内容が一致しているかどうかを
調べ、比較入力A及びBのレコードの内容が一致してい
ない場合にはステップ605の処理に進む。
【0094】ステップ605の処理では、比較入力Aの
比較レコード213の前にレコードが有るかどうかを調
べ、比較入力Aの比較レコード213の前にレコードが
有る場合にはステップ606の処理に進み、比較入力A
の比較レコード213の前のレコードである比較レコー
ド410を読み出してステップ603の処理に戻る。
【0095】ステップ605の処理で比較入力Aの比較
レコード213の前にレコードが有るかどうかを調べた
結果、比較レコード213の前にレコードが無い場合に
はステップ608の処理に進む。
【0096】ステップ604の処理で比較入力A及びB
のレコードの内容が一致しているかどうかを調べた結
果、比較入力Aの比較レコード410及び比較入力Bの
比較レコード223の様に、レコードの内容が一致して
いる場合にはステップ607の処理に進む。
【0097】ステップ607の処理では、比較入力Bの
比較レコード223に対応する比較結果格納スタック1
14の欄に一致フラグを設定し、比較入力Bの比較レコ
ード223の相手先のレコードである比較入力Aの比較
レコード410のアドレスを相手先アドレス440とし
て格納してステップ608の処理に進む。
【0098】ステップ608の処理では、比較入力Bの
比較レコード223の前にレコードが有るかどうかを調
べ、比較レコード223の前にレコードがある場合には
ステップ609の処理に進み、比較入力Bの比較レコー
ド223の前のレコードを読み出してステップ602の
処理に戻る。
【0099】ステップ608の処理で比較入力Bの比較
レコード223の前にレコードが有るかどうかを調べた
結果、比較レコード223の前にレコードが無い場合に
は、逆方向一致レコード検索処理を終了する。
【0100】図7は、本実施形態のレコード比較方法に
おける不一致範囲判定処理の概要を示す図である。図7
において、7101〜7114は比較レコード、720
1〜7215は比較レコード、7301〜7314は相
手先アドレス、7401〜7413は相手先アドレス、
7503〜7514は不一致範囲アドレス、7603〜
7615は不一致範囲アドレスである。
【0101】図7に示す様に、本実施形態のレコード比
較方法における不一致範囲判定処理では、正逆一致レコ
ード検索処理部102の検索結果により、不一致範囲を
判定する不一致範囲判定処理部103の処理を示してい
る。
【0102】図7において、記号「○」が付加された矢
印は、当該矢印が指し示す比較入力エリア111及び1
12の比較入力A及びBのレコードの内容が、正逆一致
レコード検索処理の正方向一致レコード検索処理及び逆
方向一致レコード検索処理の双方向で一致していること
を示している。
【0103】また、記号「○」が付加されていない矢印
は、当該矢印が指し示す比較入力エリア111及び11
2の比較入力A及びBのレコードの内容が、正逆一致レ
コード検索処理の正方向一致レコード検索処理または逆
方向一致レコード検索処理のどちらか一方向で一致して
いることを示している。
【0104】また、比較結果格納スタック113の記号
「○」は、比較結果格納スタック113の各欄に対応す
る比較入力エリア111の比較入力Aのレコードの内容
が、比較入力エリア112の比較入力Bのレコードの内
容と、正方向一致レコード検索処理及び逆方向一致レコ
ード検索処理の双方向で一致していることを示してお
り、相手先アドレス7301〜7314には、双方向ま
たは一方向で一致する比較入力Bのレコードのアドレス
が格納されている。
【0105】すなわち、比較結果格納スタック113の
相手先アドレス7301は、比較入力Aの比較レコード
7101の内容と一致する比較入力Bの比較レコード7
201のアドレスを示しており、相手先アドレス730
2は比較レコード7202のアドレス、相手先アドレス
7305は比較レコード7205のアドレス、相手先ア
ドレス7306は比較レコード7206のアドレス、相
手先アドレス7310は比較レコード7210のアドレ
ス、相手先アドレス7308は比較レコード7208の
アドレス、相手先アドレス7314は比較レコード72
14のアドレス、相手先アドレス7312は比較レコー
ド7212のアドレスを示している。
【0106】同様にして、比較結果格納スタック114
の記号「○」は、比較結果格納スタック114の各欄に
対応する比較入力エリア112の比較入力Bのレコード
の内容が、比較入力エリア111の比較入力Aのレコー
ドの内容と、正方向一致レコード検索処理及び逆方向一
致レコード検索処理の双方向で一致していることを示し
ており、相手先アドレス7401〜7413には、双方
向または一方向で一致する比較入力Aのレコードのアド
レスが格納されている。
【0107】すなわち、比較結果格納スタック114の
相手先アドレス7401は、比較入力Bの比較レコード
7201の内容と一致する比較入力Aの比較レコード7
101のアドレスを示しており、相手先アドレス740
2は比較レコード7102のアドレス、相手先アドレス
7405は比較レコード7105のアドレス、相手先ア
ドレス7407は比較レコード7107のアドレス、相
手先アドレス7409は比較レコード7109のアドレ
ス、相手先アドレス7413は比較レコード7113の
アドレス、相手先アドレス7411は比較レコード71
11のアドレス、相手先アドレス7412は比較レコー
ド7112のアドレスを示している。
【0108】不一致範囲スタック119には、比較入力
Aの不一致範囲を示す複数のアドレスの組が格納されて
いる。
【0109】不一致範囲スタック119において、不一
致範囲アドレス7503は比較レコード7103のアド
レス、不一致範囲アドレス7504は比較レコード71
04のアドレスであり、比較入力Aの比較レコード71
03から比較レコード7104までが不一致範囲となっ
ていることを示している。
【0110】同様にして、比較入力Aでは、不一致範囲
アドレス7506が示す比較レコード7106から不一
致範囲アドレス7508が示す比較レコード7108ま
でと、不一致範囲アドレス7510が示す比較レコード
7110から不一致範囲アドレス7514が示す比較レ
コード7114までが不一致範囲となっている。
【0111】また、不一致範囲スタック120には、比
較入力Bの不一致範囲を示す複数のアドレスの組が格納
されている。
【0112】不一致範囲スタック120において、不一
致範囲アドレス7603は比較レコード7203のアド
レス、不一致範囲アドレス7604は比較レコード72
04のアドレスであり、比較入力Bの比較レコード72
03から比較レコード7204までが不一致範囲となっ
ていることを示している。
【0113】同様にして、比較入力Bでは、不一致範囲
アドレス7606が示す比較レコード7206から不一
致範囲アドレス7609が示す比較レコード7209ま
でと、不一致範囲アドレス7611が示す比較レコード
7211から不一致範囲アドレス7615が示す比較レ
コード7215までが不一致範囲となっている。
【0114】本実施形態のレコード比較方法の不一致範
囲判定処理では、正逆一致レコード検索処理の結果を参
照して、以下の絞り込みルールに従って、不一致レコー
ドの範囲の絞り込みを行う。
【0115】(1)正方向一致レコード検索処理で一致
した比較入力A及びBのレコードの組と、逆方向一致レ
コード検索処理で一致した比較入力A及びBのレコード
の組とが同一のレコードの組である場合に、当該レコー
ドを一致レコードとみなし、比較結果格納スタック11
3及び114に一致フラグを設定する。
【0116】(2)正方向一致レコード検索処理及び逆
方向一致レコード検索処理の双方向で一致した複数の比
較入力A及びBのレコードの組において、互いのアドレ
ス範囲が重なる場合には、一致レコードとみなさないも
のとする。
【0117】(3)正方向一致レコード検索処理で一致
した比較入力A及びBのレコードの組と、逆方向一致レ
コード検索処理で一致した比較入力A及びBのレコード
の組とが同一のレコードの組ではない場合には、一致レ
コードとみなさないものとする。
【0118】図8は、本実施形態のレコード比較方法に
おける不一致範囲判定処理の処理手順を示すフローチャ
ートである。
【0119】図8に示す様に、本実施形態のレコード比
較方法における不一致範囲判定処理では、正逆一致レコ
ード検索処理部102の検索結果をの不一致レコードの
範囲の絞り込みを行って不一致範囲を判定する処理手順
を示している。
【0120】本実施形態のレコード比較方法の不一致範
囲判定処理部103は、まず、ステップ801の処理
で、比較結果格納スタック113を参照し、正逆一致レ
コード検索処理で一致フラグが設定された最初のレコー
ドである比較レコード7101を読み出す。
【0121】次に、ステップ802の処理で、比較入力
Aの比較レコード7101が正逆一致レコード検索処理
で一致した相手先アドレス7301が示す比較入力Bの
比較レコード7201の比較結果格納スタック114の
内容を参照し、比較入力Bの比較レコード7201に正
逆一致レコード検索処理の一致フラグが設定されてお
り、相手先アドレス7401が比較入力Aの比較レコー
ド7101のアドレスに一致しているかどうかを調べ
る。
【0122】ステップ802の処理で正逆一致レコード
検索処理での一致状態を調べた結果、比較レコード71
01の相手先アドレス7301が示す比較レコード72
01に正逆一致レコード検索処理の一致フラグが設定さ
れており、相手先アドレス7401が比較レコード71
01のアドレスを示している場合には、正方向一致レコ
ード検索処理及び逆方向一致レコード検索処理の双方向
でレコード検索結果が一致しているのでステップ803
の処理に進む。
【0123】ステップ802の処理で正逆一致レコード
検索処理での一致状態を調べた結果、比較レコード71
01の相手先アドレス7301が示す比較レコード72
01に正逆一致レコード検索処理の一致フラグが設定さ
れていないか、または、正逆一致レコード検索処理の一
致フラグは設定されているが、相手先アドレス7401
が比較レコード7101のアドレスを示していない場合
にはステップ805の処理に進む。
【0124】ステップ803の処理では、双方向で一致
している比較入力A及びBのレコードの複数の組が示す
アドレス範囲が、互いに重なっているかどうかを調べ、
アドレス範囲の重なりがない場合にはステップ804の
処理に進み、比較結果格納スタック113及び114に
双方向で一致していることを示す一致フラグ設定する。
【0125】また、ステップ803の処理で双方向で一
致している比較入力A及びBのレコードの複数の組が示
すアドレス範囲が互いに重なっているかどうかを調べた
結果、アドレス範囲の重なりがある場合には、ステップ
805の処理に進む。
【0126】ステップ805の処理では、正逆一致レコ
ード検索処理で一致フラグが設定された次の一致レコー
ドが有るかどうかを調べ、次の一致レコードが有る場合
にはステップ801の処理に戻り、次の一致レコードが
無い場合にはステップ806の処理に進む。
【0127】ステップ806の処理では、比較結果格納
スタック113及び114に双方向の一致フラグが設定
されたレコードの前後のレコードのアドレスを調べ、前
記調べたアドレスを不一致範囲スタック119及び12
0に格納する。
【0128】前記の様にして決定された不一致範囲につ
いて、再び正逆一致レコード検索処理及び不一致範囲判
定処理の一連の作業を一致レコードが無くなるまで繰り
返すことにより、最終的に不一致範囲として残ったレコ
ードをファイル比較の不一致レコードとする。
【0129】以上説明した様に、本実施形態のレコード
比較方法によれば、前後一致範囲外のレコード中から正
方向及び逆方向のレコード検索で一致するレコードを一
致レコードとして判定するので、挿入または削除が行わ
れたレコード以降の比較結果が全て不一致となることを
防止して異なるファイルの比較処理の比較精度を向上さ
せることが可能である。
【0130】以上、本発明を前記実施形態に基づき具体
的に説明したが、本発明は、前記実施形態に限定される
ものではなく、その要旨を逸脱しない範囲において種々
変更可能であることは勿論である。
【0131】
【発明の効果】本願において開示される発明のうち代表
的なものによって得られる効果を簡単に説明すれば、下
記のとおりである。
【0132】すなわち、前後一致範囲外のレコード中か
ら正方向及び逆方向のレコード検索で一致するレコード
を一致レコードとして判定するので、挿入または削除が
行われたレコード以降の比較結果が全て不一致となるこ
とを防止して異なるファイルの比較処理の比較精度を向
上させることが可能である。
【図面の簡単な説明】
【図1】本実施形態のレコード比較方法における実施装
置の概略構成を示す図である。
【図2】本実施形態のレコード比較方法における前後一
致範囲確定処理の概要を示す図である。
【図3】本実施形態のレコード比較方法における前後一
致範囲確定処理の処理手順を示すフローチャートであ
る。
【図4】本実施形態のレコード比較方法における正逆一
致レコード検索処理の概要を示す図である。
【図5】本実施形態のレコード比較方法における正方向
一致レコード検索処理の処理手順を示すフローチャート
である。
【図6】本実施形態のレコード比較方法における逆方向
一致レコード検索処理の処理手順を示すフローチャート
である。
【図7】本実施形態のレコード比較方法における不一致
範囲判定処理の概要を示す図である。
【図8】本実施形態のレコード比較方法における不一致
範囲判定処理の処理手順を示すフローチャートである。
【符号の説明】
100…CPU、101…前後一致範囲確定処理部、1
02…正逆一致レコード検索処理部、103…不一致範
囲判定処理部、110…メモリ、111及び112…比
較入力エリア、113及び114…比較結果格納スタッ
ク、115及び116…比較先頭ポインタ、117及び
118…比較最終ポインタ、119及び120…不一致
範囲スタック、130…磁気ディスク装置、131及び
132…処理対象ファイル、210〜215…比較レコ
ード、220〜225…比較レコード、230〜235
…相手先アドレス、240〜245…相手先アドレス、
250及び260…不一致範囲先頭アドレス、251及
び261…不一致範囲最終アドレス、410及び420
…比較レコード、430及び440…相手先アドレス、
7101〜7114…比較レコード、7201〜721
5…比較レコード、7301〜7314…相手先アドレ
ス、7401〜7413…相手先アドレス、7503〜
7514…不一致範囲アドレス、7603〜7615…
不一致範囲アドレス。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 異なるファイル中の複数のレコードの内
    容を比較するレコード比較方法において、 前記異なるファイルのレコードの内容を先頭レコード及
    び最終レコードから比較してファイルの前部及び後部の
    一致範囲である前後一致範囲を確定し、前記前後一致範
    囲外のレコードについて正方向の一致レコード検索と逆
    方向の一致レコード検索を行い、前記正方向の一致レコ
    ード検索及び逆方向の一致レコード検索の双方向で一致
    したレコードを一致レコードとして判定し、前記前後一
    致範囲内のレコードと前記双方向の一致レコード検索で
    一致した一致レコードとを除くレコードを不一致レコー
    ドとして判定することを特徴とするレコード比較方法。
JP8189707A 1996-07-18 1996-07-18 レコード比較方法 Pending JPH1040145A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8189707A JPH1040145A (ja) 1996-07-18 1996-07-18 レコード比較方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8189707A JPH1040145A (ja) 1996-07-18 1996-07-18 レコード比較方法

Publications (1)

Publication Number Publication Date
JPH1040145A true JPH1040145A (ja) 1998-02-13

Family

ID=16245856

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8189707A Pending JPH1040145A (ja) 1996-07-18 1996-07-18 レコード比較方法

Country Status (1)

Country Link
JP (1) JPH1040145A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180080423A (ko) * 2017-01-03 2018-07-12 (주)비아이매트릭스 갱신 레코드를 자동 추출하는 스프레드시트 기반 데이터베이스 자동 갱신 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180080423A (ko) * 2017-01-03 2018-07-12 (주)비아이매트릭스 갱신 레코드를 자동 추출하는 스프레드시트 기반 데이터베이스 자동 갱신 시스템

Similar Documents

Publication Publication Date Title
CN115757629B (zh) 多源异构数据增量同步方法、系统、存储介质和电子设备
US20070208733A1 (en) Query Correction Using Indexed Content on a Desktop Indexer Program
US20110113052A1 (en) Query result iteration for multiple queries
US20030023584A1 (en) Universal information base system
JP2000357115A (ja) ファイル検索装置及びファイル検索方法
JP2001109754A (ja) 索引ファイルを使用した検索方法及びそれに用いる装置
JPH067385B2 (ja) キ−ワ−ド自動抽出方式
CN119719252A (zh) 基于双链表结构的倒排索引方法、装置、设备及存储介质
JPH1040145A (ja) レコード比較方法
US6397216B1 (en) Ordering keys in a table using an ordering mask
JPH07146880A (ja) 文書検索装置及び方法
CN113282600B (zh) 一种Oracle数据库同步环境下批量主键更新处理方法及系统
JPH11102361A (ja) 文字入力修正方法及び前記方法手順を記録した記録媒体
JP3024544B2 (ja) 情報検索装置
JPH09305611A (ja) データベースの検索装置
JP2682448B2 (ja) 索引検索方式
JP3780772B2 (ja) データベースの索引創成装置
JPH09212523A (ja) 全文検索方法
JP2001101233A (ja) データベース処理装置
JP2838972B2 (ja) 自動索引作成装置
JPH1185585A (ja) 完全メモリ常駐型インデックス方法および装置
CN121387828A (zh) 数据处理方法、装置、电子设备和存储介质
JPH0546666A (ja) 情報検索装置
JPH1097542A (ja) 全文検索装置及び全文検索方法
JPH0589174A (ja) 辞書検索方法