(57)【要約】【課題】  本発明によれば、より少ない処理量で正確に２つのデータベースのデータを比較する処理を行う。【解決手段】  本発明は、データベースシステムに関する。本発明のデータベースシステムは、第１のデータベースからデータを順次読み出して読みだした順序でデータ出力した第１の出力データを生成する手段と、第１の出力データからデータを順次読み出して順序識別子を付加したデータを第２のデータベースに登録する手段と、第２のデータベースから順序識別子が示す順序で読み出してデータ出力した第２の出力データを生成する手段と、第１の出力データと第２の出力データとの比較結果に基づいて、第１のデータベースと第２のデータベースとを比較する処理を行う手段とを有することを特徴とする。【選択図】      図１
2018014036.tif 000002
【特許請求の範囲】
【請求項１】
第１のデータベースから、前記第１のデータベースを構成するデータを順次読み出し、前記第１のデータベースから読み出したデータを読みだした順序で出力した第１の出力データを生成する第１のデータベース出力手段と、
前記第１の出力データからデータを順次読み出し、読み出した各データに順序を識別する順序識別子を付加したデータを、第２のデータベースに登録するデータ登録手段と、
前記第２のデータベースから、前記第２のデータベースを構成するデータを、順序識別子が示す順序で読み出し、前記第２のデータベースから読み出したデータを読みだした順序で出力した第２の出力データを生成する第２のデータベース出力手段と、
前記第１の出力データと前記第２の出力データとの比較結果に基づいて、前記第１のデータベースと前記第２のデータベースとを比較する処理を行うデータ比較手段と
を有することを特徴とするデータベースシステム。
【請求項２】
前記データ比較手段の比較処理後に、前記第２のデータベースの各データから順序識別子の項目を削除する処理を行う削除処理手段をさらに有することを特徴とする請求項１に記載のデータベースシステム。
【請求項３】
前記第１のデータベース出力手段、前記データ登録手段、前記第２のデータベース出力手段、及びデータ比較手段は、いずれも、シェルスクリプトを用いて構成されていることを特徴とする請求項１に記載のデータベースシステム。
【請求項４】
前記第１の出力データ及び前記第２の出力データはいずれもテキストデータであり、
前記データ比較手段は、前記第１の出力データと前記第２の出力データとのテキストデータとしての同一性を比較する処理を行う
ことを特徴とする請求項１〜３のいずれかに記載のデータベースシステム。
【請求項５】
コンピュータを、
第１のデータベースから、前記第１のデータベースを構成するデータを順次読み出し、前記第１のデータベースから読み出したデータを読みだした順序で出力した第１の出力データを生成する第１のデータベース出力手段と、
前記第１の出力データからデータを順次読み出し、読み出した各データに順序を識別する順序識別子を付加したデータを、第２のデータベースに登録するデータ登録手段と、
前記第２のデータベースから、前記第２のデータベースを構成するデータを、順序識別子が示す順序で読み出し、前記第２のデータベースから読み出したデータを読みだした順序で出力した第２の出力データを生成する第２のデータベース出力手段と、
前記第１の出力データと前記第２の出力データとの比較結果に基づいて、前記第１のデータベースと前記第２のデータベースとを比較する処理を行うデータ比較手段と
して機能させることを特徴とするデータ処理プログラム。
【請求項６】
データベースシステムにおけるデータ処理方法において、
第１のデータベース出力手段、データ登録手段、第２のデータベース出力手段、及びデータ比較手段を備え、
前記第１のデータベース出力手段は、第１のデータベースから、前記第１のデータベースを構成するデータを順次読み出し、前記第１のデータベースから読み出したデータを読みだした順序で出力した第１の出力データを生成し、
前記データ登録手段は、前記第１の出力データからデータを順次読み出し、読み出した各データに順序を識別する順序識別子を付加したデータを、第２のデータベースに登録し、
前記第２のデータベース出力手段は、前記第２のデータベースから、前記第２のデータベースを構成するデータを、順序識別子が示す順序で読み出し、前記第２のデータベースから読み出したデータを読みだした順序で出力した第２の出力データを生成し、
前記データ比較手段は、前記第１の出力データと前記第２の出力データとの比較結果に基づいて、前記第１のデータベースと前記第２のデータベースとを比較する処理を行う
ことを特徴とするデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、データベースシステム、データ処理プログラム、及びデータ処理方法に関し、例えば、データベースサーバ間のデータ移行が可能なデータベースシステムに適用し得る。
【背景技術】
【０００２】
通常、データベースサーバ間でデータを移行した後、移行元のデータベースサーバと移行先のデータベースのデータとの間で、データの同一性を比較検証する処理（以下、「コンペア処理」とも呼ぶ）が行われる。従来のデータベースシステムにおいて、全件コンペア処理を実施する処理は、例えば、移行元又は移行先のデータどちらか一方を基準に他方のデータを繰り返しサーチし、同一レコード（比較対象となるレコード）を検出してコンペア処理を実施するという流れとなる。
【０００３】
従来のデータベースシステムにおけるコンペア処理方法としては、例えば、特許文献１に記載された方法がある。特許文献１では、移行前と移行後のデータベース間で、全件のデータに対してコンペア処理を実施することで、移行後のデータベースの信頼性を保証し、さらに、移行前と移行後で不一致が発見された場合に調査を可能とする。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１７１２２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１にはコンペア処理の具体的な手続きについては開示されておらず、その処理にどの程度のリソース及び、処理時間が必要となるか不明となっている。
【０００６】
近年、ハードウェアやＤＢＭＳ等のミドルウェアのライフサイクルは短くなっており、システムの移行／再構築が必要となるケースは多く、その際のデータ移行作業は、極力短い時間で実施可能であることが要求されている。
【０００７】
従来のデータベースシステムにおいて、データ移行を行った後のコンペア処理方式としては、例えば、特許文献１のコンペア処理方式がある。特許文献１に記載されたコンペア処理方式では、シェルスクリプトを用いてコンペア処理を行うことについて記載されている。
【０００８】
例えば、従来の特許文献１の請求項１に記載されている「移行データファイルを移行後データベースのテーブルにセットアップ」するシェルスクリプトや、特許文献１の段落「００１２」に記載されている移行前検査ファイルと移行後検査ファイルとの全件コンペア処理を行うシェルスクリプトには、以下の課題があると考えられる。
【０００９】
従来のコンペア処理方式では、移行前データベースからデータを抽出する際、データが抽出される順序（物理的な順序及び論理的な順序）は、移行後のデータベースからデータが抽出される順序と同一とは限らない。ＤＢＭＳは一般的にデータを登録する際、空きデータブロックに連続的にデータを登録する方式で動作するが、データブロックが格納領域の上限まで使用されているような場合は、空きブロックを探索しながらデータを登録することになる。この場合、データを検索する（例えば、「ＳＥＬＥＣＴ  ＊  ＦＲＯＭ  表」というＳＱＬ文）場合、データブロックの先頭からデータレコードが取得されるが、それは登録順序とは異なることになる。
【００１０】
したがって、従来のコンペア処理方式では、移行前又は移行後の一方のデータベースから任意のデータ（レコード）を抽出し、一方のデータベースから抽出したデータと対応するデータを他方のデータベースから検出して比較する処理を繰り返すことになる。
【００１１】
上述のような従来のコンペア処理方式では、コンペア処理対象のデータベースの全件のデータ（レコード）について、検索する処理が必要となる。すなわち、上述のような従来のコンペア処理方式では、コンペア処理対象のデータベースのデータ数（レコード数）の増加に伴い、検索処理の処理量（処理ステップや処理時間）も比例して多くなる。
【００１２】
また、上述のような従来のコンペア処理方式では、コンペア処理対象のデータに主キーが設定されていない場合（データベース内でユニークなデータとなるカラムが設定されていない場合）、一方のデータベースから抽出したデータと対応するデータを他方のデータベースから検出する処理が困難となってしまう。
【００１３】
さらに、上述のような従来のコンペア処理方式では、一方のデータベースから抽出したデータを、他方のデータベースから検出したデータと比較する際には、当該データ（レコード）の全データカラムについて比較する処理を繰り返すことになるため、多くの処理量（処理ステップや処理時間）が必要となる。すなわち、上述のような従来のコンペア処理方式では、データカラム数の増加に伴い、比較処理の処理量（処理ステップや処理時間）も比例して多くなる。
【００１４】
そのため、より少ない処理量で正確に２つのデータベースのデータを比較する処理（コンペア処理）を行うことができるデータベースシステム、データ処理プログラム、及びデータ処理方法が望まれている。
【課題を解決するための手段】
【００１５】
第１の本発明のデータベースシステムは、（１）第１のデータベースから、前記第１のデータベースを構成するデータを順次読み出し、前記第１のデータベースから読み出したデータを読みだした順序で出力した第１の出力データを生成する第１のデータベース出力手段と、（２）前記第１の出力データからデータを順次読み出し、読み出した各データに順序を識別する順序識別子を付加したデータを、第２のデータベースに登録するデータ登録手段と、（３）前記第２のデータベースから、前記第２のデータベースを構成するデータを、順序識別子が示す順序で読み出し、前記第２のデータベースから読み出したデータを読みだした順序で出力した第２の出力データを生成する第２のデータベース出力手段と、（４）前記第１の出力データと前記第２の出力データとの比較結果に基づいて、前記第１のデータベースと前記第２のデータベースとを比較する処理を行うデータ比較手段とを有することを特徴とする。
【００１６】
第２の本発明のデータ処理プログラムは、コンピュータを、（１）第１のデータベースから、前記第１のデータベースを構成するデータを順次読み出し、前記第１のデータベースから読み出したデータを読みだした順序で出力した第１の出力データを生成する第１のデータベース出力手段と、（２）前記第１の出力データからデータを順次読み出し、読み出した各データに順序を識別する順序識別子を付加したデータを、第２のデータベースに登録するデータ登録手段と、（３）前記第２のデータベースから、前記第２のデータベースを構成するデータを、順序識別子が示す順序で読み出し、前記第２のデータベースから読み出したデータを読みだした順序で出力した第２の出力データを生成する第２のデータベース出力手段と、（４）前記第１の出力データと前記第２の出力データとの比較結果に基づいて、前記第１のデータベースと前記第２のデータベースとを比較する処理を行うデータ比較手段として機能させることを特徴とする。
【００１７】
第３の本発明は、データベースシステムにおけるデータ処理方法において、（１）第１のデータベース出力手段、データ登録手段、第２のデータベース出力手段、及びデータ比較手段を備え、（２）前記第１のデータベース出力手段は、第１のデータベースから、前記第１のデータベースを構成するデータを順次読み出し、前記第１のデータベースから読み出したデータを読みだした順序で出力した第１の出力データを生成し、（３）前記データ登録手段は、前記第１の出力データからデータを順次読み出し、読み出した各データに順序を識別する順序識別子を付加したデータを、第２のデータベースに登録し、（４）前記第２のデータベース出力手段は、前記第２のデータベースから、前記第２のデータベースを構成するデータを、順序識別子が示す順序で読み出し、前記第２のデータベースから読み出したデータを読みだした順序で出力した第２の出力データを生成し、（５）前記データ比較手段は、前記第１の出力データと前記第２の出力データとの比較結果に基づいて、前記第１のデータベースと前記第２のデータベースとを比較する処理を行うことを特徴とする。
【発明の効果】
【００１８】
本発明によれば、より少ない処理量で正確に２つのデータベースのデータを比較する処理を行うことができる。
【図面の簡単な説明】
【００１９】
【図１】実施形態に係るデータベースシステムの機能的構成の例について示したブロック図である。
【図２】実施形態に係るデータベースシステムの動作について示したフローチャートである。
【図３】実施形態に係るデータベースシステムにおける各データの遷移について示した説明図である。
【図４】実施形態に係る移行元のデータベースサーバで、移行元データファイルの出力処理を行う際のシェルスクリプトの構成例について示した説明図である。
【図５】実施形態に係る移行元のデータベースサーバで、移行元データファイルの出力処理を行う際のＳＱＬ文の例について示した説明図である。
【図６】実施形態に係る移行元のデータベースサーバで、移行元データファイルの出力処理を行う際に適用するＳＱＬファイルの構成例（その１）について示した説明図である。
【図７】実施形態に係る移行元のデータベースサーバで、移行元データファイルの出力処理を行う際に適用するＳＱＬファイルの構成例（その２）について示した説明図である。
【図８】実施形態に係る移行元のデータベースサーバで出力された移行元データファイルの例について示した説明図である。
【図９】実施形態に係る移行先のデータベースサーバで、データのセットアップを行う際のシェルスクリプトの構成例について示した説明図である。
【図１０】実施形態に係る移行先のデータベースサーバで、データのセットアップを行う際の制御ファイルの構成例について示した説明図である。
【図１１】実施形態に係る移行先のデータベースサーバで、データの出力処理を行う際のＳＱＬ文の例について示した説明図である。
【図１２】実施形態に係る移行先のデータベースサーバで、移行先データファイルの出力処理を行う際のシェルスクリプトの構成例について示した説明図である。
【図１３】実施形態に係る移行先のデータベースサーバで、移行先データファイルの出力処理を行う際に適用するＳＱＬファイルの構成例（その１）について示した説明図である。
【図１４】実施形態に係る移行先のデータベースサーバで、移行先データファイルの出力処理を行う際に適用するＳＱＬファイルの構成例（その２）について示した説明図である。
【図１５】実施形態に係る移行先のデータベースサーバで出力された移行先データファイルの例について示した説明図である。
【図１６】実施形態に係る移行先のデータベースサーバでデータ比較処理が行われる際のシェルスクリプトの例について示した説明図である。
【図１７】実施形態に係る移行先のデータベースサーバで順序番号カラムの削除が行われる際のＳＱＬ文の例について示した説明図である。
【発明を実施するための形態】
【００２０】
（Ａ）主たる実施形態
以下、本発明によるデータベースシステム、データ処理プログラム、及びデータ処理方法の一実施形態を、図面を参照しながら詳述する。
【００２１】
（Ａ−１）実施形態の構成
図１は、この実施形態のデータベース(以下、「ＤＢ」とも呼ぶ)システム１の全体構成を示すブロック図である。
【００２２】
ＤＢシステム１は、２つのＤＢサーバ１０、２０を有している。また、ＤＢサーバ１０、２０は、それぞれネットワークＮに接続しているものとする。
【００２３】
ＤＢサーバ１０、２０は、図示しないＤＢクライアントから与えられたトランザクションの処理を行うものである。ＤＢサーバ１０、２０は、ＰＣなどの情報処理装置（１台に限定されず、複数台を分散処理し得るようにしたものであっても良い。）上に、プログラム（実施形態に係るデータ処理プログラムやデータベースのミドルウェアを含む）をインストールすることにより構築されるものであるが、機能的には図１のように表すことができる。なお、ＤＢサーバ１０、２０は同じ構成としてもよいし、一部が異なる構成としてもよい。なお、ＤＢシステム１を構成するＤＢサーバ２０の台数は３台以上としてもよい。
【００２４】
この実施形態では、ＤＢサーバ１０がデータベースの移行元（移行前）となるＤＢサーバ（以下、「移行元ＤＢサーバ」とも呼ぶ）であり、ＤＢサーバ２０がデータベースの移行先（移行後）となるＤＢサーバ（以下、「移行先ＤＢサーバ」とも呼ぶ）であるものとして説明する。なお、ＤＢシステム１において、データの移行元又は移行先となるＤＢサーバは限定されないものであり、任意の組み合わせを適用可能であるものとする。
【００２５】
次に、移行元ＤＢサーバ１０と移行先ＤＢサーバ２０の機能的な構成について説明する。図１に示すように、この実施形態では、移行元ＤＢサーバ１０と移行先ＤＢサーバ２０は、いずれも基本的な構成（大別された機能的構成）は同様なものとして図示することができる。例えば、ハードウェア更新等で、移行元ＤＢサーバ１０から移行先ＤＢサーバ２０にデータベース（データベースを構成する表）を移行する場合、通常は、移行先ＤＢサーバ２０の方が、ＯＳ、データベースミドルウェア等のソフトウェアがバージョンアップした状態となるが、基本的な構成（大別された機能的構成）としては同様の構成として図示される。
【００２６】
図１に示すように、ＤＢサーバ１０、２０は、大別するとＤＢＭＳ１１、２１、データ記憶部１２、２２、及びデータベース制御部１３、２３を有している。
【００２７】
ＤＢサーバ１０、２０は、いずれもＰＣやワークステーション等のコンピュータに、ＯＳ（ミドルウェア）をインストール及びデータベースミドルウェアをインストールすることにより構築されたプラットフォーム上で実現されているものとする。ＤＢサーバ１０、２０にインストールするＯＳやデータベースミドルウェアについては限定されないものであるが、この実施形態の例では、ＵＮＩＸ（登録商標）系のＯＳ（例えば、種々のＬＩＮＵＸ（登録商標）系ＯＳ）とＯＲＡＣＬＥ（登録商標）データベースが適用されるものとして説明する。
【００２８】
ＤＢＭＳ１１、２１は、ＤＢ管理システム（Ｄａｔａ  Ｂａｓｅ  Ｍａｎａｇｅｍｅｎｔ  Ｓｙｓｔｅｍ）の機能を担っており、例えば、図示しないＤＢクライアントやデータベース制御部１３、２３から要求（例えば、ＳＱＬ（Ｓｔｒｕｃｔｕｒｅｄ  Ｑｕｅｒｙ  Ｌａｎｇｕａｇｅ）文で記述されたトランザクション）を受け取り、データ記憶部１２、２２のデータベース（表）を制御するなどして処理を行うものである。ＤＢＭＳ１１、２１は、例えば、種々のデータベースシステム（データベースミドルウェア）を用いて構築することができる。移行元ＤＢサーバ１０よりも、移行先ＤＢサーバ２０の方が新しく構築されたサーバの場合、移行先ＤＢサーバ２０のＤＢＭＳ２１で用いられるミドルウェア（データベースミドルウェア）は、移行元ＤＢサーバ１０で用いられるものと異なる場合（例えば、新しいバージョンのデータベースミドルウェアである場合）もあり得る。
【００２９】
データ記憶部１２、２２は、ＤＢサーバ１０、２０において、データベースのデータを記憶する機能（データベース部の機能）などを担っており、例えば、ＤＢＭＳ１１、２１の制御に基づいて記憶しているデータの更新を行う。
【００３０】
データベース制御部１３、２３は、ＤＢＭＳ１１、２１（ＤＢＭＳ１１、２１のライブラリ）を用いてデータベース（例えば、データベースを構成する表）を制御する機能を担っている。特に、この実施形態では、データベース制御部１３、２３が、データベース移行の際のコンペア処理の制御を行うものとして説明する。
【００３１】
この実施形態では、データベース制御部１３、２３は、ＵＮＩＸ系ＯＳ上のシェルスクリプトを用いて構成されているものとして説明する。なお、データベース制御部１３、２３（データベース制御部１３、２３を構成する各構成要素）を実現する手段は、シェルスクリプトに限らず、任意の言語により記述されたプログラムがコンパイルされた実行可能ファイル（バイナリ形式の実行可能ファイル）であってもよい。
【００３２】
移行元ＤＢサーバ１０のデータベース制御部１３には、データ出力処理部１３１及びデータ送信部１３２が含まれている。
【００３３】
データ出力処理部１３１は、ＤＢＭＳ１１を制御して、ＤＢＭＳ１１（データ記憶部１２）上にセットアップされたデータベース（データベースを構成する表）の各データ（レコード）を読み出して、文字列データに変換して出力（例えば、テキストデータのファイルとして出力）する処理を行う。以下では、データ出力処理部１３１が出力するテキストデータのファイルを「移行元データファイル」と呼ぶものとする。データ出力処理部１３１は、例えば、特許文献１と同様の方式により移行元データファイルを出力する処理を行うようにしてもよい。
【００３４】
データ送信部１３２は、データ出力処理部１３１が出力した移行元データファイルを、移行先ＤＢサーバ２０側に送信（供給）する処理を行う。移行元ＤＢサーバ１０から移行先ＤＢサーバ２０に移行元データファイルを送信する手順や方式については限定されないものであり、例えば、ＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）や種々のネットワークファイルシステムを用いたファイルコピーにより実現するようにしてもよい。なお、データ出力処理部１３１が移行元データファイルを、直接移行先ＤＢサーバ２０に引き渡す処理を行う場合（例えば、移行先ＤＢサーバ２０のデータ記憶部２２に書込む処理まで実行する場合）には、データ送信部１３２及び後述するデータ受信部２３１の構成は省略するようにしてもよい。
【００３５】
移行先ＤＢサーバ２０のデータベース制御部２３には、データ受信部２３１、データセットアップ制御部２３２、データ出力処理部２３３、データ比較処理部２３４、及びカラム削除処理部２３５を有している。
【００３６】
データ受信部２３１は、移行元ＤＢサーバ１０のデータ送信部１３２が送信した移行元データファイルを受信する処理を行う。データ受信部２３１により受信された移行元データファイルは、データセットアップ制御部２３２及びデータ比較処理部２３４に引き渡される。なお、移行元ＤＢサーバ１０のデータ出力処理部１３１が移行元データファイルを、直接データセットアップ制御部２３２及びデータ比較処理部２３４に引き渡す処理を行う場合（例えば、移行先ＤＢサーバ２０のデータ記憶部２２に書込む処理まで実行する場合）には、データ受信部２３１の構成は省略するようにしてもよい。
【００３７】
データセットアップ制御部２３２は、ＤＢＭＳ２１を制御して、供給された移行元データファイルに基づくデータベース（データベースを構成する表）を、セットアップさせる処理（データ記憶部１２上に表を生成して各データを登録させる処理）を行う。
【００３８】
このとき、データセットアップ制御部２３２は、移行元データファイル（テキストファイル）の先頭のデータ（レコード）から順に読み込んでＤＢＭＳ２１にセットアップ（登録）させる処理を行う。また、データセットアップ制御部２３２は、ＤＢＭＳ２１に、データのセットアップを（登録）させる際に当該データの処理順序（すなわち、移行元データファイルにおいてデータが記述された順序）を示す順序番号（順序識別子）のカラム（以下、「順序番号カラム」とも呼ぶ）を追加させる処理を行う。この実施形態では、最初にセットアップされたデータ（移行元データファイルの先頭のデータ）の順序番号カラムの値を「１」とし、以後昇順に通し番号（シーケンス番号）が設定されるものとして説明する。
【００３９】
データ出力処理部２３３は、ＤＢＭＳ２１（データ記憶部２２）上に展開（セットアップ）されたデータベース（表）の各データ（レコード）を読み出して、文字列データに変換して出力（テキストデータファイルとして出力）する処理を行う。以下では、データ出力処理部２３３が出力するテキストデータのファイルを「移行先データファイル」と呼ぶものとする。このとき、データ出力処理部２３３は、データベース上から、順序番号カラムに示される順序でデータ（レコード）の読出しを行い、順序番号カラムを除外したデータ（順序番号カラム以外のカラムのデータ）を取得して、移行先データファイルに出力する処理を行う。すなわち、データ出力処理部２３３は、順序番号カラムに示される順序でデータの読み込み及び出力を行うことで、移行元データファイルと同じ順序で移行先データファイルへのデータ出力を行うことができる。データ出力処理部２３３は、順序番号カラムに示される順序でデータの読み込み及び出力を行うこと以外については、例えば、特許文献１と同様の処理により移行元データファイルの出力処理を行うことができる。
【００４０】
データ比較処理部２３４は、移行元データファイルと移行先データファイルの同一性を比較（テキストデータとしての同一性を比較）する処理を行う。言い換えると、データ比較処理部２３４は、移行元データファイルと移行先データファイルの同一性を比較結果に基づいて、移行元ＤＢサーバ１０のデータベース（移行元のデータベース）と、移行先ＤＢサーバ２０のデータベース（移行先のデータベース）との同一性を判断する。データ比較処理部２３４では、移行元データファイルと移行先データファイルを一行ずつ比較する処理を行うようにしてもよいが、ｄｉｆｆコマンド等のＵＮＩＸ上のコマンド処理により移行元データファイルと移行先データファイルのテキストファイルとしての同一性を比較するようにしてもよい。スクリプト等により、移行元データファイルと移行先データファイルのデータを一行ずつ比較する処理を行うようにしてもよいが、ｄｉｆｆコマンドを用いたファイル全体の比較処理の方が高速に処理を行うことが可能となる。
【００４１】
データ比較処理部２３４では、移行元データファイルと移行先データファイルとがテキストデータとして同一（差分がない状態）であれば、移行元ＤＢサーバ１０のデータベース（移行元のデータベース）と、移行先ＤＢサーバ２０のデータベース（移行先のデータベース）とで全件のデータ（レコード）が同一の内容であると判断できる。
【００４２】
（Ａ−２）実施形態の動作
次に、以上のような構成を有するＤＢシステム１の動作（実施形態のデータ処理方法）を説明する。
【００４３】
図２は、ＤＢシステム１（移行元ＤＢサーバ１０、移行先ＤＢサーバ２０）においてデータベースの移行に伴ってコンペア処理を行う際の動作概要について示したフローチャートである。図３は、図２のフローチャートに従ってＤＢシステム１（移行元ＤＢサーバ１０、移行先ＤＢサーバ２０）が動作した場合の各データの遷移について示した説明図である。図２、図３では、移行元ＤＢサーバ１０で保持されている表Ａ１のデータベースを、移行先ＤＢサーバ２０に移行して表Ａ２をセットアップし、表Ａ１と表Ａ２のコンペア処理を行う際の動作について示している。
【００４４】
まず、移行先ＤＢサーバ２０のデータ出力処理部１３１が、ＤＢＭＳ１１を制御して、ＤＢＭＳ１１（データ記憶部１２）上にセットアップ（登録）された表Ａ１のデータベースの各データ（レコード）を読み出して、文字列データに変換し、移行元データファイルＦ１として出力する処理を行ったものとする（Ｓ１０１）。なお、データ出力処理部１３１が、表Ａ１のデータを読み出す際の順序については限定されないものである。ここでは、表Ａ１には主キーが設定されておらず、データ出力処理部１３１は、特に表Ａ１から読み出すデータの順序については指定せずに（ソート条件を指定せずに）、表Ａ１の全てのデータについて読出しを行ったものとして説明する。なお、ＤＢＭＳ１１では、特に順序を指定せずに表Ａ１のデータ全件について読出しが要求された場合、データ記憶部２２上で表Ａ１の各データが登録されている物理的な順序（物理アドレスに基づく順序）で読みだすようにしてもよい。また、表Ａ１に主キーが設定されている場合には、データ出力処理部１３１は、当該主キーに基づいてデータの読出しを行うようにしてもよい。そして、ここでは、移行元ＤＢサーバ１０のデータ送信部１３２が、移行元データファイルＦ１を移行先ＤＢサーバ２０に送信し、移行先ＤＢサーバ２０のデータ受信部２３１で受信されたものとする。そして、データ受信部２３１により受信された移行元データファイルＦ１は、データ記憶部２２に記憶されデータセットアップ制御部２３２及びデータ比較処理部２３４に引き渡される。
【００４５】
ここでは、図３に示すように、移行元ＤＢサーバ１０の表Ａ１の各データ（レコード）は、３つのカラムＣ１〜Ｃ３により構成されているものとする。図３に示すように、表Ａ１の先頭に配置されたデータＤ１１（データ出力処理部１３１が出力する際に最初に読み出されるデータ）の内容は、「カラムＣ１：ＡＡＡ、カラムＣ２：０００、カラムＣ３：あいう」となっている。また、図３に示すように、表Ａ１の先頭から２番目に配置されたデータＤ１２（表Ａ１から２番目に読み出されるデータ）は、「カラムＣ１：ＸＸＸ、カラムＣ２：４５６、カラムＣ３：かきく」となっている。さらに、図３に示すように、表Ａ１で先頭から３番目に配置されたＤ１３（表Ａ１から３番目に読み出されるデータ）は、「カラムＣ１：１２３、カラムＣ２：＊＋−、カラムＣ３：ａｂｃ」となっている。
【００４６】
また、図３に示すように、移行元データファイルＦ１（ファイル名：ｄａｔａ１．ｔｘｔ）では、表Ａ１を構成する各データがそれぞれ１行で記述されており、各行では各カラムの間にスペースを空けた形式で記述されている。言い換えると、図３に示す移行元データファイルＦ１では、各データ（各レコード）の間が改行（改行コード）で区切られており、各行の各カラムの間がスペース（スペースのコード）で区切られた記述形式となっている。例えば、移行元データファイルＦ１において、データＤ１１は「ＡＡＡ  ０００  あいう」となっている。なお、移行元データファイルＦ１において、各データや各カラムを区切るコードの種類は限定されないものであり、例えば、各カラム間をカンマ（，）で区切る形式（いわゆるＣＳＶ（Ｃｏｍｍａ−Ｓｅｐａｒａｔｅｄ  Ｖａｌｕｅｓ）形式）やタブ（タブのコード）で区切る形式としてもよい。
【００４７】
次に、移行先ＤＢサーバ２０のデータセットアップ制御部２３２が、ＤＢＭＳ２１を制御して、供給された移行元データファイルＦ１に基づいて「表Ａ２」をセットアップする処理（データベースの登録処理）を実行させる（Ｓ１０２）。
【００４８】
このときデータセットアップ制御部２３２は、移行元データファイルＦ１の先頭のデータＤ１１から順に読み込み、ＤＢＭＳ２１を用いて表Ａ２にセットアップさせる処理を行う。また、データセットアップ制御部２３２は、表Ａ２に順序番号カラムＣ４を追加するようにＤＢＭＳ２１を制御し、各データの順序番号カラムＣ４に当該データの処理順序の番号（移行元データファイルＦ１における当該データの先頭からの配置順序の番号）を入力する。図２では、表Ａ１のデータＤ１１〜Ｄ１３が、それぞれ、表Ａ２のデータＤ２１〜Ｄ２３に対応するものとして図示している。また、図２に示すように、表Ａ２のデータＤ２１〜Ｄ２３には、順序番号カラムＣ４が付加されている。データＤ２１〜Ｄ２３の順序番号カラムＣ４の値（番号）はそれぞれ１〜３となっている。
【００４９】
次に、移行先ＤＢサーバ２０のデータ出力処理部２３３が、表Ａ２のデータベースの各データ（レコード）を読み出して、ＤＢＭＳ２１を制御して、表Ａ２の各データ（レコード）を、文字列データに変換し、移行先データファイルＦ２として出力する処理を行う（Ｓ１０３）。このとき、データ出力処理部２３３は、表Ａ２のデータベースから、順序番号カラムＣ４に示される順序でデータ（順序番号カラムＣ４を除外したカラムのデータ）の読出しを行い、移行先データファイルＦ２に出力する処理を行う。
【００５０】
次に、データ比較処理部２３４は、移行元データファイルと移行先データファイルの同一性を比較（テキストデータとしての同一性を比較）する処理を行う（Ｓ１０４）。
【００５１】
次に、カラム削除処理部２３５は、ＤＢＭＳ２１を制御して、表Ａ２から順序番号カラムＣ４を除去する処理を行い（Ｓ１０５）、本フローチャートの処理を終了する。
【００５２】
次に、上述のステップＳ１０１〜Ｓ１０５のそれぞれの処理の詳細について説明する。
【００５３】
まず、ステップＳ１０１で、移行元ＤＢサーバ１０のデータ出力処理部１３１が行う処理の具体例について説明する。
【００５４】
移行元ＤＢサーバ１０の表Ａ１からデータを抽出し移行元データファイルＦ１に出力する手順としては種々の手順（例えば、特許文献１の手順）を適用することができる。
【００５５】
データ出力処理部１３１は、表Ａ１のデータ（レコード）を順次読込んで、読込んだ順序で移行元データファイルＦ１に出力する処理を行う。データ出力処理部１３１が行う処理は、例えば、図４に示すようなシェルスクリプトで実現することができる。
【００５６】
図４に示すシェルスクリプトでは、ＯＲＡＣＬＥデータベース上のコマンド「ｓｑｌｐｌｕｓ」に、「ｇｅｔ＿ｄａｔａ．ｓｑｌ」というファイル名のＳＱＬファイルを適用している。なお、図４に示すシェルスクリプトにおける「ユーザ／パスワード」には、ｓｑｌｐｌｕｓコマンドを実行可能なユーザＩＤ及びパスワードが入力されることを示している。これは、以下に示すシェルスクリプトでも同様である。
【００５７】
表Ａ１からデータを抽出（特に順序を指定せずに抽出）するためのＳＱＬ文は、単純には、図５に示すようなＳＥＬＥＣＴ文を用いて実現することができる。そして、上述の図４のシェルスクリプトに適用するＳＱＬファイル（ｇｅｔ＿ｄａｔａ．ｓｑｌ）の内容としては、例えば、図６に示す内容のＳＱＬ文を適用することができる。
【００５８】
図６に示すＳＱＬファイルのラインＬ１０１には、検索結果のメッセージを抑止する指定が記述されている。また、図６に示すＳＱＬファイルのラインＬ１０２には、検索結果の行間のラベル表示を抑止する指定が記述されている。さらに、図６に示すＳＱＬファイルのラインＬ１０３には、移行元データファイルＦ１（ｄａｔａ１．ｔｘｔ）への出力を開始する処理が記述されている。さらにまた、図６に示すＳＱＬファイルのラインＬ１０４には、表Ａから全てのカラムのデータを出力（移行元データファイルＦ１に出力）する処理（ＳＥＬＥＣＴ文）が記述されている。また、図６に示すＳＱＬファイルのラインＬ１０５には、移行元データファイルＦ１（ｄａｔａ１．ｔｘｔ）への出力を終了する処理が記述されている。
【００５９】
データベース制御部１３（データ出力処理部１３１）が、図６に示すＳＱＬファイル（ｇｅｔ＿ｄａｔａ．ｓｑｌ）を、図４のシェルスクリプトに組み込んで実行した場合、移行元データファイルＦ１（ｄａｔａ１．ｔｘｔ）の内容は、図３に示す内容となる。図３では、各カラム間がスペースで区切られている。
【００６０】
移行元データファイルＦ１（ｄａｔａ１．ｔｘｔ）において、各カラムの間をカンマ（，）で区切るように記述する場合（移行元データファイルＦ１をＣＳＶファイルとした場合）、ＳＱＬファイル（ｇｅｔ＿ｄａｔａ．ｓｑｌ）の内容は図７のような内容となる。図７では、ラインＬ１０４がラインＬ１０４Ａに置き換わっていること以外は、上述の図６と同様の内容となっている。図７のラインＬ１０４Ａでは、各カラムの間にカンマ（，）が入るようにＳＥＬＥＣＴ文が記述されている。
【００６１】
そして、データベース制御部１３（データ出力処理部１３１）が、図７に示すＳＱＬファイル（ｇｅｔ＿ｄａｔａ．ｓｑｌ）を、図４のシェルスクリプトに組み込んで実行した場合、移行元データファイルＦ１（ｄａｔａ１．ｔｘｔ）の内容は、図８に示す内容となる。図８では、各カラム間がスペースで区切られた形式（ＣＳＶ形式）となっている。
【００６２】
次に、ステップＳ１０２で、移行先ＤＢサーバ２０のデータセットアップ制御部２３２が行う処理の具体例について説明する。
【００６３】
データセットアップ制御部２３２が、移行元データファイルＦ１に基づいてデータセットアップを行う処理は、例えば、図９に示すようなシェルスクリプトで実現できる。
【００６４】
図９に示すシェルスクリプトでは、ＯＲＡＣＬＥデータベースのコマンド「ｓｑｌｌｄｒ」を用いて、移行元データファイルＦ１（ｄａｔａ１．ｔｘｔ）に基づく表Ａ２（データベース）のセットアップを実行する例について示している。ＯＲＡＣＬＥデータベースでは、ファイルからデータを一括読み込みするためのコマンドとして「ｓｑｌｌｄｒ」が実装されおり、このコマンドにより、簡単、且つ、高速にデータセットアップが可能となる。
【００６５】
ｓｑｌｌｄｒコマンドを起動する際には、制御ファイルを引き渡す必要があるため、図９の例では、コマンド「ｓｑｌｌｄｒ」に、「ｌｏａｄ．ｃｔｌ」という名前の制御ファイルを適用する例について示している。
【００６６】
この実施形態では、制御ファイル「ｌｏａｄ．ｃｔｌ」の内容は、図１０に示すような内容を適用することができる。
【００６７】
図１０の制御ファイルは、供給されたデータ（ＣＳＶ形式の移行元データファイルＦ１のデータ）を表Ａ２にセットアップする内容となっている。
【００６８】
図１０の制御ファイル「ｌｏａｄ．ｃｔｌ」では、ラインＬ３０１で、移行後のデータベースとして表Ａ２を指定している。また、図１０の制御ファイル「ｌｏａｄ．ｃｔｌ」では、ラインＬ３０２で読込データ（移行元データファイルＦ１のデータ）における各カラムがカンマ（，）で区切られた形式（ＣＳＶ形式）であることを指定している。さらに、図１０の制御ファイル「ｌｏａｄ．ｃｔｌ」では、ラインＬ３０３で、移行後の表Ａ２に、カラムＣ１〜Ｃ３（移行元データファイルＦ１のカラム）に加え、順序番号カラムＣ４を設定し、順序番号カラムＣ４にＳＥＱＵＥＮＣＥ（ＣＯＵＮＴ）を設定している。これにより、ｓｑｌｌｄｒコマンドでは、移行元のデータ（移行元データファイルＦ１）を先頭行から読み込んだ順に、順序番号カラムＣ４（１，２，３、…）を付与（処理順序に相当するシーケンス番号を付与）して、移行先の表Ａ２に反映することができる。
【００６９】
移行先ＤＢサーバ２０にセットアップされる表Ａ２には、順序番号カラムＣ４が定義されているが、これは、移行元データファイルＦ１（移行元のデータベースの表Ａ）には無いカラムである。
【００７０】
これにより、移行先ＤＢサーバ２０の表Ａ２では、この順序番号カラムＣ４を、検索や読み出しのソートキー（ソート条件）として利用することができる。例えば、移行先ＤＢサーバ２０では、ＳＥＬＥＣＴ文等で、表Ａ２の読み出しを行う際に、ＳＱＬの「ＯＲＤＥＲ  ＢＹ」句を用いることで、データ検索の出力順序を指定することができる。例えば、図１１に示すように、表Ａ２をＳＥＬＥＣＴ文で読み出す際に、「ＯＲＤＥＲ  ＢＹ  カラムＣ４」と記述することにより、順序番号カラムＣ４をソートキー（ソート条件）とした読み出しを行うことができる。
【００７１】
次に、ステップＳ１０３で、移行先ＤＢサーバ２０のデータ出力処理部２３３が行う処理の具体例について説明する。
【００７２】
データベース制御部２３（データ出力処理部２３３）が、表Ａ２のデータを読込んで、移行先データファイルＦ２を出力する処理は、例えば、図１２に示すようなシェルスクリプトで実現できる。
【００７３】
図１２のシェルスクリプトでは、ＯＲＡＣＬＥデータベース上のコマンド「ｓｑｌｐｌｕｓ」に、「ｇｅｔ＿ａｆｔｅｒ＿ｄａｔａ．ｓｑｌ」というファイル名のＳＱＬファイルを適用することを示している。
【００７４】
図１２のシェルスクリプトでは、「ｇｅｔ＿ａｆｔｅｒ＿ｄａｔａ．ｓｑｌ」は、表Ａ２からデータを抽出するためのＳＱＬ文が記述されたＳＱＬファイルである。表Ａ２からデータを抽出するためのＳＱＬ文は、単純には、図１１に示すようなＳＥＬＥＣＴ文で構成することができる。そして、上述の図１２のシェルスクリプトに適用するＳＱＬファイル（ｇｅｔ＿ａｆｔｅｒ＿ｄａｔａ．ｓｑｌ）の内容は、例えば、図１３の内容としてもよい。
【００７５】
図１３に示すＳＱＬファイルのラインＬ４０１には、検索結果のメッセージを抑止する指定について記述されている。また、図１３に示すＳＱＬファイルのラインＬ４０２には、検索結果の行間のラベル表示を抑止する指定について記述されている。さらに、図１３に示すＳＱＬファイルのラインＬ４０３には、移行先データファイルＦ２（ｄａｔａ２．ｔｘｔ）への出力を開始する処理が記述されている。さらにまた、図１３に示すＳＱＬファイルのラインＬ４０４には、表Ａ２のカラムＣ１〜Ｃ３のデータをカラムＣ４でソートされた順序で出力（移行先データファイルＦ２に出力）する処理（ＳＥＬＥＣＴ文）について記述されている。図１３に示すＳＱＬファイルのラインＬ４０５には、移行先データファイルＦ２（ｄａｔａ２．ｔｘｔ）への出力を終了する処理が記述されている。
【００７６】
データベース制御部２３（データ出力処理部２３３）が、図１２に示すＳＱＬファイル（ｇｅｔ＿ａｆｔｅｒ＿ｄａｔａ．ｓｑｌ）を、図１２のシェルスクリプトに組み込んで実行した場合、移行先データファイルＦ２（ｄａｔａ２．ｔｘｔ）の内容は、図３に示す内容となる。図３に示す移行先データファイルＦ２（ｄａｔａ２．ｔｘｔ）では、各カラム間がスペースで区切られている。
【００７７】
移行先データファイルＦ２（ｄａｔａ２．ｔｘｔ）において、各カラムの間をカンマ（，）で区切るように記述する場合（移行先データファイルＦ２をＣＳＶファイルとした場合）、ＳＱＬファイル（ｇｅｔ＿ａｆｔｅｒ＿ｄａｔａ．ｓｑｌ）の内容は図１４のような内容となる。図１４では、ラインＬ４０４がＬ４０４Ａに置き換わっていること以外は、上述の図１３と同様の内容について示している。図１４のラインＬ４０４Ａでは、各カラムの間にカンマ（，）が入るようにＳＥＬＥＣＴ文が記述されている。
【００７８】
そして、データベース制御部２３（データ出力処理部２３３）が、図１４に示すＳＱＬファイル（ｇｅｔ＿ａｆｔｅｒ＿ｄａｔａ．ｓｑｌ）を、図１２のシェルスクリプトに組み込んで実行した場合、移行先データファイルＦ２（ｄａｔａ２．ｔｘｔ）の内容は、図１５に示す内容となる。図１５では、各カラム間がカンマ（，）で区切られた形式（ＣＳＶ形式）となっている。
【００７９】
図３、図８、図１５に示すように、移行元の表Ａ１と移行先の表Ａ２が実際に同一のデータの集合で構成されている場合、移行元ＤＢサーバ１０におけるデータ出力結果（移行元データファイルＦ１）と、移行先ＤＢサーバ２０におけるデータ出力結果（移行先データファイルＦ２）の内容は、全く同一の内容となることがわかる。
【００８０】
次に、ステップＳ１０４で、移行先ＤＢサーバ２０のデータ比較処理部２３４が行う処理の具体例について説明する。
【００８１】
データベース制御部２３（データ比較処理部２３４）は、移行元データファイルＦ１と移行先データファイルＦ２の比較処理（差分の有無を抽出する処理）を行う。データ比較処理部２３４が行う比較処理としては、種々のファイル比較処理を適用することができる。この実施形態では、データ比較処理部２３４は、ＵＮＩＸ（Ｌｉｎｕｘ）上のｄｉｆｆコマンドを用いて、移行元データファイルＦ１と移行先データファイルＦ２の比較処理（テキストデータとしての比較処理）を行う。
【００８２】
例えば、データ比較処理部２３４は、図１６に示すようなシェルスクリプトにより、移行元データファイルＦ１（ｄａｔａ１．ｔｘｔ）と移行先データファイルＦ２（ｄａｔａ２．ｔｘｔ）の比較処理を行うようにしてもよい。例えば、図１６に示すシェルスクリプトでは、ｄｉｆｆコマンド（ＵＮＩＸ上のコマンド）により、移行元データファイルＦ１と移行先データファイルＦ２との差分の抽出を試み、差分があった場合には、その差分の内容が、所定の出力先のテキストデータファイル（ｒｅｓｕｌｔ．ｔｘｔ）に出力される内容となっている。図１６に示すシェルスクリプトでは、移行元データファイルＦ１と移行先データファイルＦ２に差分が無かった場合（同一だった場合）には出力先のテキストデータファイル（ｒｅｓｕｌｔ．ｔｘｔ）にデータ（差分）が出力されない（データ量が増加しない）結果となり、移行元データファイルＦ１と移行先データファイルＦ２に差分が有った場合には出力先のテキストデータファイル（ｒｅｓｕｌｔ．ｔｘｔ）にデータ（差分）が記録される（データ量が増加する）ことになる。ユーザや他のプロセスは、ｒｅｓｕｌｔ．ｔｘｔの発生の有無や容量の変動を監視することにより、移行元データファイルＦ１と移行先データファイルＦ２の比較結果（コンペア処理の結果）を認識することができる。
【００８３】
また、ステップＳ１０４では、ｄｉｆｆコマンドにより、移行元データファイルＦ１と移行先データファイルＦ２との差分を抽出する前処理として、移行元データファイルＦ１又は移行先データファイルＦ２の一方について、他方のファイルと文字コードを統一する処理を行うことがのぞましい。例えば、移行元データファイルＦ１と移行先データファイルＦ２とで文字コード（特に全角文字の文字コード）の形式が異なる場合には、移行元データファイルＦ１の文字コードを移行先データファイルＦ２と同様の形式に変換してからｄｉｆｆコマンドを適用するようにしてもよい。
【００８４】
次に、ステップＳ１０５で、移行先ＤＢサーバ２０のカラム削除処理部２３５が行う処理の具体例について説明する。
【００８５】
移行先ＤＢサーバ２０の表Ａ２では、移行対象でない順序番号カラムＣ４が定義されているが、データのコンペア処理まで実施し、データの信頼性が確認できれば、順序番号カラムＣ４が不要のカラムとなる。そこで、移行先ＤＢサーバ２０のカラム削除処理部２３５は、データ比較処理部２３４の終了（同一性が確認された後）、図１７に示すようなＳＱＬ文の処理実行（例えば、ＯＲＡＣＬＥデータベースにより当該ＳＱＬ文を含むＳＱＬファイルを実行する処理）を行うことで、表Ａ２から順序番号カラムＣ４を削除させる処理を行う。これにより、移行前の表Ａ１と、移行先の表Ａ２は完全に一致（データベースとして一致）することになる。
【００８６】
（Ａ−３）実施形態の効果
この実施形態によれば、以下のような効果を奏することができる。
【００８７】
この実施形態では、データセットアップ制御部２３２が、移行元データファイルＦ１に基づき、移行先ＤＢサーバ２０の表Ａ２をセットアップする際、順序番号カラムＣ４（移行元データファイルＦ１から読込んだ順序番号）を付与している。また、データ出力処理部２３３が、移行先の表２Ａからデータを読出しする際、順序番号カラムＣ４を抽出ソート条件として、データを読出して移行先データファイルＦ２を出力する。これにより、データ比較処理部２３４では、移行元データファイルと移行先データファイルとがテキストデータとして同一（差分がない状態）であれば、移行元ＤＢサーバ１０のデータベース（移行元のデータベース）と、移行先ＤＢサーバ２０のデータベース（移行先のデータベース）とで全件のデータ（レコード）が同一の内容であると判断できる。また、移行元データファイルＦ１と移行先データファイルＦ２とは単なるテキストデータであるため、データ比較処理部２３４ではｄｉｆｆコマンドでこの２つのファイルを比較するだけで、簡単、且つ、高速にコンペア処理を実施し、データベースを移行する際の信頼性（表Ａ１と表Ａ２とがデータベースとして同一であることの信頼性）を確保することができる。ｄｉｆｆコマンドでテキストデータの比較を行うだけであれば、データ量が大きい場合でも高速に処理（表のデータを1件ずつ検索して全てのカラムについて比較する処理と比較して高速に処理）することができる。
【００８８】
例えば図３では、表Ａ１には、データＤ１１、Ｄ１２、Ｄ１３の順に登録されている。しいて、表Ａ２では、データＤ１１に対応するデータＤ２１、データＤ１３に対応するデータＤ２３、データＤ１２に対応するＤ２２の順で登録している。表Ａ２から単純にＳＥＬＥＣＴ文で表Ａ２のデータを読み出して移行先データファイルＦ２を生成する場合、移行先データファイルＦ２にはデータＤ２１、Ｄ２３、Ｄ２２の順序で出力されることになる。しかしながら、データ出力処理部２３３では、表Ａ２から順序番号カラムＣ４でソートした順序で読みだすため、図３に示すように移行先データファイルＦ２にはデータＤ２１、Ｄ２２、Ｄ２３の順序（移行元データファイルＦ１と同じ順序）でデータの出力が行われることになる。
【００８９】
（Ｂ）他の実施形態
本発明は、上記の実施形態に限定されるものではなく、以下に例示するような変形実施形態も挙げることができる。
【００９０】
（Ｂ−１）上記の実施形態では、移行先ＤＢサーバ２０に表Ａ２をセットアップし、コンペア処理後に順序番号カラムＣ４を削除する例について説明したが、移行先ＤＢサーバ２０の表Ａ２をコンペア処理専用として利用し、コンペア処理後に表Ａ２全部を削除又は表Ａ２を放置するようにしてもよい。
【００９１】
（Ｂ−２）上記の実施形態では、本発明のデータ処理プログラムに、データベース制御部１３（データ出力処理部１３１、データ送信部１３２）、及びデータセットアップ制御部２３２（データ受信部２３１、データセットアップ制御部２３２、データ出力処理部２３３、データ比較処理部２３４、及びカラム削除処理部２３５）が含まれるものとして説明した。しかし、本発明のデータ処理プログラムは、少なくとも、データ出力処理部１３１、データセットアップ制御部２３２、データ出力処理部２３３、及びデータ比較処理部２３４を含む構成要素（実体としてはシェルスクリプト群）で実現することが可能である。
【００９２】
また、この実施形態では、データ処理プログラムの構成要素として、データ送信部１３２とデータ受信部２３１が配置されているが、移行元データファイルＦ１をデータセットアップ制御部２３２及びデータ比較処理部２３４に引き渡す処理に支障がなければ、データ送信部１３２とデータ受信部２３１については削除（実施形態に係るデータ処理プログラムの構成要素から削除）するようにしてもよい。また、この実施形態では、データ処理プログラムの構成要素として、カラム削除処理部２３５が配置されているが、表Ａ２から順序番号カラムＣ４を削除する必要がなければ、削除（実施形態に係るデータ処理プログラムの構成要素から削除）するようにしてもよい。
【００９３】
（Ｂ−３）上記の実施形態では、移行元ＤＢサーバ１０にデータ出力処理部１３１を配置し、移行先ＤＢサーバ２０に、データセットアップ制御部２３２、データ出力処理部２３３、データ比較処理部２３４、及びカラム削除処理部２３５を配置する構成としているが、これらの構成要素（実体としてはシェルスクリプト）を配置するコンピュータは限定されないものである。例えば、データ出力処理部１３１、データセットアップ制御部２３２、データ出力処理部２３３、データ比較処理部２３４、及びカラム削除処理部２３５を全て別の端末（シェルスクリプトが実行可能なＰＣやワークステーション）に配置して実行するようにしてもよいし、構成要素ごとに異なる端末を適用するようにしてもよい。以上のように、本発明のデータベースシステム、データ処理プログラム、及びデータ処理方法において、コンペア処理の分散処理方式については限定されないものである。
【符号の説明】
【００９４】
１…ＤＢシステム、１０…ＤＢサーバ、１０…移行元ＤＢサーバ、１２…データ記憶部、１３…データベース制御部、２０…移行先ＤＢサーバ、２２…データ記憶部、２３…データベース制御部、１３１…データ出力処理部、１３２…データ送信部、２３１…データ受信部、２３２…データセットアップ制御部、２３３…データ出力処理部、２３４…データ比較処理部、２３５…カラム削除処理部、Ｆ１…移行元データファイル、Ｆ２…移行先データファイル。
【図１】
2018014036.tif 000003
【図２】
2018014036.tif 000004
【図３】
2018014036.tif 000005
【図４】
2018014036.tif 000006
【図５】
2018014036.tif 000007
【図６】
2018014036.tif 000008
【図７】
2018014036.tif 000009
【図８】
2018014036.tif 000010
【図９】
2018014036.tif 000011
【図１０】
2018014036.tif 000012
【図１１】
2018014036.tif 000013
【図１２】
2018014036.tif 000014
【図１３】
2018014036.tif 000015
【図１４】
2018014036.tif 000016
【図１５】
2018014036.tif 000017
【図１６】
2018014036.tif 000018
【図１７】
2018014036.tif 000019