JP6737039B2 - Database system, data processing program, and data processing method - Google Patents

Database system, data processing program, and data processing method Download PDF

Info

Publication number
JP6737039B2
JP6737039B2 JP2016144475A JP2016144475A JP6737039B2 JP 6737039 B2 JP6737039 B2 JP 6737039B2 JP 2016144475 A JP2016144475 A JP 2016144475A JP 2016144475 A JP2016144475 A JP 2016144475A JP 6737039 B2 JP6737039 B2 JP 6737039B2
Authority
JP
Japan
Prior art keywords
data
database
output
file
migration
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
Application number
JP2016144475A
Other languages
Japanese (ja)
Other versions
JP2018014036A (en
Inventor
阿部 哲也
哲也 阿部
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP2016144475A priority Critical patent/JP6737039B2/en
Publication of JP2018014036A publication Critical patent/JP2018014036A/en
Application granted granted Critical
Publication of JP6737039B2 publication Critical patent/JP6737039B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

この発明は、データベースシステム、データ処理プログラム、及びデータ処理方法に関し、例えば、データベースサーバ間のデータ移行が可能なデータベースシステムに適用し得る。 The present invention relates to a database system, a data processing program, and a data processing method, and can be applied to, for example, a database system capable of migrating data between database servers.

通常、データベースサーバ間でデータを移行した後、移行元のデータベースサーバと移行先のデータベースのデータとの間で、データの同一性を比較検証する処理(以下、「コンペア処理」とも呼ぶ)が行われる。従来のデータベースシステムにおいて、全件コンペア処理を実施する処理は、例えば、移行元又は移行先のデータどちらか一方を基準に他方のデータを繰り返しサーチし、同一レコード(比較対象となるレコード)を検出してコンペア処理を実施するという流れとなる。 Normally, after migrating data between database servers, the process of comparing and verifying the identity of the data between the source database server and the destination database data (hereinafter also referred to as "compare process") is performed. Be seen. In the conventional database system, the process of performing the all-compare process, for example, searches the other data repeatedly based on either the migration source data or the migration destination data, and detects the same record (record to be compared). Then, the comparison process is performed.

従来のデータベースシステムにおけるコンペア処理方法としては、例えば、特許文献1に記載された方法がある。特許文献1では、移行前と移行後のデータベース間で、全件のデータに対してコンペア処理を実施することで、移行後のデータベースの信頼性を保証し、さらに、移行前と移行後で不一致が発見された場合に調査を可能とする。 As a compare processing method in a conventional database system, for example, there is a method described in Patent Document 1. In Patent Document 1, the reliability of the database after the migration is guaranteed by performing the compare processing on all the data between the database before the migration and the database after the migration, and further there is a discrepancy before and after the migration. If it is discovered, it will be possible to investigate.

特開2008−171225号公報JP, 2008-171225, A

しかしながら、特許文献1にはコンペア処理の具体的な手続きについては開示されておらず、その処理にどの程度のリソース及び、処理時間が必要となるか不明となっている。 However, Patent Document 1 does not disclose a specific procedure of the compare process, and it is unclear how much resource and process time are required for the process.

近年、ハードウェアやDBMS等のミドルウェアのライフサイクルは短くなっており、システムの移行/再構築が必要となるケースは多く、その際のデータ移行作業は、極力短い時間で実施可能であることが要求されている。 In recent years, the life cycle of middleware such as hardware and DBMS has become shorter, and system migration/restructuring is often necessary, and data migration work in such cases can be performed in the shortest possible time. Is required.

従来のデータベースシステムにおいて、データ移行を行った後のコンペア処理方式としては、例えば、特許文献1のコンペア処理方式がある。特許文献1に記載されたコンペア処理方式では、シェルスクリプトを用いてコンペア処理を行うことについて記載されている。 In the conventional database system, as a compare processing method after data migration, for example, there is a compare processing method of Patent Document 1. The compare processing method described in Patent Document 1 describes that the compare processing is performed using a shell script.

例えば、従来の特許文献1の請求項1に記載されている「移行データファイルを移行後データベースのテーブルにセットアップ」するシェルスクリプトや、特許文献1の段落「0012」に記載されている移行前検査ファイルと移行後検査ファイルとの全件コンペア処理を行うシェルスクリプトには、以下の課題があると考えられる。 For example, a shell script that “sets up a migration data file in a post-migration database table” described in claim 1 of the conventional patent document 1 or a pre-migration inspection described in paragraph “0012” of patent document 1 It is considered that the shell script that performs all the compare processing of the file and the post-migration inspection file has the following problems.

従来のコンペア処理方式では、移行前データベースからデータを抽出する際、データが抽出される順序(物理的な順序及び論理的な順序)は、移行後のデータベースからデータが抽出される順序と同一とは限らない。DBMSは一般的にデータを登録する際、空きデータブロックに連続的にデータを登録する方式で動作するが、データブロックが格納領域の上限まで使用されているような場合は、空きブロックを探索しながらデータを登録することになる。この場合、データを検索する(例えば、「SELECT * FROM 表」というSQL文)場合、データブロックの先頭からデータレコードが取得されるが、それは登録順序とは異なることになる。 In the conventional compare processing method, when extracting data from the pre-migration database, the order in which the data is extracted (physical order and logical order) is the same as the order in which the data is extracted from the post-migration database. Not necessarily. When registering data, the DBMS generally operates by a method of continuously registering data in empty data blocks. However, when the data blocks are used up to the upper limit of the storage area, empty blocks are searched. While registering the data. In this case, when the data is searched (for example, the SQL sentence "SELECT * FROM table"), the data record is acquired from the beginning of the data block, which is different from the registration order.

したがって、従来のコンペア処理方式では、移行前又は移行後の一方のデータベースから任意のデータ(レコード)を抽出し、一方のデータベースから抽出したデータと対応するデータを他方のデータベースから検出して比較する処理を繰り返すことになる。 Therefore, in the conventional compare processing method, arbitrary data (record) is extracted from one database before or after migration, and the data corresponding to the data extracted from one database is detected from the other database and compared. The process will be repeated.

上述のような従来のコンペア処理方式では、コンペア処理対象のデータベースの全件のデータ(レコード)について、検索する処理が必要となる。すなわち、上述のような従来のコンペア処理方式では、コンペア処理対象のデータベースのデータ数(レコード数)の増加に伴い、検索処理の処理量(処理ステップや処理時間)も比例して多くなる。 In the conventional compare processing method as described above, it is necessary to perform a search process for all data (records) in the database to be compared. That is, in the conventional compare processing method as described above, the processing amount (processing step or processing time) of the search processing increases in proportion to the increase in the number of data (the number of records) in the database to be compared.

また、上述のような従来のコンペア処理方式では、コンペア処理対象のデータに主キーが設定されていない場合(データベース内でユニークなデータとなるカラムが設定されていない場合)、一方のデータベースから抽出したデータと対応するデータを他方のデータベースから検出する処理が困難となってしまう。 In addition, in the conventional compare processing method as described above, when the primary key is not set in the data to be compared (when the column that is unique data in the database is not set), it is extracted from one database. It becomes difficult to detect the data corresponding to this data from the other database.

さらに、上述のような従来のコンペア処理方式では、一方のデータベースから抽出したデータを、他方のデータベースから検出したデータと比較する際には、当該データ(レコード)の全データカラムについて比較する処理を繰り返すことになるため、多くの処理量(処理ステップや処理時間)が必要となる。すなわち、上述のような従来のコンペア処理方式では、データカラム数の増加に伴い、比較処理の処理量(処理ステップや処理時間)も比例して多くなる。 Further, in the conventional compare processing method as described above, when comparing the data extracted from one database with the data detected from the other database, a process of comparing all data columns of the data (record) is performed. Since it is repeated, a large amount of processing (processing steps and processing time) is required. That is, in the conventional compare processing method as described above, the processing amount (processing step or processing time) of the comparison processing increases proportionally as the number of data columns increases.

そのため、より少ない処理量で正確に2つのデータベースのデータを比較する処理(コンペア処理)を行うことができるデータベースシステム、データ処理プログラム、及びデータ処理方法が望まれている。 Therefore, there is a demand for a database system, a data processing program, and a data processing method that can accurately perform a process (compare process) of comparing data in two databases with a smaller processing amount.

第1の本発明のデータベースシステムは、(1)第1のデータベースから、前記第1のデータベースを構成するデータを順次読み出し、前記第1のデータベースから読み出したデータを読みだした順序で出力した第1の出力データを生成する第1のデータベース出力手段と、(2)前記第1の出力データからデータを順次読み出し、読み出した各データに順序を識別する順序識別子を付加したデータを、第2のデータベースに登録するデータ登録手段と、(3)前記第2のデータベースから、前記第2のデータベースを構成するデータを、順序識別子が示す順序で読み出し、前記第2のデータベースから読み出したデータを読みだした順序で出力した第2の出力データを生成する第2のデータベース出力手段と、(4)前記第1の出力データと前記第2の出力データとの比較結果に基づいて、前記第1のデータベースと前記第2のデータベースとを比較する処理を行うデータ比較手段とを有することを特徴とする。 The database system according to the first aspect of the present invention is: (1) The data constituting the first database is sequentially read from the first database, and the data read from the first database is output in the order of reading. A first database output means for generating one output data; and (2) data obtained by sequentially reading the data from the first output data and adding an order identifier for identifying the order to each read data, the second data. (3) Data registering means for registering in the database, and (3) the data constituting the second database is read from the second database in the order indicated by the sequence identifier, and the data read from the second database is read. Second database output means for generating second output data output in the order, and (4) the first database based on a comparison result of the first output data and the second output data. And a data comparison means for performing a process of comparing the second database with the second database.

第2の本発明のデータ処理プログラムは、コンピュータを、(1)第1のデータベースから、前記第1のデータベースを構成するデータを順次読み出し、前記第1のデータベースから読み出したデータを読みだした順序で出力した第1の出力データを生成する第1のデータベース出力手段と、(2)前記第1の出力データからデータを順次読み出し、読み出した各データに順序を識別する順序識別子を付加したデータを、第2のデータベースに登録するデータ登録手段と、(3)前記第2のデータベースから、前記第2のデータベースを構成するデータを、順序識別子が示す順序で読み出し、前記第2のデータベースから読み出したデータを読みだした順序で出力した第2の出力データを生成する第2のデータベース出力手段と、(4)前記第1の出力データと前記第2の出力データとの比較結果に基づいて、前記第1のデータベースと前記第2のデータベースとを比較する処理を行うデータ比較手段として機能させることを特徴とする。 A data processing program according to a second aspect of the present invention causes a computer to (1) sequentially read data constituting the first database from the first database and read the data read from the first database. A first database output means for generating the first output data output in step (2), and (2) sequentially reading data from the first output data, and adding data to each read data with an order identifier for identifying the order. Data registering means for registering in the second database, and (3) the data constituting the second database is read out from the second database in the order indicated by the order identifier, and read out from the second database. Second database output means for generating second output data output in the order of reading the data; (4) based on a comparison result of the first output data and the second output data, It is characterized in that it functions as data comparison means for performing a process of comparing the first database with the second database.

第3の本発明は、データベースシステムにおけるデータ処理方法において、(1)第1のデータベース出力手段、データ登録手段、第2のデータベース出力手段、及びデータ比較手段を備え、(2)前記第1のデータベース出力手段は、第1のデータベースから、前記第1のデータベースを構成するデータを順次読み出し、前記第1のデータベースから読み出したデータを読みだした順序で出力した第1の出力データを生成し、(3)前記データ登録手段は、前記第1の出力データからデータを順次読み出し、読み出した各データに順序を識別する順序識別子を付加したデータを、第2のデータベースに登録し、(4)前記第2のデータベース出力手段は、前記第2のデータベースから、前記第2のデータベースを構成するデータを、順序識別子が示す順序で読み出し、前記第2のデータベースから読み出したデータを読みだした順序で出力した第2の出力データを生成し、(5)前記データ比較手段は、前記第1の出力データと前記第2の出力データとの比較結果に基づいて、前記第1のデータベースと前記第2のデータベースとを比較する処理を行うことを特徴とする。 A third aspect of the present invention provides a data processing method in a database system, comprising (1) first database output means, data registration means, second database output means, and data comparison means, and (2) the first database output means. The database output means sequentially reads the data forming the first database from the first database, and generates the first output data that is output in the order of reading the data read from the first database, (3) The data registration unit sequentially reads the data from the first output data, and registers the read data with an order identifier for identifying the order in the second database, (4) The second database output means reads the data forming the second database from the second database in the order indicated by the order identifier, and outputs the data read from the second database in the order of reading. And (5) the data comparing means generates the second output data based on a comparison result between the first output data and the second output data. It is characterized by performing a process of comparing with a database.

本発明によれば、より少ない処理量で正確に2つのデータベースのデータを比較する処理を行うことができる。 According to the present invention, it is possible to perform a process of accurately comparing data in two databases with a smaller processing amount.

実施形態に係るデータベースシステムの機能的構成の例について示したブロック図である。It is the block diagram shown about the example of the functional composition of the database system concerning an embodiment. 実施形態に係るデータベースシステムの動作について示したフローチャートである。3 is a flowchart showing the operation of the database system according to the embodiment. 実施形態に係るデータベースシステムにおける各データの遷移について示した説明図である。It is explanatory drawing shown about the transition of each data in the database system which concerns on embodiment. 実施形態に係る移行元のデータベースサーバで、移行元データファイルの出力処理を行う際のシェルスクリプトの構成例について示した説明図である。FIG. 6 is an explanatory diagram showing a configuration example of a shell script at the time of performing an output process of a migration source data file in the migration source database server according to the embodiment. 実施形態に係る移行元のデータベースサーバで、移行元データファイルの出力処理を行う際のSQL文の例について示した説明図である。It is explanatory drawing shown about the example of the SQL sentence at the time of performing the output process of a transfer source data file in the transfer source database server which concerns on embodiment. 実施形態に係る移行元のデータベースサーバで、移行元データファイルの出力処理を行う際に適用するSQLファイルの構成例(その1)について示した説明図である。It is explanatory drawing shown about the structural example (the 1) of the SQL file applied when performing the output process of a transfer source data file in the transfer source database server which concerns on embodiment. 実施形態に係る移行元のデータベースサーバで、移行元データファイルの出力処理を行う際に適用するSQLファイルの構成例(その2)について示した説明図である。It is explanatory drawing shown about the structural example (the 2) of the SQL file applied when performing the output process of a transfer source data file in the transfer source database server which concerns on embodiment. 実施形態に係る移行元のデータベースサーバで出力された移行元データファイルの例について示した説明図である。It is explanatory drawing shown about the example of the transfer source data file output by the transfer source database server which concerns on embodiment. 実施形態に係る移行先のデータベースサーバで、データのセットアップを行う際のシェルスクリプトの構成例について示した説明図である。It is explanatory drawing shown about the structural example of the shell script at the time of performing data setup in the database server of the transfer destination which concerns on embodiment. 実施形態に係る移行先のデータベースサーバで、データのセットアップを行う際の制御ファイルの構成例について示した説明図である。It is explanatory drawing shown about the structural example of the control file at the time of performing data setup in the transfer destination database server which concerns on embodiment. 実施形態に係る移行先のデータベースサーバで、データの出力処理を行う際のSQL文の例について示した説明図である。It is explanatory drawing shown about the example of the SQL sentence at the time of performing a data output process in the database server of the transfer destination which concerns on embodiment. 実施形態に係る移行先のデータベースサーバで、移行先データファイルの出力処理を行う際のシェルスクリプトの構成例について示した説明図である。It is explanatory drawing shown about the structural example of the shell script at the time of performing the output process of a transfer destination data file in the transfer destination database server which concerns on embodiment. 実施形態に係る移行先のデータベースサーバで、移行先データファイルの出力処理を行う際に適用するSQLファイルの構成例(その1)について示した説明図である。It is explanatory drawing shown about the structural example (the 1) of the SQL file applied when performing the output processing of a transfer destination data file in the transfer destination database server which concerns on embodiment. 実施形態に係る移行先のデータベースサーバで、移行先データファイルの出力処理を行う際に適用するSQLファイルの構成例(その2)について示した説明図である。It is explanatory drawing shown about the structural example (the 2) of the SQL file applied when performing the output process of a transfer destination data file in the transfer destination database server which concerns on embodiment. 実施形態に係る移行先のデータベースサーバで出力された移行先データファイルの例について示した説明図である。It is explanatory drawing shown about the example of the transfer destination data file output by the database server of the transfer destination which concerns on embodiment. 実施形態に係る移行先のデータベースサーバでデータ比較処理が行われる際のシェルスクリプトの例について示した説明図である。It is explanatory drawing shown about the example of the shell script at the time of performing a data comparison process in the database server of the transfer destination which concerns on embodiment. 実施形態に係る移行先のデータベースサーバで順序番号カラムの削除が行われる際のSQL文の例について示した説明図である。It is explanatory drawing shown about the example of the SQL sentence at the time of deletion of a sequence number column in the transfer destination database server which concerns on embodiment.

(A)主たる実施形態
以下、本発明によるデータベースシステム、データ処理プログラム、及びデータ処理方法の一実施形態を、図面を参照しながら詳述する。
(A) Main Embodiment Hereinafter, one embodiment of a database system, a data processing program, and a data processing method according to the present invention will be described in detail with reference to the drawings.

(A−1)実施形態の構成
図1は、この実施形態のデータベース(以下、「DB」とも呼ぶ)システム1の全体構成を示すブロック図である。
(A-1) Configuration of Embodiment FIG. 1 is a block diagram showing the overall configuration of a database (hereinafter, also referred to as “DB”) system 1 of this embodiment.

DBシステム1は、2つのDBサーバ10、20を有している。また、DBサーバ10、20は、それぞれネットワークNに接続しているものとする。 The DB system 1 has two DB servers 10 and 20. The DB servers 10 and 20 are assumed to be connected to the network N, respectively.

DBサーバ10、20は、図示しないDBクライアントから与えられたトランザクションの処理を行うものである。DBサーバ10、20は、PCなどの情報処理装置(1台に限定されず、複数台を分散処理し得るようにしたものであっても良い。)上に、プログラム(実施形態に係るデータ処理プログラムやデータベースのミドルウェアを含む)をインストールすることにより構築されるものであるが、機能的には図1のように表すことができる。なお、DBサーバ10、20は同じ構成としてもよいし、一部が異なる構成としてもよい。なお、DBシステム1を構成するDBサーバ20の台数は3台以上としてもよい。 The DB servers 10 and 20 process transactions given by a DB client (not shown). The DB servers 10 and 20 are each provided on a program (data processing according to the embodiment) on an information processing device such as a PC (not limited to one, but may be one capable of performing distributed processing on a plurality of devices). It is constructed by installing programs and middleware for databases), but it can be functionally represented as shown in FIG. Note that the DB servers 10 and 20 may have the same configuration, or some of them may have different configurations. The number of DB servers 20 that make up the DB system 1 may be three or more.

この実施形態では、DBサーバ10がデータベースの移行元(移行前)となるDBサーバ(以下、「移行元DBサーバ」とも呼ぶ)であり、DBサーバ20がデータベースの移行先(移行後)となるDBサーバ(以下、「移行先DBサーバ」とも呼ぶ)であるものとして説明する。なお、DBシステム1において、データの移行元又は移行先となるDBサーバは限定されないものであり、任意の組み合わせを適用可能であるものとする。 In this embodiment, the DB server 10 is a DB server that is a database migration source (before migration) (hereinafter, also referred to as “migration source DB server”), and the DB server 20 is a database migration destination (after migration). The description will be given assuming that it is a DB server (hereinafter, also referred to as “migration destination DB server”). In the DB system 1, the DB server that is the data migration source or the data migration destination is not limited, and any combination can be applied.

次に、移行元DBサーバ10と移行先DBサーバ20の機能的な構成について説明する。図1に示すように、この実施形態では、移行元DBサーバ10と移行先DBサーバ20は、いずれも基本的な構成(大別された機能的構成)は同様なものとして図示することができる。例えば、ハードウェア更新等で、移行元DBサーバ10から移行先DBサーバ20にデータベース(データベースを構成する表)を移行する場合、通常は、移行先DBサーバ20の方が、OS、データベースミドルウェア等のソフトウェアがバージョンアップした状態となるが、基本的な構成(大別された機能的構成)としては同様の構成として図示される。 Next, the functional configurations of the migration source DB server 10 and the migration destination DB server 20 will be described. As shown in FIG. 1, in this embodiment, the migration source DB server 10 and the migration destination DB server 20 can be illustrated as having the same basic structure (functional structure roughly divided). .. For example, when a database (table forming a database) is migrated from the migration source DB server 10 to the migration destination DB server 20 due to hardware update or the like, the migration destination DB server 20 is usually the OS, database middleware, etc. The software is in a version-up state, but the basic configuration (functional structure roughly classified) is illustrated as a similar configuration.

図1に示すように、DBサーバ10、20は、大別するとDBMS11、21、データ記憶部12、22、及びデータベース制御部13、23を有している。 As shown in FIG. 1, the DB servers 10 and 20 roughly include DBMSs 11 and 21, data storage units 12 and 22, and database control units 13 and 23.

DBサーバ10、20は、いずれもPCやワークステーション等のコンピュータに、OS(ミドルウェア)をインストール及びデータベースミドルウェアをインストールすることにより構築されたプラットフォーム上で実現されているものとする。DBサーバ10、20にインストールするOSやデータベースミドルウェアについては限定されないものであるが、この実施形態の例では、UNIX(登録商標)系のOS(例えば、種々のLINUX(登録商標)系OS)とORACLE(登録商標)データベースが適用されるものとして説明する。 The DB servers 10 and 20 are both realized on a platform constructed by installing an OS (middleware) and a database middleware on a computer such as a PC or a workstation. The OS and the database middleware installed in the DB servers 10 and 20 are not limited, but in the example of this embodiment, a UNIX (registered trademark) OS (for example, various LINUX (registered trademark) OS) and It is assumed that the ORACLE (registered trademark) database is applied.

DBMS11、21は、DB管理システム(Data Base Management System)の機能を担っており、例えば、図示しないDBクライアントやデータベース制御部13、23から要求(例えば、SQL(Structured Query Language)文で記述されたトランザクション)を受け取り、データ記憶部12、22のデータベース(表)を制御するなどして処理を行うものである。DBMS11、21は、例えば、種々のデータベースシステム(データベースミドルウェア)を用いて構築することができる。移行元DBサーバ10よりも、移行先DBサーバ20の方が新しく構築されたサーバの場合、移行先DBサーバ20のDBMS21で用いられるミドルウェア(データベースミドルウェア)は、移行元DBサーバ10で用いられるものと異なる場合(例えば、新しいバージョンのデータベースミドルウェアである場合)もあり得る。 The DBMSs 11 and 21 have a function of a DB management system (Data Base Management System), and, for example, a request from a DB client or a database control unit 13 or 23 (not shown) (for example, described in SQL (Structured Query Language) statement). Transaction) and controls the databases (tables) of the data storage units 12 and 22 to perform processing. The DBMS 11 and 21 can be constructed using, for example, various database systems (database middleware). When the migration destination DB server 20 is a newly constructed server rather than the migration source DB server 10, the middleware (database middleware) used by the DBMS 21 of the migration destination DB server 20 is the one used by the migration source DB server 10. May be different (eg, a new version of database middleware).

データ記憶部12、22は、DBサーバ10、20において、データベースのデータを記憶する機能(データベース部の機能)などを担っており、例えば、DBMS11、21の制御に基づいて記憶しているデータの更新を行う。 The data storage units 12 and 22 have a function of storing database data (functions of the database unit) in the DB servers 10 and 20, and, for example, store data stored under the control of the DBMSs 11 and 21. Update.

データベース制御部13、23は、DBMS11、21(DBMS11、21のライブラリ)を用いてデータベース(例えば、データベースを構成する表)を制御する機能を担っている。特に、この実施形態では、データベース制御部13、23が、データベース移行の際のコンペア処理の制御を行うものとして説明する。 The database control units 13 and 23 have a function of controlling a database (for example, a table constituting the database) by using the DBMS 11 and 21 (library of the DBMS 11 and 21). In particular, in this embodiment, the database control units 13 and 23 will be described as controlling the compare processing at the time of database migration.

この実施形態では、データベース制御部13、23は、UNIX系OS上のシェルスクリプトを用いて構成されているものとして説明する。なお、データベース制御部13、23(データベース制御部13、23を構成する各構成要素)を実現する手段は、シェルスクリプトに限らず、任意の言語により記述されたプログラムがコンパイルされた実行可能ファイル(バイナリ形式の実行可能ファイル)であってもよい。 In this embodiment, the database control units 13 and 23 will be described as being configured by using a shell script on a UNIX OS. The means for realizing the database control units 13 and 23 (each of the constituent elements of the database control units 13 and 23) is not limited to a shell script, but an executable file in which a program described in an arbitrary language is compiled ( Executable file in binary format).

移行元DBサーバ10のデータベース制御部13には、データ出力処理部131及びデータ送信部132が含まれている。 The database control unit 13 of the migration source DB server 10 includes a data output processing unit 131 and a data transmission unit 132.

データ出力処理部131は、DBMS11を制御して、DBMS11(データ記憶部12)上にセットアップされたデータベース(データベースを構成する表)の各データ(レコード)を読み出して、文字列データに変換して出力(例えば、テキストデータのファイルとして出力)する処理を行う。以下では、データ出力処理部131が出力するテキストデータのファイルを「移行元データファイル」と呼ぶものとする。データ出力処理部131は、例えば、特許文献1と同様の方式により移行元データファイルを出力する処理を行うようにしてもよい。 The data output processing unit 131 controls the DBMS 11 to read out each data (record) of the database (table constituting the database) set up on the DBMS 11 (data storage unit 12) and convert it to character string data. A process of outputting (for example, outputting as a file of text data) is performed. Hereinafter, a file of text data output by the data output processing unit 131 will be referred to as a “migration source data file”. The data output processing unit 131 may perform a process of outputting the migration source data file, for example, by a method similar to that of Patent Document 1.

データ送信部132は、データ出力処理部131が出力した移行元データファイルを、移行先DBサーバ20側に送信(供給)する処理を行う。移行元DBサーバ10から移行先DBサーバ20に移行元データファイルを送信する手順や方式については限定されないものであり、例えば、FTP(File Transfer Protocol)や種々のネットワークファイルシステムを用いたファイルコピーにより実現するようにしてもよい。なお、データ出力処理部131が移行元データファイルを、直接移行先DBサーバ20に引き渡す処理を行う場合(例えば、移行先DBサーバ20のデータ記憶部22に書込む処理まで実行する場合)には、データ送信部132及び後述するデータ受信部231の構成は省略するようにしてもよい。 The data transmission unit 132 performs a process of transmitting (supplying) the migration source data file output by the data output processing unit 131 to the migration destination DB server 20 side. The procedure and method of transmitting the migration source data file from the migration source DB server 10 to the migration destination DB server 20 are not limited, and for example, by file copy using FTP (File Transfer Protocol) or various network file systems. It may be realized. In the case where the data output processing unit 131 performs a process of directly delivering the migration source data file to the migration destination DB server 20 (for example, when performing the process of writing to the data storage unit 22 of the migration destination DB server 20). The configurations of the data transmitting unit 132 and the data receiving unit 231 described later may be omitted.

移行先DBサーバ20のデータベース制御部23には、データ受信部231、データセットアップ制御部232、データ出力処理部233、データ比較処理部234、及びカラム削除処理部235を有している。 The database control unit 23 of the migration destination DB server 20 includes a data reception unit 231, a data setup control unit 232, a data output processing unit 233, a data comparison processing unit 234, and a column deletion processing unit 235.

データ受信部231は、移行元DBサーバ10のデータ送信部132が送信した移行元データファイルを受信する処理を行う。データ受信部231により受信された移行元データファイルは、データセットアップ制御部232及びデータ比較処理部234に引き渡される。なお、移行元DBサーバ10のデータ出力処理部131が移行元データファイルを、直接データセットアップ制御部232及びデータ比較処理部234に引き渡す処理を行う場合(例えば、移行先DBサーバ20のデータ記憶部22に書込む処理まで実行する場合)には、データ受信部231の構成は省略するようにしてもよい。 The data reception unit 231 performs a process of receiving the migration source data file transmitted by the data transmission unit 132 of the migration source DB server 10. The migration source data file received by the data receiving unit 231 is delivered to the data setup control unit 232 and the data comparison processing unit 234. In addition, when the data output processing unit 131 of the migration source DB server 10 performs a process of directly delivering the migration source data file to the data setup control unit 232 and the data comparison processing unit 234 (for example, the data storage unit of the migration destination DB server 20). The configuration of the data receiving unit 231 may be omitted when the processing up to writing to 22 is executed).

データセットアップ制御部232は、DBMS21を制御して、供給された移行元データファイルに基づくデータベース(データベースを構成する表)を、セットアップさせる処理(データ記憶部12上に表を生成して各データを登録させる処理)を行う。 The data setup control unit 232 controls the DBMS 21 to set up a database (table that constitutes the database) based on the supplied migration source data file (creates a table on the data storage unit 12 and stores each data). Process to register).

このとき、データセットアップ制御部232は、移行元データファイル(テキストファイル)の先頭のデータ(レコード)から順に読み込んでDBMS21にセットアップ(登録)させる処理を行う。また、データセットアップ制御部232は、DBMS21に、データのセットアップを(登録)させる際に当該データの処理順序(すなわち、移行元データファイルにおいてデータが記述された順序)を示す順序番号(順序識別子)のカラム(以下、「順序番号カラム」とも呼ぶ)を追加させる処理を行う。この実施形態では、最初にセットアップされたデータ(移行元データファイルの先頭のデータ)の順序番号カラムの値を「1」とし、以後昇順に通し番号(シーケンス番号)が設定されるものとして説明する。 At this time, the data setup control unit 232 performs a process of sequentially reading from the top data (record) of the migration source data file (text file) and causing the DBMS 21 to set up (register). Further, the data setup control unit 232, when causing the DBMS 21 to (register) the setup of data, is a sequence number (sequence identifier) indicating the processing sequence of the data (that is, the sequence in which the data is described in the migration source data file). Column (hereinafter, also referred to as “sequence number column”) is added. In this embodiment, it is assumed that the value of the sequence number column of the initially set up data (the first data of the migration source data file) is "1", and thereafter the serial number (sequence number) is set in ascending order.

データ出力処理部233は、DBMS21(データ記憶部22)上に展開(セットアップ)されたデータベース(表)の各データ(レコード)を読み出して、文字列データに変換して出力(テキストデータファイルとして出力)する処理を行う。以下では、データ出力処理部233が出力するテキストデータのファイルを「移行先データファイル」と呼ぶものとする。このとき、データ出力処理部233は、データベース上から、順序番号カラムに示される順序でデータ(レコード)の読出しを行い、順序番号カラムを除外したデータ(順序番号カラム以外のカラムのデータ)を取得して、移行先データファイルに出力する処理を行う。すなわち、データ出力処理部233は、順序番号カラムに示される順序でデータの読み込み及び出力を行うことで、移行元データファイルと同じ順序で移行先データファイルへのデータ出力を行うことができる。データ出力処理部233は、順序番号カラムに示される順序でデータの読み込み及び出力を行うこと以外については、例えば、特許文献1と同様の処理により移行元データファイルの出力処理を行うことができる。 The data output processing unit 233 reads out each data (record) of the database (table) expanded (set up) on the DBMS 21 (data storage unit 22), converts it to character string data, and outputs (outputs as a text data file). ) Is performed. Hereinafter, a file of text data output by the data output processing unit 233 will be referred to as a “migration destination data file”. At this time, the data output processing unit 233 reads out the data (records) from the database in the order indicated by the sequence number column, and obtains the data excluding the sequence number column (data of columns other than the sequence number column). Then, the process of outputting to the migration destination data file is performed. That is, the data output processing unit 233 can output data to the migration destination data file in the same order as the migration source data file by reading and outputting the data in the order indicated by the sequence number column. The data output processing unit 233 can perform the output process of the migration source data file, for example, by the same process as in Patent Document 1, except that the data is read and output in the order shown in the order number column.

データ比較処理部234は、移行元データファイルと移行先データファイルの同一性を比較(テキストデータとしての同一性を比較)する処理を行う。言い換えると、データ比較処理部234は、移行元データファイルと移行先データファイルの同一性を比較結果に基づいて、移行元DBサーバ10のデータベース(移行元のデータベース)と、移行先DBサーバ20のデータベース(移行先のデータベース)との同一性を判断する。データ比較処理部234では、移行元データファイルと移行先データファイルを一行ずつ比較する処理を行うようにしてもよいが、diffコマンド等のUNIX上のコマンド処理により移行元データファイルと移行先データファイルのテキストファイルとしての同一性を比較するようにしてもよい。スクリプト等により、移行元データファイルと移行先データファイルのデータを一行ずつ比較する処理を行うようにしてもよいが、diffコマンドを用いたファイル全体の比較処理の方が高速に処理を行うことが可能となる。 The data comparison processing unit 234 performs a process of comparing the sameness between the migration source data file and the migration destination data file (comparing the sameness as text data). In other words, the data comparison processing unit 234 compares the database of the migration source DB server 10 (the migration source database) and the migration destination DB server 20 based on the comparison result of the identity of the migration source data file and the migration destination data file. Determine the identity with the database (destination database). The data comparison processing unit 234 may perform a process of comparing the migration source data file and the migration destination data file line by line, but the migration source data file and the migration destination data file are processed by UNIX command processing such as the diff command. You may make it compare the identity as a text file of. A script or the like may be used to compare the data of the migration source data file and the data of the migration destination data file line by line, but the comparison process of the entire file using the diff command may be performed at a higher speed. It will be possible.

データ比較処理部234では、移行元データファイルと移行先データファイルとがテキストデータとして同一(差分がない状態)であれば、移行元DBサーバ10のデータベース(移行元のデータベース)と、移行先DBサーバ20のデータベース(移行先のデータベース)とで全件のデータ(レコード)が同一の内容であると判断できる。 In the data comparison processing unit 234, if the migration source data file and the migration destination data file are the same as the text data (there is no difference), the database of the migration source DB server 10 (the migration source database) and the migration destination DB It can be determined that the data (records) of all the cases have the same content in the database of the server 20 (database of the migration destination).

(A−2)実施形態の動作
次に、以上のような構成を有するDBシステム1の動作(実施形態のデータ処理方法)を説明する。
(A-2) Operation of Embodiment Next, an operation (data processing method of the embodiment) of the DB system 1 having the above configuration will be described.

図2は、DBシステム1(移行元DBサーバ10、移行先DBサーバ20)においてデータベースの移行に伴ってコンペア処理を行う際の動作概要について示したフローチャートである。図3は、図2のフローチャートに従ってDBシステム1(移行元DBサーバ10、移行先DBサーバ20)が動作した場合の各データの遷移について示した説明図である。図2、図3では、移行元DBサーバ10で保持されている表A1のデータベースを、移行先DBサーバ20に移行して表A2をセットアップし、表A1と表A2のコンペア処理を行う際の動作について示している。 FIG. 2 is a flowchart showing an outline of the operation of the DB system 1 (the migration source DB server 10 and the migration destination DB server 20) when performing the compare processing accompanying the database migration. FIG. 3 is an explanatory diagram showing transition of each data when the DB system 1 (migration source DB server 10, migration destination DB server 20) operates according to the flowchart of FIG. In FIGS. 2 and 3, the database of table A1 held in the migration source DB server 10 is migrated to the migration destination DB server 20 to set up table A2, and the compare processing of table A1 and table A2 is performed. It shows the operation.

まず、移行先DBサーバ20のデータ出力処理部131が、DBMS11を制御して、DBMS11(データ記憶部12)上にセットアップ(登録)された表A1のデータベースの各データ(レコード)を読み出して、文字列データに変換し、移行元データファイルF1として出力する処理を行ったものとする(S101)。なお、データ出力処理部131が、表A1のデータを読み出す際の順序については限定されないものである。ここでは、表A1には主キーが設定されておらず、データ出力処理部131は、特に表A1から読み出すデータの順序については指定せずに(ソート条件を指定せずに)、表A1の全てのデータについて読出しを行ったものとして説明する。なお、DBMS11では、特に順序を指定せずに表A1のデータ全件について読出しが要求された場合、データ記憶部22上で表A1の各データが登録されている物理的な順序(物理アドレスに基づく順序)で読みだすようにしてもよい。また、表A1に主キーが設定されている場合には、データ出力処理部131は、当該主キーに基づいてデータの読出しを行うようにしてもよい。そして、ここでは、移行元DBサーバ10のデータ送信部132が、移行元データファイルF1を移行先DBサーバ20に送信し、移行先DBサーバ20のデータ受信部231で受信されたものとする。そして、データ受信部231により受信された移行元データファイルF1は、データ記憶部22に記憶されデータセットアップ制御部232及びデータ比較処理部234に引き渡される。 First, the data output processing unit 131 of the migration destination DB server 20 controls the DBMS 11 to read each data (record) of the database of Table A1 set up (registered) on the DBMS 11 (data storage unit 12), It is assumed that the process of converting the data into character string data and outputting it as the transfer source data file F1 is performed (S101). The order in which the data output processing unit 131 reads the data of the table A1 is not limited. Here, the primary key is not set in the table A1, and the data output processing unit 131 does not particularly specify the order of the data read from the table A1 (without specifying the sort condition), and It is assumed that all data has been read. Note that in the DBMS 11, when reading is requested for all the data items in the table A1 without particularly specifying the order, the physical order in which the respective data items in the table A1 are registered in the data storage unit 22 (in the physical address You may make it read out in the order based. Further, when the primary key is set in the table A1, the data output processing unit 131 may read the data based on the primary key. Then, here, it is assumed that the data transmitting unit 132 of the migration source DB server 10 transmits the migration source data file F1 to the migration destination DB server 20 and the data receiving unit 231 of the migration destination DB server 20 receives the data file F1. Then, the migration source data file F1 received by the data receiving unit 231 is stored in the data storage unit 22 and delivered to the data setup control unit 232 and the data comparison processing unit 234.

ここでは、図3に示すように、移行元DBサーバ10の表A1の各データ(レコード)は、3つのカラムC1〜C3により構成されているものとする。図3に示すように、表A1の先頭に配置されたデータD11(データ出力処理部131が出力する際に最初に読み出されるデータ)の内容は、「カラムC1:AAA、カラムC2:000、カラムC3:あいう」となっている。また、図3に示すように、表A1の先頭から2番目に配置されたデータD12(表A1から2番目に読み出されるデータ)は、「カラムC1:XXX、カラムC2:456、カラムC3:かきく」となっている。さらに、図3に示すように、表A1で先頭から3番目に配置されたD13(表A1から3番目に読み出されるデータ)は、「カラムC1:123、カラムC2:*+−、カラムC3:abc」となっている。 Here, as shown in FIG. 3, it is assumed that each data (record) in the table A1 of the migration source DB server 10 is composed of three columns C1 to C3. As shown in FIG. 3, the content of the data D11 (the data read first when the data output processing unit 131 outputs) arranged at the head of the table A1 is “column C1: AAA, column C2,000, column C2: "C3: I say". Further, as shown in FIG. 3, the data D12 (the data read second from the table A1) arranged second from the top of the table A1 is “column C1:XXX, column C2:456, column C3: "Kiku". Further, as shown in FIG. 3, D13 arranged at the third position from the beginning in the table A1 (data read out from the third position from the table A1) is “column C1:123, column C2:*+−, column C3: "abc".

また、図3に示すように、移行元データファイルF1(ファイル名:data1.txt)では、表A1を構成する各データがそれぞれ1行で記述されており、各行では各カラムの間にスペースを空けた形式で記述されている。言い換えると、図3に示す移行元データファイルF1では、各データ(各レコード)の間が改行(改行コード)で区切られており、各行の各カラムの間がスペース(スペースのコード)で区切られた記述形式となっている。例えば、移行元データファイルF1において、データD11は「AAA 000 あいう」となっている。なお、移行元データファイルF1において、各データや各カラムを区切るコードの種類は限定されないものであり、例えば、各カラム間をカンマ(,)で区切る形式(いわゆるCSV(Comma−Separated Values)形式)やタブ(タブのコード)で区切る形式としてもよい。 Further, as shown in FIG. 3, in the migration source data file F1 (file name: data1.txt), each data forming the table A1 is described in one line, and a space is provided between each column in each line. It is written in an open format. In other words, in the migration source data file F1 shown in FIG. 3, each data (each record) is separated by a line feed (line feed code), and each column of each line is separated by a space (space code). The description format is as follows. For example, in the migration source data file F1, the data D11 is "AAA 000". In the migration source data file F1, the type of code that separates each data and each column is not limited, and for example, a format that separates each column with a comma (,) (so-called CSV (Comma-Separated Values) format) Alternatively, the format may be separated by a tab or tab (tab code).

次に、移行先DBサーバ20のデータセットアップ制御部232が、DBMS21を制御して、供給された移行元データファイルF1に基づいて「表A2」をセットアップする処理(データベースの登録処理)を実行させる(S102)。 Next, the data setup control unit 232 of the migration destination DB server 20 controls the DBMS 21 to execute the process (database registration process) of setting up the “table A2” based on the migration source data file F1 supplied. (S102).

このときデータセットアップ制御部232は、移行元データファイルF1の先頭のデータD11から順に読み込み、DBMS21を用いて表A2にセットアップさせる処理を行う。また、データセットアップ制御部232は、表A2に順序番号カラムC4を追加するようにDBMS21を制御し、各データの順序番号カラムC4に当該データの処理順序の番号(移行元データファイルF1における当該データの先頭からの配置順序の番号)を入力する。図2では、表A1のデータD11〜D13が、それぞれ、表A2のデータD21〜D23に対応するものとして図示している。また、図2に示すように、表A2のデータD21〜D23には、順序番号カラムC4が付加されている。データD21〜D23の順序番号カラムC4の値(番号)はそれぞれ1〜3となっている。 At this time, the data setup control unit 232 sequentially reads the data D11 at the beginning of the migration source data file F1 and performs a process of setting up the table A2 using the DBMS 21. Further, the data setup control unit 232 controls the DBMS 21 to add the sequence number column C4 to the table A2, and the sequence number column C4 of each data indicates the processing sequence number of the data (the relevant data in the migration source data file F1. Enter the layout order number from the beginning). In FIG. 2, the data D11 to D13 in the table A1 are illustrated as corresponding to the data D21 to D23 in the table A2, respectively. Further, as shown in FIG. 2, a sequence number column C4 is added to the data D21 to D23 of the table A2. The values (numbers) in the sequence number column C4 of the data D21 to D23 are 1 to 3, respectively.

次に、移行先DBサーバ20のデータ出力処理部233が、表A2のデータベースの各データ(レコード)を読み出して、DBMS21を制御して、表A2の各データ(レコード)を、文字列データに変換し、移行先データファイルF2として出力する処理を行う(S103)。このとき、データ出力処理部233は、表A2のデータベースから、順序番号カラムC4に示される順序でデータ(順序番号カラムC4を除外したカラムのデータ)の読出しを行い、移行先データファイルF2に出力する処理を行う。 Next, the data output processing unit 233 of the migration destination DB server 20 reads each data (record) of the database of Table A2 and controls the DBMS 21 to convert each data (record) of Table A2 into character string data. A process of converting and outputting as the transfer destination data file F2 is performed (S103). At this time, the data output processing unit 233 reads the data (the data of the column excluding the sequence number column C4) from the database of the table A2 in the order shown in the sequence number column C4, and outputs it to the migration destination data file F2. Perform processing to

次に、データ比較処理部234は、移行元データファイルと移行先データファイルの同一性を比較(テキストデータとしての同一性を比較)する処理を行う(S104)。 Next, the data comparison processing unit 234 performs a process of comparing the sameness between the migration source data file and the migration destination data file (comparing the sameness as text data) (S104).

次に、カラム削除処理部235は、DBMS21を制御して、表A2から順序番号カラムC4を除去する処理を行い(S105)、本フローチャートの処理を終了する。 Next, the column deletion processing unit 235 controls the DBMS 21 to perform processing of removing the sequence number column C4 from the table A2 (S105), and ends the processing of this flowchart.

次に、上述のステップS101〜S105のそれぞれの処理の詳細について説明する。 Next, details of each of the above-described steps S101 to S105 will be described.

まず、ステップS101で、移行元DBサーバ10のデータ出力処理部131が行う処理の具体例について説明する。 First, a specific example of the processing performed by the data output processing unit 131 of the migration source DB server 10 in step S101 will be described.

移行元DBサーバ10の表A1からデータを抽出し移行元データファイルF1に出力する手順としては種々の手順(例えば、特許文献1の手順)を適用することができる。 As a procedure for extracting data from the table A1 of the migration source DB server 10 and outputting it to the migration source data file F1, various procedures (for example, the procedure of Patent Document 1) can be applied.

データ出力処理部131は、表A1のデータ(レコード)を順次読込んで、読込んだ順序で移行元データファイルF1に出力する処理を行う。データ出力処理部131が行う処理は、例えば、図4に示すようなシェルスクリプトで実現することができる。 The data output processing unit 131 performs a process of sequentially reading the data (records) in the table A1 and outputting the data (records) to the migration source data file F1 in the order of reading. The processing performed by the data output processing unit 131 can be realized by a shell script as shown in FIG. 4, for example.

図4に示すシェルスクリプトでは、ORACLEデータベース上のコマンド「sqlplus」に、「get_data.sql」というファイル名のSQLファイルを適用している。なお、図4に示すシェルスクリプトにおける「ユーザ/パスワード」には、sqlplusコマンドを実行可能なユーザID及びパスワードが入力されることを示している。これは、以下に示すシェルスクリプトでも同様である。 In the shell script shown in FIG. 4, the SQL file having the file name “get_data.sql” is applied to the command “sqplus” on the ORACLE database. It should be noted that the "user/password" in the shell script shown in FIG. 4 indicates that the user ID and password capable of executing the sqplus command are input. This also applies to the shell script shown below.

表A1からデータを抽出(特に順序を指定せずに抽出)するためのSQL文は、単純には、図5に示すようなSELECT文を用いて実現することができる。そして、上述の図4のシェルスクリプトに適用するSQLファイル(get_data.sql)の内容としては、例えば、図6に示す内容のSQL文を適用することができる。 The SQL statement for extracting the data from the table A1 (extracting without specifying the order) can be simply realized by using the SELECT statement as shown in FIG. Then, as the content of the SQL file (get_data.sql) applied to the above-mentioned shell script of FIG. 4, for example, the SQL statement having the content shown in FIG. 6 can be applied.

図6に示すSQLファイルのラインL101には、検索結果のメッセージを抑止する指定が記述されている。また、図6に示すSQLファイルのラインL102には、検索結果の行間のラベル表示を抑止する指定が記述されている。さらに、図6に示すSQLファイルのラインL103には、移行元データファイルF1(data1.txt)への出力を開始する処理が記述されている。さらにまた、図6に示すSQLファイルのラインL104には、表Aから全てのカラムのデータを出力(移行元データファイルF1に出力)する処理(SELECT文)が記述されている。また、図6に示すSQLファイルのラインL105には、移行元データファイルF1(data1.txt)への出力を終了する処理が記述されている。 The line L101 of the SQL file shown in FIG. 6 describes the specification to suppress the message of the search result. Further, in the line L102 of the SQL file shown in FIG. 6, a designation for suppressing the label display between the search result lines is described. Further, a line L103 of the SQL file shown in FIG. 6 describes a process of starting output to the migration source data file F1 (data1.txt). Furthermore, in the line L104 of the SQL file shown in FIG. 6, a process (SELECT statement) for outputting the data of all columns from the table A (outputting to the migration source data file F1) is described. Further, the line L105 of the SQL file shown in FIG. 6 describes a process of ending the output to the migration source data file F1 (data1.txt).

データベース制御部13(データ出力処理部131)が、図6に示すSQLファイル(get_data.sql)を、図4のシェルスクリプトに組み込んで実行した場合、移行元データファイルF1(data1.txt)の内容は、図3に示す内容となる。図3では、各カラム間がスペースで区切られている。 When the database control unit 13 (data output processing unit 131) incorporates the SQL file (get_data.sql) shown in FIG. 6 into the shell script of FIG. 4 and executes it, the contents of the migration source data file F1 (data1.txt) Has the content shown in FIG. In FIG. 3, each column is separated by a space.

移行元データファイルF1(data1.txt)において、各カラムの間をカンマ(,)で区切るように記述する場合(移行元データファイルF1をCSVファイルとした場合)、SQLファイル(get_data.sql)の内容は図7のような内容となる。図7では、ラインL104がラインL104Aに置き換わっていること以外は、上述の図6と同様の内容となっている。図7のラインL104Aでは、各カラムの間にカンマ(,)が入るようにSELECT文が記述されている。 In the migration source data file F1 (data1.txt), when description is made such that each column is separated by a comma (,) (when the migration source data file F1 is a CSV file), the SQL file (get_data.sql) is The contents are as shown in FIG. In FIG. 7, the content is the same as that in FIG. 6 described above except that the line L104 is replaced with the line L104A. In line L104A of FIG. 7, the SELECT statement is described such that a comma (,) is inserted between each column.

そして、データベース制御部13(データ出力処理部131)が、図7に示すSQLファイル(get_data.sql)を、図4のシェルスクリプトに組み込んで実行した場合、移行元データファイルF1(data1.txt)の内容は、図8に示す内容となる。図8では、各カラム間がスペースで区切られた形式(CSV形式)となっている。 Then, when the database control unit 13 (data output processing unit 131) incorporates the SQL file (get_data.sql) shown in FIG. 7 into the shell script of FIG. 4 and executes it, the migration source data file F1 (data1.txt). 8 has the content shown in FIG. In FIG. 8, the columns are separated by spaces (CSV format).

次に、ステップS102で、移行先DBサーバ20のデータセットアップ制御部232が行う処理の具体例について説明する。 Next, a specific example of the processing performed by the data setup control unit 232 of the migration destination DB server 20 in step S102 will be described.

データセットアップ制御部232が、移行元データファイルF1に基づいてデータセットアップを行う処理は、例えば、図9に示すようなシェルスクリプトで実現できる。 The process in which the data setup control unit 232 performs data setup based on the migration source data file F1 can be realized by a shell script as shown in FIG. 9, for example.

図9に示すシェルスクリプトでは、ORACLEデータベースのコマンド「sqlldr」を用いて、移行元データファイルF1(data1.txt)に基づく表A2(データベース)のセットアップを実行する例について示している。ORACLEデータベースでは、ファイルからデータを一括読み込みするためのコマンドとして「sqlldr」が実装されおり、このコマンドにより、簡単、且つ、高速にデータセットアップが可能となる。 The shell script shown in FIG. 9 shows an example of executing the setup of the table A2 (database) based on the migration source data file F1 (data1.txt) by using the command “sqlldr” of the ORACLE database. In the ORACLE database, "sqlldr" is installed as a command for batch reading of data from a file, and this command enables simple and high-speed data setup.

sqlldrコマンドを起動する際には、制御ファイルを引き渡す必要があるため、図9の例では、コマンド「sqlldr」に、「load.ctl」という名前の制御ファイルを適用する例について示している。 Since the control file needs to be handed over when the sqlldr command is activated, the example of FIG. 9 shows an example in which the control file named “load.ctl” is applied to the command “sqlldr”.

この実施形態では、制御ファイル「load.ctl」の内容は、図10に示すような内容を適用することができる。 In this embodiment, the content as shown in FIG. 10 can be applied to the content of the control file “load.ctl”.

図10の制御ファイルは、供給されたデータ(CSV形式の移行元データファイルF1のデータ)を表A2にセットアップする内容となっている。 The control file of FIG. 10 has the contents of setting up the supplied data (data of the migration source data file F1 in CSV format) in the table A2.

図10の制御ファイル「load.ctl」では、ラインL301で、移行後のデータベースとして表A2を指定している。また、図10の制御ファイル「load.ctl」では、ラインL302で読込データ(移行元データファイルF1のデータ)における各カラムがカンマ(,)で区切られた形式(CSV形式)であることを指定している。さらに、図10の制御ファイル「load.ctl」では、ラインL303で、移行後の表A2に、カラムC1〜C3(移行元データファイルF1のカラム)に加え、順序番号カラムC4を設定し、順序番号カラムC4にSEQUENCE(COUNT)を設定している。これにより、sqlldrコマンドでは、移行元のデータ(移行元データファイルF1)を先頭行から読み込んだ順に、順序番号カラムC4(1,2,3、…)を付与(処理順序に相当するシーケンス番号を付与)して、移行先の表A2に反映することができる。 In the control file “load.ctl” in FIG. 10, the line L301 specifies the table A2 as the database after migration. In the control file "load.ctl" of FIG. 10, the line L302 specifies that each column in the read data (data of the migration source data file F1) is in a format (CSV format) separated by commas (,). doing. Further, in the control file “load.ctl” of FIG. 10, in line L303, in addition to the columns C1 to C3 (columns of the migration source data file F1), the sequence number column C4 is set in the table A2 after migration, SEQUENCE (COUNT) is set in the number column C4. As a result, in the sqlldr command, the sequence number column C4 (1, 2, 3,...) Is added in the order in which the data of the migration source (migration source data file F1) is read from the first row (sequence numbers corresponding to the processing sequence are assigned. (Granted) and reflected in the table A2 of the transfer destination.

移行先DBサーバ20にセットアップされる表A2には、順序番号カラムC4が定義されているが、これは、移行元データファイルF1(移行元のデータベースの表A)には無いカラムである。 A sequence number column C4 is defined in the table A2 set up in the migration destination DB server 20, but this is a column that is not included in the migration source data file F1 (table A of the migration source database).

これにより、移行先DBサーバ20の表A2では、この順序番号カラムC4を、検索や読み出しのソートキー(ソート条件)として利用することができる。例えば、移行先DBサーバ20では、SELECT文等で、表A2の読み出しを行う際に、SQLの「ORDER BY」句を用いることで、データ検索の出力順序を指定することができる。例えば、図11に示すように、表A2をSELECT文で読み出す際に、「ORDER BY カラムC4」と記述することにより、順序番号カラムC4をソートキー(ソート条件)とした読み出しを行うことができる。 As a result, in the table A2 of the migration destination DB server 20, this sequence number column C4 can be used as a sort key (sort condition) for searching or reading. For example, the migration destination DB server 20 can specify the output order of the data search by using the SQL “ORDER BY” clause when reading the table A2 in the SELECT statement or the like. For example, as shown in FIG. 11, when the table A2 is read by the SELECT statement, by writing "ORDER BY column C4", it is possible to read using the sequence number column C4 as a sort key (sort condition).

次に、ステップS103で、移行先DBサーバ20のデータ出力処理部233が行う処理の具体例について説明する。 Next, a specific example of the processing performed by the data output processing unit 233 of the migration destination DB server 20 in step S103 will be described.

データベース制御部23(データ出力処理部233)が、表A2のデータを読込んで、移行先データファイルF2を出力する処理は、例えば、図12に示すようなシェルスクリプトで実現できる。 The process in which the database control unit 23 (data output processing unit 233) reads the data in the table A2 and outputs the migration destination data file F2 can be realized by a shell script as shown in FIG. 12, for example.

図12のシェルスクリプトでは、ORACLEデータベース上のコマンド「sqlplus」に、「get_after_data.sql」というファイル名のSQLファイルを適用することを示している。 The shell script shown in FIG. 12 indicates that the SQL file having the file name “get_after_data.sql” is applied to the command “sqplus” on the ORACLE database.

図12のシェルスクリプトでは、「get_after_data.sql」は、表A2からデータを抽出するためのSQL文が記述されたSQLファイルである。表A2からデータを抽出するためのSQL文は、単純には、図11に示すようなSELECT文で構成することができる。そして、上述の図12のシェルスクリプトに適用するSQLファイル(get_after_data.sql)の内容は、例えば、図13の内容としてもよい。 In the shell script of FIG. 12, “get_after_data.sql” is an SQL file in which an SQL statement for extracting data from the table A2 is described. The SQL statement for extracting the data from the table A2 can be simply composed of the SELECT statement as shown in FIG. The content of the SQL file (get_after_data.sql) applied to the shell script of FIG. 12 described above may be the content of FIG. 13, for example.

図13に示すSQLファイルのラインL401には、検索結果のメッセージを抑止する指定について記述されている。また、図13に示すSQLファイルのラインL402には、検索結果の行間のラベル表示を抑止する指定について記述されている。さらに、図13に示すSQLファイルのラインL403には、移行先データファイルF2(data2.txt)への出力を開始する処理が記述されている。さらにまた、図13に示すSQLファイルのラインL404には、表A2のカラムC1〜C3のデータをカラムC4でソートされた順序で出力(移行先データファイルF2に出力)する処理(SELECT文)について記述されている。図13に示すSQLファイルのラインL405には、移行先データファイルF2(data2.txt)への出力を終了する処理が記述されている。 The line L401 of the SQL file shown in FIG. 13 describes the designation of suppressing the message of the search result. Line L402 of the SQL file shown in FIG. 13 describes the designation of suppressing the label display between the search result lines. Further, a line L403 of the SQL file shown in FIG. 13 describes a process of starting output to the migration destination data file F2 (data2.txt). Furthermore, regarding the line L404 of the SQL file shown in FIG. 13, regarding the processing (SELECT statement) of outputting the data of the columns C1 to C3 of the table A2 in the order sorted by the column C4 (outputting to the migration destination data file F2). is described. Line L405 of the SQL file shown in FIG. 13 describes a process of ending the output to the migration destination data file F2 (data2.txt).

データベース制御部23(データ出力処理部233)が、図12に示すSQLファイル(get_after_data.sql)を、図12のシェルスクリプトに組み込んで実行した場合、移行先データファイルF2(data2.txt)の内容は、図3に示す内容となる。図3に示す移行先データファイルF2(data2.txt)では、各カラム間がスペースで区切られている。 When the database control unit 23 (data output processing unit 233) incorporates the SQL file (get_after_data.sql) shown in FIG. 12 into the shell script of FIG. 12 and executes it, the contents of the migration destination data file F2 (data2.txt) Has the content shown in FIG. In the migration destination data file F2 (data2.txt) shown in FIG. 3, each column is separated by a space.

移行先データファイルF2(data2.txt)において、各カラムの間をカンマ(,)で区切るように記述する場合(移行先データファイルF2をCSVファイルとした場合)、SQLファイル(get_after_data.sql)の内容は図14のような内容となる。図14では、ラインL404がL404Aに置き換わっていること以外は、上述の図13と同様の内容について示している。図14のラインL404Aでは、各カラムの間にカンマ(,)が入るようにSELECT文が記述されている。 In the migration destination data file F2 (data2.txt), when description is made so that each column is separated by a comma (,) (when the migration destination data file F2 is a CSV file), the SQL file (get_after_data.sql) is The contents are as shown in FIG. FIG. 14 shows the same contents as in FIG. 13 described above except that the line L404 is replaced with L404A. In line L404A of FIG. 14, the SELECT statement is described such that a comma (,) is inserted between each column.

そして、データベース制御部23(データ出力処理部233)が、図14に示すSQLファイル(get_after_data.sql)を、図12のシェルスクリプトに組み込んで実行した場合、移行先データファイルF2(data2.txt)の内容は、図15に示す内容となる。図15では、各カラム間がカンマ(,)で区切られた形式(CSV形式)となっている。 When the database control unit 23 (data output processing unit 233) incorporates the SQL file (get_after_data.sql) shown in FIG. 14 into the shell script shown in FIG. 12 and executes the migration destination data file F2 (data2.txt). The contents of are as shown in FIG. In FIG. 15, columns are separated by commas (,) (CSV format).

図3、図8、図15に示すように、移行元の表A1と移行先の表A2が実際に同一のデータの集合で構成されている場合、移行元DBサーバ10におけるデータ出力結果(移行元データファイルF1)と、移行先DBサーバ20におけるデータ出力結果(移行先データファイルF2)の内容は、全く同一の内容となることがわかる。 As shown in FIGS. 3, 8, and 15, when the migration source table A1 and the migration destination table A2 are actually composed of the same data set, the data output result in the migration source DB server 10 (migration It can be seen that the content of the original data file F1) and the data output result (migration destination data file F2) in the migration destination DB server 20 are exactly the same.

次に、ステップS104で、移行先DBサーバ20のデータ比較処理部234が行う処理の具体例について説明する。 Next, a specific example of the processing performed by the data comparison processing unit 234 of the migration destination DB server 20 in step S104 will be described.

データベース制御部23(データ比較処理部234)は、移行元データファイルF1と移行先データファイルF2の比較処理(差分の有無を抽出する処理)を行う。データ比較処理部234が行う比較処理としては、種々のファイル比較処理を適用することができる。この実施形態では、データ比較処理部234は、UNIX(Linux)上のdiffコマンドを用いて、移行元データファイルF1と移行先データファイルF2の比較処理(テキストデータとしての比較処理)を行う。 The database control unit 23 (data comparison processing unit 234) performs a comparison process (a process of extracting the difference) between the migration source data file F1 and the migration destination data file F2. As the comparison processing performed by the data comparison processing unit 234, various file comparison processing can be applied. In this embodiment, the data comparison processing unit 234 performs a comparison process (comparison process as text data) between the migration source data file F1 and the migration destination data file F2 using the diff command on UNIX (Linux).

例えば、データ比較処理部234は、図16に示すようなシェルスクリプトにより、移行元データファイルF1(data1.txt)と移行先データファイルF2(data2.txt)の比較処理を行うようにしてもよい。例えば、図16に示すシェルスクリプトでは、diffコマンド(UNIX上のコマンド)により、移行元データファイルF1と移行先データファイルF2との差分の抽出を試み、差分があった場合には、その差分の内容が、所定の出力先のテキストデータファイル(result.txt)に出力される内容となっている。図16に示すシェルスクリプトでは、移行元データファイルF1と移行先データファイルF2に差分が無かった場合(同一だった場合)には出力先のテキストデータファイル(result.txt)にデータ(差分)が出力されない(データ量が増加しない)結果となり、移行元データファイルF1と移行先データファイルF2に差分が有った場合には出力先のテキストデータファイル(result.txt)にデータ(差分)が記録される(データ量が増加する)ことになる。ユーザや他のプロセスは、result.txtの発生の有無や容量の変動を監視することにより、移行元データファイルF1と移行先データファイルF2の比較結果(コンペア処理の結果)を認識することができる。 For example, the data comparison processing unit 234 may perform the comparison processing of the migration source data file F1 (data1.txt) and the migration destination data file F2 (data2.txt) using a shell script as shown in FIG. .. For example, in the shell script shown in FIG. 16, a diff command (command on UNIX) is used to try to extract the difference between the migration source data file F1 and the migration destination data file F2, and if there is a difference, the difference The content is the content output to the text data file (result.txt) of a predetermined output destination. In the shell script shown in FIG. 16, when there is no difference between the migration source data file F1 and the migration destination data file F2 (when they are the same), the data (difference) is stored in the text data file (result.txt) of the output destination. If there is a difference between the migration source data file F1 and the migration destination data file F2 as a result of not being output (the data amount does not increase), the data (difference) is recorded in the text data file (result.txt) of the output destination. Will be performed (the amount of data will increase). The user and other processes can use the result. By monitoring the occurrence of txt and the change in capacity, it is possible to recognize the comparison result (compare processing result) of the migration source data file F1 and the migration destination data file F2.

また、ステップS104では、diffコマンドにより、移行元データファイルF1と移行先データファイルF2との差分を抽出する前処理として、移行元データファイルF1又は移行先データファイルF2の一方について、他方のファイルと文字コードを統一する処理を行うことがのぞましい。例えば、移行元データファイルF1と移行先データファイルF2とで文字コード(特に全角文字の文字コード)の形式が異なる場合には、移行元データファイルF1の文字コードを移行先データファイルF2と同様の形式に変換してからdiffコマンドを適用するようにしてもよい。 In step S104, as a pre-process for extracting the difference between the migration source data file F1 and the migration destination data file F2 by the diff command, one of the migration source data file F1 and the migration destination data file F2 is replaced with the other file. It is desirable to perform processing that unifies the character codes. For example, if the source data file F1 and the destination data file F2 have different character code (especially double-byte character code) formats, the character code of the source data file F1 is the same as that of the destination data file F2. You may make it apply a diff command after converting into a format.

次に、ステップS105で、移行先DBサーバ20のカラム削除処理部235が行う処理の具体例について説明する。 Next, a specific example of the processing performed by the column deletion processing unit 235 of the migration destination DB server 20 in step S105 will be described.

移行先DBサーバ20の表A2では、移行対象でない順序番号カラムC4が定義されているが、データのコンペア処理まで実施し、データの信頼性が確認できれば、順序番号カラムC4が不要のカラムとなる。そこで、移行先DBサーバ20のカラム削除処理部235は、データ比較処理部234の終了(同一性が確認された後)、図17に示すようなSQL文の処理実行(例えば、ORACLEデータベースにより当該SQL文を含むSQLファイルを実行する処理)を行うことで、表A2から順序番号カラムC4を削除させる処理を行う。これにより、移行前の表A1と、移行先の表A2は完全に一致(データベースとして一致)することになる。 In the table A2 of the migration destination DB server 20, the sequence number column C4 that is not the migration target is defined, but if the data compare processing is performed and the reliability of the data can be confirmed, the sequence number column C4 becomes an unnecessary column. .. Therefore, the column deletion processing unit 235 of the migration destination DB server 20 ends the processing of the data comparison processing unit 234 (after confirming the identity) and executes the processing of the SQL statement as shown in FIG. 17 (for example, by the ORACLE database By performing the process of executing the SQL file including the SQL statement), the process of deleting the sequence number column C4 from the table A2 is performed. As a result, the table A1 before migration and the table A2 at the migration destination completely match (match as a database).

(A−3)実施形態の効果
この実施形態によれば、以下のような効果を奏することができる。
(A-3) Effects of the Embodiment According to this embodiment, the following effects can be achieved.

この実施形態では、データセットアップ制御部232が、移行元データファイルF1に基づき、移行先DBサーバ20の表A2をセットアップする際、順序番号カラムC4(移行元データファイルF1から読込んだ順序番号)を付与している。また、データ出力処理部233が、移行先の表2Aからデータを読出しする際、順序番号カラムC4を抽出ソート条件として、データを読出して移行先データファイルF2を出力する。これにより、データ比較処理部234では、移行元データファイルと移行先データファイルとがテキストデータとして同一(差分がない状態)であれば、移行元DBサーバ10のデータベース(移行元のデータベース)と、移行先DBサーバ20のデータベース(移行先のデータベース)とで全件のデータ(レコード)が同一の内容であると判断できる。また、移行元データファイルF1と移行先データファイルF2とは単なるテキストデータであるため、データ比較処理部234ではdiffコマンドでこの2つのファイルを比較するだけで、簡単、且つ、高速にコンペア処理を実施し、データベースを移行する際の信頼性(表A1と表A2とがデータベースとして同一であることの信頼性)を確保することができる。diffコマンドでテキストデータの比較を行うだけであれば、データ量が大きい場合でも高速に処理(表のデータを1件ずつ検索して全てのカラムについて比較する処理と比較して高速に処理)することができる。 In this embodiment, when the data setup control unit 232 sets up the table A2 of the migration destination DB server 20 based on the migration source data file F1, the sequence number column C4 (sequence number read from the migration source data file F1). Is given. In addition, when the data output processing unit 233 reads data from the migration destination table 2A, the data output processing unit 233 reads the data using the sequence number column C4 as the extraction sort condition and outputs the migration destination data file F2. As a result, in the data comparison processing unit 234, if the migration source data file and the migration destination data file are the same as the text data (there is no difference), the data of the migration source DB server 10 (migration source database), It can be determined that the data (records) of all the cases have the same content in the database of the migration destination DB server 20 (database of the migration destination). Further, since the migration source data file F1 and the migration destination data file F2 are simple text data, the data comparison processing unit 234 can compare the two files with the diff command to perform the compare processing easily and at high speed. It is possible to secure the reliability when performing the database migration (the reliability that the tables A1 and A2 are the same as the database). If only text data is compared with the diff command, even if the amount of data is large, it will be processed at high speed (compared to the process of searching table data one by one and comparing all columns). be able to.

例えば図3では、表A1には、データD11、D12、D13の順に登録されている。しいて、表A2では、データD11に対応するデータD21、データD13に対応するデータD23、データD12に対応するD22の順で登録している。表A2から単純にSELECT文で表A2のデータを読み出して移行先データファイルF2を生成する場合、移行先データファイルF2にはデータD21、D23、D22の順序で出力されることになる。しかしながら、データ出力処理部233では、表A2から順序番号カラムC4でソートした順序で読みだすため、図3に示すように移行先データファイルF2にはデータD21、D22、D23の順序(移行元データファイルF1と同じ順序)でデータの出力が行われることになる。 For example, in FIG. 3, data D11, D12, and D13 are registered in this order in the table A1. Therefore, in Table A2, data D21 corresponding to the data D11, data D23 corresponding to the data D13, and D22 corresponding to the data D12 are registered in this order. When the data of the table A2 is simply read from the table A2 by the SELECT statement to generate the migration destination data file F2, the data D21, D23, and D22 are output to the migration destination data file F2 in this order. However, since the data output processing unit 233 reads out from the table A2 in the order sorted by the sequence number column C4, the order of the data D21, D22, and D23 (the source data The data is output in the same order as the file F1.

(B)他の実施形態
本発明は、上記の実施形態に限定されるものではなく、以下に例示するような変形実施形態も挙げることができる。
(B) Other Embodiments The present invention is not limited to the above-described embodiments, but may include modified embodiments as exemplified below.

(B−1)上記の実施形態では、移行先DBサーバ20に表A2をセットアップし、コンペア処理後に順序番号カラムC4を削除する例について説明したが、移行先DBサーバ20の表A2をコンペア処理専用として利用し、コンペア処理後に表A2全部を削除又は表A2を放置するようにしてもよい。 (B-1) In the above embodiment, the example in which the table A2 is set up in the migration destination DB server 20 and the sequence number column C4 is deleted after the compare processing has been described, but the table A2 in the migration destination DB server 20 is compared. The table A2 may be entirely used or may be left alone or left alone after the compare process.

(B−2)上記の実施形態では、本発明のデータ処理プログラムに、データベース制御部13(データ出力処理部131、データ送信部132)、及びデータセットアップ制御部232(データ受信部231、データセットアップ制御部232、データ出力処理部233、データ比較処理部234、及びカラム削除処理部235)が含まれるものとして説明した。しかし、本発明のデータ処理プログラムは、少なくとも、データ出力処理部131、データセットアップ制御部232、データ出力処理部233、及びデータ比較処理部234を含む構成要素(実体としてはシェルスクリプト群)で実現することが可能である。 (B-2) In the above embodiment, the data processing program of the present invention includes a database control unit 13 (data output processing unit 131, data transmission unit 132) and a data setup control unit 232 (data reception unit 231 and data setup). The control unit 232, the data output processing unit 233, the data comparison processing unit 234, and the column deletion processing unit 235) are described as being included. However, the data processing program of the present invention is realized by at least a component (a shell script group as an entity) including the data output processing unit 131, the data setup control unit 232, the data output processing unit 233, and the data comparison processing unit 234. It is possible to

また、この実施形態では、データ処理プログラムの構成要素として、データ送信部132とデータ受信部231が配置されているが、移行元データファイルF1をデータセットアップ制御部232及びデータ比較処理部234に引き渡す処理に支障がなければ、データ送信部132とデータ受信部231については削除(実施形態に係るデータ処理プログラムの構成要素から削除)するようにしてもよい。また、この実施形態では、データ処理プログラムの構成要素として、カラム削除処理部235が配置されているが、表A2から順序番号カラムC4を削除する必要がなければ、削除(実施形態に係るデータ処理プログラムの構成要素から削除)するようにしてもよい。 Further, in this embodiment, the data transmitting unit 132 and the data receiving unit 231 are arranged as the components of the data processing program, but the transfer source data file F1 is delivered to the data setup control unit 232 and the data comparison processing unit 234. If there is no hindrance to the processing, the data transmission unit 132 and the data reception unit 231 may be deleted (deleted from the constituent elements of the data processing program according to the embodiment). Further, in this embodiment, the column deletion processing unit 235 is arranged as a component of the data processing program, but if there is no need to delete the sequence number column C4 from the table A2, deletion (data processing according to the embodiment It may be deleted from the components of the program).

(B−3)上記の実施形態では、移行元DBサーバ10にデータ出力処理部131を配置し、移行先DBサーバ20に、データセットアップ制御部232、データ出力処理部233、データ比較処理部234、及びカラム削除処理部235を配置する構成としているが、これらの構成要素(実体としてはシェルスクリプト)を配置するコンピュータは限定されないものである。例えば、データ出力処理部131、データセットアップ制御部232、データ出力処理部233、データ比較処理部234、及びカラム削除処理部235を全て別の端末(シェルスクリプトが実行可能なPCやワークステーション)に配置して実行するようにしてもよいし、構成要素ごとに異なる端末を適用するようにしてもよい。以上のように、本発明のデータベースシステム、データ処理プログラム、及びデータ処理方法において、コンペア処理の分散処理方式については限定されないものである。 (B-3) In the above embodiment, the data output processing unit 131 is arranged in the migration source DB server 10, and the data setup control unit 232, the data output processing unit 233, and the data comparison processing unit 234 are arranged in the migration destination DB server 20. , And the column deletion processing unit 235 are arranged, but the computer in which these components (shell script as an entity) are arranged is not limited. For example, the data output processing unit 131, the data setup control unit 232, the data output processing unit 233, the data comparison processing unit 234, and the column deletion processing unit 235 are all installed in different terminals (PC or workstation capable of executing shell scripts). It may be arranged and executed, or a different terminal may be applied to each component. As described above, in the database system, the data processing program, and the data processing method of the present invention, the distributed processing method of the compare processing is not limited.

1…DBシステム、10…DBサーバ、10…移行元DBサーバ、12…データ記憶部、13…データベース制御部、20…移行先DBサーバ、22…データ記憶部、23…データベース制御部、131…データ出力処理部、132…データ送信部、231…データ受信部、232…データセットアップ制御部、233…データ出力処理部、234…データ比較処理部、235…カラム削除処理部、F1…移行元データファイル、F2…移行先データファイル。 1... DB system, 10... DB server, 10... Migration source DB server, 12... Data storage unit, 13... Database control unit, 20... Migration destination DB server, 22... Data storage unit, 23... Database control unit, 131... Data output processing unit, 132... Data transmitting unit, 231,... Data receiving unit, 232... Data setup control unit, 233... Data output processing unit, 234... Data comparison processing unit, 235... Column deletion processing unit, F1... Transfer source data File, F2... Transfer destination data file.

Claims (6)

第1のデータベースから、前記第1のデータベースを構成するデータを順次読み出し、前記第1のデータベースから読み出したデータを読みだした順序で出力した第1の出力データを生成する第1のデータベース出力手段と、
前記第1の出力データからデータを順次読み出し、読み出した各データに順序を識別する順序識別子を付加したデータを、第2のデータベースに登録するデータ登録手段と、
前記第2のデータベースから、前記第2のデータベースを構成するデータを、順序識別子が示す順序で読み出し、前記第2のデータベースから読み出したデータを読みだした順序で出力した第2の出力データを生成する第2のデータベース出力手段と、
前記第1の出力データと前記第2の出力データとの比較結果に基づいて、前記第1のデータベースと前記第2のデータベースとを比較する処理を行うデータ比較手段と
を有することを特徴とするデータベースシステム。
First database output means for sequentially reading the data forming the first database from the first database and generating first output data in the order in which the data read from the first database is read out. When,
A data registration means for sequentially reading data from the first output data, and registering the read data with a sequence identifier for identifying a sequence in the second database.
The data forming the second database is read from the second database in the order indicated by the order identifier, and the second output data is generated by outputting the data read from the second database in the order of reading. Second database output means for
Data comparison means for performing a process of comparing the first database and the second database based on a comparison result of the first output data and the second output data. Database system.
前記データ比較手段の比較処理後に、前記第2のデータベースの各データから順序識別子の項目を削除する処理を行う削除処理手段をさらに有することを特徴とする請求項1に記載のデータベースシステム。 The database system according to claim 1, further comprising a deletion processing unit that deletes the item of the order identifier from each data of the second database after the comparison process of the data comparison unit. 前記第1のデータベース出力手段、前記データ登録手段、前記第2のデータベース出力手段、及びデータ比較手段は、いずれも、シェルスクリプトを用いて構成されていることを特徴とする請求項1に記載のデータベースシステム。 The first database output means, the data registration means, the second database output means, and the data comparison means are all configured by using a shell script. Database system. 前記第1の出力データ及び前記第2の出力データはいずれもテキストデータであり、
前記データ比較手段は、前記第1の出力データと前記第2の出力データとのテキストデータとしての同一性を比較する処理を行う
ことを特徴とする請求項1〜3のいずれかに記載のデータベースシステム。
Both the first output data and the second output data are text data,
The database according to any one of claims 1 to 3, wherein the data comparison means performs a process of comparing the sameness of the first output data and the second output data as text data. system.
コンピュータを、
第1のデータベースから、前記第1のデータベースを構成するデータを順次読み出し、前記第1のデータベースから読み出したデータを読みだした順序で出力した第1の出力データを生成する第1のデータベース出力手段と、
前記第1の出力データからデータを順次読み出し、読み出した各データに順序を識別する順序識別子を付加したデータを、第2のデータベースに登録するデータ登録手段と、
前記第2のデータベースから、前記第2のデータベースを構成するデータを、順序識別子が示す順序で読み出し、前記第2のデータベースから読み出したデータを読みだした順序で出力した第2の出力データを生成する第2のデータベース出力手段と、
前記第1の出力データと前記第2の出力データとの比較結果に基づいて、前記第1のデータベースと前記第2のデータベースとを比較する処理を行うデータ比較手段と
して機能させることを特徴とするデータ処理プログラム。
Computer,
First database output means for sequentially reading the data forming the first database from the first database and generating first output data in the order in which the data read from the first database is read out. When,
A data registration means for sequentially reading data from the first output data, and registering the read data with a sequence identifier for identifying a sequence in the second database.
The data forming the second database is read from the second database in the order indicated by the order identifier, and the second output data is generated by outputting the data read from the second database in the order of reading. Second database output means for
It is made to function as a data comparison means for performing a process of comparing the first database and the second database based on a comparison result of the first output data and the second output data. Data processing program.
データベースシステムにおけるデータ処理方法において、
第1のデータベース出力手段、データ登録手段、第2のデータベース出力手段、及びデータ比較手段を備え、
前記第1のデータベース出力手段は、第1のデータベースから、前記第1のデータベースを構成するデータを順次読み出し、前記第1のデータベースから読み出したデータを読みだした順序で出力した第1の出力データを生成し、
前記データ登録手段は、前記第1の出力データからデータを順次読み出し、読み出した各データに順序を識別する順序識別子を付加したデータを、第2のデータベースに登録し、
前記第2のデータベース出力手段は、前記第2のデータベースから、前記第2のデータベースを構成するデータを、順序識別子が示す順序で読み出し、前記第2のデータベースから読み出したデータを読みだした順序で出力した第2の出力データを生成し、
前記データ比較手段は、前記第1の出力データと前記第2の出力データとの比較結果に基づいて、前記第1のデータベースと前記第2のデータベースとを比較する処理を行う
ことを特徴とするデータ処理方法。
In the data processing method in the database system,
A first database output means, a data registration means, a second database output means, and a data comparison means,
The first database output means sequentially reads the data constituting the first database from the first database, and outputs the data read from the first database in the order of reading the first output data. Produces
The data registration means sequentially reads the data from the first output data, and registers, in the second database, data obtained by adding an order identifier for identifying the order to each read data.
The second database output means reads the data forming the second database from the second database in the order indicated by the order identifier, and reads the data read from the second database in the order of reading. Generate the output second output data,
The data comparison means performs a process of comparing the first database and the second database based on a comparison result of the first output data and the second output data. Data processing method.
JP2016144475A 2016-07-22 2016-07-22 Database system, data processing program, and data processing method Active JP6737039B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016144475A JP6737039B2 (en) 2016-07-22 2016-07-22 Database system, data processing program, and data processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016144475A JP6737039B2 (en) 2016-07-22 2016-07-22 Database system, data processing program, and data processing method

Publications (2)

Publication Number Publication Date
JP2018014036A JP2018014036A (en) 2018-01-25
JP6737039B2 true JP6737039B2 (en) 2020-08-05

Family

ID=61021235

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016144475A Active JP6737039B2 (en) 2016-07-22 2016-07-22 Database system, data processing program, and data processing method

Country Status (1)

Country Link
JP (1) JP6737039B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108573042B (en) * 2018-04-10 2022-06-10 平安科技(深圳)有限公司 Report synchronization method, electronic equipment and computer readable storage medium
US11212514B2 (en) * 2019-03-25 2021-12-28 Light Field Lab, Inc. Light field display system for cinemas
DE112021006204T5 (en) * 2021-02-03 2023-10-12 Mitsubishi Electric Corporation Data transfer device, data transfer method and data transfer program

Also Published As

Publication number Publication date
JP2018014036A (en) 2018-01-25

Similar Documents

Publication Publication Date Title
US11403269B2 (en) Versioning validation for data transfer between heterogeneous data stores
US8065323B2 (en) Offline validation of data in a database system for foreign key constraints
US20140358859A1 (en) File sharing system and file sharing method
US20140297592A1 (en) Computer-readable medium storing program and version control method
US10095699B2 (en) Computer-readable recording medium, execution control method, and information processing apparatus
US20150128150A1 (en) Data processing method and information processing apparatus
JP6737039B2 (en) Database system, data processing program, and data processing method
AU2018290753B2 (en) Systems and methods of creation and deletion of tenants within a database
US20160154851A1 (en) Computing device, storage medium, and data search method
CN112912870A (en) Tenant identifier conversion
US20110107198A1 (en) Information processing apparatus, storage medium, and information processing method
US11030162B2 (en) Distributed processing management method and distributed processing management apparatus
CN111680030A (en) Data fusion method and device, and data processing method and device based on meta information
US20180232353A1 (en) Non-transitory computer-readable storage medium, record data processing method, and record data processing apparatus
US10083121B2 (en) Storage system and storage method
JP6438295B2 (en) Automatic editing of graph input for hypergraph solvers
CN103220355B (en) Multi-user configuration method in content distributing network
CN111400243B (en) Development management system based on pipeline service and file storage method and device
JP6705482B2 (en) System construction parameter management device, system construction parameter management system, system construction parameter management method, and system construction parameter management program
JP2018109898A (en) Data migration system
JP2015153323A (en) Symbolic execution program, symbolic execution method, and symbolic execution device
JP2008171225A (en) Database automatic migration system
KR101733118B1 (en) Method for avoiding conflict among metadata operation and metadata management system for performing the same
JP5517904B2 (en) Data access processing management / generation system
CN112035501B (en) User identifier updating method, device and equipment

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190515

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200529

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: 20200616

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200629

R150 Certificate of patent or registration of utility model

Ref document number: 6737039

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150