(57)【要約】【課題】連携元のデータと連携先のデータの組合せごとに個別のデータ連携を行う構成を実現する。【解決手段】マスタ情報管理装置１００は、連携元のデータである入力テーブルに含まれる複数のデータ項目と、連携先のデータである投入対象テーブルに含まれる複数のデータ項目との対応関係が示されるリソース定義生成要求を受信する。また、マスタ情報管理装置１００は、入力テーブルのデータ項目の値を投入対象テーブルの対応関係にあるデータ項目にマッピングするリソースを、リソース定義生成要求と、リソースの動作ロジックが記述されたテンプレートとに基づいて、生成する。【選択図】図１
2015204057.tif 000002
【特許請求の範囲】
【請求項１】
連携元のデータである連携元データに含まれる複数のデータ項目と、連携先のデータである連携先データに含まれる複数のデータ項目との対応関係が示される対応関係情報を受信する対応関係情報受信部と、
前記連携元データのデータ項目の値を前記連携先データの対応関係にあるデータ項目にマッピングする連携プログラムを、前記対応関係情報と、前記連携プログラムの動作ロジックが記述されたテンプレートとに基づいて、生成するプログラム生成部とを有することを特徴とするデータ処理装置。
【請求項２】
前記対応関係情報受信部は、
前記連携元データに含まれる特定のデータ項目に対して、前記特定のデータ項目の値を変換するための変換ルールが定義されている対応関係情報を受信し、
前記プログラム生成部は、
前記連携元データの前記特定のデータ項目の値を前記変換ルールに従って変換し、変換により得られた変換値を前記連携先データの対応関係にあるデータ項目にマッピングする連携プログラムを生成することを特徴とする請求項１に記載のデータ処理装置。
【請求項３】
前記対応関係情報受信部は、
複数の変換用データに含まれる複数のデータ項目の値を参照する参照順序と、前記参照順序に従って前記複数の変換用データの前記複数のデータ項目の値を順次参照して前記変換値を得ることが記述される変換ルールが定義されている対応関係情報を受信し、
前記プログラム生成部は、
前記参照順序に従って前記複数の変換用データの前記複数のデータ項目の値を順次参照して前記変換値を得て、前記変換値を前記連携先データの対応関係にあるデータ項目にマッピングする連携プログラムを生成することを特徴とする請求項２に記載のデータ処理装置。
【請求項４】
前記プログラム生成部は、
前記参照順序において前後の関係にある変換用データの対を前記変換ルールから導出するとともに、変換用データの対ごとに、参照元のデータ項目と参照先のデータ項目とが示される参照関係情報を生成し、
前記参照関係情報に従って前記複数の変換用データの前記複数のデータ項目の値を順次参照して前記変換値を得て、前記変換値を前記連携先データの対応関係にあるデータ項目にマッピングする連携プログラムを生成することを特徴とする請求項３に記載のデータ処理装置。
【請求項５】
前記プログラム生成部は、
前記連携元データに含まれる前記複数のデータ項目と、前記変換ルールによる変換の対象となるデータ項目に対して最初に参照される変換用データに含まれるデータ項目とが示されるワークデータを生成し、生成したワークデータを用いて前記連携プログラムを生成することを特徴とする請求項３に記載のデータ処理装置。
【請求項６】
前記データ処理装置は、更に、
前記連携先データに含まれる複数のレコードについて、レコードごとの更新状況が示されるレコード情報を記憶するレコード情報記憶部と、
前記レコード情報に示されるレコードごとの更新状況に基づき、前記連携先データに含まれるレコードの中から前記連携先データ外のデータであるサブデータに移動させるレコードを選択し、選択したレコードを前記サブデータに移動させるレコード移動部とを有することを特徴とする請求項１に記載のデータ処理装置。
【請求項７】
前記レコード情報記憶部は、
更新状況として、最新の更新時刻及び更新回数のうちの少なくともいずれかがレコードごとに示されるレコード情報を記憶し、
前記レコード移動部は、
前記レコード情報に示される最新の更新時刻及び更新回数のうちの少なくともいずれかに基づき、前記サブデータに移動させるレコードを選択することを特徴とする請求項６に記載のデータ処理装置。
【請求項８】
前記レコード情報記憶部は、
レコードごとの優先度が示されるレコード情報を記憶し、
前記レコード移動部は、
前記レコード情報に示される優先度に基づき、前記サブデータに移動させるレコードを選択することを特徴とする請求項６に記載のデータ処理装置。
【請求項９】
前記レコード情報記憶部は、
前記連携先データに含まれる複数のレコード及び前記サブデータに含まれる複数のレコードについて、レコードごとの更新状況が示されるレコード情報を記憶し、
前記レコード移動部は、
前記レコード情報に示されるレコードごとの更新状況に基づき、前記サブデータに含まれるレコードの中から前記連携先データに移動させるレコードを選択し、選択したレコードを前記連携先データに移動させることを特徴とする請求項６に記載のデータ処理装置。
【請求項１０】
プログラム生成部は、
前記連携先データの階層構造を解析して前記連携先データにおける階層順に従って前記連携元データのデータ項目の値を前記連携先データの対応関係にあるデータ項目にマッピングする連携プログラムを生成することを特徴とする請求項１に記載のデータ処理装置。
【請求項１１】
コンピュータが、連携元のデータである連携元データに含まれる複数のデータ項目と、連携先のデータである連携先データに含まれる複数のデータ項目との対応関係が示される対応関係情報を受信する対応関係情報受信処理と、
前記コンピュータが、前記連携元データのデータ項目の値を前記連携先データの対応関係にあるデータ項目にマッピングする連携プログラムを、前記対応関係情報と、前記連携プログラムの動作ロジックが記述されたテンプレートとに基づいて、生成するプログラム生成処理とを有することを特徴とするデータ処理方法。
【請求項１２】
連携元のデータである連携元データに含まれる複数のデータ項目と、連携先のデータである連携先データに含まれる複数のデータ項目との対応関係が示される対応関係情報を受信する対応関係情報受信処理と、
前記連携元データのデータ項目の値を前記連携先データの対応関係にあるデータ項目にマッピングする連携プログラムを、前記対応関係情報と、前記連携プログラムの動作ロジックが記述されたテンプレートとに基づいて、生成するプログラム生成処理とをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ連携を行う技術に関する。
【背景技術】
【０００２】
ここでは、複数の外部システム（業務用の装置、アプリケーションを想定）で利用されるマスタ情報を一元で管理するマスタ情報管理技術を説明する。
マスタ情報とは、各種業務装置やアプリケーションで利用される基礎的な情報及び情報を集約した帳票、ファイル、データベース等を指す。
マスタ情報の例としては、就業管理用システムであれば、社員マスタ、就業日マスタが該当する。
マスタ情報管理システムは、上述のマスタ情報の登録・変更・削除といった管理や、外部システムのマスタ情報のインポート処理、外部システムへのマスタ情報のエクスポート処理を行うシステムである。
この中で、マスタ情報のインポート／エクスポート処理を特にマスタ連携処理という。
【０００３】
マスタ連携では、新規にシステムを構築する場合だけでなく、既存の外部システムで管理されているマスタ情報をインポートしたり、別の外部システムに提供するためにマスタ情報をエクスポートしたりする必要がある。
このような外部システムとの連携は、例えば、複数の既存システムを統合する場合や、新たにマスタ情報を利用するシステムが追加される場合や、連携するデータのフォーマットが変更になった場合等に行われる。
そのために、連携パターンが増えた場合でも容易に連携先を追加する、連携パターンを変更できることが求められる。
また、合わせて様々なシステムとの連携を行うため性能を担保する必要がある。
【０００４】
従来技術では、連携パターンを設定するシステムエンジニア（以下、ＳＥ）に対して、ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を提供し、連携処理パターンとその処理の操作量見積をデータとして保持し、ＳＥの作成したデータ連携定義を評価し、代替案を提示する方法により、性能を担保したうえでのデータ連携パターンの自動生成を行っていた（例えば、特許文献１）。
【０００５】
また、ＧＵＩツールを用いて連携パターンをＧＵＩで構築し、様々なシステムの連携をコーディングレスで実現する方法も提案されている（例えば、非特許文献１）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１１−１９８３２０号公報
【非特許文献】
【０００７】
【非特許文献１】三菱電機インフォメーションテクノロジ著、「ＰｏｗｅｒＣｅｎｔｅｒカタログ」、２０１１年２月発行
【発明の概要】
【発明が解決しようとする課題】
【０００８】
従来の技術では、ＤＢの構造上の制約により複雑な結合を行う必要があり計算量が増大する可能性がある。
例えば、複数の外部機器のマスタ情報を扱えるようにする必要があるが、外部機器ごとにキー項目が異なってしまう可能性がある。
このような場合、データ連携のマッピング定義情報の自動レコメンドを実施することで性能を担保しつつ自動でデータ連携定義を生成しているが、そもそもＤＢの構造部分に関して性能問題が存在する場合に対処ができない。
つまり、連携元データと連携先データの組合せが複数存在する場合は、連携元データのデータ構造と連携先データのデータ構造に対応させて、連携元データと連携先データの組合せごとに個別のデータ連携を行う必要があるが、従来技術では、組合せごとの個別のデータ連携を行うことが困難である。
【０００９】
本発明は、このような点に鑑みたものであり、連携元データと連携先データの組合せごとに個別のデータ連携を行う構成を実現することを主な目的とする。
【課題を解決するための手段】
【００１０】
本発明に係る。
【発明の効果】
【００１１】
本発明によれば、連携元データと連携先データの組合せに対応させて連携プログラムを生成するため、連携元データと連携先データの組合せごとに個別のデータ連携を行うことができる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態１に係るシステム構成例を示す図。
【図２】実施の形態１に係るマスタ情報管理装置の構成例を示す図。
【図３】実施の形態１に係るリソース定義生成部の構成例を示す図。
【図４】実施の形態１に係るリソース定義生成要求の例を示す図。
【図５】実施の形態１に係る連携ルール情報の例を示す図。
【図６】実施の形態１に係る入力項目情報の例を示す図。
【図７】実施の形態１に係る精査情報の例を示す図。
【図８】実施の形態１に係るマッピング情報の例を示す図。
【図９】実施の形態１に係るマッピング情報の例を示す図。
【図１０】実施の形態１に係るリソース定義管理部の構成例を示す図。
【図１１】実施の形態１に係るリソース実行部の構成例を示す図。
【図１２】実施の形態１に係るリソース生成要求の例を示す図。
【図１３】実施の形態１に係るリソースの例を示す図。
【図１４】実施の形態１に係るマスタ連携要求の例を示す図。
【図１５】実施の形態１に係るテンプレート管理部の構成例を示す図。
【図１６】実施の形態１に係るマスタ情報管理部の構成例を示す図。
【図１７】実施の形態１に係るリソース定義生成部の動作例を示すフローチャート図。
【図１８】実施の形態１に係るマッピングメタ情報の例を示す図。
【図１９】実施の形態１に係るワークテーブルメタ情報の例を示す図。
【図２０】実施の形態１に係る索引メタ情報の例を示す図。
【図２１】実施の形態１に係るワークテーブル生成文の例を示す図。
【図２２】実施の形態１に係る索引生成文の例を示す図。
【図２３】実施の形態１に係るリソース実行部の動作例を示すフローチャート図。
【図２４】実施の形態１に係るリソースの動作例を示すフローチャート図。
【図２５】実施の形態１に係るリソースの動作例を示す図。
【図２６】実施の形態１に係るリソースの動作例を示す図。
【図２７】実施の形態２に係るマスタ情報管理部の構成例を示す図。
【図２８】実施の形態２に係るマスタ情報更新ヒストリ情報の例を示す図。
【図２９】実施の形態２に係るマスタ情報移動ルールの例を示す図。
【図３０】実施の形態２に係るリソース監視部の動作例を示すフローチャート図。
【図３１】実施の形態２に係るテーブルの更新例を示す図。
【図３２】実施の形態３に係る組織マスタ情報の例を示す図。
【図３３】実施の形態３に係るマスタ情報管理部の構成例を示す図。
【図３４】実施の形態３に係るマスタ情報階層テーブルの例を示す図。
【図３５】実施の形態３に係る組織入力データ及び組織ワークテーブルの例を示す図。
【図３６】実施の形態１〜３に係るマスタ情報管理装置のハードウェア構成例を示す図。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態について図面を参照して説明する。
【００１４】
実施の形態１．
本実施の形態では、マスタ連携定義の情報を元にマスタ情報のデータベースの構造まで含めて最適化を行うことで、従来技術の課題を解決する構成を説明する。
より具体的には、本実施の形態では、新規にＳＥがマスタ連携の連携ルールの定義を設定することで、マッピングを行うためのＩ／Ｆ（インタフェース）及びロジックを生成するための構成を示す。
【００１５】
図１は、本実施の形態に係るシステム構成例を示す。
【００１６】
図１において、端末００１はマスタ情報管理装置１００を利用するためにＳＥが使用する操作端末であり、パーソナルコンピュータ、モバイル端末、タブレット端末等を想定している。
【００１７】
外部機器０１１、０１２は、マスタ情報管理装置１００との連携を実施する機器であり、マスタ情報管理装置１００に対してマスタ情報を提供する機器、マスタ情報管理装置１００からマスタ情報の提供を受ける機器である。
また、外部機器０１１、０１２はパーソナルコンピュータ、モバイル端末、タブレット端末、組み込みシステム等を想定しており、マスタ情報管理装置１００とのインタフェースを持つものであれば何でもよい。
なお、外部機器の数は任意の数を想定しており、１個のケースもありうるし、複数個のケースもありうる。
図１では説明の都合により２個の場合を想定する。
【００１８】
ネットワーク００３は、端末００１、外部機器０１１、０１２がマスタ情報管理装置１００を利用する際に用いる通信路であり、シリアルケーブル、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）、インターネットおよびＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）であってもよい。
【００１９】
マスタ情報管理装置１００は、端末００１からのマスタ連携設定情報を元に、外部機器０１１、０１２とマスタ連携を実施する。
マスタ情報管理装置１００は、データ処理装置の例に相当する。
【００２０】
ここで、本実施の形態に係るマスタ情報管理装置１００の動作の概要を説明する。
【００２１】
マスタ情報管理装置１００は、端末００１からリソース定義生成要求を受信する。
リソース定義生成要求には、連携元データである入力テーブルに含まれる複数のデータ項目と、連携先データである投入対象テーブルに含まれる複数のデータ項目との対応関係が示されるマッピング情報（対応関係情報の例）が含まれる。
また、マスタ情報管理装置１００は、入力テーブルのデータ項目の値を投入対象テーブルの対応関係にあるデータ項目にマッピングするプログラムであるリソース（連携プログラム）の動作ロジックが記述されたテンプレートを保有する。
マスタ情報管理装置１００は、リソース定義生成要求に含まれるマッピング情報と、テンプレートに記述された動作ロジックとに基づき、入力テーブルのデータ項目の値を投入対象テーブルの対応関係にあるデータ項目にマッピングするリソースを生成する。
そして、マスタ情報管理装置１００は、端末００１からマスタ連携要求を受信した際に、リソースを実行して、入力テーブルのデータ項目の値を投入対象テーブルの対応関係にあるデータ項目にマッピングする。
【００２２】
次に、マスタ情報管理装置１００の構成例を説明する。
マスタ情報管理装置１００は、図２に示すように、リソース定義生成部１１０、リソース定義管理部１２０、リソース実行部１３０、テンプレート管理部１４０、マスタ情報管理部１５０を有する。
【００２３】
マスタ情報管理装置１００において、リソース定義生成部１１０は、端末００１から受け付けるリソース定義生成要求を元にテンプレート管理部１４０内の情報を利用しリソース定義情報を生成し、マスタ情報管理部１５０内で管理される情報の再構築を行い、リソース定義情報をリソース定義管理部１２０へ格納する。
リソース定義生成部１１０は、対応関係情報受信部の例に相当する。
リソース定義生成部１１０は、また、後述のリソース実行部１３０とともに、プログラム生成部の例に相当する。
【００２４】
リソース定義管理部１２０は、リソース定義生成部１１０で生成されたリソース定義情報を管理する機構を有する。
【００２５】
リソース実行部１３０は、端末００１から受け付けるリソース実行要求を元にリソース定義管理部１２０内のリソース定義情報を元にリソースを生成する機能を有する。
また、リソース実行部１３０は、生成されたリソースにより外部機器０１１、０１２とマスタ情報管理部１５０とを連携させマスタ情報の取り込み・取出しを実現する。
更に、リソース実行部１３０は、マスタ情報連携されるデータ量を元にマスタ情報連携処理の性能を監視し、必要に応じてマスタ情報管理部１５０内の情報の更新を行う。
リソース実行部１３０は、前述のリソース定義生成部１１０とともに、プログラム生成部の例に相当する。
【００２６】
テンプレート管理部１４０は、リソース定義生成部１１０でリソース定義情報を生成するためのフォーマット群（テンプレート）を管理する。
テンプレートには、リソースの動作ロジックが記述されている。
【００２７】
マスタ情報管理部１５０は、管理対象となるマスタ情報を管理する。
【００２８】
なお、図２中の各要素を複数存在させ、冗長構造を持たせることが可能である。
【００２９】
図３は、リソース定義生成部１１０の構成例を示す。
リソース定義生成部１１０は、リソース定義設定受付部１１１、設定解釈部１１２、マスタ情報管理スキーマ更新部１１３、リソース定義構成部１１４、リソース定義情報保存部１１５を有する。
【００３０】
リソース定義生成部１１０において、リソース定義設定受付部１１１は、端末００１からのリソース定義生成要求を受け付ける。
【００３１】
設定解釈部１１２は、リソース定義生成要求を分析する。
【００３２】
マスタ情報管理スキーマ更新部１１３は、リソース定義生成要求の分析結果を元にテンプレート管理部１４０内のテンプレートからマスタ情報管理部１５０の更新に必要なマスタ情報管理部更新要求を生成し、マスタ情報管理部１５０の更新を行う。
【００３３】
リソース定義構成部１１４は、リソース定義生成要求の分析結果を元にリソース定義情報を生成する機能を有する。
【００３４】
リソース定義情報保存部１１５は、リソース定義構成部１１４で生成したリソース定義情報をリソース定義管理部１２０に保存する機能を有する。
【００３５】
図４のリソース定義生成要求２０１は、端末００１から送信されるリクエストの一例である。
【００３６】
リソース定義生成要求２０１は、マスタ連携を行うリソースの名称、連携元、連携先の情報、マスタ連携のルール情報を含む。
なお、本実施の形態では、リソース定義生成要求２０１は、ＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）形式を利用するものとしているが、プロトコルに関してＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｃｏｔｏｌ）、ＪＭＳ（Ｊａｖａ（登録商標）  Ｍｅｓｓａｇｅ  Ｓｅｒｖｉｃｅ）等であっても、上記内容を持たせることが出来れば代用可能である。
また、リソース定義生成要求に関してＣＵＩ（Ｃｈａｒａｃｔｅｒ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）でなくても、ＷｅｂアプリケーションやＪａｖａＡｐｐｌｅｔ（登録商標）等によるＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）によって端末００１から操作要求を受け付けることが出来れば代用可能である。
【００３７】
リソース定義生成要求２０１は、リソース名称情報２０２、連携元情報２０３、連携先情報２０４、連携ルール情報２０５を有する。
【００３８】
リソース名称情報２０２は、連携用のリソースを識別するための情報であり、例えばＳＥが任意でつける文章であったり、ＩＤのような英数字の組み合わせによる文字列であったり、それらを組み合わせているものであったり、ＳＥがリソースを一意に識別できるための情報を保持する。
【００３９】
連携元情報２０３は、マスタ情報連携における連携元の機器の情報を有する。
なお、連携元の機器の情報としては、連携元の機器の名称や、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレス、ＭＡＣアドレス等、機器を特定できる情報であればよい。
【００４０】
連携先情報２０４は、マスタ情報連携における連携先の機器の情報を有する。
なお、連携先の機器の情報としては、連携先の機器の名称や、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレス、ＭＡＣアドレス等、機器を特定できる情報であればよい。
【００４１】
連携ルール情報２０５は、マスタ情報連携で実現したいデータの連携ルールを有する。
連携ルールの形式としては、ＣＳＶ形式、帳票形式等のテキストベースの形式であったり、図表により連携ルールを記載した形式であったり、どのような手順で連携元と連携先とのデータを連携させるのかが判明すればよい。
【００４２】
図５は、連携ルール情報２０５の一例を示す。
連携ルール情報２０５は、入力項目情報２０６、精査情報２０７、マッピング情報２０８、出力項目情報２０９を有する。
また、連携ルール情報２０５内の各要素は必要に応じて複数存在するケース、存在しないケースがある。
例えば、マスタ情報の入力のケースであれば出力項目情報２０９は存在しない。
【００４３】
図６は、入力項目情報２０６の一例を示す。
入力項目情報２０６は、マスタ情報連携の入力として外部機器から入力されるデータ項目の属性情報を保持し、属性名２０６ａには入力データ項目の名称、属性型２０６ｂには属性の型（整数型、文字型、桁数等）を指定している。
【００４４】
図７は、精査情報２０７の一例を示す。
精査情報２０７は、マスタ連携における精査条件を保持し、属性名２０７ａには精査対象の入力のデータ項目名、型精査条件２０７ｂには入力データ項目の型に対する精査条件、意味精査条件２０７ｃには入力されるデータに対する精査条件を指定する。
【００４５】
図８は、マッピング情報２０８の一例を示す。
マッピング情報２０８は、マスタ連携における入力項目とマスタ情報、もしくはマスタ情報と出力項目の対応関係を示したものである。
入力２０８ａは、入力テーブルに含まれるデータ項目の属性を示す。
投入対象テーブル２０８ｂは、マスタ情報の投入対象となるデータベースのテーブルカラムを示す。
補完データテーブル＃１（２０８ｃ）、補完データテーブル＃２（２０８ｄ）、補完データテーブル＃３（２０８ｅ）は、マスタ情報入力、出力の際に対象の入力データ及び投入対象テーブルに存在しないデータを用いる必要があるときに補完するデータが格納されているテーブルを示す。
補完データテーブル＃１（２０８ｃ）、補完データテーブル＃２（２０８ｄ）、補完データテーブル＃３（２０８ｅ）は、入力されるデータ項目の値を変換するためのデータであり、それぞれ変換用データの例に相当する。
例えば、「住所」の値は、型変換関数（）により「都道府県」の値に変換され、更に、補完データテーブル＃１（２０８ｃ）において当該「都道府県」の値と対応関係にある「営業所名」の値が抽出され、抽出された「営業所名」の値が投入対象テーブルの「担当営業所」のデータ項目にマッピングされる。
また、「契約コード」と同じ値の外部コードが補完テーブル＃３（２０８ｅ）で検索され、検索された外部コードと補完テーブル＃３（２０８ｅ）で対応関係にある内部コードの値が検索され、検索された内部コードと同じ値の契約ＩＤが補完データテーブル＃２（２０８ｄ）で検索され、検索された「契約ＩＤ」と補完データテーブル＃２（２０８ｄ）で対応関係にある「契約内容」の値が検索され、検索された「契約内容」の値が、投入対象テーブルの「契約内容」のデータ項目にマッピングされる。
このように、マッピング情報２０８には、補完データテーブルの複数のデータ項目を参照する参照順序と、参照順序に従って補完データテーブルの複数のデータ項目の値を順次参照して変換値を得ることが記述されている。
マッピング情報２０８には、図８に示すように、入力テーブルに含まれる複数のデータ項目と投入対象テーブルに含まれる複数のデータ項目との対応関係が示され（例えば、契約コードと契約内容）、また、入力テーブルに含まれる特定のデータ項目の値を変換するための変換ルール（例えば、外部コード→内部コード→［Ａ］→契約ＩＤ→契約内容→［Ｂ］→契約内容）が記述されており、マッピング情報２０８は対応関係情報の例に相当する。
【００４６】
また、マッピング情報２０８は、図９のようにマスタ連携における入力項目とマスタ情報、もしくはマスタ情報と出力項目の対応関係を線により用いて図視化したものでもよい。
図９内のマッピング情報２０８は、マスタ連携における入力項目とマスタ情報、もしくはマスタ情報と出力項目の対応関係を線図で示したものであり、連携元２０８ｆ、連携先２０８ｇ、矢印２０８ｈ、関数２０８ｉを有する。
連携元２０８ｆは、連携元システムから入力されるデータ項目（入力テーブルのデータ項目）を記載したものである。
連携元２０８ｇは、マスタを管理しているテーブルのデータ項目（投入対象テーブルのデータ項目）を記載したものである。
また、連携元２０８ｇは、連携の際に使用するデータが含まれるテーブルについでも記載する。
矢印２０８ｈは、データのフローを示す因子である。
矢印の根元から先に向かいデータが連携される。
関数２０８ｉは、ある一定のルールに従って入力した値を変換する因子である。
例えば、住所情報から都道府県のみを切り出す型変換関数や、内部ＩＤ用に自動採番する採番関数等を想定する。
【００４７】
図１０は、リソース定義管理部１２０の構成例である。
リソース定義管理部１２０は、リソース定義を有する。
なお、リソース定義の数はマスタ情報連携の連携パターンの数によって変更される。
図中の説明ではリソース定義が２つあるものとし、それぞれリソース定義Ａ１２１、リソース定義Ｂ１２２とする。
【００４８】
リソース定義Ａ１２１は、リソース名１２１ａ、ＵＲＬ情報１２１ｂ、マスタアドレス１２１ｃ、データ変換１２１ｄ、処理情報１２１ｅ、補足情報１２１ｆを保持する。
リソース名１２１ａは、リソースを識別するための名称である。
ＵＲＬ情報１２１ｂは、リソースを呼び出す際に必要なＩ／Ｆ（インタフェース）を示す。
マスタアドレス１２１ｃは、マスタ情報が格納されているデータベースのＩＰアドレス、ＭＡＣアドレス等の情報である。
データ変換情報１２１ｄは、入力されるデータ項目をリソース内の変数へのマッピング定義を示す情報を保持する。
処理情報１２１ｅは、マスタ情報のデータベースに対して発行する処理文である。
図中ではＳＱＬを想定して記載しているが、同様の処理を実現できるのであれば、ＳＱＬ以外の言語の使用も可能である。
補足情報１２１ｆは、マスタ情報のデータベースに対し、高速化のために必要な情報を保持する。
図中の例では、索引情報を保持する。
【００４９】
図１１は、リソース実行部１３０の構成例である。
リソース実行部１３０は、リソース生成部１３１、リソース運用部１３２、リソース監視部１３３を有する。
【００５０】
リソース生成部１３１は、端末００１のリソース生成要求を元にリソース定義管理部１２０で管理されているリソース定義情報からリソース運用部１３２で運用されるリソースを生成する。
【００５１】
リソース運用部１３２は、マスタ情報連携を実現するリソース情報を管理する。
リソース運用部１３２で管理されるリソースはマスタ連携先のパターン数により任意の個数を取るものとする。
図中の例では、リソースが２つあるものとし、リソースＡ１３２ａ、リソースＢ１３２ｂとする。
【００５２】
リソース監視部１３３は、リソース運用部１３２で処理されるマスタ情報のトラヒック、及びマスタ情報管理部１５０で管理されるマスタ情報の更新量、更新速度を監視し、更新性能が遅くなったものに対して、マスタ情報管理部１５０の再更新を実施する。
【００５３】
図１２は、端末００１からリソース生成部１３１に対し出されるリソース生成要求３０１の一例である。
【００５４】
リソース生成要求３０１は、生成対象のリソースの名称を含む。
なお、本実施の形態では、リソース生成要求３０１は、ＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）形式を利用するものとしているが、プロトコルに関してＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｃｏｔｏｌ）、ＪＭＳ（Ｊａｖａ（登録商標）  Ｍｅｓｓａｇｅ  Ｓｅｒｖｉｃｅ）等であっても、上記内容を持たせることが出来れば代用可能である。
また、リソース定義生成要求に関してＣＵＩ（Ｃｈａｒａｃｔｅｒ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）でなくても、ＷｅｂアプリケーションやＪａｖａＡｐｐｌｅｔ（登録商標）等によるＧＵＩによって端末００１から操作要求を受け付けることが出来れば代用可能である。
【００５５】
リソース生成要求３０１は、リソース名称情報３０２を有する。
【００５６】
リソース名称情報３０２は、連携用のリソースを識別するための情報であり、例えばＳＥが任意でつける文章であったり、ＩＤのような英数字の組み合わせによる文字列であったり、それらを組み合わせているものであったり、ＳＥがリソースを一意に識別できるための情報を保持する。
【００５７】
図１３は、リソースＡ１３２ａの構成例である。
リソースＡ１３２ａは、外部連携部１３２ｘ、データ変換部１３２ｙ、ＤＢ連携部１３２ｚを有する。
【００５８】
外部連携部１３２ｘは、外部機器からのマスタ連携要求を受け付ける。
【００５９】
データ変換部１３２ｙは、外部機器からの入力データを内部で扱う変数に代入する。
【００６０】
ＤＢ連携部１３２ｚは、内部変数をパラメータとして、マスタ情報管理部１５０に対しデータベース操作要求を出力する。
【００６１】
図１４は、マスタ連携要求４０１の例である。
マスタ連携要求４０１は外部機器からリソースに対してマスタ連携を実施する際に発行される要求であり、ヘッダ情報４０２、データ情報４０３を有する。
なお、本実施の形態では、マスタ連携要求４０１は、ＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）形式を利用するものとしているが、プロトコルに関してＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｃｏｔｏｌ）、ＪＭＳ（Ｊａｖａ（登録商標）  Ｍｅｓｓａｇｅ  Ｓｅｒｖｉｃｅ）等であっても、上記内容を持たせることが出来れば代用可能である。
また、リソース定義生成要求に関してＣＵＩ（Ｃｈａｒａｃｔｅｒ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）でなくても、ＷｅｂアプリケーションやＪａｖａＡｐｐｌｅｔ（登録商標）等によるＧＵＩによって端末００１から操作要求を受け付けることが出来れば代用可能である。
【００６２】
ヘッダ情報４０２は、リソースのＵＲＬ等アクセス先の情報を有する。
【００６３】
データ情報４０３は、外部機器から入力されるマスタ情報のデータ項目を有する。
【００６４】
図１５は、テンプレート管理部１４０の構成例である。
テンプレート管理部１４０は、リソース生成のために必要なテンプレートを管理するための機構である。
【００６５】
図１６は、マスタ情報管理部１５０の構成例である。
マスタ情報管理部１５０は、本実施の形態であつかうマスタ情報を管理するための機構である。
マスタ情報管理部１５０は、マスタ情報テーブル１５１、ワークテーブル１５２、マスタ情報補完テーブル１５３を有する。
【００６６】
マスタ情報テーブル１５１は、本装置で管理する対象のマスタ情報を管理するテーブルである。
例えば、顧客情報テーブルであったり、社員情報テーブルであったり、本装置で管理したいマスタの情報が用意されている。
【００６７】
ワークテーブル１５２は、本装置により外部機器から投入するマスタ情報を一時的に格納するためのテーブルであり、リソース定義ごとに用意される。
【００６８】
マスタ情報補完テーブル１５３は、外部機器から入力されるデータ項目をマスタ情報テーブル１５１に投入する際に、不足する情報が格納されているテーブルである。
【００６９】
次に、ＳＥがマスタ連携の連携情報を設定する場合について説明する。
【００７０】
端末００１はリソース定義生成部１１０のリソース定義設定受付部１１１に対し、リソース定義生成要求２０１を発行する。
リソース定義生成部１１０は、後述する手段によりリソース定義情報１２１を生成し、リソース定義管理部１２０に格納する。
【００７１】
図１７を元にリソース定義生成部１１０の動作について述べる。
【００７２】
リソース定義設定受付部１１１は受信したリソース定義生成要求２０１を取得し、設定解釈部１１２へと送信する（Ｓ１０１）。
【００７３】
設定解釈部１１２は、入力されたリソース定義生成要求２０１から図１８のマッピングメタ情報５００を生成する。
マッピングメタ情報５００は、例えば図８のマッピング情報２０８では入力２０８ａ、投入対象テーブル２０８ｂ等間のリンクであったり、図９のマッピング情報の矢印２０８ｈのリンクであったりをテキスト化したものである（Ｓ１０２）。
【００７４】
設定解釈部１１２は、入力されたリソース定義生成要求２０１内の入力項目情報２０６内で定義される項目すべて及び、マッピングメタ情報５００内で関数による出力、補完データテーブルを経由する項目について抽出し、図１９のワークテーブルメタ情報５１０を生成する（Ｓ１０３）。
【００７５】
図１９に示すように、ワークテーブルは、入力テーブルに含まれる複数のデータ項目と、マッピング情報２０８による変換の対象となるデータ項目に対して最初に参照される補完データテーブルに含まれるデータ項目とが示される。
ワークテーブルは、ワークデータの例に相当する。
【００７６】
設定解釈部１１２は、マッピングメタ情報５００で、補完データテーブルを経由する必要があるデータ項目それぞれを抽出し、索引メタ情報５２０を生成する（Ｓ１０４）。
つまり、設定解釈部１１２は、参照順序において前後の関係にある補完データテーブルの対をマッピングから導出するとともに、補完データテーブルの対ごとに、参照元のデータ項目と参照先のデータ項目とが示される索引メタ情報５２０（図２０）を生成する。
索引メタ情報５２０は、参照関係情報の例に相当する。
【００７７】
マスタ情報管理スキーマ更新部１１３は、設定解釈部１１２で生成されたワークテーブルメタ情報５１０の各項目について、ワークテーブル作成テンプレート１４１に属性値を埋め込み、ワークテーブル生成文６００（図２１）を生成する。
また、索引メタ情報５２０の各項目について索引作成テンプレート１４２に属性値を埋め込み、索引生成文６０１（図２２）を生成する（Ｓ１０５）。
【００７８】
マスタ情報管理スキーマ更新部１１３は、生成したワークテーブル生成文６００、索引生成文６０１をマスタ情報管理部１５０に対し発行し、マスタ情報管理部１５０内のマスタ情報管理データベースの構造を最適化する（Ｓ１０６）。
【００７９】
リソース定義構成部１１４は、設定解釈部１１２で作成したマッピングメタ情報５００の情報から操作文テンプレート１４３を用いてマスタ連携時に実際に行われるデータベース操作文を作成する。
作成方法としては、各マッピングメタ情報の項目から実テーブルへのコピーであれば１４３ａ、保管情報更新であれば１４３ｂ、というようにマッピング項目の内容ごとに分類することで操作文を生成する（Ｓ１０７）。
【００８０】
リソース定義構成部１１４は、Ｓ１０７で生成した操作文及び、リソース生成要求３０１から、リソース定義情報１２１を生成する（Ｓ１０８）。
【００８１】
リソース定義情報保存部１１５は、リソース定義構成部１１４で生成したリソース定義情報１２１をリソース定義管理部１２０へと保存する（Ｓ１０９）。
【００８２】
次に、ＳＥがリソースを起動する場合について説明する。
端末００１は、マスタ情報管理装置１００のリソース実行部１３０に対しリソース生成要求３０１を発行する。
リソース実行部１３０は、後述の手段によりリソースを生成する。
【００８３】
図２３を元にリソース実行部１３０の動作について説明する。
【００８４】
リソース実行部１３０は、リソース生成要求３０１を受信の後、リソース生成部１３１を起動する（Ｓ２０１）。
【００８５】
リソース生成部１３１は、受信したリソース生成要求３０１内のリソース名称情報３０２を取得し、対応するリソース定義情報をリソース定義管理部１２０から取得する（Ｓ２０２）。
【００８６】
リソース生成部１３１は、取得したリソース定義情報１２１を元にリソース１３２ａを生成する。
具体的には、ＵＲＬ情報１２１ｂから外部連携部１３２ｘのインタフェースを作成、データ変換情報１２１ｄからデータ変換部１３２ｙ、マスタアドレス１２１ｃ、処理情報１３１ｅからＤＢ連携部１３２ｚというようにリソースの実態を生成していく（Ｓ２０３）。
【００８７】
リソース生成部１３１はＳ２０３で生成したリソースをリソース運用部１３２に配置する。このようにすることで、リソースを外部から利用できるようにする（Ｓ２０４）。
【００８８】
次に、マスタ連携を行う場合の方法について説明する。
【００８９】
外部機器０１１は、マスタ情報管理装置１００のリソース運用部１３２内で保持しているリソース１３２ａに対し、マスタ連携要求４０１を発行する。
リソース１３２ａは、入手した連携要求情報を元にマスタ情報管理部１５０に対し、マスタ情報の更新を行う。
【００９０】
図２４を元にリソース１３２ａの動作について説明する。
【００９１】
リソース１３２ａの外部連携部１３２ｘは、外部機器０１１からマスタ連携要求４０１を受け付け、マスタ連携要求４０１のデータ情報４０３をデータ変換部１３２ｙへと受け渡す（Ｓ３０１）。
【００９２】
データ変換部１３２ｙは図２５のようにＳ３０１で入手したデータ情報４０３を、データ変換情報１２１ｄを元に内部変数へと格納し、ＤＢ連携部１３２ｚへと受け渡す（Ｓ３０２）。
【００９３】
ＤＢ連携部１３２ｚは、図２６のようにマスタ情報の更新を行う。
ＤＢ連携部１３２ｚは、Ｓ３０２で生成した内部変数を元にＳＱＬ処理を実施する。
まず、リソース定義生成部１１０により生成されたワークテーブル１５２に対してデータ投入を行う（Ｓ３０３）。
【００９４】
ＤＢ連携部１３２ｚは、リソース定義情報に設定されている索引情報を元にマスタ情報管理部１５０内のマスタ情報について索引を再度構築しなおす（Ｓ３０４）。
【００９５】
ＤＢ連携部１３２ｚは、処理情報を元にワークテーブル１５２内に必要な情報を追記処理、精査処理、実際のマスタ情報テーブル１５１へのコピーと一連のＳＱＬ処理を実行する（Ｓ３０５）。
このとき、ＤＢ連携部１３２ｚは、索引メタ情報５２０に従って複数の補完データテーブルの複数のデータ項目の値を順次参照して変換値を得て、変換値をワークテーブルの対応関係にあるデータ項目にマッピングし、ワークテーブルの内容を投入対象テーブルにマッピングする。
【００９６】
ＤＢ連携部１３２ｚは、一連のＤＢ操作処理を実施後ＤＢ処理が成功したのかどうかを判断する。
判断方法としては本ステップまでの処理で処理実行時にエラーが発生した場合や、ＳＱＬ処理の中でもしデータに不正があった場合はワークテーブル内のあるカラムにフラグを立てるということをし、フラグが立っているかどうかを判断することで実現する（Ｓ３０６）。
【００９７】
ＤＢ連携部１３２ｚは、Ｓ３０６でＤＢ処理成功と判断した場合、ＤＢのコミット処理を実施する（Ｓ３０７）。
【００９８】
ＤＢ連携部１３２ｚは、Ｓ３０６でＤＢ処理失敗と判断した場合は、ＤＢのロールバック処理を実施する（Ｓ３０８）。
【００９９】
ＤＢ連携部１３２ｚは、Ｓ３０６でＤＢ処理失敗した原因を外部機器０１１へと通知する（Ｓ３０９）。
【０１００】
本実施の形態により、データ連携のマッピングのロジックの自動生成及び、マッピング情報に基づいたＤＢスキーマの最適化を実施可能である。
従来技術ではＳＥ設定のマッピングからより最適なデータマッピング定義案を提案するシステムだが、データマッピング定義のみの工夫だけでは、マスタＤＢの複雑さによっては性能を担保できないことがある。
例えば、対象マスタテーブルのキー項目と連携ＣＳＶのデータのキー項目は必ずしも一致しないうえに、連携リソースごとにキー項目が異なるため、実際に結合キーを考慮したＤＢの再構築はできない。
このようなケースでもマスタ連携の設定ルールとマスタ情報を管理するマスタ情報管理部１５０を設定ルールの下に再構築することで、マッピングルールで隠蔽されるキー項目まで把握した上での最適化が実現できる。
【０１０１】
実施の形態２．
本実施の形態では、マスタ情報に関して更新頻度、更新回数等により性能劣化が発生する（経年劣化）に対処する構成を説明する。
つまり、本実施の形態では、マスタ情報管理装置１００のリソース監視部１３３により、マスタ連携処理を繰り替えし実施することで一定時間経過後に生じる性能劣化を防ぐ構成を説明する。
具体的には、リソース監視部１３３がマスタの更新頻度や更新状況を確認することでマスタ情報テーブル内の情報量を制御する。
本実施の形態に係るリソース監視部１３３は、レコード移動部の例に相当する。
【０１０２】
図２７は、実施の形態２に置けるマスタ情報管理部１５０の構成例を示しており、図１６と異なり、マスタ情報サブテーブル１５４、マスタ情報更新ヒストリ情報１５５、マスタ情報移動ルール１５６を有する。
【０１０３】
マスタ情報サブテーブル１５４はマスタ情報テーブル１５１と同一のスキーマを保持しているが、マスタ情報の中で更新頻度が低いもの、優先度の低いものを格納するためのテーブルである。
マスタ情報サブテーブル１５４は、サブデータの例に相当する。
【０１０４】
マスタ情報更新ヒストリ情報１５５は、マスタ情報管理部１５０内で管理されるレコードの更新履歴及び優先度を管理するテーブルである。
マスタ情報更新ヒストリ情報１５５は、このようにレコードごとの更新状況が示される情報であり、レコード情報の例に相当する。
このため、マスタ情報管理部１５０はレコード情報記憶部の例に相当する。
【０１０５】
マスタ情報移動ルール１５６は、マスタ情報テーブル１５１とマスタ情報サブテーブル１５４間の閾値を決定するためのルールであり、リソースごとの定義、システム全体での定義が可能である。
【０１０６】
なお、これらマスタ情報サブテーブル１５４、マスタ情報更新ヒストリ情報１５５、マスタ情報移動ルール１５６はリソース定義情報と同様の手段で設定可能であるものとする。
【０１０７】
図２８はマスタ情報更新ヒストリ情報１５５の構成例を示す。
マスタ情報更新ヒストリ情報１５５は、マスタ情報更新回数等を管理するテーブルを保持しており、属性値として、テーブル名１５５ａ、レコード１５５ｂ、更新日１５５ｃ、更新頻度１５５ｄ、優先度１５５ｅを保持している。
【０１０８】
テーブル名１５５ａは、マスタ情報管理部１５０内のテーブル名を示し、ヒストリ情報管理対象のテーブル名を示す。
レコード１５５ｂは、マスタ情報管理部１５０内のテーブル内のレコードを一意に特定する情報である。
更新日１５５ｃは、マスタ情報管理部１５０内のテーブル内のレコードの最新の更新日（更新時刻）に関する情報である。
更新頻度１５５ｄは、マスタ情報管理部１５０内のテーブル内のレコードの更新回数に関する情報である。
優先度１５５ｅは、マスタ情報管理部１５０内のテーブル内のレコードの優先度に関する情報である。
【０１０９】
図２９は、マスタ情報移動ルール１５６の構成例を示す。
リソース監視部１３３は、マスタ情報移動ルール１５６に従って、マスタ情報テーブル１５１のレコードをマスタ情報サブテーブル１５４に移動させる。
【０１１０】
なお、システム全体の構成に関しては上述の差分以外については実施の形態１の構成と同様である。
また、通常のシステムの動作としては実施の形態１での動作と同様である。
【０１１１】
本実施の形態の特徴的な動作である、リソース監視部１３３の動作について図３０を用いて説明する。
【０１１２】
リソース監視部１３３は、マスタ情報管理部１５０で管理されるマスタ情報について更新されたことを検知する（Ｓ４０１）。
【０１１３】
リソース監視部１３３は、Ｓ４０１で検知したマスタ情報の更新について、更新対象となったテーブル及びレコードについて、マスタ情報更新ヒストリ情報１５５内の更新日１５５ｃ、更新頻度１５５ｄを更新する（Ｓ４０２）。
【０１１４】
リソース監視部１３３は、マスタ情報更新ヒストリ情報１５５が更新されるとともに、マスタ情報移動ルール１５６と照らし合わせて、マスタ情報テーブル１５１と、マスタ情報サブテーブル１５４との振り分けを図３１のように実施する（Ｓ４０３）。
【０１１５】
図３１の例では、顧客テーブル１５１に対しては、優先度が高い順に４つのレコードを顧客テーブル１５１に残し、優先度が同じレコードは更新頻度が多いレコードが優先されるというマスタ情報移動ルール１５６が用いられる。
また、変換用テーブル１５３に対しては、更新頻度が１００以上のレコードを変換用テーブル１５３に残すというマスタ情報移動ルール１５６が用いられる。
この結果、顧客テーブル１５１では、リソース監視部１３３は、優先度３のレコードＭ０２を顧客サブテーブル１５４に移し、また、優先度２のレコードＭ０２とＭ０３では、更新頻度が多いレコードＭ０５を顧客テーブル１５１に残し、レコードＭ０２を顧客サブテーブル１５４に移す。
また、変換用テーブル１５３では、リソース監視部１３３は、更新頻度が１５０のレコード０１を変換用テーブル１５３に残し、更新頻度が４５のレコード０２を変換用サブテーブル１５４ａに移す。
【０１１６】
本実施の形態により、データ利用頻度の監視により、データ集積部分の履歴情報の対比によるサービスレベルの一定化が実現される。
仮に、利用頻度の低いユーザの情報がアクセスされた場合は、サブテーブルの参照が発生するため検索時間がより掛かるが、利用頻度の高いユーザの情報に関する劣化を防ぐことが可能となる。
本実施の形態では、実施の形態１でのＤＢの再設計を実施することでデータ連携全体としての性能を担保しつつ、リソース監視部による処理頻度観測と頻度の低いデータを退避するサブテーブルを組み合わせることで、運用期間中の性能劣化も防ぐことが可能となる。
マスタテーブルからサブテーブルへの退避について、マスタ情報の更新頻度情報から退避可能有無を判定することは可能だが、どのマスタテーブルについてデータ連携上優先度が高いかどうかということまでは、単純に頻度情報から類推はできない。
本実施の形態では、データの利用頻度をマスタ連携の設定情報に持ちまわすことで全体としての最適化が可能となる。
【０１１７】
なお、以上では、マスタテーブルからサブテーブルへの移動を説明したが、マスタ情報移動ルール１５６に従って、サブテーブルからマスタテーブルにレコードを移動させてもよい。
【０１１８】
実施の形態３．
本実施の形態では、連携するマスタ情報について、レコード間、及びテーブル間に依存関係が存在する場合に、依存関係を考慮したマスタ連携を実現するための形態・動作について説明する。
【０１１９】
連携するマスタ情報に、レコード間、及びテーブル間に依存関係が存在する場合がある。
例えば、図３２の組織マスタ情報７００のように、組織Ａ７０１の下に組織Ｂ７０２、組織Ｃ７０３が配され、組織Ｂ７０２の下に組織Ｄ７０４が配されるというように、マスタ情報が階層構造になっているケースが考えられる。
【０１２０】
このような場合、単純に一括してワークテーブルへ投入するような実施の形態１のような例では順序制御を考慮していないため、例えば、精査を行うと、上位階層のレコードが存在しないため存在チェックを行うような精査条件に引っかかることが起こりうる。
本実施の形態では、そのような条件をクリアするための構成を説明する。
【０１２１】
図３３は、実施の形態３におけるマスタ情報管理部１５０の構成例である。
実施の形態１との差分としてはマスタ情報階層テーブル１５７が存在する。
【０１２２】
図３４はマスタ情報階層テーブル１５７の構成例である。
マスタ情報階層テーブル１５７は、テーブル名１５７ａ、レコード１５７ｂ、レイヤ１５７ｃ、親１５７ｄを保持している。
テーブル名１５７ａは、マスタ情報管理部１５０内のテーブル名を示し、階層管理対象のテーブル名を示す。
レコード１５７ｂは、マスタ情報管理部１５０内のテーブル内のレコードを一意に特定する情報である。
レイヤ１５７ｃは、マスタ情報管理部１５０内のテーブル内のレコードがテーブル内で何階層目であるかを管理する。
親１５７ｄは、マスタ情報管理部１５０内のテーブル内のレコードの親を示す情報である。
【０１２３】
システム全体の構成に関しては上述の差分以外については実施の形態１の構成と同様である。
また、本実施の形態についても基本的な処理の流れは実施の形態１と同様であるため、差分のみを後述する。
【０１２４】
図１７のＳ１０８（リソース生成）において、リソース定義生成部１１０は、階層的な情報を扱う場合は、ワーク投入用の処理の前段に階層を上位から処理を行うための分岐を追加する。
図２４のＳ３０３（ワーク投入）において、リソース１３２ａは、入力テーブルのデータを階層順にソートし、上位階層のものから順にデータ投入を行う（図３５）。
つまり、リソース定義生成部１１０は、入力テーブルの階層構造を解析して入力テーブルにおける階層順に従って入力テーブルのデータ項目の値を投入対象テーブルの対応関係にあるデータ項目にマッピングするリソースのリソース定義情報を生成する。
【０１２５】
以上のように、本実施の形態により、連携するマスタ情報について、レコード間、及びテーブル間に依存関係が存在する場合についてでも、性能を担保したうえでのマスタ連携処理が実現可能である。
【０１２６】
最後に、実施の形態１〜３に示したマスタ情報管理装置１００のハードウェア構成例を図３６を参照して説明する。
マスタ情報管理装置１００はコンピュータであり、マスタ情報管理装置１００の各要素をプログラムで実現することができる。
マスタ情報管理装置１００のハードウェア構成としては、バスに、演算装置９０１、外部記憶装置９０２、主記憶装置９０３、通信装置９０４、入出力装置９０５が接続されている。
【０１２７】
演算装置９０１は、プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。
外部記憶装置９０２は、例えばＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やフラッシュメモリ、ハードディスク装置である。
主記憶装置９０３は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。
通信装置９０４は、例えばＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）である。
入出力装置９０５は、例えばマウス、キーボード、ディスプレイ装置等である。
【０１２８】
プログラムは、通常は外部記憶装置９０２に記憶されており、主記憶装置９０３にロードされた状態で、順次演算装置９０１に読み込まれ、実行される。
プログラムは、図２に示すリソース定義生成部１１０及びリソース実行部１３０として説明している機能を実現するプログラムである。
更に、外部記憶装置９０２にはオペレーティングシステム（ＯＳ）も記憶されており、ＯＳの少なくとも一部が主記憶装置９０３にロードされ、演算装置９０１はＯＳを実行しながら、図２に示すリソース定義生成部１１０及びリソース実行部１３０の機能を実現するプログラムを実行する。
また、実施の形態１〜３の説明において、「〜の判断」、「〜の判定」、「〜の抽出」、「〜の解釈」、「〜の更新」、「〜の生成」、「〜の設定」、「〜の登録」、「〜の選択」、「〜の生成」、「〜の受信」、「マッピング」等として説明している処理の結果を示す情報やデータや信号値や変数値が主記憶装置９０３にファイルとして記憶されている。
【０１２９】
なお、図３６の構成は、あくまでもマスタ情報管理装置１００のハードウェア構成の一例を示すものであり、マスタ情報管理装置１００のハードウェア構成は図３６に記載の構成に限らず、他の構成であってもよい。
【符号の説明】
【０１３０】
００１  端末、０１１  外部機器、０１２  外部機器、１００  マスタ情報管理装置、１１０  リソース定義生成部、１１１  リソース定義設定受付部、１１２  設定解釈部、１１３  マスタ情報管理スキーマ更新部、１１４  リソース定義構成部、１１５  リソース定義情報保存部、１２０  リソース定義管理部、１３０  リソース実行部、１３１  リソース生成部、１３２  リソース運用部、１３３  リソース監視部、１４０  テンプレート管理部、１４１  ワークテーブル作成テンプレート、１４２  索引作成テンプレート、１４３  操作文テンプレート、１５０  マスタ情報管理部、１５１  マスタ情報テーブル、１５２  ワークテーブル、１５３  マスタ情報補完テーブル、１５４  マスタ情報サブテーブル、１５５  マスタ情報更新ヒストリ情報、１５６  マスタ情報移動ルール、１５７  マスタ情報階層テーブル、５００  マッピングメタ情報、５１０  ワークテーブルメタ情報、５２０  索引メタ情報。
【図１】
2015204057.tif 000003
【図２】
2015204057.tif 000004
【図３】
2015204057.tif 000005
【図４】
2015204057.tif 000006
【図５】
2015204057.tif 000007
【図６】
2015204057.tif 000008
【図７】
2015204057.tif 000009
【図８】
2015204057.tif 000010
【図９】
2015204057.tif 000011
【図１０】
2015204057.tif 000012
【図１１】
2015204057.tif 000013
【図１２】
2015204057.tif 000014
【図１３】
2015204057.tif 000015
【図１４】
2015204057.tif 000016
【図１５】
2015204057.tif 000017
【図１６】
2015204057.tif 000018
【図１７】
2015204057.tif 000019
【図１８】
2015204057.tif 000020
【図１９】
2015204057.tif 000021
【図２０】
2015204057.tif 000022
【図２１】
2015204057.tif 000023
【図２２】
2015204057.tif 000024
【図２３】
2015204057.tif 000025
【図２４】
2015204057.tif 000026
【図２５】
2015204057.tif 000027
【図２６】
2015204057.tif 000028
【図２７】
2015204057.tif 000029
【図２８】
2015204057.tif 000030
【図２９】
2015204057.tif 000031
【図３０】
2015204057.tif 000032
【図３１】
2015204057.tif 000033
【図３２】
2015204057.tif 000034
【図３３】
2015204057.tif 000035
【図３４】
2015204057.tif 000036
【図３５】
2015204057.tif 000037
【図３６】
2015204057.tif 000038