JP5836423B2 - Data matching confirmation method and system - Google Patents
Data matching confirmation method and system Download PDFInfo
- Publication number
- JP5836423B2 JP5836423B2 JP2014083184A JP2014083184A JP5836423B2 JP 5836423 B2 JP5836423 B2 JP 5836423B2 JP 2014083184 A JP2014083184 A JP 2014083184A JP 2014083184 A JP2014083184 A JP 2014083184A JP 5836423 B2 JP5836423 B2 JP 5836423B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- stored
- database
- memory
- source database
- 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.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、一般に、データ一致確認方法に関し、さらに詳しくは、ソース・データベースに格納されているデータと、複製データベースに格納されているデータとが一致しているか否かを、高速かつ低コストで確認するための方法およびシステムに関する。 The present invention generally relates to a data matching confirmation method, and more particularly, whether or not data stored in a source database matches data stored in a duplicate database at high speed and low cost. It relates to a method and a system for checking.
データのバックアップのために、ソース・データベースと複製データベースとを備えてなるデータベース・システムが広く適用されている。 For data backup, database systems comprising a source database and a duplicate database are widely applied.
この種のデータベース・システムでは、ソース・データベースに格納されているデータが、定期的に、複製データベースにコピーされている。 In this type of database system, data stored in the source database is periodically copied to the duplicate database.
最近では、例えば非特許文献1乃至3に示されるバルク・コピーのような、高速コピーのためのユーティリティも用意されており、これらによって、データのコピーは、より短時間で、かつ高い信頼性で実行されるようになった。
Recently, utilities for high-speed copying such as bulk copying shown in Non-Patent
このように、ソース・データベースから複製データベースへのデータのコピーがなされると、コピー終了後において、ソース・データベースに格納されているデータと、複製データベースにコピーされたデータとが一致していることを確認する必要がある。 In this way, when data is copied from the source database to the duplicate database, the data stored in the source database matches the data copied to the duplicate database after the copy is completed. It is necessary to confirm.
一般に、この種の確認には、多大な時間を要する。当然ながら、データベースに格納されているデータの量が多くなればなるほど、それに要する時間も長くなる。したがって、このような場合には、データベースの本来の運用に支障をきたす恐れがある。 In general, this type of confirmation takes a great deal of time. Of course, the larger the amount of data stored in the database, the longer it takes. Therefore, in such a case, there is a risk of hindering the original operation of the database.
しかしながら、最近におけるコピー技術に進歩により、コピーの信頼性は向上しており、実際には、コピーは正しく行われ、コピー後において、ソース・データベースに格納されているデータと、複製データベースに格納されているデータとが一致している可能性は極めて高い。 However, due to recent advances in copy technology, the reliability of copying has improved, and in practice, copying is performed correctly, and after copying, the data stored in the source database and the copy database are stored. It is very likely that the data is consistent.
以上を考慮すると、コピー後におけるデータ一致確認は、長時間をかけて詳細に行うよりも、簡易的でも良いから短時間に確認できるようにすることが望ましい。そして、とりあえず、データの不一致がないことを確認できれば、コピーが正しく実行されたものと判断することにより、データベースの本来の使用に、迅速に戻ることができる。 Considering the above, it is desirable that the data coincidence confirmation after copying is simpler than performing it in detail over a long time, so that it can be confirmed in a short time. For the time being, if it can be confirmed that there is no data mismatch, it can be quickly returned to the original use of the database by determining that the copy has been executed correctly.
一方、データに不一致があると判定された場合には、周知のツールを用いて、どのデータに不一致があるのかを、多少時間がかかったとしても、詳細に発見すればよい。 On the other hand, if it is determined that there is a mismatch in the data, it is only necessary to find out in detail which data has a mismatch using a known tool even if it takes some time.
本発明はこのような事情に鑑みてなされたものであり、ソース・データベースに格納されたデータ・レコードを複製データベースにコピーした場合、ソース・データベースに格納されているデータと、複製データベースにコピーされたデータとが一致しているか否かを、簡易的かつ短時間に判定することが可能な、データ一致確認方法およびシステムを提供することを目的とする。 The present invention has been made in view of such circumstances. When a data record stored in a source database is copied to a duplicate database, the data stored in the source database is copied to the duplicate database. An object of the present invention is to provide a data matching confirmation method and system capable of simply and quickly determining whether or not the data matches.
上記の目的を達成するために、本発明では、以下のような手段を講じる。 In order to achieve the above object, the present invention takes the following measures.
すなわち、請求項1の発明は、それぞれデータを有する複数のデータ項目からなるデータ・レコードを多数格納するソース・データベースに格納されているデータと、ソース・データベースに格納されているデータの複製を格納するための複製データベースに格納されているデータとが一致している否かを確認するためのシステムである。
That is, the invention of
このシステムは、データ取得手段と、メモリと、ハッシュ計算手段と、比較手段とを備える。 This system includes a data acquisition unit, a memory, a hash calculation unit, and a comparison unit.
データ取得手段は、ソース・データベースに格納されているデータ・レコードのうちの任意の1件のデータ・レコードを、ソース・データベースから取得して前記メモリに格納する第1の処理を実行する。 The data acquisition means executes a first process of acquiring any one of the data records stored in the source database from the source database and storing it in the memory.
ハッシュ計算手段は、メモリに格納されたデータ・レコードについて、このデータ・レコードの各データ項目に対応する各データに対して、予め定められたアルゴリズムを適用することによって得られるハッシュ値を求め、求められた各ハッシュ値を、それぞれ対応するデータ項目に関連付けて前記メモリに記憶させ、しかる後に、メモリの使用量を低減するために、このデータ・レコードをメモリから削除する第2の処理を実行する。 The hash calculation means obtains a hash value obtained by applying a predetermined algorithm to each data corresponding to each data item of the data record stored in the memory, and obtains the hash value. Each hash value obtained is stored in the memory in association with the corresponding data item, and thereafter, a second process of deleting the data record from the memory is executed in order to reduce the memory usage. .
データ取得手段は、ソース・データベースから、未取得の任意の1件のデータ・レコードを取得してメモリに格納する第3の処理を実行する。 The data acquisition means executes a third process of acquiring any one unacquired data record from the source database and storing it in the memory.
ハッシュ計算手段は、メモリに格納されたデータ・レコードについて、このデータ・レコードの各データ項目に対応する各データに対して、アルゴリズムを適用することによって得られる各ハッシュ値を求め、求められた各ハッシュ値を、それぞれ対応するデータ項目に関連付けて記憶されているそれぞれのハッシュ値に加えることによって、記憶されている各ハッシュ値を更新するように、1つのデータ・レコードずつ加算方式でハッシュ値を更新してメモリに記憶させ、しかる後に、メモリの使用量を低減するために、このデータ・レコードをメモリから削除する第4の処理を実行する。 The hash calculation means obtains each hash value obtained by applying an algorithm to each data corresponding to each data item of the data record stored in the memory, and determines each obtained By adding the hash value to each stored hash value in association with the corresponding data item, the hash value is added by one data record so as to update each stored hash value. The data is updated and stored in the memory, and then a fourth process for deleting the data record from the memory is executed in order to reduce the memory usage .
データ取得手段による第3の処理と、ハッシュ計算手段による第4の処理とを、ソース・データベースに格納されている最後のデータ・レコードまで実行することによって、ハッシュ計算手段が、ソース・データベースにおける前記各データ項目毎に、ハッシュ値の総和を取得する第5の処理を実行する。 By executing the third process by the data acquisition unit and the fourth process by the hash calculation unit up to the last data record stored in the source database, the hash calculation unit performs the above process in the source database. For each data item, a fifth process for acquiring the sum of hash values is executed.
データ取得手段とハッシュ計算手段とが、第1乃至第5の処理を、ソース・データベースに代えて、複製データベースに対して実行することによって、複製データベースにおける各データ項目毎に、ハッシュ値の総和を取得する第6の処理を実行する。 The data acquisition means and the hash calculation means execute the first to fifth processes on the duplicate database instead of the source database, thereby calculating the sum of hash values for each data item in the duplicate database. The sixth process to be acquired is executed.
比較手段は、第5の処理で取得された各ハッシュ値の総和と、第6の処理で取得された各ハッシュ値の総和とを、同じデータ項目毎に比較し、ハッシュ値の総和が一致しないデータ項目がある場合には、ソース・データベースに格納されているデータと、複製データベースに格納されているデータとが一致していないと判定し、ハッシュ値の総和が一致しないデータ項目がない場合には、ソース・データベースに格納されているデータと、複製データベースに格納されているデータとが一致していると判定する第7の処理を実行することによって、データ取得手段による、ソース・データベースからのデータ・レコードの取得も、複製データベースからのデータ・レコードの取得も、それぞれ任意の順序で実施しながら、ソース・データベースに格納されているデータ・レコードと、複製データベースに格納されているデータ・レコードとの一致性の確認を可能にしている。 The comparison means compares the sum of the hash values acquired in the fifth process and the sum of the hash values acquired in the sixth process for each data item, and the sum of the hash values does not match. If there is a data item, it is determined that the data stored in the source database and the data stored in the duplicate database do not match, and there is no data item whose sum of hash values does not match Performs a seventh process for determining that the data stored in the source database and the data stored in the duplicate database match , thereby causing the data acquisition means to Both the acquisition of data records and the acquisition of data records from the duplicate database are performed in any order, while the source database is Thereby enabling the data record stored, the confirmation of coincidence of the data records stored in the copy database.
また、請求項2の発明は、請求項1のシステムに適用された方法である。
The invention of
本発明に係るデータ一致化のための方法およびシステムによれば、ソース・データベースに格納されたデータ・レコードを複製データベースにコピーした場合、ソース・データベースに格納されているデータと、複製データベースにコピーされたデータとが一致しているか否かを、簡易的かつ短時間に判定することが可能となる。 According to the method and system for data matching according to the present invention, when a data record stored in a source database is copied to a duplicate database, the data stored in the source database is copied to the duplicate database. It is possible to easily and quickly determine whether or not the data matches.
以下に、本発明を実施するための最良の形態について図面を参照しながら説明する。 The best mode for carrying out the present invention will be described below with reference to the drawings.
図1は、本発明の実施形態に係るデータ一致確認方法が適用されたシステムの構成例を示す概念図である。 FIG. 1 is a conceptual diagram showing a configuration example of a system to which a data matching confirmation method according to an embodiment of the present invention is applied.
このシステム10は、ソース・データベース12と複製データベース14との間でのデータの一致を確認するためのシステムであって、ソース・データベース12と複製データベース14の間に設けられ、データ取得部16と、メモリ18と、ハッシュ計算部20と、比較部22とを備えている。
This
なお、ソース・データベース12とシステム10との間、および/または、複製データベース14とシステム10との間は、例えばインターネットのような通信ネットワーク(図示せず)によって接続されていても良い。この場合、通信ネットワークは、イーサネット(登録商標)等のLAN、あるいは公衆回線や専用回線を介して複数のLANが接続されるWAN等からなる。LANの場合には、必要に応じてルータを介した多数のサブネットから構成される。また、WANの場合には、公衆回線に接続するためのファイアウォール等を適宜備えているが、ここではその図示及び詳細説明を省略する。
Note that the
図2は、ソース・データベース12に格納されているデータのデータ構造24の一例を示す図である。すなわち、このデータ構造24は、データ項目と、データ・レコードとの2次元で形成される。
FIG. 2 is a diagram illustrating an example of the
図2では、データ項目として、(1)個人番号、(2)氏名、(3)住所が例示されている。もちろん、データ項目の数は、3つに限定されるものではなく、それより多い場合も少ない場合もありうる。また、データ項目の内容も、これらに限定されるものではない。また、データ・レコードとは、このような各データ項目に対応するデータからなる1セットに対して与えられる番号に相当する。 In FIG. 2, (1) personal number, (2) name, and (3) address are illustrated as data items. Of course, the number of data items is not limited to three, and there may be more or less data items. Further, the contents of the data items are not limited to these. A data record corresponds to a number given to a set of data corresponding to each data item.
したがって、ソース・データベース12は、おのおのデータ(例えば、図2に示すデータ・レコード1の場合、“00010”、「日本太郎」、「東京都港区虎ノ門1−2−3」)を有する複数のデータ項目(例えば、図2に示す例の場合、(1)個人番号、(2)氏名、(3)住所)からなるデータ・レコードを多数格納している。
Accordingly, the
また、複製データベース14は、ソース・データベース12に格納されているデータの複製を格納するためのデータベースであり、データは、ソース・データベース12と同様に、図2に示すようなデータ構造24で格納される。
The
このようなソース・データベース12と複製データベース14とにおいて、同じデータが格納されているか否かを判定するために、システム10が実行する処理を、図3のフローチャートとともに以下の通り説明する。
The processing executed by the
まず、データ取得部16が、ソース・データベース12に格納されている1件のデータ・レコード(例えば、データ・レコード1)のデータを、ソース・データベース12から取得してメモリ18に格納する(ステップS1)。なお、データ取得部16がソース・データベース12から取得するデータ・レコードの順番は、任意であってよく、必ずしもデータ・レコード1を最初に取得する必要はない。
First, the
ステップS1に続いて、ハッシュ計算部20が、ステップS1においてメモリ18に格納されたデータ・レコード(例えば、データ・レコード1)の各データ項目(例えば、(1)個人番号、(2)氏名、(3)住所)に対応する各データ(例えば、“00010”、「日本太郎」、「東京都港区虎ノ門1−2−3」)に対して、予め定められたアルゴリズムを適用することによって、ハッシュ値をそれぞれ求める(ステップS2a)。このアルゴリズムは、ある数値(例えば、“0010”)や、ある文字(例えば、「日」)に対して、予め定められた数値を、ハッシュ値として出力するようにしている。
Subsequent to step S1, the
このようなアルゴリズムを用いることによって、ハッシュ計算部20は、データ・レコード(例えば、データ・レコード1)のデータ項目(1)個人番号のデータ(“00010”)、データ項目(2)氏名のデータ(「日本太郎」)、データ項目(3)住所のデータ(「東京都港区虎ノ門1−2−3」)のそれぞれについてハッシュ値を求める。
By using such an algorithm, the
図4は、データ・レコード1のデータ項目(1)、(2)、(3)について求められたハッシュ値がそれぞれ“23”,“121”,“323”であることを示している。データ・レコード1のデータ項目(2)のデータである「日本太郎」に対応するハッシュ値として、例として“121”が得られたことを示している。また、データ・レコード1のデータ項目(3)のデータである「東京都港区虎ノ門1−2−3」に対応するハッシュ値として、例として“323”が得られたことを示している。
FIG. 4 shows that the hash values obtained for the data items (1), (2), and (3) of the
ハッシュ計算部20はさらに、このようにしてデータ・レコード(例えば、データ・レコード1)のデータ項目(1)、(2)、(3)のおのおのについて求めた各ハッシュ値を、それぞれ対応するデータ項目(1)、(2)、(3)に関連付けて、メモリ18に記憶させる。そして、メモリ18への記憶が完了すると、ハッシュ値の計算に供されたこのデータ・レコード(例えば、データ・レコード1)をメモリ18から削除する(ステップ2b)。
The
データ取得部16は、ソース・データベース12から、次の1件のデータ・レコード(例えば、データ・レコード2)のデータを取得してメモリ18に格納する(ステップS3)。なお、前述したように、データ取得部16がソース・データベース12から取得するデータ・レコードの順番は、任意であってよく、例えば、必ずしもデータ・レコード1の次にデータ・レコード2を取得する必要はない。
The
ハッシュ計算部20は次に、メモリ18に格納されたこのデータ・レコード(例えば、データ・レコード2)の各データ項目(例えば、(1)個人番号、(2)氏名、(3)住所)に対応する各データ(例えば、“00200”、「宇都宮花子」、「栃木県宇都宮市山田町1−2−3」)に対しても、前のデータ・レコード(例えば、データ・レコード1)に適用されたものと同じアルゴリズムを適用することによって、それぞれハッシュ値を求める(ステップ4a)。図4は、データ・レコード2の各データ項目(1)、(2)、(3)に対応するデータについて求められたハッシュ値が、それぞれ“31”,“225”,“198”であることを示している。
The
ハッシュ計算部20はさらに、データ・レコード2の各データ項目(1)、(2)、(3)について求められた各ハッシュ値(“31”,“225”,“198”)を、それぞれ対応するデータ項目(1)、(2)、(3)に関連付けてメモリ18に既に記憶されているハッシュ値(例えば、データ・レコード1のデータ項目(1)、(2)、(3)のハッシュ値)にそれぞれ加えることによって、メモリ18に記憶されている各ハッシュ値を更新する。例えば、メモリ18に、データ・レコード1のデータ項目(1)のハッシュ値として“23”、データ項目(2)のハッシュ値として“121”、データ項目(3)のハッシュ値として“323”が記憶されており、今回、データ・レコード2のデータ項目(1)ハッシュ値として“31”、データ項目(2)のハッシュ値として“225”、データ項目(3)のハッシュ値として“198”がそれぞれ計算されたのであれば、データ項目(1)のハッシュ値を、23+31=54に更新し、データ項目(2)のハッシュ値を、121+225=346に更新し、データ項目(3)のハッシュ値を、323+198=521に更新して、メモリ18に記憶させる。このようにしてハッシュ値が更新され、記憶されると、ハッシュ計算部20は、ハッシュ計算が実施されたデータ・レコード(例えば、データ・レコード2)を、メモリ18から削除する(ステップS4b)。
The
データ取得部16によるステップS3の処理と、ハッシュ計算部20によるステップS4aおよびステップS4bの処理とを、ソース・データベース12に格納されている最後のデータ・レコードまで実行することによって、ハッシュ計算部20は、ソース・データベース12における各データ項目毎に、ハッシュ値の総和を取得する(ステップS5)。図4は、データ項目(1)のハッシュ値の総和が“584”であり、データ項目(2)のハッシュ値の総和が“2324”であり、データ項目(3)のハッシュ値の総和が“432”であることを示している。
By executing the processing of step S3 by the
このようなステップS1乃至ステップS5からなる処理を、複製データベース14に対しても同様に実行することによって、複製データベース14に格納されているすべてのデータに対しても同様に、各データ項目についてハッシュ値の総和を取得する。 本実施形態に係るシステム10は、このようにして、図3のフローチャートに示すような処理を、ソース・データベース12および複製データベース14に対してそれぞれ実行することによって、ソース・データベース12と複製データベース14とのそれぞれについて、データ項目毎のハッシュ値の総和を取得する。なお、このような処理を、ソース・データベース12に対して先に行っても、複製データベース14に対して先に行っても、何れでも良い。また、図5に示すように、データ取得部16と、メモリ18と、ハッシュ計算部20とを2系統設けることによって、このような処理を、両データベースに対して並行して行うようにしても良い。
By performing the process including steps S1 to S5 on the
このようにして、ソース・データベース12と複製データベース14とのそれぞれについて、各データ項目のハッシュ値の総和が取得されると、比較部22が、ソース・データベース12の各データ項目について取得された各ハッシュ値の総和と、複製データベース14の各データ項目について取得された各ハッシュ値の総和とを、対応するデータ項目毎に比較する。すなわち、比較部22は、データ項目(1)、データ項目(2)、およびデータ項目(3)毎にそれぞれ、ソース・データベース12に格納されたデータに関して取得されたハッシュ値の総和と、複製データベース14に格納されたデータに関して取得されたハッシュ値の総和とを比較する。そして、データ項目(1)、(2)、(3)のうちの何れかに、ハッシュ値の総和が一致しないデータ項目がある場合には、ソース・データベース12に格納されているデータと、複製データベース14に格納されているデータとの中に、一致していないデータがあると判定する。一方、ハッシュ値の総和が一致しないデータ項目がない場合、つまり、データ項目(1)、(2)、(3)のいずれについても、ソース・データベース12に格納されたデータに関して取得されたハッシュ値の総和と、複製データベース14に格納されたデータに関して取得されたハッシュ値の総和とが一致している場合、ソース・データベース12に格納されているデータと、複製データベース14に格納されているデータとがすべて一致していると判定する。これによって、ソース・データベース12に格納されたデータが、複製データベース14に正しくコピーされていることを確認することができる。
In this way, when the sum of hash values of each data item is obtained for each of the
上述したように、本実施形態に係るデータ一致確認方法が適用されたシステム10においては、ソース・データベース12に格納されているデータと、複製データベース14に格納されているデータとが一致しているか否かを、すべてのデータを突き合わせて確認する訳ではないので、短時間に判定することが可能となる。
As described above, in the
また、このシステム10では、1件のデータ・レコードに関し、データ項目毎に、データに対応するハッシュ値が計算される。そして、ハッシュ値の計算が終わると、このデータ・レコードのデータはメモリ18から削除され、メモリ18は、データ項目毎のハッシュ値のみを保持する。
Further, in this
そして、次のデータ・レコードについても、各データ項目毎にデータに対応するハッシュ値が計算され、ハッシュ値の計算が終わると、このデータ・レコードのデータがメモリ18から削除される。そして、計算されたハッシュ値が、すでにメモリ18に格納されているハッシュ値に、データ項目毎に加算され、更新され、更新されたハッシュ値のみがメモリ18に保持される。このような処理が、最後のデータ・レコードまで繰り返される。
Also for the next data record, a hash value corresponding to the data is calculated for each data item, and when the calculation of the hash value is completed, the data of this data record is deleted from the
このように、本実施形態に係るデータ一致確認方法が適用されたシステム10では、ハッシュ値の更新に供されたデータ・レコードは、メモリ18から削除され、メモリ18は、更新されたハッシュ値のみをデータ項目毎に保持する。よって、例えば、図2のように、3つのデータ項目からなるデータ・レコードがデータベースに格納されている場合、メモリ18は、3つのハッシュ値しか保持しない。したがって、本システム10では、メモリ18の容量は低くてよく、データ・レコードの数がどんなに増えた場合であっても、データ項目数が変わらないのであれば、容量の増設は不要であるので、余分なコストの発生をもたらすことはない。
As described above, in the
また、ソース・データベース12に格納されているすべてのデータと、複製データベース14に格納されているすべてのデータとを対象に一致が確認されるので、ソース・データベース12からデータ取得部16に取得されるデータ・レコードの順序も、複製データベース14からデータ取得部16に取得されるデータ・レコードの順序も、任意の順序で良く、また、両データベース間で順序が異なっていても、一致確認結果に影響を及ぼすことはない。
In addition, since all the data stored in the
以上、本発明を実施するための最良の形態について、添付図面を参照しながら説明したが、本発明はかかる構成に限定されない。特許請求の範囲の発明された技術的思想の範疇において、当業者であれば、各種の変更例及び修正例に想到し得るものであり、それら変更例及び修正例についても本発明の技術的範囲に属するものと了解される。 The best mode for carrying out the present invention has been described above with reference to the accompanying drawings, but the present invention is not limited to such a configuration. Within the scope of the invented technical idea of the scope of claims, a person skilled in the art can conceive of various changes and modifications. The technical scope of the present invention is also applicable to these changes and modifications. It is understood that it belongs to.
本発明に係るデータ一致確認方法およびシステムは、ソース・データベースと複製データベースとを備えてなる、例えば、自治体の住民データ管理のためのデータベース・システムや、金融機関、証券会社、保険会社等のデータベース・システムにも好適に適用される。 The data matching confirmation method and system according to the present invention comprises a source database and a duplicate database, for example, a database system for resident data management of local governments, databases of financial institutions, securities companies, insurance companies, etc. -It is applied suitably also to a system.
10 システム
12 ソース・データベース
14 複製データベース
16 データ取得部
18 メモリ
20 ハッシュ計算部
22 比較部
24 データ構造
DESCRIPTION OF
Claims (2)
データ取得手段と、メモリと、ハッシュ計算手段と、比較手段とを備え、
前記データ取得手段は、前記ソース・データベースに格納されているデータ・レコードのうちの任意の1件のデータ・レコードを、前記ソース・データベースから取得して前記メモリに格納する第1の処理を実行し、
前記ハッシュ計算手段は、前記メモリに格納されたデータ・レコードについて、このデータ・レコードの各データ項目に対応する各データに対して、予め定められたアルゴリズムを適用することによって得られるハッシュ値を求め、前記求められた各ハッシュ値を、それぞれ対応するデータ項目に関連付けて前記メモリに記憶させ、しかる後に、前記メモリの使用量を低減するために、このデータ・レコードを前記メモリから削除する第2の処理を実行し、
前記データ取得手段は、前記ソース・データベースから、未取得の任意の1件のデータ・レコードを取得して前記メモリに格納する第3の処理を実行し、
前記ハッシュ計算手段は、前記メモリに格納されたデータ・レコードについて、このデータ・レコードの各データ項目に対応する各データに対して、前記アルゴリズムを適用することによって得られる各ハッシュ値を求め、前記求められた各ハッシュ値を、それぞれ対応するデータ項目に関連付けて記憶されているそれぞれのハッシュ値に加えることによって、前記記憶されている各ハッシュ値を更新するように、1つのデータ・レコードずつ加算方式でハッシュ値を更新して前記メモリに記憶させ、しかる後に、前記メモリの使用量を低減するために、このデータ・レコードを前記メモリから削除する第4の処理を実行し、
前記データ取得手段による第3の処理と、前記ハッシュ計算手段による第4の処理とを、前記ソース・データベースに格納されている最後のデータ・レコードまで実行することによって、前記ハッシュ計算手段が、前記ソース・データベースにおける前記各データ項目毎に、ハッシュ値の総和を取得する第5の処理を実行し、
前記データ取得手段と前記ハッシュ計算手段とが、前記第1乃至第5の処理を、前記ソース・データベースに代えて、前記複製データベースに対して実行することによって、前記複製データベースにおける各データ項目毎に、ハッシュ値の総和を取得する第6の処理を実行し、
前記比較手段は、前記第5の処理で取得された各ハッシュ値の総和と、前記第6の処理で取得された各ハッシュ値の総和とを、同じデータ項目毎に比較し、ハッシュ値の総和が一致しないデータ項目がある場合には、前記ソース・データベースに格納されているデータと、前記複製データベースに格納されているデータとが一致していないと判定し、ハッシュ値の総和が一致しないデータ項目がない場合には、前記ソース・データベースに格納されているデータと、前記複製データベースに格納されているデータとが一致していると判定する第7の処理を実行し、
前記データ取得手段による、前記ソース・データベースからのデータ・レコードの取得も、前記複製データベースからのデータ・レコードの取得も、それぞれ任意の順序で実施しながら、前記ソース・データベースに格納されているデータ・レコードと、前記複製データベースに格納されているデータ・レコードとの一致性の確認を可能にした、システム。 Data stored in a source database that stores a large number of data records each consisting of a plurality of data items each having data, and stored in a replica database for storing a copy of the data stored in the source database A system for confirming whether or not the data matches
A data acquisition means, a memory, a hash calculation means, and a comparison means;
The data acquisition means executes a first process of acquiring any one of the data records stored in the source database from the source database and storing it in the memory And
The hash calculation means obtains a hash value obtained by applying a predetermined algorithm to each data corresponding to each data item of the data record stored in the memory. Each of the obtained hash values is stored in the memory in association with a corresponding data item, and then the data record is deleted from the memory in order to reduce the memory usage . Execute the process of
The data acquisition means executes a third process of acquiring any one unacquired data record from the source database and storing it in the memory,
The hash calculation means obtains each hash value obtained by applying the algorithm to each data corresponding to each data item of the data record for the data record stored in the memory, and Add one data record to update each stored hash value by adding each determined hash value to each stored hash value associated with the corresponding data item A hash value is updated in a manner and stored in the memory, and then, in order to reduce the memory usage, a fourth process of deleting the data record from the memory is performed,
By executing the third process by the data acquisition unit and the fourth process by the hash calculation unit up to the last data record stored in the source database, the hash calculation unit For each data item in the source database, execute a fifth process for obtaining the sum of hash values,
The data acquisition means and the hash calculation means execute the first to fifth processes on the duplicate database instead of the source database, thereby for each data item in the duplicate database. , Execute a sixth process for obtaining the sum of hash values,
The comparison means compares the sum of the hash values acquired in the fifth process with the sum of the hash values acquired in the sixth process for each same data item, and calculates the sum of the hash values. If there is a data item that does not match, it is determined that the data stored in the source database and the data stored in the duplicate database do not match, and the sum of hash values does not match If there is no item, execute a seventh process for determining that the data stored in the source database matches the data stored in the duplicate database ;
Data stored in the source database while the data acquisition unit performs acquisition of data records from the source database and acquisition of data records from the duplicate database in any order. A system capable of confirming the consistency between a record and a data record stored in the duplicate database .
前記ソース・データベースに格納されているデータ・レコードのうちの任意の1件のデータ・レコードを、前記ソース・データベースから取得してメモリに格納する第1の処理と、
前記メモリに格納されたデータ・レコードについて、このデータ・レコードの各データ項目に対応する各データに対して、予め定められたアルゴリズムを適用することによって得られるハッシュ値を求め、前記求められた各ハッシュ値を、それぞれ対応するデータ項目に関連付けて前記メモリに記憶させ、しかる後に、前記メモリの使用量を低減するために、このデータ・レコードを前記メモリから削除する第2の処理と、
前記ソース・データベースから、未取得の任意の1件のデータ・レコードを取得して前記メモリに格納する第3の処理と、
前記メモリに格納されたデータ・レコードについて、このデータ・レコードの各データ項目に対応する各データに対して、前記アルゴリズムを適用することによって得られるハッシュ値を求め、前記求められた各ハッシュ値を、それぞれ対応するデータ項目に関連付けて記憶されているそれぞれのハッシュ値に加えることによって、前記記憶されている各ハッシュ値を更新するように、1つのデータ・レコードずつ加算方式でハッシュ値を更新して前記メモリに記憶させ、しかる後に、前記メモリの使用量を低減するために、このデータ・レコードを前記メモリから削除する第4の処理と、
前記第3の処理と前記第4の処理とを、前記ソース・データベースに格納されている最後のデータ・レコードまで実行することによって、前記ソース・データベースにおける前記各データ項目毎に、ハッシュ値の総和を取得する第5の処理と、
前記第1乃至第5の処理を、前記ソース・データベースに代えて、前記複製データベースに対して実行することによって、前記複製データベースにおける各データ項目毎に、ハッシュ値の総和を取得する第6の処理と、
前記第5の処理で取得された各ハッシュ値の総和と、前記第6の処理で取得された各ハッシュ値の総和とを、同じデータ項目毎に比較し、ハッシュ値の総和が一致しないデータ項目がある場合には、前記ソース・データベースに格納されているデータと、前記複製データベースに格納されているデータとが一致していないと判定し、ハッシュ値の総和が一致しないデータ項目がない場合には、前記ソース・データベースに格納されているデータと、前記複製データベースに格納されているデータとが一致していると判定する第7の処理と
含み、
前記ソース・データベースからのデータ・レコードの取得も、前記複製データベースからのデータ・レコードの取得も、それぞれ任意の順序で実施しながら、前記ソース・データベースに格納されているデータ・レコードと、前記複製データベースに格納されているデータ・レコードとの一致性の確認を可能にした、方法。 Data stored in a source database that stores a large number of data records each consisting of a plurality of data items each having data, and stored in a replica database for storing a copy of the data stored in the source database A method for confirming whether or not the data is consistent,
A first process of acquiring any one of the data records stored in the source database from the source database and storing it in a memory;
For each data record stored in the memory, a hash value obtained by applying a predetermined algorithm to each data corresponding to each data item of the data record is obtained. Storing a hash value in association with each corresponding data item in the memory, and then deleting the data record from the memory to reduce the memory usage ;
A third process of acquiring any one unrecorded data record from the source database and storing it in the memory;
For each data record stored in the memory, a hash value obtained by applying the algorithm to each data corresponding to each data item of the data record is obtained, and each obtained hash value is obtained. The hash value is updated by an addition method for each data record so as to update each stored hash value by adding to each stored hash value in association with the corresponding data item. A fourth process for deleting the data record from the memory in order to reduce the amount of the memory used .
By executing the third process and the fourth process up to the last data record stored in the source database, a sum of hash values is obtained for each data item in the source database. A fifth process of acquiring
A sixth process for obtaining a sum of hash values for each data item in the duplicate database by executing the first to fifth processes on the duplicate database instead of the source database. When,
A data item in which the sum of hash values acquired in the fifth process and the sum of hash values acquired in the sixth process are compared for each same data item, and the sum of hash values does not match. If there is no data item in which the data stored in the source database and the data stored in the duplicate database do not match and the sum of hash values does not match includes a data stored in the source database, seventh processing <br/> viewed free determines that the data stored in the replicated database is matched,
The data record stored in the source database and the replica are obtained while performing acquisition of the data record from the source database and acquisition of the data record from the duplicate database in an arbitrary order. A method that allows you to check the consistency of data records stored in a database .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014083184A JP5836423B2 (en) | 2014-04-14 | 2014-04-14 | Data matching confirmation method and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014083184A JP5836423B2 (en) | 2014-04-14 | 2014-04-14 | Data matching confirmation method and system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015203986A JP2015203986A (en) | 2015-11-16 |
JP5836423B2 true JP5836423B2 (en) | 2015-12-24 |
Family
ID=54597412
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014083184A Active JP5836423B2 (en) | 2014-04-14 | 2014-04-14 | Data matching confirmation method and system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5836423B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20240042984A (en) * | 2022-09-26 | 2024-04-02 | 주식회사 엘지에너지솔루션 | Battary data processing device and operating method of the same |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5261092A (en) * | 1990-09-26 | 1993-11-09 | Honeywell Inc. | Synchronizing slave processors through eavesdrop by one on periodic sync-verify messages directed to another followed by comparison of individual status |
JP2006039598A (en) * | 2004-06-24 | 2006-02-09 | Katsuya Ishihara | Data linkage method and data linkage device for computer system |
-
2014
- 2014-04-14 JP JP2014083184A patent/JP5836423B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2015203986A (en) | 2015-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11182366B2 (en) | Comparing data stores using hash sums on disparate parallel systems | |
US10089335B2 (en) | Data lineage across multiple marketplaces | |
US11288234B2 (en) | Placement of data fragments generated by an erasure code in distributed computational devices based on a deduplication factor | |
US10891264B2 (en) | Distributed, scalable key-value store | |
US10120924B2 (en) | Quarantine and repair of replicas in a quorum-based data storage system | |
US11734364B2 (en) | Method and system for document similarity analysis | |
US10824644B2 (en) | Aggregate, index based, synchronization of node contents | |
CN109791542A (en) | The distributed ledger system of query optimization | |
US20190005392A1 (en) | Method, device and equipment for fusing different instances describing same entity | |
US9268784B1 (en) | Content-aware distributed deduplicating storage system based on locality-sensitive hashing | |
US10127391B1 (en) | Encrypted search indexes | |
US7809764B2 (en) | Method and apparatus for preserving dependancies during data transfer and replication | |
CN106933703A (en) | A kind of method of database data backup, device and electronic equipment | |
CN107209707B (en) | Cloud-based staging system preservation | |
US20140279946A1 (en) | System and Method for Automatic Integrity Checks in a Key/Value Store | |
US20160275134A1 (en) | Nosql database data validation | |
JP5836423B2 (en) | Data matching confirmation method and system | |
US9547651B1 (en) | Establishing file relationships based on file operations | |
US10242025B2 (en) | Efficient differential techniques for metafiles | |
Babakhani et al. | The existence and uniqueness of solutions for a class of nonlinear fractional differential equations with infinite delay | |
US20200142622A1 (en) | Deduplicated Storage with Multiple Storage Domains | |
CN107451179B (en) | Query method and system for block chain for increasing overall error of block | |
US10761945B2 (en) | Dynamically directing data in a deduplicated backup system | |
US9588996B2 (en) | Point in time recovery support for pending schema definition changes | |
US10915417B1 (en) | Audit correctness of asynchronous batch transformation systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20150526 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20150813 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20151006 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20151102 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5836423 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |