JP2011248852A - System cooperation apparatus - Google Patents

System cooperation apparatus Download PDF

Info

Publication number
JP2011248852A
JP2011248852A JP2010267975A JP2010267975A JP2011248852A JP 2011248852 A JP2011248852 A JP 2011248852A JP 2010267975 A JP2010267975 A JP 2010267975A JP 2010267975 A JP2010267975 A JP 2010267975A JP 2011248852 A JP2011248852 A JP 2011248852A
Authority
JP
Japan
Prior art keywords
data
schema
definition
conversion
mapping
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2010267975A
Other languages
Japanese (ja)
Inventor
Masatoshi Murakami
正敏 村上
Naoto Sato
直人 佐藤
Ryota Sambe
良太 三部
Satoshi Okubo
訓 大久保
Satoshi Minewaki
聡 嶺脇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2010267975A priority Critical patent/JP2011248852A/en
Publication of JP2011248852A publication Critical patent/JP2011248852A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To establish a data cooperation method which can perform conversion in data format using a conversion method which is different according to data even in the same data format in a system cooperation ensuring data compatibility between systems.SOLUTION: A data cooperation system uses, besides schema mapping definition defining corresponding relationship between data schema, an instance mapping definition defining corresponding relationship between the corresponding data schema and the actual data with respect to the actual data based on the data schema, thereby making it possible to perform conversion in data format in which the schema mapping definition used for each corresponding relationship of the actual data is changed.

Description

本発明は、複数システム間のデータを連携するシステム連携装置に関する。   The present invention relates to a system cooperation apparatus that cooperates data between a plurality of systems.

近年、顧客要望の多様化・高度化に伴い、それを解決するシステムが大規模化・複雑化している。そのため、システム更改の際、新システムへの一括移行は、技術的にもコスト的にも困難であり、段階的な移行が必要である。段階的な移行を行う場合、その過渡期には、新システムと旧システムが共存することになる。旧システムの機能の一部を新システムで使用する場合もあるため、両システムは独立ではなく、両システムで重複して保持するデータもある。そこで、両システム間の重複データの整合性を確保する仕組みが必要となる。   In recent years, with diversification and sophistication of customer requests, systems for solving them have become larger and more complicated. For this reason, at the time of system renewal, batch migration to a new system is technically and costly difficult, and phased migration is necessary. In the case of a gradual transition, the new system and the old system coexist during the transition period. Since some of the functions of the old system may be used in the new system, both systems are not independent, and some data is retained redundantly in both systems. Therefore, a mechanism for ensuring the consistency of duplicate data between both systems is required.

データ整合性を確保する従来の方法として、データベース同期化がある。これはどちらかのデータベースに対してデータ更新があった場合に、他のデータベースにその更新分のデータ(差分データ)をコピーする方法である。これにより、複数システム間でデータを同じ状態に保つことができるため、データの整合性は確保される。   A conventional method for ensuring data consistency is database synchronization. This is a method of copying data (difference data) for the update to another database when data is updated for either database. As a result, the data can be kept in the same state among a plurality of systems, so that data consistency is ensured.

複数システム間で利用するデータ形式が異なる場合には、データ形式の変換を行う必要がある。データ形式の変換は、データ形式の変換ルールを用いて行う。データ形式の変換ルールは、データ形式を定義するデータスキーマをシステム毎に用意し、そのデータスキーマのデータ項目情報を用いて、システム間で対応するデータ項目が明確になるようにデータ項目間の対応関係を定義(以下、「スキーママッピング定義」という。)したものである。   If the data format used between multiple systems is different, it is necessary to convert the data format. Data format conversion is performed using data format conversion rules. Data format conversion rules provide a data schema that defines the data format for each system, and using the data item information of that data schema, the correspondence between data items is clarified between the systems The relationship is defined (hereinafter referred to as “schema mapping definition”).

特許文献1には、前記スキーママッピング定義を用いて、複数のデータベースを同期化する方法が開示されている。   Patent Document 1 discloses a method of synchronizing a plurality of databases using the schema mapping definition.

特開2003−331147号公報JP 2003-331147 A

しかしながら、上記特許文献1記載の技術では、使用する候補となる変換ルールが複数存在する場合に適切に変換できない場合がある。例えば、あるシステムでは、“列車”というデータがあり、別のシステムでは“通常列車”と“快速列車”のように種別ごとにデータをわけて管理している状況で両システム間でデータコピーを行う場合、“列車”データから“通常列車”データへの変換ルールと“列車”データから“快速列車”データへの変換ルールが存在することになる。この場合、第二の方法ではどの変換ルールを使用するか決定できない。使用する変換ルールを決定するために、“列車”データの内容をチェックし、その内容に応じて変換ルールを決定するロジックを別途追加することも考えられる。この場合、実際にロジックを動作させるまでコピー先が決定できない。上記の列車の例では、ロジックの誤りによって“快速列車”であるべきデータを“通常列車”として扱ってしまった場合には、列車の適切な運行管理が出来ないおそれがある。このようにロジックを用いるデータコピーは、データコピー先の保証ができないため、リスク上適用することはできない。また、ロジックが複雑であるほど処理に時間がかかりパフォーマンスが低下してしまう。   However, in the technique described in Patent Document 1, there are cases where the conversion cannot be performed properly when there are a plurality of conversion rules that are candidates for use. For example, in one system, there is data called “train”, and in another system, data is managed separately for each type, such as “normal train” and “rapid train”, and data is copied between both systems. When performing, there will be a conversion rule from “train” data to “normal train” data and a conversion rule from “train” data to “rapid train” data. In this case, the second method cannot determine which conversion rule is used. In order to determine the conversion rule to be used, it may be possible to check the content of the “train” data and add a separate logic for determining the conversion rule according to the content. In this case, the copy destination cannot be determined until the logic is actually operated. In the above example of the train, if data that should be a “quick train” is handled as a “normal train” due to a logic error, there is a risk that proper operation management of the train cannot be performed. Data copy using logic in this way cannot be applied for risk because the data copy destination cannot be guaranteed. Also, the more complex the logic, the longer the processing and the lower the performance.

本発明の目的は、上記の点を考慮して、データスキーマに対して複数の変換ルールが存在する場合であっても、システム間のデータ整合性を確保するデータ連携が可能となる。   An object of the present invention is to enable data linkage that ensures data consistency between systems even when there are a plurality of conversion rules for a data schema in consideration of the above points.

上記目的を達成するため、本発明は、以下の構成を備える。即ち、複数システム間でデータ形式は異なるが内容が同じデータを重複して保持する場合に、データの整合性確保のためシステム間でデータ形式の変換およびコピーするシステム連携装置において、
各システムで扱うデータ形式が定義されたデータスキーマとデータスキーマに基づく実データの集合から各実データを一意に識別するための識別情報を保持する各システムに対応したデータ定義保持部と、
前記各システムに対応したデータ定義保持部から前記各実データの識別情報およびデータ形式の定義を取得してユーザにシステム間の実データの対応関係と、
対応関係のある実データ間の各データ項目の対応関係を定義させる画面を表示するマッピング定義編集部と、
前記マッピング定義編集部とで定義された実データの対応関係をインスタンスマッピング定義として、各データ項目の対応関係をスキーママッピング定義として保持するマッピング定義保持部と、
を有することを特徴とするデータ連携装置を備える。
In order to achieve the above object, the present invention comprises the following arrangement. That is, in the system linkage apparatus that converts and copies the data format between the systems in order to ensure the consistency of the data when the data format is different between the multiple systems but the same data is held redundantly,
A data definition holding unit corresponding to each system that holds identification information for uniquely identifying each actual data from a set of actual data based on the data schema defined by the data format handled by each system; and
The identification information of each actual data and the definition of the data format are acquired from the data definition holding unit corresponding to each system, and the correspondence relationship of the actual data between systems to the user,
A mapping definition editing unit for displaying a screen for defining the correspondence of each data item between the actual data having the correspondence,
A mapping definition holding unit that holds the correspondence of actual data defined by the mapping definition editing unit as an instance mapping definition, and holds the correspondence of each data item as a schema mapping definition;
A data linkage device is provided.

本発明によれば、データスキーマに対して複数の変換ルールが存在する場合であっても、システム間のデータ整合性を確保するデータ連携が可能となる。   According to the present invention, even if there are a plurality of conversion rules for a data schema, data linkage that ensures data consistency between systems is possible.

実施形態におけるシステム連携装置を表す構成図である。It is a block diagram showing the system cooperation apparatus in embodiment. 実施形態におけるシステムの概略を表すハードウェア構成図である。It is a hardware block diagram showing the outline of the system in an embodiment. 各システムにおけるデータスキーマ定義に基づく実データ間の対応関係を、実データが格納される配列の番号を用いて定義したインスタンスマッピング定義の一例を示す図である。It is a figure which shows an example of the instance mapping definition which defined the correspondence between the actual data based on the data schema definition in each system using the number of the array in which the actual data is stored. 各システムにおけるデータスキーマ定義に基づく実データ間の対応関係を、実データが保持するID属性値を用いて定義したインスタンスマッピング定義の一例を示す図である。It is a figure which shows an example of the instance mapping definition which defined the correspondence between real data based on the data schema definition in each system using the ID attribute value which real data hold | maintains. 各システムにおけるデータスキーマ定義内で定義されるデータ項目間の対応関係を定義したスキーママッピング定義の一例を示す図である。It is a figure which shows an example of the schema mapping definition which defined the correspondence between the data items defined in the data schema definition in each system. インスタンスマッピング定義420のフォーマットを拡張し、対応関係毎に、データ変換のタイミングを指定可能にしたインスタンスマッピング定義の一例を示す図である。It is a figure which shows an example of the instance mapping definition which expanded the format of the instance mapping definition 420, and made it possible to designate the timing of data conversion for every correspondence. インスタンスマッピング定義420のフォーマットを拡張し、対応関係毎に、変換対象のデータ項目を指定可能にしたインスタンスマッピング定義の一例を示す図である。It is a figure which shows an example of the instance mapping definition which extended the format of the instance mapping definition 420, and made it possible to designate the data item of conversion object for every correspondence. インスタンスマッピング定義420のフォーマットを拡張し、対応関係毎に、データ変換のタイミングおよび変換対象のデータ項目を指定可能にしたインスタンスマッピング定義の一例を示す図である。It is a figure which shows an example of the instance mapping definition which extended the format of the instance mapping definition 420, and made it possible to designate the data conversion timing and the data item of conversion object for every correspondence. システム連携装置が実行するデータ変換処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the data conversion process which a system cooperation apparatus performs. 図7のインスタンスマッピング定義を用いる場合のシステム連携装置が実行するデータ変換処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the data conversion process which a system cooperation apparatus performs in the case of using the instance mapping definition of FIG. 図8のインスタンスマッピング定義を用いる場合のシステム連携装置が実行するデータ変換処理の流れを示すフローチャートである。FIG. 9 is a flowchart showing a flow of data conversion processing executed by the system cooperation device when the instance mapping definition of FIG. 8 is used. 図9のインスタンスマッピング定義を用いる場合のシステム連携装置が実行するデータ変換処理の流れを示すフローチャートである。FIG. 10 is a flowchart showing a flow of data conversion processing executed by the system cooperation device when the instance mapping definition of FIG. 9 is used. FIG. 図5のスキーママッピング定義のフォーマットを拡張し、1つの変換元データ項目に対して複数の変換先データ項目が対応する場合の対応関係および複数の変換元データ項目に対して1つの変換先データ項目が対応する場合の対応関係を定義可能にしたスキーママッピング定義の一例を示す図である。The format of the schema mapping definition in FIG. 5 is expanded, and the correspondence relationship when a plurality of conversion destination data items correspond to one conversion source data item and one conversion destination data item for a plurality of conversion source data items It is a figure which shows an example of the schema mapping definition which enabled the definition of the correspondence in case where corresponds. 図13のスキーママッピング定義を用いる場合のシステム連携装置が実行するデータ変換処理の流れのうち、図9に示すフローチャートのスキーマ変換部分において、1つの変換元データ項目を1つ以上の変換先データ項目に変換する流れを示すフローチャートである。In the schema conversion part of the flowchart shown in FIG. 9 in the flow of data conversion processing executed by the system cooperation apparatus when the schema mapping definition of FIG. 13 is used, one conversion source data item is converted into one or more conversion destination data items. It is a flowchart which shows the flow converted into. 図13のスキーママッピング定義を用いる場合のシステム連携装置が実行するデータ変換処理の流れのうち、図9に示すフローチャートのスキーマ変換部分において、複数の変換元データ項目を1つの変換先データ項目に変換する流れを示すフローチャートである。In the schema conversion part of the flowchart shown in FIG. 9 in the flow of data conversion processing executed by the system linkage apparatus when the schema mapping definition of FIG. 13 is used, a plurality of conversion source data items are converted into one conversion destination data item. It is a flowchart which shows the flow to do. 図5のスキーママッピング定義のフォーマットを拡張し、変換元または変換先データに含まれるデータ項目として、その内部に複数のデータ項目を持つ階層型データを指定可能にしたスキーママッピング定義の一例を示す図である。The figure which shows an example of the schema mapping definition which extended the format of the schema mapping definition of FIG. 5, and was able to specify the hierarchical data which has a some data item inside as a data item contained in conversion origin or conversion destination data It is. 図16のスキーママッピング定義を用いる場合のシステム連携装置が実行するデータ変換処理の流れのうち、図9に示すフローチャートのスキーマ変換部分において、変換元または変換先データに含まれるデータ項目として階層型データがある場合のスキーママッピングの流れを示すフローチャートである。Of the data conversion processing flow executed by the system linkage apparatus when the schema mapping definition of FIG. 16 is used, in the schema conversion part of the flowchart shown in FIG. 9, hierarchical data as data items included in the conversion source or conversion destination data It is a flowchart which shows the flow of schema mapping when there exists.

以下、本発明の実施の形態を、図面を参照しながら説明する。なお、説明のためシステム連携対象のシステムとしてシステムA、システムBの2つのシステムを例として取りあげる。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. For the sake of explanation, two systems, System A and System B, are taken as examples of systems to be linked with the system.

図2は、本発明のシステム連携に係るハードウェア構成例を示すブロック図である。   FIG. 2 is a block diagram illustrating a hardware configuration example according to the system cooperation of the present invention.

システム連携対象であるシステムA200、システムB210およびシステム連携装置220は、ネットワーク230を介して接続される。   System A 200, system B 210, and system cooperation apparatus 220 that are system cooperation targets are connected via a network 230.

システムA200は、処理装置201、入出力装置202、メモリ203、外部記憶装置204、通信装置207から構成される。   The system A 200 includes a processing device 201, an input / output device 202, a memory 203, an external storage device 204, and a communication device 207.

システムB210は、処理装置211、入出力装置212、メモリ213、外部記憶装置214、通信装置217から構成される。   The system B 210 includes a processing device 211, an input / output device 212, a memory 213, an external storage device 214, and a communication device 217.

システム連携装置220は、処理装置221、入出力装置222、メモリ223、外部記憶装置225、通信装置224から構成される。   The system cooperation device 220 includes a processing device 221, an input / output device 222, a memory 223, an external storage device 225, and a communication device 224.

システムA200、システムB210およびシステム連携装置は、ハードウェア構成としては同じであるため、以下システムA200についてのみ説明する。   Since the system A 200, the system B 210, and the system cooperation apparatus have the same hardware configuration, only the system A 200 will be described below.

処理装置201は、外部記憶装置204に保持されるプログラム205およびデータ206をメモリ203上に読み込んで、システムの処理を実行する。後述するシステムA200またはシステムB210における処理動作やフローチャートは、それぞれ処理装置201または202で実行される。   The processing device 201 reads the program 205 and data 206 held in the external storage device 204 onto the memory 203 and executes system processing. Processing operations and flowcharts in the system A 200 or the system B 210 to be described later are executed by the processing device 201 or 202, respectively.

入出力装置202は、ユーザからの実行指示および実行に必要なデータの入力受け付けると同時に、実行結果をユーザに表示する。   The input / output device 202 receives the execution instruction from the user and the input of data necessary for execution, and simultaneously displays the execution result to the user.

メモリ203は、処理装置201が実行するために、プログラムおよびデータを読み込むための主記憶装置である。   The memory 203 is a main storage device for reading programs and data to be executed by the processing device 201.

外部記憶装置204は、実行に必要なプログラム205およびデータ206を保持する補助記憶装置である。   The external storage device 204 is an auxiliary storage device that holds a program 205 and data 206 necessary for execution.

通信装置207は、ネットワーク230上にシステムA200のデータ206を出力したり、ネットワーク230上に流れるデータをシステムA200に入力する。   The communication device 207 outputs the data 206 of the system A 200 on the network 230 and inputs data flowing on the network 230 to the system A 200.

特に、システム連携装置220の外部記憶装置225では、システム連携処理に関するプログラム226およびデータ227が保持される。具体的には図1に示す内容が保持される。   In particular, the external storage device 225 of the system cooperation device 220 holds a program 226 and data 227 related to system cooperation processing. Specifically, the contents shown in FIG. 1 are held.

図1は、本発明のシステム連携に係るソフトウェア構成例を示すブロック図である。   FIG. 1 is a block diagram showing a software configuration example related to system cooperation of the present invention.

外部記憶装置225は、システム連携処理プログラム100およびシステム連携処理用データ110を記憶している。   The external storage device 225 stores a system cooperation processing program 100 and system cooperation processing data 110.

システム連携処理プログラム100は、マッピング定義編集部101、システムデータ取得部102、インスタンスマッピング処理部103、スキーママッピング処理部104、システムデータ更新部105から構成されるソフトウェアプログラムである。   The system cooperation processing program 100 is a software program including a mapping definition editing unit 101, a system data acquisition unit 102, an instance mapping processing unit 103, a schema mapping processing unit 104, and a system data updating unit 105.

マッピング定義編集部101は、システムAデータ定義保持部111およびシステムBデータ定義保持部112で保持するデータスキーマ及び識別情報を用いて、ユーザにマッピング定義編集画面を表示し、編集結果をインスタンスマッピング定義114およびスキーママッピング定義115としてマッピング定義保持部113に保持する。   The mapping definition editing unit 101 displays the mapping definition editing screen to the user using the data schema and identification information held by the system A data definition holding unit 111 and the system B data definition holding unit 112, and displays the edited result as an instance mapping definition. 114 and the schema mapping definition 115 are held in the mapping definition holding unit 113.

システムデータ取得部102は、システムAデータ定義保持部111(またはシステムBデータ定義保持部112)からデータスキーマ及び識別情報取得し、そのデータスキーマ及び識別情報を用いてシステムA(またはシステムB)から実データの集合を取得し、取得した実データの集合をインスタンスマッピング処理部103に送信する。   The system data acquisition unit 102 acquires the data schema and identification information from the system A data definition holding unit 111 (or system B data definition holding unit 112), and uses the data schema and identification information from the system A (or system B). A set of actual data is acquired, and the acquired set of actual data is transmitted to the instance mapping processing unit 103.

インスタンスマッピング処理部103は、マッピング定義保持部113に保持されるインスタンスマッピング定義114のうち、システムAとシステムBの対応関係を定義したものを取得する。インスタンスマッピング定義114取得後、同定義を用いて、システムデータ取得部102から送信されたシステムA(またはシステムB)の実データ集合の各実データについて、その実データに対応するシステムB(またはシステムA)の実データを一意に識別し、それら実データのデータスキーマ間の関係から使用するスキーママッピング定義を選択し、スキーママッピング処理部104にスキーママッピング定義情報とシステムA(またはシステムB)の実データの集合を合わせて送信する。   The instance mapping processing unit 103 acquires the definition of the correspondence relationship between the system A and the system B among the instance mapping definitions 114 held in the mapping definition holding unit 113. After the instance mapping definition 114 is acquired, the system B (or system A) corresponding to the actual data for each actual data of the actual data set of the system A (or system B) transmitted from the system data acquisition unit 102 is acquired using the definition. ) Is uniquely identified, a schema mapping definition to be used is selected from the relationship between the data schemas of the actual data, and schema mapping definition information and system A (or system B) actual data are selected in the schema mapping processing unit 104. Send a set of together.

スキーママッピング処理部104は、インスタンスマッピング処理部103から受信したスキーママッピング定義情報を元に、マッピング定義保持部113から該当するスキーママッピング定義115を取得する。取得後、同定義を用いて、インスタンスマッピング処理部103から受信したシステムA(またはシステムB)の実データに含まれるデータ項目をシステムB(またはシステムA)の実データのデータ項目に変換し、システムB(またはシステムA)の実データの集合をシステムデータ更新部105に送信する。   The schema mapping processing unit 104 acquires a corresponding schema mapping definition 115 from the mapping definition holding unit 113 based on the schema mapping definition information received from the instance mapping processing unit 103. After acquisition, using the same definition, the data item included in the actual data of the system A (or system B) received from the instance mapping processing unit 103 is converted into the data item of the actual data of the system B (or system A), A set of actual data of system B (or system A) is transmitted to system data update unit 105.

システムデータ更新部105は、システムBデータ定義保持部112(またはシステムAデータ定義保持部111)からデータスキーマ及び識別情報取得し、そのデータスキーマ及び識別情報を用いて、スキーママッピング処理104より受信したシステムB(またはシステムA)の実データの集合をシステムB(またはシステムA)のデータ領域に反映する。   The system data update unit 105 acquires the data schema and identification information from the system B data definition holding unit 112 (or the system A data definition holding unit 111), and receives the data schema and identification information from the schema mapping process 104 using the data schema and identification information. A set of actual data of system B (or system A) is reflected in the data area of system B (or system A).

システム連携処理用データ110は、システムAデータ定義保持部111、システムBデータ定義保持部112、マッピング定義保持部113を含む。   The system cooperation processing data 110 includes a system A data definition holding unit 111, a system B data definition holding unit 112, and a mapping definition holding unit 113.

システムAデータ定義保持部111は、システム連携対象であるシステムAのデータ形式を定義したデータスキーマおよびデータスキーマに基づく実データの集合から各実データを一意に識別可能な識別情報を保持する。   The system A data definition holding unit 111 holds data schema that defines the data format of the system A that is a system linkage target and identification information that can uniquely identify each real data from a set of real data based on the data schema.

システムBデータ定義保持部112は、システム連携対象であるシステムBのデータ形式を定義したデータスキーマおよびデータスキーマに基づく実データの集合から各実データを一意に識別可能な識別情報を保持する。   The system B data definition holding unit 112 holds identification information that can uniquely identify each real data from a data schema that defines the data format of the system B that is a system linkage target and a set of real data based on the data schema.

マッピング定義保持部113は、マッピング定義編集部101で作成した複数のインスタンスマッピング定義114およびスキーママッピング定義115を保持する。   The mapping definition holding unit 113 holds a plurality of instance mapping definitions 114 and schema mapping definitions 115 created by the mapping definition editing unit 101.

図3は、本発明のシステム連携処理で用いるインスタンスマッピング定義の例を示した図である。   FIG. 3 is a diagram showing an example of instance mapping definition used in the system linkage processing of the present invention.

開発者は、データスキーマ定義に基づいて生成される実データを用いてインスタンスマッピング定義を定義する。システムAのデータスキーマ定義の例として、スキーマa301、スキーマb302、スキーマc303を考えた場合、それらのデータスキーマ定義に基づいて生成される実データは、それぞれa[0]311、a[1]312、a[2]313、b[0]314、b[1]315、b[2]316、b[3]317、c[0]318、c[1]319のようにデータスキーマ定義毎の配列データの1要素として保持させる。同様にシステムBに対しても、スキーマ341、342に対し、実データ331、332、333、334、335、336、337、338として保持させる。   The developer defines the instance mapping definition using actual data generated based on the data schema definition. As an example of the data schema definition of the system A, when the schema a301, the schema b302, and the schema c303 are considered, the actual data generated based on the data schema definitions are a [0] 311 and a [1] 312 respectively. , A [2] 313, b [0] 314, b [1] 315, b [2] 316, b [3] 317, c [0] 318, c [1] 319 for each data schema definition It is held as one element of array data. Similarly, the system B stores the schemas 341 and 342 as actual data 331, 332, 333, 334, 335, 336, 337, and 338.

この場合、保持される実データの配列内の順番(以下配列番号)が常時固定であれば、その配列番号と配列の元となるデータスキーマ名を用いてシステムAの各実データとシステムBの各実データを一意に対応付けることができる。インスタンスマッピング定義320は、その対応付けを表形式で記述した例である。インスタンスマッピング定義は、実データ間の対応付けが表現できれば表以外の形式でも良い。   In this case, if the order in the array of the actual data to be held (hereinafter referred to as the array number) is always fixed, each actual data of the system A and the system B of the system B using the array schema number and the data schema name that is the basis of the array Each real data can be uniquely associated. The instance mapping definition 320 is an example in which the correspondence is described in a table format. The instance mapping definition may be in a format other than a table as long as the correspondence between actual data can be expressed.

図3において、表の1行毎にシステムAの実データおよび対応するシステムBの実データを記述し、それを必要な分だけ用意する。図3の2行目321では、システムAのデータで配列番号が1番である実データ312とシステムBのデータで配列番号が2版である実データ333が対応関係にあることを示している。なお、この場合スキーマa301に基づく実データとスキーマd341に基づく実データであるから、その2つのスキーマ定義の間の対応関係を記述したスキーママッピング定義が実データの変換のために必要となる。   In FIG. 3, the actual data of the system A and the corresponding actual data of the system B are described for each row of the table, and as many as necessary are prepared. The second row 321 in FIG. 3 indicates that the actual data 312 having the array number 1 in the system A data and the actual data 333 having the array number 2 in the system B data have a correspondence relationship. . In this case, since the actual data is based on the schema a301 and the actual data based on the schema d341, a schema mapping definition describing the correspondence between the two schema definitions is required for the conversion of the actual data.

図4は、図3同様インスタンスマッピング定義の例を示した図である。   FIG. 4 is a diagram showing an example of instance mapping definition as in FIG.

図3では、保持される実データの配列番号が常時固定であることを想定したが、図4は、配列番号が常時固定でない場合または実データが配列データのようにまとめられておらず、実データ間に順序関係を持たない場合でも対応可能にした例である。この例では、データスキーマ401、402、403、441、442の1データ項目としてID属性を追加し、実データ毎に一意に識別可能なID値を設定する。このID値を用いてインスタンスマッピング定義を定義する。   In FIG. 3, it is assumed that the array number of the actual data to be held is always fixed. However, in FIG. 4, when the array number is not always fixed or the actual data is not organized like the array data, In this example, even if there is no order relationship between the data, it is possible to cope. In this example, an ID attribute is added as one data item of the data schemas 401, 402, 403, 441, and 442, and an ID value that can be uniquely identified is set for each actual data. An instance mapping definition is defined using this ID value.

図の2行目421では、システムAのデータスキーマa401に基づきID値がkの実データ412とシステムBのデータスキーマd441に基づきID値がuの実データ433が対応関係にあることを示している。   The second line 421 in the figure shows that the actual data 412 with the ID value k based on the data schema a401 of the system A and the actual data 433 with the ID value u based on the data schema d441 of the system B have a correspondence relationship. Yes.

図5は、本発明のシステム連携処理で用いるスキーママッピング定義の例を示した図である。図3または図4で示したインスタンスマッピング定義320、420は、実データの対応関係を定義したものであり、その実データが持つデータ項目間の対応関係は定義していない。そこで、スキーママッピング定義は、データ項目間の対応関係を定義する。   FIG. 5 is a diagram showing an example of the schema mapping definition used in the system linkage processing of the present invention. The instance mapping definitions 320 and 420 shown in FIG. 3 or FIG. 4 define the correspondence relationship of actual data, and do not define the correspondence relationship between data items of the actual data. Therefore, the schema mapping definition defines the correspondence between data items.

スキーママッピング定義は、インスタンスマッピング定義320で定義した実データが持つデータ項目について、データ項目間の対応関係を定義する。ただし、この対応関係を実データ毎に定義すると、実データの数だけその対応関係が必要になり、数が膨大になる。実データの型が同じであれば、内部に持つデータ項目も同じであるため、データ項目間の対応関係を実データの型ごとにまとめて定義する。   The schema mapping definition defines the correspondence between data items for the data items of the actual data defined in the instance mapping definition 320. However, if this correspondence relationship is defined for each actual data, the correspondence relationship is required by the number of actual data, and the number becomes enormous. If the actual data type is the same, the internal data items are also the same, so the correspondence between the data items is defined for each type of actual data.

図5において、システムAのデータスキーマであるスキーマa501、スキーマb505、スキーマc509の各データ項目とシステムBのデータスキーマであるスキーマd531、スキーマe536の各データ項目の間に対応関係がある場合、その対応関係をスキーママッピング定義520のように定義できる。なお、インスタンスマッピング定義同様、データ項目間の対応付けが表現できれば表以外の形式でも良い。図5の2行目521では、システムAのスキーマa501のデータ名a2とシステムBのスキーマd531のデータ名d2に対応関係があることを示している。   In FIG. 5, when there is a correspondence between the data items of the schema A501, schema b505, and schema c509 that are the data schema of the system A and the data items of the schema d531 and the schema e536 that are the data schema of the system B, Correspondence can be defined as a schema mapping definition 520. Similar to the instance mapping definition, a format other than a table may be used as long as the correspondence between data items can be expressed. The second line 521 in FIG. 5 indicates that there is a correspondence between the data name a2 of the schema a501 of the system A and the data name d2 of the schema d531 of the system B.

図6は、図4で示したインスタンスマッピング定義420を拡張したものである。このインスタンスマッピング定義600では、図4のインスタンスマッピング定義420に対し、変換タイミング項目601を追加する。変換タイミング項目601には、対応関係毎に変換を行うタイミングを指定することができる。例えば、ユーザプログラムの処理などでデータが更新された直後に変換を行うことを意味する“データ更新直後”のようにデータ更新等のイベントをタイミングとして指定することや、2秒または4秒間隔で変換を行うことを意味する“2秒毎”、“4秒毎”のように周期的な時間をタイミングとして指定することが可能である。この拡張は図4のインスタンスマッピング定義420だけでなく、図3のインスタンスマッピング定義320に対しても可能である。   FIG. 6 is an extension of the instance mapping definition 420 shown in FIG. In this instance mapping definition 600, a conversion timing item 601 is added to the instance mapping definition 420 of FIG. In the conversion timing item 601, the timing for performing conversion for each correspondence can be specified. For example, an event such as data update is designated as a timing, such as “immediately after data update”, which means that conversion is performed immediately after data is updated by a user program process, etc., or at intervals of 2 seconds or 4 seconds. Periodic time such as “every 2 seconds” or “every 4 seconds”, which means conversion, can be designated as timing. This extension is possible not only for the instance mapping definition 420 of FIG. 4 but also for the instance mapping definition 320 of FIG.

図7は、図4で示したインスタンスマッピング定義420を拡張したものである。このインスタンスマッピング定義700では、図4のインスタンスマッピング定義420に対し、変換対象データ項目701を追加する。変換対象データ項目701には、対応関係毎に変換対象とするデータ項目を指定することができる。例えば、実データが持つ全データ項目を変換対象することを意味する“全データ”を指定することや、ユーザプログラムの処理などで更新があったデータ項目のみを変換対象とすることを意味する“差分データ”のように特定のデータ項目を対象とするような指定をすることが可能である。この拡張は図4のインスタンスマッピング定義420だけでなく、図3または図6のインスタンスマッピング定義320、600に対しても可能である。 図8は、図6で示した変換タイミング項目601と図7で示した変換対象データ項目701をともに図4に示すインスタンスマッピング定義420に追加したものである。図6および図7同様に図3のインスタンスマッピング定義に対しても追加可能である。 図9は、図3または図4に示すインスタンスマッピング定義320、420を用いる際の本発明のシステム連携処理の流れを示すフローチャートである。図9では、システムAからシステムBに対してデータ変換およびコピーを行う流れを例として説明する。   FIG. 7 is an extension of the instance mapping definition 420 shown in FIG. In this instance mapping definition 700, a conversion target data item 701 is added to the instance mapping definition 420 of FIG. In the conversion target data item 701, a data item to be converted can be designated for each correspondence. For example, “all data”, which means that all data items of actual data are to be converted, is designated, or only data items that have been updated by user program processing, etc. are to be converted “ It is possible to designate a specific data item as “difference data”. This extension is possible not only for the instance mapping definition 420 of FIG. 4 but also for the instance mapping definitions 320 and 600 of FIG. 3 or FIG. 8 is obtained by adding the conversion timing item 601 shown in FIG. 6 and the conversion target data item 701 shown in FIG. 7 to the instance mapping definition 420 shown in FIG. Similar to FIG. 6 and FIG. 7, it can be added to the instance mapping definition of FIG. FIG. 9 is a flowchart showing the flow of the system cooperation processing of the present invention when the instance mapping definitions 320 and 420 shown in FIG. 3 or 4 are used. In FIG. 9, a flow of data conversion and copying from system A to system B will be described as an example.

まず、本システム連携処理を開始し(900)、システムAからデータを取得する(901)。データ取得後、システムAのデータに関する対応関係情報が定義されたインスタンスマッピング定義を読み込む(902)。システムAから取得したデータの1つを抽出し(903)、最後までデータを抽出したかどうかを判断する(904)。データが抽出できた場合、読み込んだインスタンスマッピング定義のうち、抽出したデータが定義されている行を読み込む。   First, the system linkage processing is started (900), and data is acquired from the system A (901). After the data acquisition, the instance mapping definition in which the correspondence information regarding the data of the system A is defined is read (902). One of the data acquired from the system A is extracted (903), and it is determined whether the data has been extracted to the end (904). If the data can be extracted, read the row in which the extracted data is defined in the read instance mapping definition.

そして、抽出済みのシステムAのデータのスキーマと、読み込んだ行内で定義されるシステムBのデータのスキーマの関係が定義されているスキーママッピング定義を全スキーママッピング定義の中から検索し,該当するものを使用するスキーママッピング定義として決定する(905)。   Then, the schema mapping definition in which the relation between the schema of the extracted system A data and the schema of the system B data defined in the read row is defined is searched from all the schema mapping definitions, and the corresponding ones. Is determined as a schema mapping definition using 905 (905).

その後、上記で決定されたスキーママッピング定義を読み込む(906)。   Thereafter, the schema mapping definition determined above is read (906).

読み込んだスキーママッピング定義の情報を元に抽出済みのシステムAの実データに含まれる各データ項目を,システムBの実データに含まれるデータ項目にコピー(変換)する(907)。   Each data item included in the actual data of the system A that has been extracted based on the read schema mapping definition information is copied (converted) to the data item included in the actual data of the system B (907).

その後903に戻る。最終データの処理が終了したら、変換後のデータを一括してシステムBのデータに反映し(908)、その後終了する(909)。なお、上記のように変換後のデータを最後にまとめて一括で反映する以外に、1データ変換のたびにシステムBのデータに反映することも可能である。   Thereafter, the process returns to 903. When the processing of the final data is completed, the converted data is reflected on the data of the system B all at once (908), and then the process is completed (909). As described above, the converted data can be reflected to the data of the system B every time one data conversion is performed, in addition to collectively reflecting the converted data at the end.

図10は、図6に示すインスタンスマッピング定義600を用いる際の本発明のシステム連携処理の流れを示すフローチャートである。基本的なフローは図9と同じであるが、使用するスキーママッピング定義を決定(1005)後に、インスタンスマッピング定義600の変換タイミング項目601情報を用いるデータ変換を行うかどうかのタイミングのチェックの処理(1006)を追加している。これにより、データ毎に変換のタイミングを調整することができる。例えば、データ更新の時間間隔が短いデータについては、頻繁に整合性を確保できるように、データ変換のタイミングを短い時間に設定し、時間間隔が長いデータについては、データ変換のタイミングを長い時間に設定することで、全データ同じタイミングで変換するのではなく、データ毎に更新頻度に応じたデータ変換タイミングを変えることができる。 図11は、図7に示すインスタンスマッピング定義700を用いる際の本発明のシステム連携処理の流れを示すフローチャートである。基本的なフローは図9と同じであるが、インスタンスマッピング定義700の変換対象データ項目701情報を用いて、使用するスキーママッピング定義を決定(1105)後に、変換対象データ項目701の値が“差分データ”かどうかをチェックし(1106)、“差分データ”である場合にはシステムAのデータのうち更新有のデータを抽出する(1107)処理を追加している。これにより、データ毎に変換対象とするデータ項目を調整できる。例えば、更新がないデータ項目を多く持つデータについては、更新があったデータ項目のみ変換できるように、変換対象データ項目を“差分データ”と設定し、更新がないデータ項目をあまり持たないデータについては、更新があったかどうかをチェックせず全データを変換できるように変換対象データ項目を“全データ”と設定することで、不必要な変換を減らすことができる。   FIG. 10 is a flowchart showing the flow of the system linkage process of the present invention when using the instance mapping definition 600 shown in FIG. The basic flow is the same as in FIG. 9, but after determining the schema mapping definition to be used (1005), processing for checking the timing of whether to perform data conversion using the conversion timing item 601 information of the instance mapping definition 600 ( 1006) is added. Thereby, the conversion timing can be adjusted for each data. For example, for data with a short data update time interval, the data conversion timing is set to a short time so that consistency can be secured frequently. For data with a long time interval, the data conversion timing is set to a long time. By setting, it is not possible to convert all data at the same timing, but it is possible to change the data conversion timing according to the update frequency for each data. FIG. 11 is a flowchart showing the flow of the system cooperation process of the present invention when the instance mapping definition 700 shown in FIG. 7 is used. The basic flow is the same as in FIG. 9, but after the schema mapping definition to be used is determined (1105) using the conversion target data item 701 information of the instance mapping definition 700, the value of the conversion target data item 701 is “difference”. It is checked whether it is “data” (1106), and if it is “difference data”, a process of extracting data with update from the data of system A (1107) is added. As a result, the data item to be converted can be adjusted for each data. For example, for data that has many data items that are not updated, set the data item to be converted to “difference data” so that only the data items that have been updated can be converted, and data that does not have many data items that are not updated. By setting the conversion target data item as “all data” so that all data can be converted without checking whether there has been an update, unnecessary conversion can be reduced.

図12は、図8に示すインスタンスマッピング定義800を用いる際の本発明のシステム連携処理の流れを示すフローチャートである。図10および図11において追加した処理をそれぞれ追加したフローとなっている。インスタンスマッピング定義800では、変換タイミング801と変換対象データ項目802を同時に指定することができる。例えば更新有の差分データを更新頻度に応じたタイミングで変換するように変換対象データ項目802と変換タイミング801を指定することができるため、データ変換を無駄なく最小限な抑えることができるようになる。これにより、応答速度向上やメモリ使用量の削減に繋がるため、リアルタイム処理が必要で応答速度やメモリ使用量の制約が厳しいシステムに対しても有効である。   FIG. 12 is a flowchart showing the flow of the system cooperation process of the present invention when the instance mapping definition 800 shown in FIG. 8 is used. In this flow, the processes added in FIGS. 10 and 11 are added. In the instance mapping definition 800, the conversion timing 801 and the conversion target data item 802 can be specified at the same time. For example, since the conversion target data item 802 and the conversion timing 801 can be specified so that the difference data with update is converted at a timing according to the update frequency, data conversion can be minimized without waste. . This leads to an improvement in response speed and a reduction in memory usage, which is also effective for systems that require real-time processing and have severe restrictions on response speed and memory usage.

図13は,1つのデータ項目に対し,変換元のデータ項目または変換先のデータ項目が複数対応する場合のスキーママッピング定義の例を示したものである。   FIG. 13 shows an example of a schema mapping definition when a plurality of conversion source data items or conversion destination data items correspond to one data item.

図13は、図5で示したスキーママッピング定義520を拡張したスキーママッピング定義の例1300を示した図である。変換元データのデータ項目1つに対し、変換先データのデータ項目が複数対応する場合に前記スキーママッピング定義1300を用いる。図13では、データ項目間のマッピングを定義する部分1301内で、変換元データのデータ項目1302に対し、複数の変換先データのデータ項目1303、1304、1305が対応することを定義している。そして対応関係毎に、変換元データのデータ項目1302の中で、変換先データのデータ項目1303または1304または1305が現れる位置を開始位置1306として、変換先データのデータ項目のサイズをサイズ1307として指定する。この定義により、1つの変換元データのデータ項目に対して複数の変換先データのデータ項目が対応する場合の対応関係および複数の変換元データのデータ項目に対して1つの変換先データのデータ項目が対応する場合の対応関係を定義可能になる。   FIG. 13 is a diagram showing an example 1300 of a schema mapping definition obtained by extending the schema mapping definition 520 shown in FIG. The schema mapping definition 1300 is used when a plurality of data items of the conversion destination data correspond to one data item of the conversion source data. In FIG. 13, in the part 1301 for defining mapping between data items, it is defined that the data items 1303, 1304, 1305 of a plurality of conversion destination data correspond to the data item 1302 of the conversion source data. For each correspondence, the position where the data item 1303, 1304 or 1305 of the conversion destination data appears in the data item 1302 of the conversion source data is designated as the start position 1306, and the size of the data item of the conversion destination data is designated as the size 1307. To do. With this definition, a correspondence relationship when a plurality of conversion destination data items correspond to one conversion source data item and a single conversion destination data item for a plurality of conversion source data items It is possible to define a correspondence relationship when

図14は、図13に示すスキーママッピング定義1300を用いて,変換元のデータ項目1つを複数の変換先データ項目に変換する流れを示すフローチャートであり、図9に示す本発明全体のフローチャートのスキーマ変換907部分の詳細を示したものである。図14では、変換元データのデータ項目1つを1つ以上の変換先データのデータ項目に変換する流れを示している。スキーマ変換開始後(1401)、変換元データに含まれるデータ項目を1つ抽出する(1402)。この際、データ項目が存在しないか、またはすべてのデータ項目を抽出済みかどうか判断し(1403)、データ項目が存在しないか、または、すべてのデータ項目を抽出済みの場合は処理を終了する。データが抽出できた場合、スキーママッピング定義を参照し、抽出したデータ項目に対応する変換先データ項目が1つ以上あるかどうか判断する(1404)。抽出したデータ項目に対応する変換先データ項目が存在しない場合、1402に戻る。抽出したデータ項目に対応する変換先データのデータ項目が1つ以上ある場合には、前記図13で示したスキーママッピング定義で定義された開始位置1306およびサイズ1307を参照し、変換元データのデータ項目の指定された開始位置から指定されたサイズ分のデータを取得し(1405)、変換先データのデータ項目にコピーする(1406)。そして再び1404に戻り、変換先データ項目数分繰り返す。これにより変換元データの1つのデータ項目を変換先データの複数のデータ項目に変換可能になる。   FIG. 14 is a flowchart showing a flow of converting one conversion source data item into a plurality of conversion destination data items using the schema mapping definition 1300 shown in FIG. 13, and is a flowchart of the entire flowchart of the present invention shown in FIG. The details of the schema conversion 907 portion are shown. FIG. 14 shows a flow of converting one data item of conversion source data into one or more data items of conversion destination data. After starting schema conversion (1401), one data item included in the conversion source data is extracted (1402). At this time, it is determined whether there is no data item or all the data items have been extracted (1403). If no data item exists or all the data items have been extracted, the process is terminated. If the data can be extracted, the schema mapping definition is referred to and it is determined whether there is one or more conversion destination data items corresponding to the extracted data items (1404). If there is no conversion destination data item corresponding to the extracted data item, the process returns to 1402. When there is one or more data item of the conversion destination data corresponding to the extracted data item, refer to the start position 1306 and the size 1307 defined in the schema mapping definition shown in FIG. Data of the specified size is acquired from the specified start position of the item (1405), and copied to the data item of the conversion destination data (1406). Then, the process returns to 1404 again and repeats for the number of conversion destination data items. As a result, one data item of the conversion source data can be converted into a plurality of data items of the conversion destination data.

図15は,図13に示すスキーママッピング定義1300を用いて,変換元の複数のデータ項目を1つの変換先データ項目に変換する流れを示すフローチャートであり、図9に示す本発明全体のフローチャートのスキーマ変換部分907の詳細を示したものである。図15では、1つ以上の変換元データ項目を1つの変換先データのデータ項目に変換する流れを示している。スキーマ変換開始後(1501)、変換元データに含まれるデータ項目のうち、スキーママッピング定義1300を参照し、変換先データのデータ項目が同じであるものが1つ以上あるかどうか判断する(1502)。変換先データのデータ項目が同じである変換元データ項目が存在しない場合は終了する(1506)。変換先データのデータ項目が同じであるものが1つ以上ある場合、それらすべてを抽出する(1503)。この際、データ項目が存在しないか、または、すべてのデータ項目を抽出済みかどうか判断し(1504)、データ項目が存在しないか、または、すべてのデータ項目を抽出済みの場合、終了する(1506)。1つ以上のデータ項目を抽出した場合、前記図13で示したスキーママッピング定義で定義された開始位置1306およびサイズ1307を参照し、変換元データのデータ項目毎に、それぞれ指定された開始位置から指定されたサイズ分のデータを取得し、1つのデータ項目として結合し,変換先データ項目にコピー(変換)する(1505)。その後1502に戻り、変換元データ項目をすべて抽出するまで繰り返す。これにより,変換元データの複数のデータ項目を変換先データの1つのデータ項目に変換可能になる。   FIG. 15 is a flowchart showing a flow of converting a plurality of conversion source data items into one conversion destination data item using the schema mapping definition 1300 shown in FIG. 13, and is a flowchart of the entire flowchart of the present invention shown in FIG. The details of the schema conversion portion 907 are shown. FIG. 15 shows a flow of converting one or more conversion source data items into data items of one conversion destination data. After the start of schema conversion (1501), the schema mapping definition 1300 is referred to among the data items included in the conversion source data, and it is determined whether there are one or more data items of the same conversion destination data (1502). . If there is no conversion source data item having the same data item of the conversion destination data, the processing ends (1506). If there are one or more data items of the conversion destination data, all of them are extracted (1503). At this time, it is determined whether there is no data item or all data items have been extracted (1504), and if there is no data item or all data items have been extracted, the processing ends (1506). ). When one or more data items are extracted, the start position 1306 and the size 1307 defined in the schema mapping definition shown in FIG. 13 are referred to, and for each data item of the conversion source data, from the specified start position. Data of a specified size is acquired, combined as one data item, and copied (converted) to a conversion destination data item (1505). Thereafter, the processing returns to 1502 and is repeated until all the conversion source data items are extracted. Thereby, a plurality of data items of conversion source data can be converted into one data item of conversion destination data.

図16は,変換元データまたは変換先データに含まれるデータ項目のうち,その内部に複数のデータ項目をもつ階層型データを変換する場合のスキーママッピング定義の例を示したものである。   FIG. 16 shows an example of the schema mapping definition when converting hierarchical data having a plurality of data items therein among the data items included in the conversion source data or the conversion destination data.

図16は、図5で示したスキーママッピング定義520を拡張したスキーママッピング定義の例を示した図である。このスキーママッピング定義は、変換元データまたは変換先データに含まれるデータ項目として、その内部に複数のデータ項目を持つ階層型データを指定する場合に用いる。まず、スキーママッピング定義1600にて、1601の対応関係定義に示すように階層型データ1602、1603をデータ型部分に記述する。ここでデータ型に階層型データを指定した場合、同レコード内のサブスキーママッピングID部分に、1602、1603で指定した階層型データ同士の対応関係が定義されたサブスキーママッピング定義のID1605を指定する。サブスキーママッピング定義でも、スキーママッピング定義同様データ項目間の対応関係を定義するが、1604の1つの対応関係定義に示すようにスキーマ部分には1602、1603で指定した階層型データのデータ型を指定する。サブスキーママッピング定義の対応関係で定義するデータ項目のデータ型がさらに階層型データである場合には、再度データ型に階層型データ1606、1607を指定し、それら階層型データ間の対応関係を定義するサブスキーママッピングIDを指定する。   FIG. 16 is a diagram illustrating an example of a schema mapping definition obtained by extending the schema mapping definition 520 illustrated in FIG. This schema mapping definition is used when hierarchical data having a plurality of data items therein is specified as a data item included in conversion source data or conversion destination data. First, in the schema mapping definition 1600, hierarchical data 1602 and 1603 are described in the data type portion as shown in the correspondence definition of 1601. Here, when hierarchical data is specified as the data type, the ID 1605 of the sub schema mapping definition in which the correspondence between the hierarchical data specified in 1602 and 1603 is defined in the sub schema mapping ID portion in the same record. . Even in the sub schema mapping definition, the correspondence between data items is defined as in the schema mapping definition, but the data type of the hierarchical data specified in 1602 and 1603 is specified in the schema part as shown in one correspondence definition of 1604. To do. If the data type of the data item defined by the correspondence of the subschema mapping definition is further hierarchical data, the hierarchical data 1606 and 1607 are designated again as the data type, and the correspondence between the hierarchical data is defined. Specifies the sub schema mapping ID to be executed.

図17は、図16に示すスキーママッピング定義1600を用いて,変換元のデータに含まれる階層型データ項目を変換先のデータに含まれる階層型データ項目に変換する流れを示すフローチャートであり,図9に示す本発明全体のフローチャートのうち、図9に示すフローチャートのスキーマ変換部分907の詳細を示したものである。図17では、変換元データまたは変換先データに含まれるデータ項目として階層型データがある場合のスキーママッピングの流れを示したものである。スキーマ変換開始後(1701)、変換元データに含まれるデータ項目を1つ抽出する(1702)。この際、データ項目が存在しないか、または、すべてのデータ項目を抽出済みかどうか判断し(1703)、データ項目が存在しないか、または、すべてのデータ項目を抽出済みであれば処理を終了する。データが抽出できた場合、スキーママッピング定義を参照し、抽出したデータ項目のデータが階層型であるかどうか判断する(1704)。階層型データでない場合、変換先データ項目にデータをコピーして(1707)、終了する(1708)。階層型データである場合、スキーママッピング定義内のサブスキーママッピングIDを参照し、使用するサブスキーママッピング定義を決定する(1705)。
その後、階層型データの階層の数だけスキーマの変換を再帰的に呼び出し(1707)、各階層でデータ項目のコピーを行う。
これにより,データ項目が階層型データである場合にもデータ項目の変換が可能になる。
FIG. 17 is a flowchart showing a flow of converting a hierarchical data item included in conversion source data into a hierarchical data item included in conversion destination data using the schema mapping definition 1600 shown in FIG. 9 shows details of the schema conversion portion 907 of the flowchart shown in FIG. FIG. 17 shows the flow of schema mapping when hierarchical data exists as data items included in conversion source data or conversion destination data. After starting schema conversion (1701), one data item included in the conversion source data is extracted (1702). At this time, it is determined whether the data item does not exist or all the data items have been extracted (1703). If the data item does not exist or all the data items have been extracted, the process is terminated. . If the data can be extracted, the schema mapping definition is referred to and it is determined whether or not the data of the extracted data item is hierarchical (1704). If it is not hierarchical data, the data is copied to the conversion destination data item (1707), and the process is terminated (1708). If it is hierarchical data, the subschema mapping ID to be used is determined by referring to the subschema mapping ID in the schema mapping definition (1705).
Thereafter, schema conversion is recursively called for the number of layers of hierarchical data (1707), and data items are copied at each layer.
Thereby, even when the data item is hierarchical data, the data item can be converted.

以上のように、本発明の実施形態によれば、各システムで用いるデータスキーマ間の対応関係の定義でありかつシステム間データコピーの際の変換ルールであるスキーママッピング定義に加えて、データスキーマに基づく実データ間の対応関係を定義したインスタンスマッピング定義を用いてデータ変換を行うことで、1つのデータスキーマに対して複数変換ルールが存在する場合であっても、システム動作前に実データ毎に使用する変換ルールを決定し、コピー先データを保証することができる。これにより、データコピーに関してシステム動作時の予期せぬ障害を回避することができる。   As described above, according to the embodiment of the present invention, in addition to the schema mapping definition that is a definition of the correspondence between data schemas used in each system and is a conversion rule when copying data between systems, the data schema By performing data conversion using the instance mapping definition that defines the correspondence between actual data based on each data, even if there are multiple conversion rules for one data schema, before each system operation The conversion rule to be used can be determined and the copy destination data can be guaranteed. As a result, it is possible to avoid an unexpected failure during system operation regarding data copying.

さらに,データ項目間の対応関係が1対1でなく,1対多または多対1である場合や,データ項目として内部に複数のデータ項目を持つ階層型データがある場合等複雑なデータの変換を行うことも可能となる。   Furthermore, complex data conversion such as when the correspondence between data items is not one-to-one, but one-to-many or many-to-one, or there is hierarchical data that has multiple data items as data items Can also be performed.

また,段階的なシステム更改をする場合には、現行システムと新システムとを共存させる必要があるが、両システム間で使用するデータの形式や粒度が異なる場合であっても本発明により事前に正確なデータコピーを保証できるため、現行システムのデータ形式や粒度に依存することなく自由に新システムを設計し開発することができるようになる。これにより、最新で効果的なシステム設計手法の採用が容易になるとともに、機能を新旧どちら側のシステムで実現しても同じ結果が得られるため段階的な移行を促進することができる。   In addition, when the system is upgraded in stages, the current system and the new system must coexist. Even if the format and granularity of the data used between the two systems are different, the present invention can Since accurate data copy can be guaranteed, a new system can be freely designed and developed without depending on the data format and granularity of the current system. This facilitates the adoption of the latest and most effective system design technique, and the same result can be obtained regardless of whether the function is implemented on the old or new system, thereby facilitating a stepwise transition.

100 システム連携処理プログラム
101 マッピング定義編集部
102 システムデータ取得部
103 インスタンスマッピング処理部
104 スキーママッピング処理部
105 システムデータ更新部
110 システム連携処理用データ
111 システムAデータ定義保持部
112 システムBデータ定義保持部
113 マッピングデータ保持部
DESCRIPTION OF SYMBOLS 100 System cooperation processing program 101 Mapping definition edit part 102 System data acquisition part 103 Instance mapping processing part 104 Schema mapping processing part 105 System data update part 110 Data for system cooperation processing 111 System A data definition holding part 112 System B data definition holding part 113 Mapping data holding unit

Claims (9)

複数システム間でデータ形式は異なるが内容が同じデータを重複して保持する場合に、データの整合性確保のためシステム間でデータ形式の変換およびコピーするデータ連携装置において、
各システムで扱うデータ形式が定義されたデータスキーマとデータスキーマに基づく実データの集合から各実データを一意に識別するための識別情報を保持する各システムに対応したデータ定義保持部と、前記各システムに対応したデータ定義保持部から前記各実データの識別情報およびデータ形式の定義を取得してユーザにシステム間の実データの対応関係と、対応関係のある実データ間の各データ項目の対応関係を定義させる画面を表示するマッピング定義編集部と、
前記マッピング定義編集部とで定義された実データの対応関係をインスタンスマッピング定義として、各データ項目の対応関係をスキーママッピング定義として保持するマッピング定義保持部と、
を有することを特徴とするデータ連携装置。
In the data linkage device that converts and copies the data format between systems in order to ensure data consistency when holding the same data with different data formats between multiple systems,
A data definition holding unit corresponding to each system that holds identification information for uniquely identifying each actual data from a set of actual data based on the data schema defined by the data format handled by each system, and each of the above The identification information and data format definition of each actual data is obtained from the data definition holding unit corresponding to the system, and the correspondence of the actual data between the systems and the correspondence of each data item between the corresponding actual data are obtained to the user. A mapping definition editor that displays a screen for defining relationships;
A mapping definition holding unit that holds the correspondence of actual data defined by the mapping definition editing unit as an instance mapping definition, and holds the correspondence of each data item as a schema mapping definition;
A data linkage apparatus comprising:
前記データ定義保持部に保持されるデータスキーマ及び識別情報を用いて対象システムから実データの集合を取得するシステムデータ取得部と、
前記システムデータ取得部でひとつのシステムから取得した実データを前記インスタンスマッピング定義を用い、他のシステムの実データを一意に識別し、それら実データのデータスキーマ間の関係から前記マッピング定義保持部に保持されているスキーママッピング定義を選択するインスタンスマッピング処理部と、
前記インスタンスマッピング処理部から前記選択されたスキーママッピング定義情報とそれらの実データを合わせて受信し、前記スキーママッピング定義情報を元に前記マッピング定義保持部から該当するスキーママッピング定義を取得するとともに、同定義を用いて、受信した前記ひとつのシステムの実データに含まれるデータ項目を前記他のシステムの実データのデータ項目に変換するスキーママッピング処理部と、
前記スキーママッピング処理部からの変換後実データの集合を受信し、前記データ定義保持部に保持されるデータスキーマ及び識別情報を用いて対象システムに対して受信した実データの集合を送信するシステムデータ更新部と、
を有することを特徴とするデータ連携装置。
A system data acquisition unit that acquires a set of actual data from the target system using the data schema and identification information held in the data definition holding unit;
The actual data acquired from one system by the system data acquisition unit uses the instance mapping definition to uniquely identify the actual data of other systems, and the relationship between the data schemas of the actual data is stored in the mapping definition holding unit. An instance mapping processing part for selecting the stored schema mapping definition;
The selected schema mapping definition information and their actual data are received together from the instance mapping processing unit, and the corresponding schema mapping definition is acquired from the mapping definition holding unit based on the schema mapping definition information. Using a definition, a schema mapping processing unit for converting a data item included in the received actual data of the one system into a data item of the actual data of the other system;
System data for receiving a set of converted real data from the schema mapping processing unit and transmitting the received set of real data to the target system using the data schema and identification information held in the data definition holding unit Update section,
A data linkage apparatus comprising:
前記データ定義保持部において、
前記実データの集合が、配列データである場合に、前記配列データの配列番号と前記データスキーマのスキーマ名称を前記識別情報として用いることを特徴とする請求項1に記載するデータ連携装置。
In the data definition holding unit,
The data linkage apparatus according to claim 1, wherein when the set of actual data is array data, an array number of the array data and a schema name of the data schema are used as the identification information.
前記データ定義保持部において、
前記データスキーマにデータ項目としてID属性を追加し、前記データスキーマに基づく実データのID属性に対し、あらかじめ実データを一意に識別可能なID値を設定しておき、前記ID値を前記識別情報として用いることを特徴とする請求項1に記載するデータ連携装置。
In the data definition holding unit,
An ID attribute is added as a data item to the data schema, an ID value capable of uniquely identifying the actual data is set in advance for the ID attribute of the actual data based on the data schema, and the ID value is set as the identification information. The data linkage apparatus according to claim 1, wherein the data linkage apparatus is used as a data linkage apparatus.
前記データ連携装置において、前記インスタンスマッピング定義にデータ形式の変換タイミングを指定する項目を追加し、前記インスタンスマッピング処理において、前記データ形式の変換タイミングを決定する処理を追加し、
前記インスタンスマッピング処理において決定した前記データ形式の変換タイミングを用いて、実データの対応関係毎にタイミングを変えて前記スキーママッピング処理を行うことを特徴とする請求項2に記載するデータ連携装置。
In the data linkage apparatus, an item for specifying the conversion timing of the data format is added to the instance mapping definition, and in the instance mapping process, a process of determining the conversion timing of the data format is added,
The data linkage apparatus according to claim 2, wherein the schema mapping process is performed by changing the timing for each correspondence relationship of actual data using the conversion timing of the data format determined in the instance mapping process.
前記データ連携装置において、前記インスタンスマッピング定義にデータ形式の変換対象データ項目を指定する項目を追加し、前記インスタンスマッピング処理において、前記データ形式の変換対象データ項目を決定する処理を追加し、
前記インスタンスマッピング処理において決定した前記データ形式の変換対象データ項目を用いて、実データの対応関係毎に全データ項目を対象または更新有の差分データ項目のみ対象として前記スキーママッピング処理行うことを特徴とする請求項2または請求項5に記載するデータ連携装置。
In the data linkage apparatus, an item for specifying a data format conversion target data item is added to the instance mapping definition, and in the instance mapping process, a process for determining the data format conversion target data item is added,
Using the conversion target data item in the data format determined in the instance mapping process, the schema mapping process is performed for all data items for each correspondence of actual data or only for differential data items with updates. The data linkage device according to claim 2 or 5.
請求項1に記載のデータ連携装置において、
変換元データのデータ項目に対して、変換先データのデータ項目が複数対応する場合、
前記データ定義保持部は、
前記スキーママッピング定義において、前記変換元データのデータ項目と、対応する前記変換先データの開始位置および大きさとを対応付けて記憶し、
前記スキーママッピング処理部は、
前記変換元データの各データ項目について、前記開始位置から前記大きさで指定された量のデータを取得し、前記スキーママッピング定義における前記変換先の対応するデータ項目にコピーすること
を特徴とするデータ連携装置。
In the data cooperation device according to claim 1,
When multiple data items of conversion destination data correspond to data items of conversion source data,
The data definition holding unit
In the schema mapping definition, the data item of the conversion source data is stored in association with the start position and size of the corresponding conversion destination data,
The schema mapping processing unit
For each data item of the conversion source data, data of the amount specified by the size from the start position is acquired and copied to the corresponding data item of the conversion destination in the schema mapping definition Cooperation device.
請求項7に記載のデータ連携装置において、
変換先データのデータ項目に対して、変換元データのデータ項目が複数対応する場合、
前記スキーママッピング処理部は、前記複数の変換元データのデータ項目を結合して、前記スキーママッピング定義における前記変換先の対応するデータ項目にコピーすること
を特徴とするデータ連携装置。
In the data cooperation device according to claim 7,
When multiple data items of conversion source data correspond to data items of conversion destination data,
The data mapping apparatus, wherein the schema mapping processing unit combines the data items of the plurality of conversion source data and copies the data items to the corresponding data items of the conversion destination in the schema mapping definition.
請求項1に記載のデータ連携装置において、
変換元データおよび変換先データに含まれるデータ項目が、さらに複数のデータ項目をもつ階層型データ項目である場合、
前記階層型データ項目に関するスキーママッピングをサブスキーママッピングとして定義し、前記サブスキーママッピングに一意なIDを付与し、
前記データ定義保持部において、
前記スキーママッピング定義に、スキーママッピングを一意に識別するIDを指定する項目と、変換元データおよび変換先データに含まれるデータ項目のデータ型を指定する項目と、前記サブスキーママッピングのIDを指定する項目を追加し、
前記スキーママッピング処理部において、
前記階層型データ項目のデータの変換時に、前記サブスキーママッピングのIDを指定して再帰的にスキーママッピング処理を実行する
ことを特徴とするデータ連携装置。
In the data cooperation device according to claim 1,
If the data items included in the conversion source data and conversion destination data are hierarchical data items that have more than one data item,
Define a schema mapping for the hierarchical data item as a subschema mapping, assign a unique ID to the subschema mapping,
In the data definition holding unit,
In the schema mapping definition, an item for specifying an ID for uniquely identifying the schema mapping, an item for specifying a data type of a data item included in conversion source data and conversion destination data, and an ID for the sub schema mapping are specified. Add items,
In the schema mapping processing unit,
A data linkage apparatus that recursively executes a schema mapping process by designating an ID of the subschema mapping at the time of conversion of data of the hierarchical data item.
JP2010267975A 2010-04-27 2010-12-01 System cooperation apparatus Pending JP2011248852A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010267975A JP2011248852A (en) 2010-04-27 2010-12-01 System cooperation apparatus

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2010101604 2010-04-27
JP2010101604 2010-04-27
JP2010267975A JP2011248852A (en) 2010-04-27 2010-12-01 System cooperation apparatus

Publications (1)

Publication Number Publication Date
JP2011248852A true JP2011248852A (en) 2011-12-08

Family

ID=45413986

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010267975A Pending JP2011248852A (en) 2010-04-27 2010-12-01 System cooperation apparatus

Country Status (1)

Country Link
JP (1) JP2011248852A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013124985A1 (en) * 2012-02-22 2013-08-29 三菱電機株式会社 Data linkage device, method for changing data linkage, and program for changing data linkage
WO2013141308A1 (en) * 2012-03-22 2013-09-26 日本電気株式会社 Distributed storage system, storage control method and program
JP2014044532A (en) * 2012-08-24 2014-03-13 Nippon Telegr & Teleph Corp <Ntt> Distributed information synchronization system and distributed information synchronization method
CN107391607A (en) * 2017-06-30 2017-11-24 天脉聚源(北京)传媒科技有限公司 A kind of method and device for cooperateing with change associated data item
WO2021205651A1 (en) * 2020-04-10 2021-10-14 日本電信電話株式会社 Information processing system, information processing method, data processing device, and program

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013124985A1 (en) * 2012-02-22 2013-08-29 三菱電機株式会社 Data linkage device, method for changing data linkage, and program for changing data linkage
WO2013141308A1 (en) * 2012-03-22 2013-09-26 日本電気株式会社 Distributed storage system, storage control method and program
JPWO2013141308A1 (en) * 2012-03-22 2015-08-03 日本電気株式会社 Distributed storage system, storage control method and program
JP2014044532A (en) * 2012-08-24 2014-03-13 Nippon Telegr & Teleph Corp <Ntt> Distributed information synchronization system and distributed information synchronization method
CN107391607A (en) * 2017-06-30 2017-11-24 天脉聚源(北京)传媒科技有限公司 A kind of method and device for cooperateing with change associated data item
CN107391607B (en) * 2017-06-30 2023-06-23 北京拉近众博科技有限公司 Method and device for cooperatively changing associated data items
WO2021205651A1 (en) * 2020-04-10 2021-10-14 日本電信電話株式会社 Information processing system, information processing method, data processing device, and program
JPWO2021205651A1 (en) * 2020-04-10 2021-10-14
JP7440796B2 (en) 2020-04-10 2024-02-29 日本電信電話株式会社 Information processing system, information processing method, data processing device, and program

Similar Documents

Publication Publication Date Title
JP4907610B2 (en) Software configuration management method and system
CN102664746B (en) For the configuration management sound and consistent in the overall situation of each component of distributive data center
US8005788B2 (en) System and method for legacy system component incremental migration
CN110147369A (en) Data separating and write-in in multiple lease database system redirect
CN109947767A (en) System in multiple lease database system shares type
CN110019215A (en) Key schema management in multiple lease database system
JP4354314B2 (en) Server difference management system and information processing apparatus control method
JP2008269136A (en) Device and method for supporting model drive type development
JP2011248852A (en) System cooperation apparatus
US11853794B2 (en) Pipeline task verification for a data processing platform
CN108427383B (en) Engineering device, engineering method, and storage medium
WO2018021437A1 (en) Operation management apparatus, operation management method, and operation management system
JP2008225898A (en) Conversion device, conversion program, and conversion method
JP3712984B2 (en) Work progress control device and method, work progress control program, and recording medium recording the program
JP2003030016A (en) Method and system for converting data, and processing program therefor
CN115220697A (en) API development management method, device, vehicle and storage medium
CN113918627A (en) Data conversion method, device and readable storage medium
JP4738145B2 (en) Engineering database system and its handling method
JP2010128776A (en) Apparatus and method for automatic maintenance of portable terminal
US7076506B2 (en) Apparatus for managing electronic data, program code and the recording medium thereof, and system for managing electronic data
US20060221964A1 (en) Data relay method and data relay apparatus
JP2008027340A (en) Web service design method and device
JP5316273B2 (en) Program automatic generation apparatus and program automatic generation method
CN110321138A (en) A kind of program updates, moving method and device
JP7406012B2 (en) Design product management system and design product management method

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20120521