(57)【要約】【課題】複数のシステムで管理されている関連性のないデータであっても、複雑なテーブル設計や管理を必要とせずに堅牢なデータ管理を行うと共に、効率的な運用を行うことができるデータ構造等を提供する。【解決手段】異なる定義がなされている複数の一般システム４１から収集したデータを項目名を定義せずに項目ＩＤで管理する万能テーブル４３と、前記項目ＩＤの中からデータを識別するために最低限必要となる必要項目ＩＤに対して、当該必要項目ＩＤに格納されているデータのみを抽出可能とするためのマスク情報が各行単位で格納されたマスクテーブル４５と、前記万能テーブル４３の全データから前記マスクテーブル４５の各行単位に格納されたマスク情報にしたがってデータを抽出し、当該抽出された抽出データのうち同一の抽出データが複数行抽出された場合には、当該抽出された複数の同一データを一つのデータとして管理するマスタテーブル４６とを備える。【選択図】図１２
2015094988.tif 000002
【特許請求の範囲】
【請求項１】
異なる定義がなされている複数のテーブルから収集したデータを項目名を定義せずに項目ＩＤで管理する万能テーブルと、
前記項目ＩＤの中からデータを識別するために最低限必要となる必要項目ＩＤに対して、当該必要項目ＩＤに格納されているデータのみを抽出可能とするためのマスク情報が各行単位で格納されたマスクテーブルと、
前記万能テーブルの全データから前記マスクテーブルの各行単位に格納されたマスク情報にしたがってデータを抽出し、当該抽出された抽出データのうち同一の抽出データが複数行抽出された場合には、当該抽出された複数の同一データを一つのデータとして管理するマスタテーブルとを備えることを特徴とするデータ構造。
【請求項２】
請求項１に記載のデータ構造において、
前記マスタテーブルのデータに付与されるパターンＩＤと、前記万能テーブルのデータに付与されるローカルＩＤと、前記パターンＩＤ及び前記ローカルＩＤを統合した統合ＩＤを管理するＩＤ管理テーブルを備え、
共通の前記パターンＩＤを有するデータを共通の前記統合ＩＤとして管理しつつ、共通の前記ローカルＩＤを有するデータを共通の前記統合ＩＤとして管理することを特徴とするデータ構造。
【請求項３】
請求項１又は２に記載のデータ構造において、
前記マスクテーブルのマスク情報に対応する項目ＩＤの項目名を管理する項目定義テーブルを備えることを特徴とするデータ構造。
【請求項４】
請求項１ないし３のいずれかに記載のデータ構造において、
前記万能テーブルが、前記異なる定義がなされている複数のテーブルにて格納されているデータ内容の実施に関連する情報を固定項目として各データごとに有することを特徴とするデータ構造。
【請求項５】
請求項１ないし４のいずれかに記載のデータ構造において、
前記マスタテーブルが、前記万能テーブルが有していない情報であって、前記抽出されたデータに関連する情報を付加的に格納することを特徴とするデータ構造。
【請求項６】
請求項１に記載のデータ構造を生成するデータ生成装置であって、
異なる定義がなされている複数のテーブルからのデータを入力し、入力された入力データを前記万能テーブルに展開する万能テーブル生成手段と、
前記マスクテーブルの前記マスク情報にしたがって、前記万能テーブルの全データから必要なデータを抽出する抽出手段と、
抽出された抽出データのうち同一の前記抽出データが複数行抽出された場合に、当該抽出された複数の同一データを一つのデータとして前記マスタテーブルに格納するマスタテーブル生成手段とを備えることを特徴とするデータ生成装置。
【請求項７】
請求項６に記載のデータ生成装置において
前記マスタテーブルのデータに付与されるパターンＩＤと、前記万能テーブルのデータに付与されるローカルＩＤと、前記パターンＩＤ及び前記ローカルＩＤを統合した統合ＩＤを管理するＩＤ管理テーブルを生成するＩＤ管理テーブル生成手段と、
共通の前記パターンＩＤを有するデータに共通の前記統合ＩＤを付与し、共通の前記ローカルＩＤを有するデータに共通の前記統合ＩＤを付与して統合ＩＤの管理を行う統合ＩＤ管理手段とを備えることを特徴とするデータ生成装置。
【請求項８】
請求項６又は７に記載のデータ生成装置において、
前記マスクテーブルのマスク情報に対応する項目ＩＤの項目名を管理する項目定義テーブルに基づいて、前記万能テーブルから抽出されたデータの対応する項目名を出力する出力手段を備えることを特徴とするデータ生成装置。
【請求項９】
請求項６ないし８のいずれかに記載のデータ生成装置において、
前記万能テーブル生成手段が、前記異なる定義がなされている複数のテーブルにて格納されているデータ内容の実施に関連する情報を固定項目として各データごとに付加することを特徴とするデータ生成装置。
【請求項１０】
請求項６ないし９のいずれかに記載のデータ生成装置において、
前記マスタテーブルに格納され、前記万能テーブルが有していない情報であって、前記抽出されたデータに関連する付加的な情報を出力する出力手段を備えることを特徴とするデータ生成装置。
【請求項１１】
請求項１に記載のデータ構造を用いたデータ検索装置であって、
前記マスタテーブルに格納されたデータを検索条件データとして入力する入力手段と、
入力された前記検索条件データに基づいて、当該検索条件データと一致するデータを前記万能テーブルから抽出する抽出手段と、
抽出されたデータを出力する出力手段とを備えることを特徴とするデータ検索装置。
【請求項１２】
請求項１に記載のデータ構造を生成するデータ生成方法であって、
コンピュータが、
異なる定義がなされている複数のテーブルからのデータを入力し、入力された入力データを前記万能テーブルに展開する万能テーブル生成ステップと、
前記マスクテーブルの前記マスク情報にしたがって、前記万能テーブルの全データから必要なデータを抽出する抽出ステップと、
抽出された抽出データのうち同一の前記抽出データが複数行抽出された場合に、当該抽出された複数の同一データを一つのデータとして前記マスタテーブルに格納するマスタテーブル生成ステップとを実行することを特徴とするデータ生成方法。
【請求項１３】
請求項１に記載のデータ構造を生成するようにコンピュータを機能させるデータ生成プログラムであって、
異なる定義がなされている複数のテーブルからのデータを入力し、入力された入力データを前記万能テーブルに展開する万能テーブル生成手段、
前記マスクテーブルの前記マスク情報にしたがって、前記万能テーブルの全データから必要なデータを抽出する抽出手段、
抽出された抽出データのうち同一の前記抽出データが複数行抽出された場合に、当該抽出された複数の同一データを一つのデータとして前記マスタテーブルに格納するマスタテーブル生成手段としてコンピュータを機能させることを特徴とするデータ生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、大量で複雑なデータを簡単なテーブル設計で効率よく管理するデータ構造等に関する。
【背景技術】
【０００２】
一般的に知られているデータベース技術として、ＲＤＢ（Relational  Data  Base）やＫＶＳ（Key-Value  Store）がある。ＲＤＢは関係データベースと訳され、現在最も多く利用されている。データは表形式のテーブルで管理され、テーブル間の関係を定義付ける。複数のテーブルからデータの取得、変更、削除などが行われる。一方、ＫＶＳは分散ファイルシステムやデータベースとして商品化されており、一意のＫＥＹに対して値（Ｖａｌｕｅ）をセットで保存する。近年のビッグデータに対応した技術であり、データはＫＥＹを指定することで取得することができる。
【０００３】
ＲＤＢはテーブルが表形式であるため、エンジニアが直感的にテーブル内のデータ設計を行うという利点があるものの、システムごとにテーブル設計が異なり、テーブル間の連携情報もその都度設計する必要があり、理論上の設計が必要とされ複雑性が否めない。また、こうした特性からメンテナンス性、拡張性、柔軟性が弱く、関係性においてマスタによる項目の分類は１つのカテゴリで管理されることが多く、設計者の意図と利用者の感性が違う場合はそれを取り出すことに困難性が残る。
【０００４】
一方でＫＶＳ技術は、データ自体にＫＥＹ（フィールド情報）を持つことで、ＲＤＢに対してテーブル設計の柔軟性を解決している。また、テーブル構造に縛られないことから拡張性も改善している。ただし、単一のフィールドに複数の異なる情報が格納されたり、テーブル内のデータ設計が直感的に行えず、俯瞰的に把握しづらくメンテナンス性も含めて弱い。
【０００５】
このようなＲＤＢやＫＶＳを複合的に利用する技術として、例えば特許文献１に示す技術が開示されている。特許文献１に示す技術は、アクセスパターンが存在する場合に、アクセス対象データを第１のデータベース及び第２のデータベースに配置することを決定するデータ保存先決定部と、データ保存先決定部によりアクセス対象データを第１のデータベース及び第２のデータベースに配置する場合に、書込みアクセスが所定回数以上となる期間を判別し、判別した期間に対応する期間のアクセス対象データを第１のデータベースに配置するように移行スケジュールを決定すると共に、読出しアクセスが所定回数以上となる期間を判別し、判別した期間に対応する期間のアクセス対象データを第２のデータベースに配置するように移行スケジュールを決定する移行スケジュール決定部と、を備えるものである。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１２−１０３８４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１に示す技術は、更新に必要な時間に応じてＲＤＢとＫＶＳの使い分け等を行うことで、負荷を分散して運用効率を上げるものであるが、データ移行などの処理が発生するため、管理が複雑になってしまうと共に、メンテナンス性が悪いものになってしまう。
【０００８】
本発明は、複数のシステムで管理されている関連性のないデータであっても、複雑なテーブル設計や管理を必要とせずに堅牢なデータ管理を行うと共に、効率的な運用を行うことができるデータ構造等を提供する。
【課題を解決するための手段】
【０００９】
本発明に係るデータ構造は、異なる定義がなされている複数のテーブルから収集したデータを項目名を定義せずに項目ＩＤで管理する万能テーブルと、前記項目ＩＤの中からデータを識別するために最低限必要となる必要項目ＩＤに対して、当該必要項目ＩＤに格納されているデータのみを抽出可能とするためのマスク情報が各行単位で格納されたマスクテーブルと、前記万能テーブルの全データから前記マスクテーブルの各行単位に格納されたマスク情報にしたがってデータを抽出し、当該抽出された抽出データのうち同一の抽出データが複数行抽出された場合には、当該抽出された複数の同一データを一つのデータとして管理するマスタテーブルとを備えるものである。
【００１０】
このように、本発明に係るデータ構造においては、様々に定義されているデータを項目名が定義されていない１つの万能テーブルで管理し、データを識別するために最低限必要となる項目に対して、当該項目に格納されているデータのみを抽出可能とするためのマスク情報（例えば、「０」又は「１」のマスク情報）が各行単位で格納されたマスクテーブルを用意し、万能テーブルの全データからマスクテーブルの各行単位に格納されたマスク情報にしたがってデータを抽出し、当該抽出された同一データを一つのデータとして管理するマスタテーブルを備えるため、マスタテーブルには万能テーブルで管理する全てのデータのマスタとなる情報のみが集約されて管理され、検索等の処理を非常に効率よく行うことが可能になるという効果を奏する。
【００１１】
また、必要に応じてマスタテーブルのデータを検索条件として、万能テーブルを詳細に検索することが可能になり、極めて膨大なビッグデータであっても必要とするデータを効率よく抽出することができるという効果を奏する。
【００１２】
本発明に係るデータ構造は、前記マスタテーブルのデータに付与されるパターンＩＤと、前記万能テーブルのデータに付与されるローカルＩＤと、前記パターンＩＤ及び前記ローカルＩＤを統合した統合ＩＤを管理するＩＤ管理テーブルを備え、共通の前記パターンＩＤを有するデータを共通の前記統合ＩＤとして管理しつつ、共通の前記ローカルＩＤを有するデータを共通の前記統合ＩＤとして管理するものである。
【００１３】
このように、本発明に係るデータ構造においては、共通の前記パターンＩＤを有するデータを共通の前記統合ＩＤとして管理しつつ、共通の前記ローカルＩＤを有するデータを共通の前記統合ＩＤとして管理することで、ＩＤのみの管理で名寄せ処理を効率よく行うことができるという効果を奏する。
【００１４】
本発明に係るデータ構造は、前記マスクテーブルのマスク情報に対応する項目ＩＤの項目名を管理する項目定義テーブルを備えるものである。
【００１５】
このように、本発明に係るデータ構造においては、マスクテーブルのマスク情報に対応する項目ＩＤの項目名を管理する項目定義テーブルを備えるため、万能テーブルのようにあらゆるデータが項目ＩＤのみで管理されて格納されているような場合であっても、管理者や利用者が項目定義テーブルの項目名を参照して、どのようなデータであるかを認識することが可能になるという効果を奏する。
【００１６】
本発明に係るデータ構造は、前記万能テーブルが、前記異なる定義がなされている複数のテーブルにて格納されているデータ内容の実施に関連する情報を固定項目として各データごとに有するものである。
【００１７】
このように、本発明に係るデータ構造においては、万能テーブルが、異なる定義がなされている複数のテーブルにて格納されているデータ内容の実施に関連する情報（例えば、５Ｗ１Ｈ情報のうち１又は複数の情報）を固定項目として各データごとに有することで、運用面で重要な情報として活用することができるという効果を奏する。
【００１８】
本発明に係るデータ構造は、前記マスタテーブルが、前記万能テーブルが有していない情報であって、前記抽出されたデータに関連する情報を付加的に格納するものである。
【００１９】
このように、本発明に係るデータ構造においては、マスタテーブルが、前記万能テーブルが有していない情報であって、前記抽出されたデータに関連する情報を付加的に格納するため、管理者側が付加的な要素を付けて情報を提供することができるという効果を奏する。
【００２０】
本発明に係るデータ生成装置は、前記データ構造を生成するデータ生成装置であって、異なる定義がなされている複数のテーブルからのデータを入力し、入力された入力データを前記万能テーブルに展開する万能テーブル生成手段と、前記マスクテーブルの前記マスク情報にしたがって、前記万能テーブルの全データから必要なデータを抽出する抽出手段と、抽出された抽出データのうち同一の前記抽出データが複数行抽出された場合に、当該抽出された複数の同一データを一つのデータとして前記マスタテーブルに格納するマスタテーブル生成手段とを備えるものである。
【００２１】
このように、本発明に係るデータ生成装置においては、万能テーブルを生成し、マスクテーブルのマスク情報にしたがって必要なデータを抽出し、抽出されたデータのうち複数の同一データを一つのデータとしてマスタテーブルに格納するため、万能テーブルで管理する全てのデータのマスタとなる情報のみをマスタテーブルに集約して管理することができ、検索等の処理を非常に効率よく行うことが可能になるという効果を奏する。
【００２２】
また、必要に応じてマスタテーブルのデータを検索条件として、万能テーブルを詳細に検索することが可能になり、極めて膨大なビッグデータであっても必要とするデータを効率よく抽出することができるという効果を奏する。
【００２３】
本発明に係るデータ生成装置は、前記マスタテーブルのデータに付与されるパターンＩＤと、前記万能テーブルのデータに付与されるローカルＩＤと、前記パターンＩＤ及び前記ローカルＩＤを統合した統合ＩＤを管理するＩＤ管理テーブルを生成するＩＤ管理テーブル生成手段と、共通の前記パターンＩＤを有するデータに共通の前記統合ＩＤを付与し、共通の前記ローカルＩＤを有するデータに共通の前記統合ＩＤを付与して統合ＩＤの管理を行う統合ＩＤ管理手段とを備えるものである。
【００２４】
このように、本発明に係るデータ生成装置においては、共通の前記パターンＩＤを有するデータを共通の前記統合ＩＤとして管理しつつ、共通の前記ローカルＩＤを有するデータを共通の前記統合ＩＤとして管理することで、ＩＤのみの管理で名寄せ処理を効率よく行うことができるという効果を奏する。
【００２５】
本発明に係るデータ生成装置は、前記マスクテーブルのマスク情報に対応する項目ＩＤの項目名を管理する項目定義テーブルに基づいて、前記万能テーブルから抽出されたデータの対応する項目名を出力する出力手段を備えるものである。
【００２６】
このように、本発明に係るデータ生成装置においては、マスクテーブルのマスク情報に対応する項目ＩＤの項目名を管理する項目定義テーブルに基づいて、万能テーブルから抽出されたデータの対応する項目名を出力するため、万能テーブルのようにあらゆるデータが項目ＩＤのみで管理されて格納されているような場合であっても、管理者や利用者が項目定義テーブルの項目名を参照して、どのようなデータであるかを認識することが可能になるという効果を奏する。
【００２７】
本発明に係るデータ生成装置は、前記万能テーブル生成手段が、前記異なる定義がなされている複数のテーブルにて格納されているデータ内容の実施に関連する情報を固定項目として各データごとに付加するものである。
【００２８】
このように、本発明に係るデータ生成装置においては、万能テーブルが、異なる定義がなされている複数のテーブルにて格納されているデータ内容の実施に関連する情報（例えば、５Ｗ１Ｈ情報のうち１又は複数の情報）を固定項目として各データごとに有することで、運用面で重要な情報として活用することができるという効果を奏する。
【００２９】
本発明に係るデータ生成装置は、前記マスタテーブルに格納され、前記万能テーブルが有していない情報であって、前記抽出されたデータに関連する付加的な情報を出力する出力手段を備えるものである。
【００３０】
このように、本発明に係るデータ生成装置においては、マスタテーブルが、前記万能テーブルが有していない情報であって、前記抽出されたデータに関連する情報を付加的に格納するため、管理者側が付加的な要素を付けて情報を提供することができるという効果を奏する。
【００３１】
本発明に係るデータ検索装置は、前記データ構造を用いたデータ検索装置であって、前記マスタテーブルに格納されたデータを検索条件データとして入力する入力手段と、入力された前記検索条件データに基づいて、当該検索条件データと一致するデータを前記万能テーブルから抽出する抽出手段と、抽出されたデータを出力する出力手段とを備えるものである。
【００３２】
このように、本発明に係るデータ検索装置においては、マスタテーブルに格納されたデータを検索条件データとして入力し、入力された前記検索条件データに基づいて、当該検索条件データと一致するデータを前記万能テーブルから抽出し出力するため、膨大な量のビッグデータであっても、必ずヒットする検索条件が設定され効率的な検索を行うことができるという効果を奏する。
【図面の簡単な説明】
【００３３】
【図１】第１の実施形態に係るデータ生成装置のハードウェア構成図である。
【図２】第１の実施形態に係るデータ生成装置の構成を示す機能ブロック図である。
【図３】第１の実施形態に係る万能テーブル、マスクテーブル及びマスタテーブルのデータ構造を示す図である。
【図４】第１の実施形態に係るパターンマップ及びＩＤ管理テーブルのデータ構造を示す図である。
【図５】万能テーブル及びマスクテーブルの一例を示す図である。
【図６】図５のデータを用いて生成されるマスタテーブルの一例を示す図である。
【図７】マスタデータを用いたデータの検索を示す図である。
【図８】名寄せにおける第１の処理を示す図である。
【図９】名寄せにおける第２の処理を示す図である。
【図１０】名寄せにおける第３の処理を示す図である。
【図１１】名寄せにおける第４の処理を示す図である。
【図１２】第１の実施形態に係るテーブル構成を示す図である。
【図１３】第１の実施形態に係るデータ生成装置の動作を示すフローチャートである。
【図１４】第２の実施形態に係るデータ検索装置の構成を示す機能ブロック図である。
【図１５】第２の実施形態に係るデータ検索装置に用いられるデータのテーブル構成を示す図である。
【図１６】第３の実施形態に係るデータ生成装置の構成を示す機能ブロック図である。
【図１７】第３の実施形態に係るテーブル構成を示す図である。
【図１８】項目定義テーブル及びマスタテーブルを結合して項目名を表示する場合の処理を示す図である。
【図１９】項目定義テーブルの利用方法を示す図である。
【図２０】第４の実施形態に係るデータ生成装置の構成を示す機能ブロック図である。
【図２１】第４の実施形態に係るテーブル構成を示す図である。
【図２２】固定項目を含む万能テーブルの情報の一例を示す図である。
【図２３】第５の実施形態に係るデータ生成装置の構成を示す機能ブロック図である。
【図２４】第５の実施形態に係るテーブル構成を示す図である。
【図２５】付加情報の具体例を示す図である。
【発明を実施するための最良の形態】
【００３４】
以下、本発明の実施の形態を説明する。本実施形態の全体を通して同じ要素には同じ符号を付けている。
【００３５】
（本発明の第１の実施形態）
本実施形態に係るデータ構造及びデータ生成装置について、図１ないし図１３を用いて説明する。本実施形態に係るデータ構造は、異なるシステムにおいて個々に定義された複数のデータを一つのテーブルで一元管理すると共に、インデックスにより各データへのアクセスを制御することで、大量のビッグデータであっても小さい容量で効率よくデータ管理ができるものである。
【００３６】
図１は、本実施形態に係るデータ生成装置のハードウェア構成図である。図１において、データ生成装置１は、ＣＰＵ１１、ＲＡＭ１２、ＲＯＭ１３、ハードディスク（ＨＤとする）１４、通信Ｉ／Ｆ１５、及び入出力Ｉ／Ｆ１６を備える。ＲＯＭ１３やＨＤ１４には、オペレーティングシステムや各種プログラムが格納されており、必要に応じてＲＡＭ１２に読み出され、ＣＰＵ１１により各プログラムが実行される。生成されたデータやその大元のデータはＨＤ１４に格納され、必要に応じてプログラムによりアクセスすることができる。
【００３７】
通信Ｉ／Ｆ１５は、装置間の通信を行うためのインタフェースである。入出力Ｉ／Ｆ１６は、タッチパネル、キーボード、マウス等の入力機器からの入力を受け付けたり、プリンタや画面等にデータを出力するためのインタフェースである。この入出力Ｉ／Ｆ１６は、必要に応じて光磁気ディスク、フロッピーディスク、ＣＤ−Ｒ、ＤＶＤ−Ｒ等のリムーバブルディスク等に対応したドライブを接続することができる。各処理部はバスを介して接続され、情報のやり取りを行う。なお、上記ハードウェアの構成はあくまで一例であり、必要に応じて変更可能である。
【００３８】
図２は、本実施形態に係るデータ生成装置の構成を示す機能ブロック図である。データ生成装置１は、複数の異なるシステム（１０ａ〜１０ｄ）で管理されているデータを入力するデータ入力部２１を備える。システム１０ａ〜１０ｄは、例えば、医療管理システムであり、システム１０ａが医療機関Ａのシステムデータ、システム１０ｂが医療機関Ｂのシステムデータという言ったように、独立した異なるシステムで利用され、それぞれに異なる定義がなされているシステムデータである。
【００３９】
また、データ生成装置１は、データ入力部２１で入力されたデータを万能テーブル記憶部２３に格納する万能テーブル生成部２２と、当該万能テーブル記憶部２３に記憶されたデータを、予め管理者により作成されたマスクテーブル記憶部２４のマスク情報に基づいて抽出するデータ抽出部２５と、抽出されたデータのうち同一のデータについては１つのデータとして纏めてマスタデータを生成し、マスタテーブル記憶部２７に格納するマスタテーブル生成部２６とを備える。ここで、万能テーブル、マスクテーブル、マスタテーブルについて説明する。
【００４０】
図３は、本実施形態に係る万能テーブル、マスクテーブル及びマスタテーブルのデータ構造を示す図である。図３（Ａ）は万能テーブル、図３（Ｂ）はマスクテーブル、図３（Ｃ）はマスタテーブルの構造を示す。通常フィールド名には、そのフィールドに入れるデータの種類（例えば、氏名、年齢、生年月日等）を示す名称が定義されるが、図３（Ａ）の万能テーブルの場合、どのフィールドにどのデータを入れてもいいように、フィールド名がＳＬＯＴ番号で管理される。つまり、例えば、システム１０ａで利用されていたデータの場合は、ＳＬＯＴ１に「ローカルＩＤ」、ＳＬＯＴ２に「性別」、ＳＬＯＴ３に「氏名」、ＳＬＯＴ４に「住所」が格納されるが、システム１０ｂで利用されていたデータの場合は、ＳＬＯＴ１に「ローカルＩＤ」、ＳＬＯＴ２に「氏名」、ＳＬＯＴ３に「電話番号」、ＳＬＯＴ４に「郵便番号」が格納されるといった形で万能テーブルが形成される。
【００４１】
図３（Ｂ）のマスクテーブルは、データとしては「０」又は「１」の情報のみを有しており、データを識別するために必要となるフィールドに「１」が設定され、万能テーブルの各レコードと掛け合わせることで、必要な情報のみを抽出することができる。例えば、図３（Ｂ）の２レコード目（ＰＰ−ＩＤ＝２）は、ＳＬＯＴ１、５及び６に「１」が設定され他は「０」がマスクデータとして設定されている。つまり、万能テーブルのデータと図３（Ｂ）のＰＰ−ＩＤ＝２のマスクデータを掛け合わせることで、万能テーブルからＳＬＯＴ１、５及び６の情報のみを抽出できる。ただし、このとき、万能テーブルにはあらゆるデータがランダムに格納されているため、図３（Ｂ）のＰＰ−ＩＤ＝２を掛け合わせて抽出されたデータが全て意味のあるデータとはならない。つまり、ＰＰ−ＩＤ＝２のマスク情報によりデータを識別するために必要なデータが必ず含まれているものの、全く関係のないデータ（利用者が必要としていないデータ）も含まれている。
【００４２】
図３（Ｃ）のマスタテーブルは、マスクテーブルのマスク情報により抽出されたデータのうち、同一のデータについては１つのデータに纏めてマスタデータとして情報を格納する。例えば、ＰＰ−ＩＤ＝２のマスク情報により、ＳＬＯＴ１＝１１、ＳＬＯＴ５＝患者太郎、ＳＬＯＴ６＝１９７６／１０／１０というデータが複数抽出された場合には、それらのデータは１件のデータとし、１つのＩＤ（以下、ＰＴＮ−ＩＤという）が付与される。なお、万能テーブル、マスクテーブル及びマスタテーブルのより具体的なデータ構造については後述する。
【００４３】
このように、万能テーブルに格納されたデータのうち、マスクテーブルのマスク情報で抽出された識別性のある情報を１つのデータに括ることで万能テーブルのマスタデータが生成される。つまり、何千万件に上るような膨大な量のデータを扱う際の検索においては、検索条件の設定が非常に重要となるが、本実施形態のようにマスタデータが作成されることにより、必ずヒットする検索条件としてマスタデータを提供することができ、作業効率を格段に向上させることができる。
【００４４】
図２に戻って、マスタテーブル生成部２６によりマスタテーブルが生成されると、元のシステム１０ａ〜１０ｄで利用されていたユニーク性を持った識別コードであるＬＯＣＡＬ＿ＩＤ（以下、Ｌ−ＩＤとする）を万能テーブルから抽出し、マスタテーブル生成時に付与されたマスタデータごとのＰＴＮ＿ＩＤをマスタテーブルから抽出し、それらを付け合せたパターンマップをパターンマップ記憶部２９に記憶するパターンマップ生成部２８と、生成されたパターンマップからＩＤを管理するためのＩＤ管理テーブルを作成してＩＤ管理テーブル記憶部３１に格納する統合ＩＤ管理部３０とを備える。
【００４５】
図４は、本実施形態に係るパターンマップ及びＩＤ管理テーブルのデータ構造を示す図である。図４（Ａ）はパターンマップを示す図、図４（Ｂ）はＩＤ管理テーブルを示す図である。図４（Ａ）に示すＬ−ＩＤはＬＯＣＡＬ＿ＩＤのことであり、元々のシステムで利用されていたユニーク性を持つＩＤである。例えば、医療管理システムで言えば、医療機関コード（医療機関ごとのコード）と診察券コード（患者ごとのコード）を繋げた一意のＩＤである。ＰＴＮ−ＩＤは、マスタテーブルを生成する際に付与された一意のＩＤである。パターンマップでは、Ｌ−ＩＤとＰＴＮ−ＩＤの組み合わせが格納される。
【００４６】
ここで、Ｌ−ＩＤは、システムの上では一意性を持っているが、例えば、医療管理システムにおいて、実際にＬ−ＩＤと患者の関係が１対１とは限らない。つまり、同じ患者が異なる医療機関で診察した場合には、２つのＬ−ＩＤを持っていることとなる。一方、ＰＴＮ−ＩＤについても、システムの上では一意性を持っているが、例えば、医療管理システムにおいて、１つのマスタデータ（例えば、氏名、郵便番号、性別、生年月日）が１人の患者を示しているとは限らない。つまり、結婚して性が変わった人や引越しなどで郵便番号が変わった人は、同じ人物であっても複数の異なるマスタデータを有することとなる。
【００４７】
このような、データを同一人物に統合する（以下、名寄せという）ために、図４（Ｂ）のＩＤ管理テーブルが生成される。図４（Ｂ）のＩＤ管理テーブルにおいては、同一のパターンＩＤを有するデータには共通の統合ＩＤが付与され、同一のＰＴＮ−ＩＤを有するデータには共通の統合ＩＤが付与される。つまり、統合ＩＤと、当該統合ＩＤにより識別される人（システムの種類によっては物）は、必ず１対１の関係となる。したがって、同じ統合ＩＤで抽出されたデータは、全て同じ人（又は物）に関連する情報として抽出することが可能となる。なお、統合ＩＤを付与する際の具体的な処理については、詳細を後述する。
【００４８】
次に、マスタテーブルを生成するまでの処理とその利用方法を具体例を挙げて説明する。図５は、万能テーブル及びマスクテーブルの一例を示す図である。図５（Ａ）は万能テーブル、図５（Ｂ）はマスクテーブルの一例を示す。万能テーブルには、１〜３行に患者情報、４〜６行に薬剤情報、７〜９行に検査情報が格納されている。マスクテーブルのＰＰ−ＩＤ＝１にはＳＬＯＴ２〜６まで「１」が設定されている。これは、患者情報のマスタデータを作成するために予め管理者により設定されたものであり、ＳＬＯＴ２〜６の情報（具体的には、アカウント、氏名、生年月日、性別、郵便番号）があれば識別可能な患者情報のマスタデータを作成することができる。同様に、ＰＰ−ＩＤ＝２にはＳＬＯＴ２〜５まで「１」が設定され、ＰＰ−ＩＤ＝３にはＳＬＯＴ２、３、５〜７まで「１」が設定されている。
【００４９】
図６は、図５のデータを用いて生成されるマスタテーブルの一例を示す図である。図５（Ａ）の万能テーブルと図５（Ｂ）のマスクテーブルを掛け合わせ、複数の同一のデータは１つのデータ（１つのＰＴＮ−ＩＤ）として取り扱う。図６において、ＰＰ−ＩＤ＝１のデータは、図５（Ｂ）におけるＰＰ−ＩＤ＝１のマスク情報により作成されたデータである。ここで、上から３行目の「患者花子」は上から２行目の「患者花子」と完全に一致しているので、マスタデータには含まれない。なお、このような場合は、図６に示すようにＰＴＮ−ＩＤを付与しないようにしてもよいし、データ自体を削除してもよい。同様に、１２行目の「患者花子」、１５行目の「目薬Ｂ」、２１行目の「患者花子」、２７行目の「尿検査（タンパク）」は、同一のデータが存在するためＰＴＮ−ＩＤが付与されずデータとしては存在しない。このように、マスタテーブルは、必要最小限のフィールドで抽出された最小のデータが集まったマスタデータとなる。
【００５０】
上記のようなマスタデータが作成されることで、データの検索を効率よく行うことが可能となる。図７は、マスタデータを用いたデータの検索を示す図である。ここでは、例えば、利用者が万能テーブルから薬剤情報のデータを検索したいとする。薬剤情報に関するデータのマスク情報はＰＰ−ＩＤ＝２であるため（詳細は他の実施形態で後述するが、マスクテーブルに対応付けて項目名を定義している項目定義テーブルを用いることで、薬剤情報を取得するためのマスク情報がＰＰ−ＩＤ＝２であることを利用者が把握できる）、ＰＰ−ＩＤ＝２のマスク情報で抽出された図７（Ａ）のマスタデータが検索する際の選択肢の対象となる。利用者はこれらの選択肢から図７（Ｂ）に示すように検索条件を指定することで、図７（Ｃ）の行がヒットする。ヒットした行のＰＴＮ−ＩＤから統合ＩＤを特定し、その統合ＩＤのデータを万能テーブルから検索することで、必要なデータを万能テーブルから得ることができる。なお、図７（Ｂ）のＳＬＯＴごとの括弧書きの項目名は、マスクテーブルに対応付けて項目名を定義している項目定義テーブルに定義されている項目名である。
【００５１】
次に、名寄せの具体的な処理について４つの例を挙げて説明する。図８は、名寄せにおける第１の処理を示す図である。ここでは、万能テーブルの３件目に新たなデータが追加されたものとする（図８（Ａ））。追加されたデータＣは、他の患者情報と異なるため新規にＰＴＮ−ＩＤ（＝３００）が付与される（図８（Ｂ））。Ｌ−ＩＤ（ここでは、Ｌ−ＩＤはＨＯＳＰ＿ＣＤとＬＯＣＡＬ＿ＣＤを繋げたものとする）とＰＴＮ−ＩＤを管理するために、パターンマップに新たにデータＣが追加される（図８（Ｃ））。パターンマップへの追加に伴って、新たに統合ＩＤが付与されてＩＤ管理テーブルにデータＣが追加される（図８（Ｄ））。ＩＤ管理テーブルにおけるデータＡ、Ｂ及びＣは、いずれも異なるＰＴＮ−ＩＤと異なるＬ−ＩＤであるため、それぞれが異なる人物の情報として管理される。
【００５２】
図９は、名寄せにおける第２の処理を示す図である。ここでは、万能テーブルの４件目に新たなデータが追加されたものとする（図９（Ａ））。追加されたデータＤは、データＡの患者情報と完全に一致しているため、新たなＰＴＮ−ＩＤを採番しない（図９（Ｂ））。Ｌ−ＩＤとＰＴＮ−ＩＤを管理するために、パターンマップに新たにデータＣが追加される（図９（Ｃ））。データＡとデータＤは、患者情報が同じであるため、同じＰＴＮ−ＩＤ＝１００としてパターンマップに追加し、それぞれを別管理とする。パターンマップへの追加に伴って、新たに統合ＩＤが付与されてＩＤ管理テーブルにデータＤが追加される（図９（Ｄ））。このとき、既に同一のＰＴＮ−ＩＤ（＝１００）であるデータＡが存在しているため、データＤの統合ＩＤはデータＡと同一のＩＤに取り直しされる（図９（Ｅ））。ＩＤ管理テーブルにおけるデータＡ、Ｄは、それぞれ異なるＬ−ＩＤが付与されているものの、統合ＩＤが同じであるため、それぞれが同一人物の情報として管理される。
【００５３】
図１０は、名寄せにおける第３の処理を示す図である。ここでは、万能テーブルの５件目に新たなデータが追加されたものとする（図１０（Ａ））。追加されたデータＥは、他の患者情報と異なるため新規にＰＴＮ−ＩＤ（＝４００）が付与される（図１０（Ｂ））。Ｌ−ＩＤとＰＴＮ−ＩＤを管理するために、パターンマップに新たにデータＥが追加される（図１０（Ｃ））。パターンマップへの追加に伴って、新たに統合ＩＤが付与されてＩＤ管理テーブルにデータＥが追加される（図１０（Ｄ））。このとき、既に同一のＰ−ＩＤ（＝４１９９−９９９００１０）であるデータＢが存在しているため、データＥの統合ＩＤはデータＢと同一のＩＤに取り直しされる（図１０（Ｅ））。ＩＤ管理テーブルにおけるデータＢ、Ｅは、それぞれ異なるＰＴＮ−ＩＤが付与されているものの、統合ＩＤが同じであるため、それぞれが同一人物の情報として管理される。
【００５４】
図１１は、名寄せにおける第４の処理を示す図である。ここでは、万能テーブルの３件目に新たなデータが追加されたものとする（図１１（Ａ））。追加されたデータＣは、データＢの患者情報と完全に一致しているため、新たなＰＴＮ−ＩＤを採番しない（図１１（Ｂ））。Ｌ−ＩＤとＰＴＮ−ＩＤを管理するために、パターンマップに新たにデータＣが追加される（図１１（Ｃ））。データＢとデータＣは、患者情報が同じであるため、同じＰＴＮ−ＩＤ＝４００となり、また、データＡとデータＣは、Ｌ−ＩＤが同じであるため、同じＬ−ＩＤとしてパターンマップに追加される。パターンマップへの追加に伴って、新たに統合ＩＤが付与されてＩＤ管理テーブルにデータＣが追加される（図１１（Ｄ））。このとき、既に同一のＰＴＮ−ＩＤ（＝４００）であるデータＢが存在しているため、データＣの統合ＩＤはデータＢと同一のＩＤに取り直しされる（図１１（Ｅ））。次に、Ｌ−ＩＤの一致を見た場合に、データＡとデータＣは同じＬ−ＩＤであるため（図１１（Ｆ））、データＣの統合ＩＤをデータＡの統合ＩＤに取り直す（図１１（Ｇ））。さらに、ＰＴＮ−ＩＤの一致を見た場合に、データＢとデータＣのＰＴＮ−ＩＤが一致しているにも関わらず、統合ＩＤが異なっているため（図１１（Ｈ））、データＢの統合ＩＤをデータＣの統合ＩＤに合わせて取り直す（図１１（Ｉ））。
【００５５】
なお、ここでは、統合ＩＤの取り直しする際に、若いコードを優先して行うこととしている。つまり、図１１（Ｉ）においてデータＢの統合ＩＤをデータＣの統合ＩＤに合わせて取り直したのは、若いコードを優先したからである。ただし、必ずしも若いコードを優先する必要はなく、予め決められたルールに基づく任意の一のコードを優先するようにしてもよい。
【００５６】
次に、本実施形態に係るデータ構造について説明する。図１２は、本実施形態に係るテーブル構成を示す図である。本実施形態において、複数の一般システム４１をＣＳＶ４２に形式に変換し、万能テーブル４３の各ＳＬＯＴに展開する。このとき、一般システム４１におけるどのフィールドがどのＳＬＯＴに対応するかを示した１ＳＴＭＡＰ４４に基づいて展開処理が行われる。万能テーブル４３を元に、予め管理者が作成したマスクテーブル４５に基づいて、マスタテーブル４６が自動生成される。万能テーブル４３のＬ−ＩＤとマスタテーブル４６のＰＴＮ−ＩＤとから、パターンマップ４７が生成され、このパターンマップ４７に基づいて、名寄せ処理を行った場合の統合ＩＤを管理するＩＤ管理テーブル４８が生成される。
【００５７】
次に、本実施形態に係るデータ生成装置の動作について説明する。図１３は、本実施形態に係るデータ生成装置の動作を示すフローチャートである。まず、データ入力部２１が、複数のシステム１０ａ〜１０ｄからシステムデータを入力し（Ｓ１）、万能テーブル生成部２２が、入力されたシステムデータをＣＳＶに変換し、１ＳＴＭＡＰ４４に基づいて万能テーブル４３を生成し、万能テーブル記憶部２３に格納する（Ｓ２）。データ抽出部２５が、予め作成されたマスクテーブル４５をマスクテーブル記憶部２４から読み出し、マスク情報にしたがって万能テーブル４３の情報を抽出する（Ｓ３）。マスタテーブル生成部２６は、抽出された情報のうち、同一のデータについては同一のＰＴＮ−ＣＤで管理するようにマスタテーブル４６を生成し、マスタテーブル記憶部２７に格納する（Ｓ４）。
【００５８】
パターンマップ生成部２８が、万能テーブル記憶部２４に記憶された万能テーブル４３のＬ−ＩＤとマスタテーブル記憶部２７に記憶されたマスタテーブル４６のＰＴＮ−ＩＤとを組み合わせて対応付けたパターンマップ４７を生成し、パターンマップ記憶部２９に格納する（Ｓ５）。統合ＩＤ管理部３０が、パターンマップ４７に基づいて上記で説明した名寄せ処理を行い、統合ＩＤを付与したＩＤ管理テーブル４８を作成し、ＩＤ管理テーブル記憶部３１に格納して（Ｓ６）、処理を終了する。
【００５９】
このように、本実施形態に係るデータ生成装置及びデータ構造においては、様々に定義されているデータを項目名が定義されていない１つの万能テーブルで管理し、データを識別するために最低限必要となる項目に対して、当該項目に格納されているデータのみを抽出可能とするためのマスク情報が各行単位で格納されたマスクテーブルを用意し、万能テーブルの全データからマスクテーブルの各行単位に格納されたマスク情報にしたがってデータを抽出し、当該抽出された同一データを一つのデータとして管理するマスタテーブルを備えるため、マスタテーブルには万能テーブルで管理する全てのデータのマスタとなる情報のみが集約されて管理され、検索等の処理を非常に効率よく行うことが可能になる。
【００６０】
また、必要に応じてマスタテーブルのデータを検索条件として、万能テーブルを詳細に検索することが可能になり、極めて膨大なビッグデータであっても必要とするデータを効率よく抽出することができる。
【００６１】
さらに、共通のＰＴＮ−ＩＤを有するデータを共通の統合ＩＤとして管理しつつ、共通のＬ−ＩＤを有するデータを共通の統合ＩＤとして管理することで、ＩＤのみの管理で名寄せ処理を効率よく行うことができる。
【００６２】
（本発明の第２の実施形態）
本実施形態に係るデータ検索装置について、図１４及び図１５を用いて説明する。本実施形態に係るデータ検索装置は、上記第１の実施形態におけるデータ構造及び生成されたデータから所定のデータを検索するものである。
なお、本実施形態において、前記第１の実施形態と重複する説明は省略する。
【００６３】
図１４は、本実施形態に係るデータ検索装置の構成を示す機能ブロック図である。本実施形態に係るデータ検索装置５０は、前記第１の実施形態に係るデータ生成装置１のマスタテーブル４６に記憶されたマスタ情報に基づく検索条件情報５１を入力する条件情報入力部５２と、入力された検索条件に一致するデータの統合ＩＤをＩＤ管理テーブル４８から抽出し、抽出された統合ＩＤのデータを万能テーブル４３から抽出する検索部５３と、検索部５３が抽出した結果を例えばディスプレイに出力する出力部５４とを備える。
【００６４】
マスタテーブル４６には、検索対象となる万能テーブル４３のマスタ情報（必要最小限の情報）が記憶されているため、このマスタ情報を検索条件情報として利用することで、膨大なデータから必要な情報の絞り込みを行い易くなる。そして、マスタ情報に基づく検索条件から統合ＩＤを割り出し、当該統合ＩＤに該当するデータを万能テーブル４３から抽出することで、絞り込んだデータからより詳細なデータを効率よく検索することができる。
【００６５】
図１５は、本実施形態に係るデータ検索装置に用いられるデータのテーブル構成を示す図である。設定された検索条件情報に基づいて、ＩＤ管理テーブル４８から統合ＩＤが抽出され、抽出された統合ＩＤにより結合された万能テーブル４３のデータが検索結果情報として出力される。
【００６６】
このように、本実施形態に係るデータ検索装置においては、マスタテーブルに格納されたデータを検索条件データとして入力し、入力された前記検索条件データに基づいて、当該検索条件データと一致するデータを前記万能テーブルから抽出し出力するため、膨大な量のビッグデータであっても、必ずヒットする検索条件が設定され効率的な検索を行うことができる。
【００６７】
（本発明の第３の実施形態）
本実施形態に係るデータ構造及びデータ生成装置について、図１６ないし図１９を用いて説明する。本実施形態に係るデータ生成装置は、マスクテーブル４５のマスク情報に対応するＳＬＯＴのＳＬＯＴ名を管理する項目定義テーブルを備えるものである。
なお、本実施形態において、前記各実施形態と重複する説明は省略する。
【００６８】
図１６は、本実施形態に係るデータ生成装置の構成を示す機能ブロック図、図１７は、本実施形態に係るテーブル構成を示す図である。図１６において、第２の実施形態における図１４と異なるのは、マスクテーブル記憶部２４に対応付けられた項目定義テーブルを記憶する項目定義テーブル記憶部３２を備えることである。また、図１７において、第２の実施形態における図１５と異なるのは、マスクテーブル４５に対応する項目定義テーブル４９を備えることである。
【００６９】
項目定義テーブル４９は、万能テーブル４３のＳＬＯＴ番号に意味のある情報を対応付けるためのテーブルであり、マスクテーブル４５のマスク情報により対応付けがなされている。以下に、項目定義テーブル４９を用いた項目名の管理方法について具体的に説明する。図１８は、項目定義テーブル及びマスタテーブルを結合して項目名を表示する場合の処理を示す図である。図１８（Ａ）は項目定義テーブルの一例を示し、図１８（Ｂ）はマスタ情報を抽出する際の汎用画面の一例を示す。図１８（Ａ）に示すように、マスクテーブル４５のＰＰ−ＩＤに応じて項目名が各ＳＬＯＴごとに定義されている。ここでは、ＰＰ−ＩＤ＝１は患者情報、ＰＰ−ＩＤ＝２は薬剤情報、ＰＰ−ＩＤ＝３は検査情報を示しており、患者情報について検索する場合には、図１８（Ｂ）に示すように、ＰＰ−ＩＤ＝１の情報を列名に表示することで、利用者は、マスタテーブルにおける患者情報のＳＬＯＴの中身の意味を認識することができ、使い勝手がよくなる。
【００７０】
図１９は、項目定義テーブルの利用方法を示す図である。図１９（Ａ）は項目定義テーブル４９の項目名が列名として表示された汎用画面を示し、図１９（Ｂ）は検索条件の設定及び検索結果を示している。図１９に示すように、利用者は、項目定義テーブルに記憶されている項目名を意識した検索条件を設定することで、必要な情報を抽出することができる。すなわち、利用者が項目名を意識することができることで、様々な情報が混在する一元化されたテーブルから必要な情報を抽出するための適切な抽出条件を効率よく設定することができる。
【００７１】
このように、本発明に実施形態に係るデータ生成装置においては、マスクテーブルのマスク情報に対応する項目ＩＤの項目名を管理する項目定義テーブルを備えるため、万能テーブルのようにあらゆるデータが項目ＩＤのみで管理されて格納されているような場合であっても、管理者や利用者が項目定義テーブルの項目名を参照して、どのようなデータであるかを認識することが可能になり、操作性や作業効率を上げることができる。
【００７２】
（本発明の第４の実施形態）
本実施形態に係るデータ構造及びデータ生成装置について、図２０ないし図２２を用いて説明する。本実施形態に係るデータ構造は、万能テーブルが、固定項目として各データごとに、例えば５Ｗ１Ｈの情報を有するものである。
なお、本実施形態において、前記各実施形態と重複する説明は省略する。
【００７３】
図２０は、本実施形態に係るデータ生成装置の構成を示す機能ブロック図、図２１は、本実施形態に係るテーブル構成を示す図である。図２０において、第３の実施形態における図１６と異なるのは、データ入力部２１が、システム１０ａ〜１０ｄにて格納されている情報内容の実施に関連する５Ｗ１Ｈ情報（いつ、何処で、誰が（誰に）、何を、なぜ、どのように）のうち１又は複数の情報を入力し、万能テーブルを生成する際に、万能テーブル生成部２２が各データごとに５Ｗ１Ｈ情報のうち１又は複数の情報を固定項目として付加することである。また、図２１において、第３の実施形態における図１７と異なるのは、一般システム４１からＣＳＶ４２を生成する際に、ＣＳＶ４２に各データごとの５Ｗ１Ｈの情報を固定項目として追加されていることである。
【００７４】
図２２は、固定項目を含む万能テーブルの情報の一例を示す図である。図２２（Ａ）に示すように、一般システム４０に格納されている「日時」〜「パターン」の情報を５Ｗ１Ｈ情報として抽出し、図２２（Ｂ）に示すように、固定項目として万能テーブル４３に付加する。このような固定項目は、各ＳＬＯＴの項目に関係なく、常に固定的に万能テーブルに付加される情報であり、このような情報を保持することで検索処理の幅を広げることができると共に、何か問題が起こった場合に、その原因の究明等に利用することができる。
【００７５】
より具体的には、例えば、「実施日時」、「場所（排他的な要素のない場所）」、「対象者（万能テーブルに格納される情報の内容が実施される者）」、「実施者（万能テーブルに格納される情報の内容を実施する者）」、「管理者（万能テーブルに格納される情報の内容の実施を指示した者）」が固定項目として付加される。そして、情報の内容については、各ＳＬＯＴに展開された情報であり、これは行為情報と言うことができる。つまり、５Ｗ１Ｈ情報のような固定項目が同じであれば（例えば、数日に亘って同じ実施行為を繰り返して行ったような場合）、実際の行為（例えば、具体的な日付）を指定することが可能となり、データの上書きや削除の検索対象とすることができる。
【００７６】
このように、本実施形態に係るデータ構造においては、万能テーブルが、固定項目として各データごとに５Ｗ１Ｈのうち１又は複数の情報を有するため、運用面で重要な情報として活用することができる。
【００７７】
（本発明の第５の実施形態）
本実施形態に係るデータ構造及びデータ生成装置について、図２３ないし図２５を用いて説明する。本実施形態に係るデータ構造は、マスタテーブルのマスタ情報に、必要に応じて付加情報を追加したものである。
なお、本実施形態において、前記各実施形態と重複する説明は省略する。
【００７８】
図２３は、本実施形態に係るデータ生成装置の構成を示す機能ブロック図、図２４は、本実施形態に係るテーブル構成を示す図である。図２３において、第１の実施形態における図２と異なるのは、マスタテーブル記憶部２７に記憶されたマスタテーブル４６に、マスタテーブル生成部２６が生成したマスタ情報以外の付加情報を追加されていることである。また、図２４において、第１の実施形態における図１２と異なるのは、マスタテーブル４６に付加情報が追加され、検索情報としてそれらの情報が活用可能となっていることである。
【００７９】
図２５は、付加情報の具体例を示す図である。図２５（Ａ）は、一般システム４１から提供されたデータであり、万能テーブル４３に格納される情報の一例を示し、図２５（Ｂ）は図２５（Ａ）で提供されたデータについて既知の情報を格納したテーブルの一例を示し、図２５（Ｃ）は最終的に提供される情報の項目を示している。図２５（Ｂ）の既知の情報を格納したテーブルが付加情報に相当し、中身は１つのマスタ情報に特有の情報である。例えば、胃薬Ａに関して既に一般的に知られていて容易に取得することができる情報として、「薬効」、「禁忌」、「販売元」といった情報があり、これらの情報は一般システム４１において管理されていなくても、管理者が別途付加情報として追加することで、ユーザへの提供をより充実化することができる。
【００８０】
付加情報を追加した場合の各テーブルにおける最終的な管理項目は、図２５（Ｃ）に示す通りであり、万能テーブル４３に格納される情報は、図２５（Ａ）に示すように「種別」、「薬剤名称」、「薬効１」、「薬効２」、「処方量１」、「処方量２」、「処方量３」である。マスタテーブル４６に格納される情報は、一意性を示す最小のパターンであるため、「種別」、「薬剤名称」、「薬効１」、「薬効２」の４項目である。そして、最終的に検索情報として提供されるテーブルは、万能テーブル４３に付加情報の項目が追加されたものであり、図２５（Ｃ）の「種別」〜「販売」までの全ての項目を有しているものとなる。このとき、各項目の項目名は、項目定義テーブル４９による定義付けられるようにしてもよい。
【００８１】
このように、本実施形態に係るデータ構造においては、マスタテーブルが、万能テーブルが有していない情報であって、抽出されたデータに関連する情報を付加的に格納するため、管理者側が付加的な要素を付けて情報を提供することができる。
【００８２】
なお、上記各実施形態において、万能テーブル４３に格納されるデータが完全に揃っていることを前提として、マスタテーブルが作成される処理を説明したが、元々の一般システム４１において、必要なデータが不足していることが多々ある。その場合は、Ｌ−ＩＤとＰＴＮ−ＩＤとの関係を示すパターンマップ４７を手動で生成するようにしてもよい。そうすることで、適正なマスタテーブル４６を生成することができる。
【００８３】
また、上記各実施形態における各構成要件は、任意に組み合わせることが可能であり、利用環境に応じたシステム構築が可能である。
【符号の説明】
【００８４】
１  データ生成装置
１０ａ〜１０ｄ  システム
１１  ＣＰＵ
１２  ＲＡＭ
１３  ＲＯＭ
１４  ＨＤ
１５  通信Ｉ／Ｆ
１６  入出力Ｉ／Ｆ
２１  データ入力部
２２  万能テーブル生成部
２３  万能テーブル記憶部
２４  マスクテーブル記憶部
２５  データ抽出部
２６  マスタテーブル生成部
２７  マスタテーブル記憶部
２８  パターンマップ生成部
２９  パターンマップ記憶部
３０  統合ＩＤ管理部
３１  ＩＤ管理テーブル記憶部
３２  項目定義テーブル記憶部
４１  一般システム
４２  ＣＳＶ
４３  万能テーブル
４４  １ＳＴＭＡＰ
４５  マスクテーブル
４６  マスタテーブル
４７  パターンマップ
４８  ＩＤ管理テーブル
４９  項目定義テーブル
５０  データ検索装置
５１  検索条件情報
５２  条件情報入力部
５３  検索部
５４  出力部
【図１】
2015094988.tif 000003
【図２】
2015094988.tif 000004
【図３】
2015094988.tif 000005
【図４】
2015094988.tif 000006
【図５】
2015094988.tif 000007
【図６】
2015094988.tif 000008
【図７】
2015094988.tif 000009
【図８】
2015094988.tif 000010
【図９】
2015094988.tif 000011
【図１０】
2015094988.tif 000012
【図１１】
2015094988.tif 000013
【図１２】
2015094988.tif 000014
【図１３】
2015094988.tif 000015
【図１４】
2015094988.tif 000016
【図１５】
2015094988.tif 000017
【図１６】
2015094988.tif 000018
【図１７】
2015094988.tif 000019
【図１８】
2015094988.tif 000020
【図１９】
2015094988.tif 000021
【図２０】
2015094988.tif 000022
【図２１】
2015094988.tif 000023
【図２２】
2015094988.tif 000024
【図２３】
2015094988.tif 000025
【図２４】
2015094988.tif 000026
【図２５】
2015094988.tif 000027