(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-02
(45)【発行日】2024-12-10
(54)【発明の名称】データ管理装置、データ管理システム、およびデータ管理方法
(51)【国際特許分類】
G06F 21/62 20130101AFI20241203BHJP
【FI】
G06F21/62 345
G06F21/62 327
(21)【出願番号】P 2022066784
(22)【出願日】2022-04-14
(62)【分割の表示】P 2021037551の分割
【原出願日】2021-03-09
【審査請求日】2023-10-26
(73)【特許権者】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110001689
【氏名又は名称】青稜弁理士法人
(72)【発明者】
【氏名】西川 記史
(72)【発明者】
【氏名】高田 実佳
【審査官】▲柳▼谷 侑
(56)【参考文献】
【文献】国際公開第2020/235018(WO,A1)
【文献】特開2013-200659(JP,A)
【文献】特開2003-036207(JP,A)
【文献】国際公開第2012/063546(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 12/14
G06F 21/10
G06F 21/60 - 21/88
(57)【特許請求の範囲】
【請求項1】
加工処理の対象となるソースデータから生成される二次データが、データ取扱いルールに準拠しているか否かを判定する判定部と、
前記判定部による判定結果に応じた処理を行うデータ処理部と、
前記加工処理の種類毎に、当該処理により生成される前記二次データの前記データ取扱いルールを登録する加工処理・取扱いルール管理テーブルと、を備え、
前記判定部は、前記二次データの生成に先立って、前記加工処理の対象となる前記ソースデータから生成される前記二次データが前記データ取扱いルールに準拠しているか否かを判定し、
前記データ処理部は、前記データ取扱いルールに準拠していると判定された場合に前記加工処理を実行して前記二次データを生成し、前記データ取扱いルールに準拠していないと判定された場合に前記加工処理を実行せず、
さらに、前記判定部は、前記加工処理・取扱いルール管理テーブルに登録された前記データ取扱いルールに準拠しているか否かにより、生成された前記二次データに対するアクセス権を発行するか否かを決定する、
データ管理装置。
【請求項2】
請求項
1に記載のデータ管理装置において、
さらに、前記判定部は、前記加工処理・取扱いルール管理テーブルに登録された前記データ取扱いルールを、前記二次データに適用するルールとして引き継ぐか否かを決定する、
データ管理装置。
【請求項3】
請求項
1に記載のデータ管理装置において、
前記加工処理・取扱いルール管理テーブルを更新するためのインタフェースを備える、
データ管理装置。
【請求項4】
請求項1に記載のデータ管理装置において
前記データ取扱いルールは、統計情報を用いており、
前記生成される前記二次データが前記データ取扱いルールに準拠しているか否かの判定は、前記加工処理の対象となる前記ソースデータから前記統計情報を推定し、前記推定された前記統計情報に基づいて行う
データ管理装置。
【請求項5】
請求項1に記載のデータ管理装置において、
生成される前記二次データの統計値を計算するデータ統計情報計算部を備える、
データ管理装置。
【請求項6】
請求項1に記載のデータ管理装置と、
前記データ管理装置と通信し、前記ソースデータに対する前記加工処理の要求を行うユーザ端末と、を備え、
前記データ管理装置は、前記二次データを生成した後に、
前記判定部によって、生成された前記二次データが前記加工処理・取扱いルール管理テーブルに登録された前記データ取扱いルールに準拠していると判定した場合、生成された前記二次データに対するアクセス権を発行すると決定し、前記ユーザ端末に当該二次データへのアクセス権を設定する、
データ管理システム。
【請求項7】
判定部
、データ処理部
及び加工処理の種類毎に、当該処理により生成される二次データのデータ取扱いルールを登録する加工処理・取扱いルール管理テーブルを備えた情報処理装置によって実行され、前記判定部が、前記加工処理の対象となるソースデータから生成される前記二次データが、
前記データ取扱いルールに準拠しているか否かを判定し、前記データ処理部が、判定結果に応じた処理を行うデータ管理方法であって、
前記判定部は、前記二次データの生成に先立って、前記加工処理の対象となる前記ソースデータから生成される前記二次データが前記データ取扱いルールに準拠しているか否かを判定し、
前記データ処理部は、前記データ取扱いルールに準拠していると判定された場合に前記加工処理を実行して前記二次データを生成し、前記データ取扱いルールに準拠していないと判定された場合に前記加工処理を実行
せず、
さらに、前記判定部は、前記加工処理・取扱いルール管理テーブルに登録された前記データ取扱いルールに準拠しているか否かにより、生成された前記二次データに対するアクセス権を発行するか否かを決定する、
データ管理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ管理装置、データ管理システム、およびデータ管理方法に関する。非制限的には、例えば、取り扱いに注意を要する機微なデータの加工処理(データベースからの抽出、情報同士の結合など)を行うサーバ等に関する。
【背景技術】
【0002】
近年、ハッキング等による各種データの遺漏等の社会問題とも関連して、個人ないし法人の非公開情報(機微なデータ)の法律的な保護を強化する要請が高まっている。
【0003】
一方で、例えば関連企業間や医療ネットワークなどでは、DFFT(Data Free Flow with Trust)すなわち信頼ある自由なデータ流通を実現すべく、複数企業間での機微なデータの流通が進展している。
【0004】
また、例えば工場での生産過程におけるロボットのセンサデータなど、稼働中に膨大な情報が出力され、かかる情報(所謂ビッグデータ)を生産性向上のための分析対象として扱うシステムにおいては、データの大規模化によるデータ処理時間の増大も問題となる。
【0005】
あるいは、大企業や役所など、構成員(個人)やその家族等に関する多くの情報をデータベース化して扱うシステムにおいても、データの大規模化によるデータ処理時間の増大が技術的な課題となる。
【0006】
このような課題に対し、特許文献1に記載の技術では、電子ファイルのメタデータを更新すべきファイルの特定等、メタデータを管理することにより、組織内に散在している機密文書の管理の効率化を図ることとしている。
【0007】
一方で、特許文献1に記載の技術は、リネージを利用してメタデータの値を派生データに伝搬させている構成にとどまっており、このため以下のような問題があるものと考えられる。
【0008】
すなわち、特許文献1に記載の技術では、機微なデータの加工処理を行う際に、当該機微なデータや当該加工処理に適用されるルール(例えばk値など)を満たさない場合であっても当該加工処理を行うことになる。このため、特許文献1に記載の技術では、データ準備工数の削減に寄与しない事例が発生する。
【先行技術文献】
【特許文献】
【0009】
【発明の概要】
【発明が解決しようとする課題】
【0010】
本発明の目的は、データ準備工数の削減に寄与することが可能なデータ管理装置、データ管理システム、およびデータ管理方法を提供することである。
【課題を解決するための手段】
【0011】
本発明に係るデータ管理装置は、
加工処理の対象となるソースデータから生成される二次データが、統計情報を用いるデータ取扱いルールに準拠しているか否かを判定する判定部と、
前記判定部による判定結果に応じた処理を行うデータ処理部と、を備え、
前記判定部は、前記二次データの生成に先立って、前記加工処理の対象となる前記ソースデータから前記統計情報を推定し、推定された前記統計情報に基づいて生成される前記二次データが前記統計情報の統計値を満たしているか否かに基づいて、前記データ取扱いルールに準拠しているか否かを判定し、
前記データ処理部は、前記データ取扱いルールに準拠していると判定された場合に前記加工処理を実行して前記二次データを生成し、前記データ取扱いルールに準拠していないと判定された場合に前記加工処理を実行しない。
【0012】
本発明に係るデータ管理システムは、上記のデータ管理装置と、
前記データ管理装置と通信し、前記ソースデータに対する前記加工処理の要求を行うユーザ端末と、を備え、
前記データ管理装置は、前記二次データを生成した後に、前記ユーザ端末に当該二次データへのアクセス権を設定する。
【0013】
本発明の他の一の側面は、判定部及びデータ処理部を備えた情報処理装置によって実行され、前記判定部が、加工処理の対象となるソースデータから生成される二次データが、統計情報を用いるデータ取扱いルールに準拠しているか否かを判定し、前記データ処理部が、判定結果に応じた処理を行うデータ管理方法であって、
前記判定部は、前記二次データの生成に先立って、前記加工処理の対象となる前記ソースデータから前記統計情報を推定し、推定された前記統計情報に基づいて生成される前記二次データが前記統計情報の統計値を満たしているか否かに基づいて、前記データ取扱いルールに準拠しているか否かを判定し、
前記データ処理部は、前記データ取扱いルールに準拠していると判定された場合に前記加工処理を実行して前記二次データを生成し、前記データ取扱いルールに準拠していないと判定された場合に前記加工処理を実行しない。
【発明の効果】
【0014】
本発明では、加工処理の対象となるソースデータから生成される二次データがデータ取扱いルールに準拠しているか否かを、当該加工処理に先立って判定し、データ取扱いルールに準拠していないと判定された場合、当該加工処理を実行しないため二次データも生成されない。したがって、本発明によれば、データ準備工数の削減に寄与することができる。
【図面の簡単な説明】
【0015】
【
図1】本実施形態における情報処理システムの一具体例を示す概略機能ブロック図である。
【
図2】情報処理システムを構成するデータベース管理サーバ、データ加工サーバ、およびクライアント端末のハードウェア構成の一例について説明するブロック図である。
【
図3】情報処理システムにおけるデータ加工サーバの更なる詳細を説明するブロック図である。
【
図4】情報処理システムにおけるクライアント端末の更なる詳細を説明するブロック図である。
【
図5】情報処理システムにおけるデータベース管理サーバの更なる詳細を説明するブロック図である。
【
図6】データ加工サーバが保有するデータ取扱規定管理テーブルの一例を示す図である。
【
図7】データ加工サーバが保有する加工方法・ルール引継ぎ方法管理テーブルの一例を示す図である。
【
図8】データ加工サーバが保有するリネージ管理テーブルの一例を示す図である。
【
図9】データ加工サーバのクエリ実行・ルール準拠判定部が実行する処理の一例を説明するフローチャートである。
【
図10】クエリ実行・ルール準拠判定部が実行する第2のプログラムの処理を説明するフローチャートである。
【
図11】クエリ実行・ルール準拠判定部が実行する第3のプログラムの処理を説明するフローチャートである。
【
図12】クエリ実行・ルール準拠判定部が実行する第4のプログラムの処理を説明するフローチャートである。
【
図13】クエリ実行・ルール準拠判定部が実行する第5のプログラムの処理を説明するフローチャートである。
【
図14】クエリ実行・ルール準拠判定部が実行する第6のプログラムの処理を説明するフローチャートである。
【
図15】クエリ実行・ルール準拠判定部が実行する第7のプログラムの処理を説明するフローチャートである。
【
図16】クエリ実行・ルール準拠判定部が実行する第8のプログラムの処理を説明するフローチャートである。
【
図17】二次データがルールに準拠しているかを計算する処理の例を示すフロー図である。
【
図18】二次データがルールに準拠しているかを確認する処理の例を示すフロー図である。
【
図19】ソースデータのルール引継ぎ要否決定処理の例を示すフロー図である。
【
図20】ルール引継ぎ要否決定処理の例を示すフローチャートである。
【
図21】二次データがルールに準拠しているかを確認する処理の流れを示すフロー図である。
【
図22】アクセス権設定処理の一例を示すフローチャートである。
【
図23】加工処理および加工後のデータの取り扱いに関する規定を登録するための規定登録画面の具体例を説明する図である。
【
図24】単一のデータ操作(クエリ)を投入するための表示画面の具体例を説明する図である。
【
図25】複数の独立的(非時系列的)なデータ操作(クエリ)を投入するための表示画面の具体例を説明する図である。
【
図26】複数の連続的(時系列的)なデータ操作(クエリ)を投入するための表示画面の具体例を説明する図である。
【
図27】表示部に表示される警告画面の一例を示す図である。
【発明を実施するための形態】
【0016】
本実施の形態について、図面を参照して詳細に説明する。
【0017】
概して、以下に説明する実施の形態は、コンピュータ(電子計算機)を用いたシステムであって、
(1)生成される二次データの統計情報値を推定し、
(2)二次データに適用される取扱いルールを決定し、
(3)上記(1)で推定された、データの統計情報値より、当該データが取扱いルールを満たすか否かを推定し、
(4)データ操作(クエリ)を受け取った場合、生成されるデータの取扱いルールを決定し、当該データの統計情報値を計算し、当該データが取扱いルールを満たすか否かを推定し、満たす場合にのみ、二次データを生成するためのデータ操作(クエリ)を実行する。
【0018】
上記構成とすることにより、取扱いルールを満たさないと推定されたデータについては、データ操作(クエリ)が実行されないことから、データ準備工数の削減を図ることができる。
【0019】
なお、上記のうち、「統計情報値」の非限定的な代表例としては、k値が挙げられる。良く知られているように、二次データを構成する情報のk値が大きいほど個人等を特定しにくくなり、k値が小さくなるほど個人等を特定しやすくなる。
【0020】
図1は、本発明を適用した実施形態に係る情報処理システムの一具体例を示す概略機能ブロック図である。
図1に示すように、本実施形態における情報処理システム1は、データベースを管理するデータベース管理サーバ2と、データベースのデータを加工するデータ加工サーバ3と、データベースにアクセスするクライアント端末100と、これらを相互に接続するための通信回線200と、を備える。
【0021】
上記のうち、情報処理システム1は本発明の「データ管理システム」に対応し、データ加工サーバ3は本発明の「データ管理装置」に対応し、クライアント端末100は、本発明の「ユーザ端末」に対応する。
【0022】
情報処理システム1のデータベース管理サーバ2は、データベース管理システム21と、種々のデータが登録されるデータベース(DB)22と、かかるデータベース(DB)22に登録されるデータの統計処理を行った結果(集計等された情報)であるDBの統計情報23を備える。
【0023】
以下の説明では、データベース(DB)22として、第1のDB(以下、「NDB」という)と、第2のDB(以下、「KDB」という)と、の2種類のデータベースが格納され、NDBに対するデータの加工処理と、KDBに対するデータの加工処理と、で異なる取扱いルールが適用される場合を前提とする。
【0024】
但し、上記の前提は、説明の簡明化等を考慮したものであって、実際の運用上は、データベース(DB)22として、より多くの種類のデータベースが格納され得るものであり、逆に、1種類のデータベース(言い換えると一種類のルールが適用されるDB)が格納される構成であってもよい。
【0025】
また、情報処理システム1(以下、適宜「本システム」と称する場合がある。)のデータ加工サーバ3は、クエリ実行・ルール準拠判定部31と、データ取扱規定管理テーブル32と、リネージ管理テーブル33と、加工方法・ルール引継ぎ方法管理テーブル34とを備える。これら各部の詳細は後述する。
【0026】
また、クライアント端末100は、本システムにおいて管理されるデータベースのデータについての操作(例えば閲覧、集計(リスト表示)、印刷など)のクエリを投入するデータ操作(クエリ)投入部101と、詳細を後述する加工方法・ルール引継ぎ方法登録部102と、を備える。
【0027】
なお、クライアント端末100は、技術的には例えば個人のPCや携帯端末などでも実現可能であるが、本実施の形態では、機微なデータの管理の強化を図るために、専用端末を使用することを前提とする。
【0028】
次に、本システムの利用方法の概略および主たる構成を説明する。
ユーザは、クライアント端末100のデータ操作(クエリ)投入部101を操作して、データベース管理サーバ2のデータベース22(ここでは、NDBまたはKDB)にアクセスする。ここで、ユーザ(クライアント端末100)は、データベース22のデータ(ソースデータ)が加工処理された、二次データの形態で提供される。ここで、データの加工処理の非制限的な代表例としては、データの抽出、結合(組み合わせ)、集計などが挙げられる。本実施の形態では、かかるデータ処理の加工処理をデータ加工サーバ3が実行する。
【0029】
言い換えると、ユーザ(クライアント端末100)は、データ加工サーバ3を介してデータベース管理サーバ2のデータベース22にアクセスする。加えて、データベース管理サーバ2のデータベース22(NDB、KDB)には、
図6および
図7等で後述するデータ取扱いルールが予め設定されており、ユーザ(クライアント端末100)は、当該設定されたデータ取扱いルールに従った範囲内でアクセスすることができる。
【0030】
本実施の形態では、本システムにおけるデータ加工サーバ3は、クライアント端末100で投入されたクエリひいては加工処理によって生成される二次データが、上記のデータ取扱いルールに準拠しているか否かを判定し、該判定結果に応じた処理を行う。
【0031】
より具体的には、データ加工サーバ3は、加工処理(例えば、抽出、結合、集計)の対象となるソースデータから生成される二次データが、統計情報を用いるデータ取扱いルールに準拠しているか否かを判定するクエリ実行・ルール準拠判定部31(本発明の「判定部」等に対応する)と、かかる判定結果に応じた処理を行うデータ処理部と、を備える。これら各部の機能は、
図2で後述するデータ加工サーバ3のCPU301によって実現することができる。
【0032】
そして、データ加工サーバ3のクエリ実行・ルール準拠判定部31(判定部)は、二次データの生成に先立って、加工処理の対象となるソースデータから前記統計情報を推定し、推定された統計情報に基づいて生成される二次データが統計情報の統計値(主としてk値)を満たしているか否かに基づいて、データ取扱いルールに準拠しているか否かを判定する。また、データ加工サーバ3のデータ処理部は、データ取扱いルールに準拠していると判定された場合に加工処理を実行して二次データを生成し、データ取扱いルール(以下、単に「ルール」と略称する場合がある)に準拠していないと判定された場合には当該加工処理を実行しない。かかる構成を備えた本実施形態によれば、機微なデータの管理を強化しつつ、データ準備工数の削減を図ることができる。
【0033】
次に、本実施の形態の情報処理システム1における信号または情報の流れについて概説する。
本システムにおいて、クライアント端末100のデータ操作(クエリ)投入部101に投入されたクエリは、通信回線200を介してデータ加工サーバ3のクエリ実行・ルール準拠判定部31に渡される。
【0034】
当該クエリを取得したデータ加工サーバ3のクエリ実行・ルール準拠判定部31は、所定のプログラム(
図9~
図16で後述する)を実行することにより、該クエリがルールに準拠するか否かの判定、およびデータベース管理サーバ2(データベース管理システム21)への問合を行って当該問合わせ結果を取得し、該取得された結果をクライアント端末100のデータ操作(クエリ)投入部101に返す。一具体例では、クエリ実行・ルール準拠判定部31は、該クエリに応じて生成されるデータが、ルールに準拠している場合は加工処理済の二次データを、準拠していない場合はルールに準拠しない旨の警告を、データ操作(クエリ)投入部101に返す。他の具体例では、クエリ実行・ルール準拠判定部31は、該クエリに応じて生成されるデータが、ルールに準拠している場合はクライアント端末100にアクセス権を設定し、準拠していない場合にはアクセス権を設定せず上記の警告を行う。
【0035】
また、本実施の形態では、上述した加工処理により生成された二次データに適用されるルールの設定を、処理毎(加工処理の種類毎)に、専用端末であるクライアント端末100の加工処理・ルール引継ぎ方法登録部102を通じて設定するようになっている。本実施の形態では、クライアント端末100の加工処理・ルール引継ぎ方法登録部102に入力された情報は、データ加工サーバ3の加工処理・ルール引継ぎ方法管理テーブル34に登録される。
【0036】
なお、
図1では、データベース管理サーバ2とデータ加工サーバ3とを別個の端末として例示したが、データベース管理サーバ2とデータ加工サーバ3とが一台の装置すなわち同一のサーバであってもよい。あるいは、データベース管理サーバ2とクライアント端末100とを一台の装置とする構成、データ加工サーバ3とクライアント端末100とを一台の装置とする構成、さらには、データベース管理サーバ2とデータ加工サーバ3とクライアント端末100とを一台の装置として構成してもよい。
【0037】
次に、
図2を参照して、上述したデータベース管理サーバ2、データ加工サーバ3、およびクライアント端末100のハードウェア構成の一例について説明する。
図2は、本実施形態の情報処理システム1におけるハードウェア構成を示すブロック図である。以下、主として
図2を参照して、本システムにおけるハードウェア構成の一具体例を説明する。
【0038】
図1で上述したデータベース管理サーバ2、データ加工サーバ3、およびクライアント端末100は、サーバ装置、パーソナルコンピュータ、ワークステーションなどの一般的な情報処理装置により実現することができる。なお、以下は説明の便宜のため、データベース管理サーバ2、データ加工サーバ3、およびクライアント端末100を、単に「装置2、3、100」などと略称する場合がある。
【0039】
概して、
図2に示すように、これら装置2、3、100のハードウェア構成は、装置2、3、100の順に、CPU201、301、1001、通信インタフェース205、305、1005、メモリ202、302、1002、記憶部(ストレージ)203、303、1003、及びこれらを接続するバス204、304、1004を備えた構成とすることができる。そして、これら装置2、3、および100は、ネットワーク200を経由して相互に接続されている。
【0040】
なお、
図2では、クライアント端末100に接続インタフェース1006、キーボードやマウス等の入力部1007、およびLCD等の表示部1008を備えた構成としているが、これら各部は、データベース管理サーバ2やデータ加工サーバ3に設けてもよい。
【0041】
以下は、これら装置2、3、100におけるハードウェアの構成要素を、データ加工サーバ3を代表例として説明する。他の装置2、100のハードウェアの構成要素は、データ加工サーバ3のハードウェアの構成要素と同様であるため、適宜に説明を割愛する。
【0042】
データ加工サーバ3のCPU301は、データ加工サーバ3の各部の制御を司るハードウェアプロセッサである。また、かかるCPU301は、本発明の「データ管理装置」としての種々の機能、例えば「判定部」、「データ処理部」、「データ統計情報計算部」などの機能を遂行する。
【0043】
データ加工サーバ3のメモリ302は、例えばROMやHDDなど、種々の記憶媒体(ハードウェアメモリ)が使用され得る。この点、データ加工サーバ3の記憶部303も同様に、種々の記憶媒体(ハードウェアメモリ)を使用することができる。通信インタフェース305は、例えばモデムや通信カードなどの、通信回線200を介して他の端末と通信を行うための種々のデバイスが使用され得る。これら各部は、バス304を通じて互いに接続される。
【0044】
図3は、データ加工サーバ3の詳細を示すブロック図である。
図3に示すように、データ加工サーバ3は、メモリ302内に、ソフトウェアプログラムとしてのクエリ実行・ルール準拠判定部3021を格納する。また、データ加工サーバ3の記憶部303内には、データ取扱規定管理テーブル32、リネージ管理テーブル33、および加工処理・ルール引継ぎ方法管理テーブル34が格納される。
【0045】
該して、データ加工サーバ3のCPU301は、メモリ302内に格納されたクエリ実行・ルール準拠判定部3021(ソフトウェアプログラム)を読み出して実行することにより、クエリ実行・ルール準拠判定部(3021)としての機能を発揮する。このとき、CPU301は、記憶部303の上記テーブル(32~34)を参照することにより、ユーザが欲するデータへのアクセスの可否等を判定する。そして、CPU301は、かかる判定結果に応じて、データへのアクセスを認める場合、クライアント端末100に当該データへのアクセスを行うためのアクセス権を発行(設定)し、アクセスを認めない場合には、かかるアクセス権を発行(設定)しない。
【0046】
図4は、ユーザが操作するクライアント端末100の詳細を示すブロック図である。
図4に示すように、クライアント端末100は、メモリ1002内に、データ操作(クエリ)投入部1003、および加工処理・ルール引継ぎ方法登録部1004(それぞれソフトウエアプログラム)を格納する。
【0047】
概して、クライアント端末100のCPU1001は、メモリ1002内のデータ操作(クエリ)投入部1003および加工処理・ルール引継ぎ方法登録部1004を読み出して実行することより、これらの機能を発現し、ユーザが欲するデータに関する入力画面等を表示する。そして、クライアント端末100のCPU1001は、ユーザの操作によりかかる入力画面に入力された情報を、通信インタフェース1005およびネットワーク200を介してデータ加工サーバ3に送る。
【0048】
この後、上述のように、データ加工サーバ3によってデータへのアクセスが認められ、アクセス権が発行(設定)された場合、クライアント端末100のCPU1001は、当該ユーザに、データにアクセスする操作を行うための画面を表示する処理を行う。なお、かかるデータアクセスのための画面や処理手順などについては、本実施形態の特徴との関連性が薄く、公知技術が使用可能であるため、適宜説明を省略する。
また、上記の入力画面(クエリ投入画面)については
図24等の説明で後述する。
【0049】
図5は、データベース管理サーバ2の詳細を示すブロック図である。
図5に示すように、データベース管理サーバ2は、メモリ202内に、ソフトウェアプログラムとしてのデータベース管理システム2021を備える。また、データベース管理サーバ2の記憶部302内には、データベース22、およびデータベースの統計情報23が格納される。
【0050】
該して、データベース管理サーバ2は、CPU201が、メモリ302内のデータベース管理システム3021を読み出して実行することにより、かかるデータベース管理サーバ2としての種々の機能を奏する。
【0051】
例えば、データベース管理サーバ2は、CPU201の制御の下、ネットワーク200(
図2を参照)および通信インタフェース205を介してデータ加工サーバ3から送られて来る指示(命令)を受信する。そして、データベース管理サーバ2のCPU201は、該受信された命令に規定された(当該命令により指定された)データを、記憶部203から検索して読み出し、該読み出されたデータをデータ加工サーバ3に向けて送信する。
【0052】
<データ取扱規定管理テーブルの具体例>
図6は、データ加工サーバ3の記憶部303に格納されたデータ取扱規定管理テーブル32の一例を示す図である。データ取扱規定管理テーブル32は、本発明の「データ取扱いルール」に対応する。
【0053】
図6に示すデータ取扱規定管理テーブル32には、上述したデータベース管理サーバ2が保有する2種類のデータベース(NDB、KDB)の各々のデータに対する取扱いルールが規定されている。非制限的な一具体例では、データベース管理サーバ2が保有するNDBは、国民の医療情報が格納されたデータベース(例えば「レセプト情報・特定健診等情報データベース」など)であり、KDBは、k-匿名性すなわち匿名化すべきデータを登録したデータベースである。
【0054】
図6に示す一具体例では、データ取扱規定管理テーブル32には、上記のNDBに登録されたデータの取扱いに関する3つのルールR1、R2、R3が登録されている。また、データ取扱規定管理テーブル32は、上記のKDBに登録されたデータの取扱いに関する2つのルールR4、およびR5が登録されている。
【0055】
具体的には、上記のNDBに対する3つのルールは以下の通りである。
第1ルール(R1):コピー数=1に制限される。
第2ルール(R2):他の情報との突合せが禁止される。
第3ルール(R3):所定のk値(例えばk>3)を満たさないデータへのアクセスが禁止される。
【0056】
一具体例では、NDBに登録されたデータについては、上記R1~R3のいずれか1つ以上のルールが適用されるように設定する。また、ルールR3に関しては、例えばデータの種類毎にk値の設定を変えることができる。但し、説明が複雑になることを避ける等のため、特記しない限り、ルールR3のk値は上記の通りとする。
【0057】
また、上記のKDBに関する2つのルールは以下の通りである。
第4ルール(R4):アプリケーションが予め定められたもの(XXX)でない場合、k値>10を満たさないデータへのアクセスが禁止される。
第5ルール(R5):企業が利用する場合はk値>5であること。
【0058】
一具体例では、KDBに登録されたデータについては、上記R4またはR5のいずれか1つ以上のルールが適用されるように設定する。なお、同様に、ルールR4、R5のk値に関しては、例えばデータの種類毎に設定を変えることができるが、特記しない限り、ルールR4、R5のk値は上記の通りとする。
【0059】
また、上述した5つのルールおよびその設定方法は、あくまで例示であり、実際の運用上は、より多くのルール、あるいはより複雑なルールが作成され設定され得ることは勿論である。
【0060】
<加工方法・ルール引継ぎ方法管理テーブルの具体例>
図7は、データ加工サーバ3の記憶部303に格納された、加工方法・ルール引継ぎ方法管理テーブル34の一例を示す図である。加工方法・ルール引継ぎ方法管理テーブル34は、本発明の「データ取扱いルール」に対応する。
【0061】
図7に示す例では、加工方法・ルール引継ぎ方法管理テーブル34には、上述したデータベース(NDB、KDB)に登録されたデータに対する加工処理の種類、および当該加工処理によって生成される二次データに対する、取り扱いのルールおよびルールの引継ぎ方法が規定される。
【0062】
なお、
図7に示す例では、加工処理として、抽出、結合、集計、AIモデル構築の4種類を例示しているが、実際の運用上は、より多くの種類の加工処理が規定され得ることは勿論である。以下、簡明のため、加工処理を単に処理と略記する場合がある。
【0063】
図7に示す一具体例では、処理「抽出」に適用されるルールは「ALL」すなわち全てのルール(この例では
図6に示すR1~R5)であり、引継ぎ方法は、ソースデータ(
図7中の「ソース」、以下同じ)に適用されるルールを引き継ぐ。この点、処理「結合」についても同様である。
【0064】
なお、「ソースデータ」とは、処理(例えば結合)の直接の対象となるデータを意味し、未加工のデータに限られない。したがって、加工済みのデータ(例えば2つのデータが結合されたデータ)であっても、次の処理(例えば集計)の「ソースデータ」になり得る。
【0065】
一方、処理「集計」に適用される引継ぎ方法は、ソースデータにルールR4が適用される場合と、ソースデータにR4以外のルール(すなわちルールR1~3、R5が適用される場合)が適用される場合と、で異なる。
【0066】
言い換えると、処理「集計」にルールR1~3またはルールR5が適用される場合、引継ぎ方法は、ソースデータのルールを引き継ぐ。一方、処理「集計」にルールR4が適用される場合、かつ、所定のk値を満たした場合には、ソースデータのルールを引き継がない。この点、処理「AIモデル構築」についても同様である。
【0067】
具体的には、ルールR1~3またはルールR5が適用されるAIモデル構築の場合、ソースデータのルールを引き継ぐ。これに対し、処理「AIモデル構築」にルールR4が適用される場合、かつ、説明因子のk値を満たした場合には、ソースデータの引き継ぎが行われない。
【0068】
図8は、データ加工サーバ3の記憶部303に格納された、リネージ管理テーブル33の一例を示す図である。
図8に示すリネージテーブル33は、ユーザ(クライアント端末100)から要求された一つのクエリに応じてデータ加工サーバ3が実行したデータ加工処理の履歴(リネージ)を、上から順に時系列で登録したものである。この例では、データ加工サーバ3は、上記のクエリに応じて、以下の加工処理を行ったことが分かる。
【0069】
すなわち、データ加工サーバ3は、最初に、取扱いルールR1、R2、R3(適宜、
図6を参照)に従って、NDBからデータを抽出して、二次データとしてデータD1を生成した。続いて、データ加工サーバ3は、取り扱いルールR4、R5(適宜、
図6を参照)に従って、KDBからデータを抽出して、二次データとしてデータD2を生成した。
【0070】
さらに、データ加工サーバ3は、当該生成されたデータD1およびD2をソースデータとして結合することにより、データD3(すなわちデータD1とD2の組み合わせ)を生成した。この結合の際(データD3の生成の際)に適用される取扱いルールがR1、R2、R3、R4、R5であり、データD3の生成の際にいずれかのルールに準拠しない場合には、データ加工サーバ3は、データD3を生成しない。言い換えると、生成された二次データであるデータD3は、加工処理時における全ての取り扱いルールに準拠すると判定されて生成されたものである。
【0071】
そして最後に、データ加工サーバ3は、当該生成されたデータD3をソースデータとして集計を行い、二次データとしてデータD4を生成した。かかる集計の際(データD4の生成の際)に適用される取扱いルールがR1、R2、R3、R5であり、データD4の生成の際にいずれかのルールに準拠しない場合には、データ加工サーバ3は、データD4を生成しない。言い換えると、生成された二次データであるデータD4は、集計処理時における上記のルールに準拠すると判定されて生成されたものである。また、
図8および
図7を参照して分かるように、データD4の生成の際に、ルールR4については、所定のk値を満たすことから、引き継がれなかったことが分かる。
【0072】
上記のようなリネージテーブル33を保有する構成とすることにより、必要に応じてデータ加工サーバ3の行った加工処理の内容、処理順序、従ったルール等を確認できることから、メンテナンスの向上、データ管理の強化等を図ることができる。
【0073】
<クエリ実行・ルール準拠判定部が行う処理の流れ>
図9~
図16は、データ加工サーバ3のクエリ実行・ルール準拠判定部31が実行する処理内容の種々の具体例を示すフローチャートである。以下は、説明の便宜のため、
図9~
図16に示すフローチャートを、第1~第8のプログラムという場合がある。
【0074】
最初に、
図9に示す処理の概要について説明する。データ加工サーバ3のクエリ実行・ルール準拠判定部31は、単一のデータ操作(クエリ)により生成される二次データが、ルールを順守しているか否かをチェックする。より具体的には、クエリ実行・ルール準拠判定部31は、当該二次データの生成前(すなわちソースデータ加工前)に、ルールを順守しているか否かを、データベース管理サーバ2内のDBの統計情報23を用いて計算するとともに、ルールを順守していると判定した場合(二次データを生成する場合)でも、当該データの生成後に再びルール順守の如何を確認し(2度目の判定)、かかる2度目の判定でルール順守していないと判定(計算等)された場合は、データ生成を実行しない。
【0075】
以下、より詳細に説明する。ステップS301において、クエリ実行・ルール準拠判定部31は、データ操作(クエリ)を取得する。このクエリは、典型的には、
図1で上述したクライアント端末100のデータ操作(クエリ)投入部101を通じてユーザにより入力(指示)されたクエリを、データ加工サーバ3が受信することによって、取得される。
なお、
図10等の他のフローチャートにおけるクエリ取得の場合も同様であり、以下は適宜その説明を省略する。
【0076】
ステップS302において、クエリ実行・ルール準拠判定部31は、当該クエリに含まれるソースデータを取得する。
【0077】
ステップS303において、クエリ実行・ルール準拠判定部31は、当該クエリに含まれる集計キー列を取得する(適宜、
図24等を参照)。
【0078】
ステップS304において、クエリ実行・ルール準拠判定部31は、前のステップで取得されたソースデータのルールを取得する。このとき、クエリ実行・ルール準拠判定部31は、
図8で上述したリネージ管理テーブル33を参照して、ソースデータのルールを取得することができる。
【0079】
ステップS305において、クエリ実行・ルール準拠判定部31は、生成されるデータの統計情報値(k値)を計算(算出)する。ここでは、クエリ実行・ルール準拠判定部31は、
図1で上述したデータベース管理サーバ2のデータベースの統計情報23を利用して、生成されるデータの統計情報値(k値)の計算(算出)を実行する。
【0080】
ステップS306において、クエリ実行・ルール準拠判定部31は、生成されるデータに適用されるルールを決定する。このとき、クエリ実行・ルール準拠判定部31は、
図7で上述した加工方法・ルール引継ぎ方法管理テーブル34を参照して、生成されるデータ(二次データ)に適用されるルールを取得することができる。
【0081】
ステップS307において、クエリ実行・ルール準拠判定部31は、生成予定のデータが当該ルールに準拠しているか否かを判定するための前処理(計算)を実行する。
【0082】
ステップS308において、クエリ実行・ルール準拠判定部31は、生成予定のデータが当該ルールに準拠しているか否かを判定する。
【0083】
ここで、クエリ実行・ルール準拠判定部31は、生成予定のデータが当該ルールに準拠していると判定した場合(ステップS308、YES)、ステップS309に移行する。一方、クエリ実行・ルール準拠判定部31は、生成予定のデータが当該ルールに準拠していないと判定した場合(ステップS308、NO)、ユーザへのアクセスを認めるべきではないと判断し、本ルーチンを終了する。
【0084】
ステップS309において、クエリ実行・ルール準拠判定部31は、データの生成操作(クエリ)を実行する。
【0085】
ステップS310において、クエリ実行・ルール準拠判定部31は、生成されたデータに対して当該ルールが準拠しているかを再チェックした後、当該生成されたデータに対する当該ユーザへのアクセス権を設定する。
【0086】
一具体例では、クエリ実行・ルール準拠判定部31は、アクセス権として、所定の桁のパスワードを発行し、
図1で上述したクライアント端末100に、当該パスワードを送信する。
【0087】
この後、ユーザは、クライアント端末100のデータ操作(クエリ)投入部101を通じて入力された処理(例えば「閲覧」)により、当該データにアクセスすることができる。
【0088】
<第2のプログラム>
図10は、データ加工サーバ3のクエリ実行・ルール準拠判定部31が実行する別の処理内容(第2のプログラム)を説明するフローチャートである。
なお、
図10のフローチャートにおいて、
図9で上述したステップS301~ステップS307までの処理群A、および、ステップS309およびS310の処理内容は同一であるため、同一のステップ番号を付してその説明を省略する。
【0089】
ステップS308において、クエリ実行・ルール準拠判定部31は、生成予定のデータ(二次データ)が当該ルールに準拠しているか否かを判定する。
【0090】
ここで、クエリ実行・ルール準拠判定部31は、生成予定のデータが当該ルールに準拠していると判定した場合(ステップS308、YES)、上述と同様に、ステップS309およびステップS310の処理を経て、ユーザへのアクセス権を発行して処理を終了する。
【0091】
一方、クエリ実行・ルール準拠判定部31は、生成予定のデータが当該ルールに準拠していないと判定した場合(ステップS308、NO)、ステップS311に移行する。
【0092】
ステップS311において、クエリ実行・ルール準拠判定部31は、
図1で上述したクライアント端末100のデータ操作(クエリ)投入部101に、警告を表示する(
図27で後述する)。続くステップS312において、クエリ実行・ルール準拠判定部31は、クライアント端末100のデータ操作(クエリ)投入部101から出力される信号(ユーザの指示)を監視する。ここで、クエリ実行・ルール準拠判定部31は、クライアント端末100のデータ操作(クエリ)投入部101から、実行指示を取得した場合、ステップS309およびステップS310の処理を経て、ユーザへのアクセス権を発行して処理を終了する。
【0093】
<第3のプログラム>
図11は、データ加工サーバ3のクエリ実行・ルール準拠判定部31が実行する、さらに別のプログラム(第3のプログラム)の処理内容を説明するフローチャートである。
【0094】
ステップS321において、クエリ実行・ルール準拠判定部31は、上述したステップS301と同様に、クライアント端末100から送信されるユーザのデータ操作(クエリ)を取得する。但し、このステップS321では、クエリ実行・ルール準拠判定部31が複数個の(一セットの)クエリを取得した場合を前提とする。また、ステップS321では、該取得された複数個のクエリが、互いに独立したクエリである場合、言い換えると、実行順を変えても同一の結果が得られるようなクエリである場合を前提とする(適宜、
図25を参照)。
【0095】
この場合、クエリ実行・ルール準拠判定部31は、当該セットを構成する各々のデータ処理(クエリ)についての処理を繰り返し行う繰り返しモード(S322)に移行して、以下のステップS323~S327の処理を、クエリ毎に繰り返し実行する。
【0096】
ステップS323において、クエリ実行・ルール準拠判定部31は、未だ処理していない一つのデータ処理(クエリ)を取得する。
【0097】
ステップS324において、クエリ実行・ルール準拠判定部31は、取得された当該データ処理(クエリ)によって生成されるデータのルールと、当該生成されるデータが該ルールに準拠するかを計算する。かかる処理は、
図9で上述した処理群Aの一部(S302~S307)に対応するため、説明を省略する。
【0098】
ステップS325において、クエリ実行・ルール準拠判定部31は、生成予定のデータ(二次データ)が当該ルールに準拠しているか否かを判定する。
【0099】
ここで、クエリ実行・ルール準拠判定部31は、生成予定のデータが当該ルールに準拠していると判定した場合(ステップS325、YES)、当該生成予定のデータをユーザに提供すべきと判断し、ステップS326に移行する。そして、ステップS326で、クエリ実行・ルール準拠判定部31は、当該データ処理(クエリ)を、実行可能なクエリとして、リスト(以下、「実行可能クエリリスト」という)に登録し(
図11を参照)、この後、ステップS327に移行する。
【0100】
一方、クエリ実行・ルール準拠判定部31は、生成予定のデータが当該ルールに準拠していないと判定した場合(ステップS325、NO)、ユーザへのアクセスを認めるべきではないと判断し、上述したステップS326をスキップして、ステップS327に移行する。
【0101】
ステップS327において、クエリ実行・ルール準拠判定部31は、上述したステップS321で取得された一セットのクエリにつき、全てのクエリに対する処理を行ったか否かを判定する。
【0102】
ここで、クエリ実行・ルール準拠判定部31は、全てのクエリに対する処理を行ったと判定した場合(ステップS327、YES)、ステップS328に移行する。
【0103】
一方、クエリ実行・ルール準拠判定部31は、未だ全てのクエリに対する処理を行っていないと判定した場合(ステップS327、NO)、ステップS322に戻り、上述したステップS323~ステップS327の処理を繰り返し行う。
【0104】
ステップS328において、クエリ実行・ルール準拠判定部31は、実行可能なクエリ、すなわち上述した実行可能クエリリストに登録されたクエリを実行する。
【0105】
ステップS329において、クエリ実行・ルール準拠判定部31は、生成されたデータに基づくルール準拠の有無を再確認し、その後、処理を終了する。
【0106】
この処理例によれば、実行可能なクエリと判定されたクエリだけが選択的に実行される(ステップS328)。また、かかる選択的な実行により生成されたデータは、機微なデータとして、その取り扱いに万全を期すべく、予め定められたルールに準拠しているかが再確認された後(ステップS329)、ユーザ(クライアント端末100の操作者)に提供される。
【0107】
このように、予め決定された取扱いルールを満たさないと推定されたデータについてのデータ操作(クエリ)を実行しない構成とすることにより、データ準備工数の削減ないし最小化を図ることができる。
【0108】
<第4のプログラム>
図12は、データ加工サーバ3のクエリ実行・ルール準拠判定部31が実行する、さらに別の処理例(第4のプログラム)の処理内容を説明するフローチャートである。
【0109】
なお、
図12のフローチャートにおいて、
図11で上述したステップS321~ステップS324までの処理群B、および、ステップS328およびS329の処理内容は同一である、または類似していることから、同一のステップ番号を付して、適宜その説明を省略する。
【0110】
ステップS321において、クエリ実行・ルール準拠判定部31は、上述した
図11の場合と同様に、クライアント端末100から送信される、ユーザにより入力された、複数個の(一セットの)クエリを取得する。さらに、
図11の場合と異なり、ここでは、該取得された複数個のクエリが、データフローを構成するクエリである場合、言い換えると、実行順を変えると異なる結果となる(同一の結果が得られない)クエリのセットである場合を前提とする(適宜、
図26を参照)。
【0111】
このため、
図11と比較して分かるように、
図12に示すフローチャートでは、上述したステップS326の処理(すなわち、実行可能クエリをリストに登録する処理)が行われない。また、
図12に示すフローチャートでは、上述したステップS325の判定後に行われる処理が、以下のような流れになる。
【0112】
ステップS325において、クエリ実行・ルール準拠判定部31は、生成予定のデータが当該ルールに準拠しているか否かを判定する。
【0113】
ここで、クエリ実行・ルール準拠判定部31は、生成予定のデータが当該ルールに準拠していると判定した場合(ステップS325、YES)、当該生成予定のデータをユーザに提供すべきと判断し、上述したステップS327の判定処理に移行する。
【0114】
ステップS327において、クエリ実行・ルール準拠判定部31は、上述したステップS321で取得された一セットのクエリにつき、全てのクエリに対する処理を行ったか否かを判定する。
【0115】
そして、上述と同様に、クエリ実行・ルール準拠判定部31は、全てのクエリに対する処理を行ったと判定した場合(ステップS327、YES)、ステップS328に移行する。一方、クエリ実行・ルール準拠判定部31は、未だ全てのクエリに対する処理を行っていないと判定した場合(ステップS327、NO)、ステップS322に戻り、上述したステップS323~ステップS327の処理を繰り返し行う。
【0116】
ステップS328において、クエリ実行・ルール準拠判定部31は、実行可能なクエリ、ここでは上述したステップS325でYESと判定された全てのクエリを、実行可能クエリとして実行する。
【0117】
ステップS329において、クエリ実行・ルール準拠判定部31は、生成されたデータに基づくルール準拠の有無を再確認し、その後、処理を終了する。
【0118】
一方、ステップS325において、クエリ実行・ルール準拠判定部31は、生成予定のデータが当該ルールに準拠していないと判定した場合(ステップS325、NO)、ユーザへのアクセスを認めるべきではないと判断し、上述したステップS327~ステップS329をステップして、一連の処理を終了する。
【0119】
このように、
図12に示す処理例では、
図11の例とは異なり、データ操作(クエリ)のセットの中に、予め定められたルールに準拠しないと推定されたクエリが一つでもあった場合、他のすべてのクエリがルールに準拠すると推定されたとしても、一セット全てのクエリの実行ひいてはユーザへのデータ提供が行われない。この結果、この実施例では、機微なデータの保護の強化を図ることができる。
【0120】
また、他の例と同様に、予め決定された取扱いルールを満たさないと推定されたデータについてのデータ操作(クエリ)を実行しない構成とすることにより、データ準備工数の削減ないし最小化を図ることができる。
【0121】
<第5のプログラム>
図13は、データ加工サーバ3のクエリ実行・ルール準拠判定部31が実行する、さらに別の例(第5のプログラム)の処理内容を説明するフローチャートである。
【0122】
なお、
図13のフローチャートでは、
図9で上述した処理群A(ステップS301~ステップS307)を構成する処理の一部が異なっているため、対応する一連の処理を処理群A´として記載し、異なる処理に類似のステップ番号を付している。
【0123】
上述したステップS304に続くステップS305Aにおいて、クエリ実行・ルール準拠判定部31は、生成されるデータの統計情報値(k値)を、データベース管理サーバ2内のDBの統計情報23から該当するデータを取得して確認し、上述したステップS306に移行する。
【0124】
また、上述したステップS306(適用されるルールの決定)に続くステップS307Aにおいて、クエリ実行・ルール準拠判定部31は、生成予定のデータ(二次データ)が当該ルールに準拠しているか否かを確認するための前処理を実行する。
【0125】
なお、ステップS307Aに続くステップS308(判定および判定結果に基づく処理の分岐)、およびステップS309(クエリの実行)の処理の内容は、上述と同様である。
【0126】
さらに、上述したステップS309に続くステップS310Aにおいて、クエリ実行・ルール準拠判定部31は、実行したクエリにより生成されたデータについて、上述と同様にユーザのアクセス権を設定する(ルールの再チェックは行わない)。この後、クエリ実行・ルール準拠判定部31は、一連の処理を終了する。
【0127】
かくして、ユーザは、クライアント端末100のデータ操作(クエリ)投入部101を通じて入力された処理(例えば「閲覧」)により、当該データにアクセスすることができる。
【0128】
かかる処理例によれば、
図9のフローよりも処理が簡易化されており、データ準備工数をより削減することができる。
【0129】
<第6のプログラム>
図14は、データ加工サーバ3のクエリ実行・ルール準拠判定部31が実行する、さらに別の例(第6のプログラム)の処理内容を説明するフローチャートである。
【0130】
なお、
図9~
図13で上述した処理と同一の処理については、同一のステップ番号を付して、適宜その説明を省略する。
【0131】
適宜、
図9~
図13と比較参照して分かるように、概して、
図14に示すフローチャートは、開始からステップS307Aまでの処理、および最後のステップS310Aの処理は、
図13の例と同一である。また、
図14に示すフローチャートは、ステップS308でNOと判定された後の処理(ステップS311およびS312)は、
図10に示す例と同一である。
【0132】
<第7のプログラム>
図15は、データ加工サーバ3のクエリ実行・ルール準拠判定部31が実行する、さらに別の例(第7のプログラム)の処理内容を説明するフローチャートである。
【0133】
ステップS321~S323までの処理は、
図11で上述した第3プログラムと同一である。
【0134】
続くステップS324Aにおいて、クエリ実行・ルール準拠判定部31は、取得された当該データ処理(クエリ)によって生成されるデータのルールと、当該生成されるデータが該ルールに準拠するかを判定するための前処理(計算)を行う。具体的には、ステップS324Aにおいて、クエリ実行・ルール準拠判定部31は、
図9で上述したステップS302~S307の処理を実行し、ステップS325に移行する。
【0135】
ステップS325において、クエリ実行・ルール準拠判定部31は、生成予定のデータが当該ルールに準拠しているか否かを判定する。
【0136】
ここで、クエリ実行・ルール準拠判定部31は、生成予定のデータが当該ルールに準拠していると判定した場合(ステップS325、YES)、当該生成予定のデータをユーザに提供すべきと判断し、ステップS326に移行する。そして、ステップS326で、クエリ実行・ルール準拠判定部31は、当該データ処理(クエリ)を、実行可能なクエリとして、実行可能クエリリストに登録し(
図15を参照)、この後、ステップS327に移行する。
【0137】
一方、クエリ実行・ルール準拠判定部31は、生成予定のデータが当該ルールに準拠していないと判定した場合(ステップS325、NO)、ユーザへのアクセスを認めるべきではないと判断し、上述したステップS326をスキップして、ステップS327に移行する。
【0138】
ステップS327において、クエリ実行・ルール準拠判定部31は、上述したステップS321で取得された一セットのクエリにつき、全てのクエリに対する処理を行ったか否かを判定する。
【0139】
ここで、クエリ実行・ルール準拠判定部31は、全てのクエリに対する処理を行ったと判定した場合(ステップS327、YES)、ステップS328に移行する。
【0140】
一方、クエリ実行・ルール準拠判定部31は、未だ全てのクエリに対する処理を行っていないと判定した場合(ステップS327、NO)、ステップS322に戻り、上述したステップS323~ステップS327の処理を繰り返し行う。
【0141】
ステップS328において、クエリ実行・ルール準拠判定部31は、実行可能なクエリ、すなわち上述した実行可能クエリリストに登録されたクエリを実行し、一連の処理を終了する。
【0142】
かかる処理例によれば、
図11のフローと比較して、S329の処理(再チェック)を行わないことから、データ準備工数をより削減することができる。
【0143】
<第8のプログラム>
図16は、データ加工サーバ3のクエリ実行・ルール準拠判定部31が実行する、さらに別の例(第8のプログラム)の処理内容を説明するフローチャートである。
【0144】
図15と比較して分かるように、
図16に示す例では、ステップS326の処理(実行可能クエリリストへのクエリの登録)が省略される。したがって、さらなる、データ準備工数の削減ないし最小化を図ることができる。
【0145】
<ルール準拠有無の計算処理>
図17は、データ加工サーバ3のクエリ実行・ルール準拠判定部31が実行する、データがルールに準拠しているかを計算する処理の流れを示すフロー図である。かかるフロー図は、
図9のステップS307のサブルーチンに対応する。また、理解を容易にするため、適宜、
図24等を参照されたい。
【0146】
ステップS3071において、クエリ実行・ルール準拠判定部31は、クライアント端末100から送られたクエリに含まれる集計キー(
図24の例では、k1、k2、k3の3つのキー値からなる集計キー)を取得する。
【0147】
ステップS3072において、クエリ実行・ルール準拠判定部31は、上記のクエリに含まれる条件(クエリ条件)を取得する。このクエリ条件には、ソースデータの加工処理を行う際の各々の処理の条件、例えば、ソースデータからデータを抽出する際の抽出条件、ソースデータのデータ(2以上の情報)を結合させる場合の結合条件、などが挙げられる。
【0148】
ステップS3073において、クエリ実行・ルール準拠判定部31は、データベース管理サーバ2のDB統計情報23を参照して、データベース22におけるキー値のヒストグラムを取得する。
【0149】
ステップS3074において、クエリ実行・ルール準拠判定部31は、ステップS3072およびステップS3073で取得されたクエリ条件とヒストグラムより、キー毎の行数(k値など)を計算し、該計算結果を保存して、一連の処理を終了する。
【0150】
<ルール準拠有無の確認処理>
図18は、データ加工サーバ3のクエリ実行・ルール準拠判定部31が実行する、二次データがルールに準拠しているかを確認する処理の流れを示すフロー図である。かかるフロー図は、
図13のステップS307Aのサブルーチンに対応する。また、理解を容易にするため、適宜、
図24等を参照されたい。
【0151】
図17で上述したように、クエリ実行・ルール準拠判定部31は、クエリより集計キーを取得し(ステップS3071)、続いてクエリ条件を取得する(ステップS3072)。
【0152】
続くステップS3075において、クエリ実行・ルール準拠判定部31は、前ステップで取得されたクエリ条件を使用して、データベース管理サーバ2のデータベース22から該当するデータを取得する。
【0153】
ステップS3076において、クエリ実行・ルール準拠判定部31は、前ステップで取得されたデータのキー値毎の行数(k値など)を確認する。
【0154】
<ルール引継ぎ要否決定の処理>
図19は、二次データが生成される際に、ソースデータのルールを引継ぐ必要があるか否かを決定する処理の例を示すフロー図である。
【0155】
ステップS1021において、クエリ実行・ルール準拠判定部31は、二次データを構成するソースデータのルール(すなわち、生成される二次データに含まれるソースデータに適用される全てのルール)を取得する。
【0156】
この後、クエリ実行・ルール準拠判定部31は、該取得されたソースデータのルールに関するステップS1022~ステップS1028の処理を繰り返し、かかるすべてのルールに対するステップS1023~ステップS1028の処理を終えた場合に、本ルーチンの処理を終了する。
【0157】
具体的には、ステップS1022において、クエリ実行・ルール準拠判定部31は、前ステップで取得されたルールのうち未だチェックしていない任意の一つのルールを取得して、以下の処理を行う。
【0158】
ステップS1023において、クエリ実行・ルール準拠判定部31は、クエリにより指定されたデータのソース(例えば、NDBかKDBかの別など)、および集計キー列(適宜、
図24等を参照)から、加工処理(実行されるデータ処理の種類)を特定ないし判定する。
【0159】
ステップS1024において、クエリ実行・ルール準拠判定部31は、ステップS1022で取得された一つのルールと、前ステップで特定(判定)された加工処理(データ処理の種類)とをキーとして、加工処理・ルール引継ぎ方法管理テーブル34を検索して、引継ぎ方法を取得する(適宜、
図7を参照)。
【0160】
ステップS1025において、クエリ実行・ルール準拠判定部31は、該取得された引継ぎ方法に基づき、ソースのルールを引継ぐか否かを判定し、該判定結果に応じた処理を実行する。一具体例では、クエリ実行・ルール準拠判定部31は、k(予め定められたk値)を満たせばソースのルールを引継がないと判定した場合にはステップS1026に移行し、ソースのルールを引継ぐと判定した場合にはステップS1027に移行する。
【0161】
ステップS1026において、クエリ実行・ルール準拠判定部31は、当該ルールがk(k値)を満たすか否かについて判定し、満たさない(NO)と判定した場合はステップS1027に移行し、満たす(YES)と判定した場合はステップS1028に処理をスキップする。
【0162】
ソースのルールを引継ぐと判定された後のステップS1027において、クエリ実行・ルール準拠判定部31は、ルールを引継ぐ設定を行って、ステップS1028に移行する。
【0163】
ステップS1028において、クエリ実行・ルール準拠判定部31は、ステップS1021で取得されたルールの全てについての処理を行ったか否かについて判定し、行っていない(NO)と判定した場合はステップS1022に戻って上述した処理を繰り返し、行った(YES)と判定した場合は一連の処理を終了する。
【0164】
図20は、データ加工サーバ3のクエリ実行・ルール準拠判定部31が実行する、生成後の二次データに適用される全てのルールを登録する処理の一例を示すフローチャートである。
【0165】
概して、クエリ実行・ルール準拠判定部31は、二次データに含まれるソースデータに対応する全てのルールのうちの一つのルールに対してステップS1031~ステップS1038の処理を行い、全てのルールについての当該処理を終えた場合に、本ルーチンの処理を終了する。
【0166】
具体的には、クエリ実行・ルール準拠判定部31は、ステップS1031において、上記の全てのルールのうちの任意の一つのルールを取得して、以下の処理を実行する。
【0167】
ステップS1032において、クエリ実行・ルール準拠判定部31は、当該ルールの条件節(when)および実行節(then)を取得する。
【0168】
例えば、
図6で上述したルールR4の場合、「アプリ(アプリケーション)がXXXでない場合」が条件節(when)であり、「k値を満たさないデータへのアクセスの禁止」が実行節(then)になる。
あるいは、
図7で上述したように、加工処理「集計」に対するルールは、条件節(when)は、「ルールR1~R3、R5(の場合)」または「R4かつ所定のk値を満たす(場合)」が該当する。これに関し、加工処理「AIモデル構築」に対するルールも同様である。
【0169】
ステップS1033において、クエリ実行・ルール準拠判定部31は、該取得された条件節(when)および実行節(then)が同一のルールが、既に実行対象として登録済みであるか否かを判定する。ここで、クエリ実行・ルール準拠判定部31は、かかるルールが未だ登録されていないと判定した場合(ステップS1033、NO)、ステップS1036にスキップする。一方、クエリ実行・ルール準拠判定部31は、上記のルールが既に登録済みであると判定した場合(ステップS1033、YES)、ステップS1034に移行する。
【0170】
ステップS1034において、クエリ実行・ルール準拠判定部31は、ステップS1032で取得された条件節(when)とは異なる(一致しない)が、実行節(then)が同一であるルールが、既に実行対象として登録済みであるか否かを判定する。ここで、クエリ実行・ルール準拠判定部31は、かかるルールが未だ登録されていないと判定した場合(ステップS1034、NO)、ステップS1036にスキップする。一方、クエリ実行・ルール準拠判定部31は、上記のルールが既に登録済みであると判定した場合(ステップS1034、YES)、ステップS1035に移行する。
【0171】
条件節(when)が異なり実行節(then)が同一であるルールが登録されていると判定された後のステップS1035において、クエリ実行・ルール準拠判定部31は、これら二つのルールの条件節(when)の包含関係(一方のルールがより厳しい)の有無について検査し、かかる検査結果に応じた処理ステップに移行する。
【0172】
具体的には、クエリ実行・ルール準拠判定部31は、ステップS1031で取得されたルール(以下、「当該ルール」という)と、既に登録されているルール(以下、「登録済ルール」という)とに包含関係がない場合、ステップS1036で当該ルールを実行対象として登録し、ステップS1038に移行する。
【0173】
ここで、条件節(when)の包含関係がない場合とは、例えば
図7で上述した加工処理「集計」に対する「ルールR1~R3、R5(の場合)」または「R4かつ所定のk値を満たす(場合)」が該当する。
【0174】
また、クエリ実行・ルール準拠判定部31は、当該ルールの方が登録済ルールよりも条件が厳しい場合、既に登録されている登録済ルールを(より厳しい)当該ルールに置換する処理(ステップS1037)を行って、ステップS1038に移行する。
【0175】
一方、クエリ実行・ルール準拠判定部31は、登録済ルールの方が当該ルールよりも条件が厳しい場合、当該ルールを新たに登録する必要なしと判断して、ステップS1038にスキップする。
【0176】
ステップS1038において、クエリ実行・ルール準拠判定部31は、全てのルールについての処理を行ったか否かについて判定する。そして、クエリ実行・ルール準拠判定部31は、未だ全てのルールについての処理を行っていないと判定した場合(ステップS1038、NO)、ステップS1031に戻って上述した各処理を繰り返し行う。一方、クエリ実行・ルール準拠判定部31は、全てのルールについての処理を行ったと判定した場合(ステップS1038、YES)、本ルーチンを終了する。
【0177】
上記のような処理を行うことにより、機微なデータの管理を強化しつつ、データ準備工数の削減を図ることができる。
【0178】
図21は、データ加工サーバ3のクエリ実行・ルール準拠判定部31が実行する、二次データがルールに準拠しているかを確認する処理の流れを示すフロー図である。この例では、二次データがNDBのデータである場合(
図6を参照)を前提とする。
【0179】
ステップS1041において、クエリ実行・ルール準拠判定部31は、生成された二次データ(例えば、ソースデータの情報の組み合わせ)が引き継いだ全てのルールを取得して、ステップS1042以下の確認モードに移行する。
【0180】
この後、クエリ実行・ルール準拠判定部31は、該引き継いだルールに関するステップS1042~ステップS1050の処理を繰り返し、すべてのルールに対するかかる処理を終えた場合に、本ルーチンの処理を終了する。
【0181】
具体的には、ステップS1042において、クエリ実行・ルール準拠判定部31は、引き継いだ全てのルールのうち、任意のルールを一つ取得する。この例では、
図6で上述したR1、R2、R3のうちのいずれかのルールが取得される。
【0182】
続くステップS1043において、クエリ実行・ルール準拠判定部31は、前ステップで取得されたルールの内容(ここでは、R1、R2、R3のうちのいずれかのルールであるか)を確認する。そして、クエリ実行・ルール準拠判定部31は、取得されたルールがR1の場合はステップS1044に移行し、R2の場合はステップS1045に移行し、R3の場合はステップS1046に移行する。
【0183】
取得されたルールがR1の場合のステップS1044において、クエリ実行・ルール準拠判定部31は、生成された二次データ(ここではソースデータの情報の組み合わせ)に、ルールを逸脱した(ここでは2以上の)コピーが含まれていないことを確認し、ステップS1047に移行する。
【0184】
取得されたルールがR2の場合のステップS1045において、クエリ実行・ルール準拠判定部31は、生成された二次データ(ここではソースデータの情報の組み合わせ)のもととなったクエリに、他の情報との突合せ(結合)を含むか、を確認し、ステップS1047に移行する。ここで、他の情報との突合せ(結合)とは、例えば、特定の個人や施設名や場所などを特定しやすくなるような2以上の情報の組み合わせ(「氏」+「名」、「病院名」+「通院日」+「病気名」など)が挙げられる。
【0185】
取得されたルールがR3の場合のステップS1046において、クエリ実行・ルール準拠判定部31は、生成された二次データ(この例では、構成される各々の情報)が最小k値を満たすこと(ここでは組み合わせられる情報数(k値)が4以上であること)を確認し、ステップS1047に移行する。
【0186】
ステップS1047において、クエリ実行・ルール準拠判定部31は、生成された二次データが、ステップS1042で取得されたルールに準拠しているか(OKか否か)をチェックする。そして、クエリ実行・ルール準拠判定部31は、OKである場合(ステップS1047、YES)、当該ルールを満たすと判定して(ステップS1048)、ステップS1050に移行する。一方、クエリ実行・ルール準拠判定部31は、OKでない場合(ステップS1047、NO)、当該ルールを満たさないと判定して(ステップS1049)、ステップS1050に移行する。
【0187】
ステップS1050において、クエリ実行・ルール準拠判定部31は、ステップS1041で取得した全てのルール(二次データで引き継いだ各々のルール)について確認したか否かをチェックし、YESの場合に
図21のルーチンを終了する。一方、NOの場合にはステップS1042に戻り、上述した処理を繰り返す。
【0188】
かかる処理を行うことにより、二次データがNDBのデータである場合の機微なデータの管理を強化しつつ、データ準備工数の削減を図ることができる。
【0189】
<アクセス権の設定>
図22は、データ加工サーバ3のクエリ実行・ルール準拠判定部31が実行する、アクセス権設定処理の一例を示すフローチャートである。このフローチャートは、
図9のステップS310のサブルーチンに対応する。また、この例では、二次データがKDBのデータである場合(
図6を参照)を想定する。
【0190】
ステップS3101において、クエリ実行・ルール準拠判定部31は、生成された二次データ(ここではソースデータの情報の組み合わせ)のルールを取得する。
【0191】
この後、クエリ実行・ルール準拠判定部31は、該取得されたルールに関するステップS3102以下(ステップS3103~ステップS3107)の処理を繰り返し、すべてのルールに対するかかる一連の処理を終えた場合に、本ルーチンの処理を終了する。
【0192】
具体的には、クエリ実行・ルール準拠判定部31は、任意の一つのルール(未だステップS3103およびステップS3105の判定処理を行っていないルール)につき、アプリケーションの条件があるか否かを判定する(ステップS3103)。
【0193】
なお、
図6で上述した例(ルールR4)では、アプリケーションが指定のもの(XXX)でない場合にルールR4が適用されることから、アプリケーションが指定のもの(XXX)である場合、ルールR4は関係ない。
【0194】
ここで、クエリ実行・ルール準拠判定部31は、アプリケーションの条件があると判定した場合(ステップS3103、YES)、ステップS3103に移行する。一方、クエリ実行・ルール準拠判定部31は、アプリケーションの条件がないと判定した場合(ステップS3103、NO)、ステップS3105に移行する。
【0195】
ステップS3104において、クエリ実行・ルール準拠判定部31は、かかる条件を満足させるべく、当該アプリケーションに対するデータへのアクセス権(例えば所定の命令やパスワードなど)を設定する。
【0196】
ステップS3105において、クエリ実行・ルール準拠判定部31は、当該ルールにつき、ユーザの条件(例えば、企業の社員である必要)があるか否かを判定する。
【0197】
ここで、クエリ実行・ルール準拠判定部31は、ユーザの条件があると判定した場合(ステップS3105、YES)、ステップS3106に移行する。一方、クエリ実行・ルール準拠判定部31は、ユーザの条件がないと判定した場合(ステップS3105、NO)、ステップS3107に移行する。
【0198】
ステップS3106において、クエリ実行・ルール準拠判定部31は、かかる条件を満足させるべく、当該ユーザに対するデータへのアクセス権(例えば企業名や社員番号の入力など)を設定する。
【0199】
ステップS3107において、クエリ実行・ルール準拠判定部31は、ステップS3101で取得されたルールの全てについて処理を行ったか否かを判定する。そして、クエリ実行・ルール準拠判定部31は、未だ全てについて処理を行っていないと判定した場合(ステップS3107、NO)、ステップS3102に戻って上述したステップS3103以下の処理を繰り返す。
【0200】
一方、クエリ実行・ルール準拠判定部31は、全てについて処理を行ったと判定した場合(ステップS3107、YES)、本ルーチンを終了する。
【0201】
かかる処理を行うことにより、二次データがKDBのデータである場合の機微なデータの管理を強化しつつ、データ準備工数の削減を図ることができる。
【0202】
<種々の表示画面の例>
以下、
図23~
図27を参照して、本システムの表示部に表示される表示画面の一例について説明する。なお、
図23以下に示す表示画面は、主としてクライアント端末100の表示部1008に表示される画面を例示するが、他の端末、例えばデータベース管理サーバ2やデータ加工サーバ3の表示部に表示される構成としてもよい。
【0203】
<加工処理・加工後データの取扱い規定登録画面>
図23は、加工処理および加工後の二次データの取り扱いに関する規定を登録するための表示画面(以下、規定登録画面ともいう)の具体例を説明する図である。言い換えると、
図7で説明した加工方法・ルール引継ぎ方法管理テーブル34は、
図23に示す規定登録画面を通じての設定登録処理を繰り返し行うことにより、作成ないし更新することができる。
【0204】
図7と比較して分かるように、
図23に示す規定登録画面には、加工方法・ルール引継ぎ方法管理テーブル34の各欄に対応する、「加工処理」、「ルール」、および「引継ぎ方法」を設定(入力)するための入力欄(Edit Box)EB1、EB2およびEB3と、これら各欄に入力された情報を登録するための「登録」ボタンRBが表示されている。
【0205】
図23では、加工処理として「集計」を実行する場合、ルールとして上述したルール「R4」を適用すること、および、引継ぎ方法として、k(所定のk値)を満たした場合(when)には、引き継がない(then)旨が入力された規定登録画面の状態を例示している(適宜、
図7を参照)。
【0206】
図23に示す状態から登録ボタンRBが選択された場合、かかる入力情報がクライアント端末100からデータ加工サーバ3に送られて、加工方法・ルール引継ぎ方法管理テーブル34の更新が行われる。
【0207】
<単一データ操作(クエリ)投入画面>
図24は、単一のデータ操作(クエリ)を投入するための表示画面P-2(以下、投入画面ともいう)の具体例を示す図である。かかる単一データ操作(クエリ)の投入画面には、「出力列」、「出力列(集計キー)」、「ソースデータ」、「ソースデータ抽出条件」および「ソースデータ結合条件」を設定(入力)するための入力欄EB4、EB5、EB6、EB7およびEB8と、これら各欄に設定されたクエリを実行するための「実行」ボタンExBが表示されている。
【0208】
図24に示す状態から実行ボタンExBが選択された場合、かかる入力情報がクライアント端末100からデータ加工サーバ3に送られて、
図9等で上述した処理がデータ加工サーバ3で実行される。
【0209】
<複数データ操作(クエリ)投入画面(独立クエリ)>
図25は、複数の独立的な(非時系列的な、例えば各々の処理の実行順序が逆になっても同一結果が得られる)データ操作(クエリ)を投入するための表示画面P-3の具体例を示す図である。
図25に示す例では、画面内の上側に、単一データ操作(クエリ)1の投入画面が表示され、同下側に、他の独立的な単一データ操作(クエリ)2の投入画面が表示されている。
【0210】
また、画面内の右下側には、さらなる独立的な単一データ操作(クエリ)3以下の投入画面を追加するための「追加」ボタンAdBと、これら画面中に設定された複数のクエリを実行するための「実行」ボタンM-ExBが表示されている。
【0211】
例えば、
図25に示す状態から「追加」ボタンAdBが選択されると、単一データ操作(クエリ)1および2の画面が上方に移動(スクロール)し、さらなる独立的な単一データ操作(クエリ)3および4が同1および2の位置に表示される。
【0212】
なお、各々の単一データ操作(クエリ)の投入画面には、「出力列」、「出力列(集計キー)」、「ソースデータ」、「ソースデータ抽出条件」および「ソースデータ結合条件」を設定(入力)するための欄が設けられている。
図25中、
図24で上述した入力欄EB4、EB5、EB6、EB7およびEB8に対応する入力欄は、クエリ1の投入画面については符号EB4-1、EB5-1、EB6-1、EB7-1およびEB8-1で示し、クエリ2の投入画面については符号EB4-2、EB5-2、EB6-2、EB7-2およびEB8-2で、各々示す。
【0213】
図25に示す状態から実行ボタンM-ExBが選択された場合、かかる入力情報がクライアント端末100からデータ加工サーバ3に送られて、
図11で上述した処理がデータ加工サーバ3で実行される。
【0214】
<複数データ操作(クエリ)投入画面(データフロー)>
図26は、複数の連続的な(時系列的な、例えば処理の実行順序が予め定められている)データ操作(クエリ)を投入するための表示画面P-4を示す図である。
図26に示す例では、画面内の左側に、最初に実行されるべき単一データ操作(クエリ)1の投入画面(第1クエリ投入画面CS-01)が表示され、同右側に、次に実行されるべき単一データ操作(クエリ)2の投入画面(第2クエリ投入画面CS-02)が表示されている。
また、画面内の右下側には、さらなる後続の単一データ操作(クエリ)3以下の投入画面を追加するための「追加」ボタンAdBと、これら画面中に設定された複数のクエリを実行するための「実行」ボタンM-ExBが表示されている。
【0215】
なお、各々の単一データ操作(クエリ)の投入画面(CS-01、CS-02)には、「出力列」、「出力列(集計キー)」、「ソースデータ」、「ソースデータ抽出条件」および「ソースデータ結合条件」を設定(入力)するための入力欄(EB4-1~EB8-1、EB4-2~EB8-2)が設けられている。
【0216】
図26に示す状態から実行ボタンM-ExBが選択された場合、かかる入力情報がクライアント端末100からデータ加工サーバ3に送られて、
図12で上述した処理がデータ加工サーバ3で実行される。
【0217】
<警告画面>
図27は、クライアント端末100のデータ操作(クエリ)投入部101ないし表示部1008に表示される警告画面としての表示画面P-5を示す図である。
図27に示すように、警告画面の一具体例では、エラー内容を示す警告メッセージが表示されるとともに、「続行」ボタンCNBおよび「中止」ボタンSTBが表示される。
【0218】
図27に示す例は、生成される二次データに対してk値が10以上であることが必要であるのに対し、ユーザが入力(指定)したクエリでは、計算k値(データ加工サーバ3によるk値の算出値)が8になってしまい、個人等が特定されやすくなるため警告画面が表示された場合を示している。
【0219】
ここで、ユーザにより「続行」ボタンCNBが選択された場合の一具体例では、データ加工サーバ3は、以前のクエリ投入画面(例えば
図24を参照)を再度表示する処理を行う。この場合、ユーザは、例えば
図24に示すような以前の入力値のままで実行ボタンEXBを選択すると、再び警告画面が表示されることが予想されることから、入力値を変更して実行ボタンEXBを選択するよう促されることになる。
【0220】
以上、詳細に説明したように、本発明を適用したデータ処理システム1(データ管理システム)およびデータ加工サーバ3(データ管理装置)によれば、機微なデータに対する管理の強化を図るとともに、データ準備工数の削減を図ることができる。
【0221】
上述した種々の構成例は、目的等に応じて適宜組み合わせることができる。
【0222】
その他、上述した実施の形態または実施例は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【0223】
1 情報処理システム(データ管理システム)
2 データベース管理サーバ
21 データベース管理システム
22 データベース(DB)
23 DBの統計情報
3 データ加工サーバ(データ管理装置)
31 クエリ実行・ルール準拠判定部(判定部)
32 データ取扱規定管理テーブル(データ取扱いルール)
33 リネージ管理テーブル
34 加工方法・ルール引継ぎ方法管理テーブル(データ取扱いルール)
100 クライアント端末
101 データ操作(クエリ)投入部
102 加工方法・ルール引継ぎ方法登録部
200 通信回線
301 CPU(判定部、データ統計情報計算部)
1007 入力部
1008 表示部
P-1、P-2、P-3、P-4、P-5 表示画面
EB1~EB8、EB4-1~EB8-1、EB4-2~EB8-2 入力欄
RB 登録ボタン
ExB、M-ExB 実行ボタン
AdB 追加ボタン
CNB 続行ボタン
STB 中止ボタン
CS-1、CS-2、CS-01、CS-02 クエリ投入画面