(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-23
(45)【発行日】2025-01-07
(54)【発明の名称】データ管理システム、データ管理サーバ、データ管理方法、データ管理プログラム、及び記録媒体
(51)【国際特許分類】
G06F 21/62 20130101AFI20241224BHJP
G06F 16/908 20190101ALI20241224BHJP
【FI】
G06F21/62 318
G06F16/908
(21)【出願番号】P 2023505539
(86)(22)【出願日】2022-03-07
(86)【国際出願番号】 JP2022009662
(87)【国際公開番号】W WO2022191118
(87)【国際公開日】2022-09-15
【審査請求日】2023-10-10
(31)【優先権主張番号】P 2021040743
(32)【優先日】2021-03-12
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】100106002
【氏名又は名称】正林 真之
(74)【代理人】
【識別番号】100165157
【氏名又は名称】芝 哲央
(74)【代理人】
【識別番号】100160794
【氏名又は名称】星野 寛明
(72)【発明者】
【氏名】外園 洋輝
【審査官】田名網 忠雄
(56)【参考文献】
【文献】特開2007-149067(JP,A)
【文献】国際公開第2019/234887(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/62
G06F 16/908
(57)【特許請求の範囲】
【請求項1】
制御部と、
データベースと、を備えるデータ管理サーバであって、
前記データベースに格納されたデータファイルに係る情報と、前記データファイルの取得の可否に関する再取得可否情報と、を対応付けた再取得条件情報を記録管理する再取得条件管理部と、
前記データ管理サーバの外部から提供されるデータファイルに付加された前記再取得可否情報に基づいて前記データファイルの再取得条件情報を前記再取得条件管理部に登録し、提供された前記データファイルを前記データベースに送信するデータ送信部と、
前記データベースに格納されたデータファイルの取得要求を受け付けると、前記再取得条件管理部により管理される前記再取得条件情報に基づいて、前記データファイルの取得を許可されている場合のみ、前記データファイルを前記データベースから取得するデータ取得部と、
を備え
、
前記再取得条件管理部は、所定のタイミングで前記データベースに格納されたデータファイルを確認し、前記データファイルが無い場合、前記データファイルの再取得条件情報を削除する、データ管理サーバ。
【請求項2】
制御部と、
データベースと、を備えるデータ管理サーバであって、
前記データベースに格納されたデータファイルに係る情報と、前記データファイルの取得の可否に関する再取得可否情報と、を対応付けた再取得条件情報を記録管理する再取得条件管理部と、
前記データ管理サーバの外部から提供されるデータファイルに付加された前記再取得可否情報に基づいて前記データファイルの再取得条件情報を前記再取得条件管理部に登録し、提供された前記データファイルを前記データベースに送信するデータ送信部と、
前記データベースに格納されたデータファイルの取得要求を受け付けると、前記再取得条件管理部により管理される前記再取得条件情報に基づいて、前記データファイルの取得を許可されている場合のみ、前記データファイルを前記データベースから取得するデータ取得部と、
を備え
、
前記再取得条件管理部は、前記データ送信部が送信した前記データファイルに格納されたデータの範囲情報の少なくとも一部が、前記データベースに格納されているデータの範囲情報と重複する場合、前記データファイルの再取得条件情報を更新する、データ管理サーバ。
【請求項3】
前記再取得条件情報は、少なくとも取得が不可に指定されたデータファイルの識別情報、及び前記データファイルに格納されたデータの範囲情報を含む、請求項1
又は2に記載のデータ管理サーバ。
【請求項4】
前記データファイルに格納されるデータは、エッジ機器の動作状態を示すデータ、エッジ機器の生産状況を示すデータ、エッジ機器の生産物の品質状況を示すデータ、エッジ機器の稼働状況を示すデータ、及びエッジ機器のイベントを示すデータのうち、少なくともいずれか1つに対応し、前記データの範囲情報は、当該データの生成されたタイムスタンプに係る期間を含む、請求項
3に記載のデータ管理サーバ。
【請求項5】
前記データ管理サーバは、通信部を備え、
前記データ管理サーバの外部から提供され、前記データ管理サーバにインポートされるデータファイルは、前記通信部を介して受信する、請求項1から請求項
4のいずれか1項に記載のデータ管理サーバ。
【請求項6】
外部から提供されるデータファイルを内部のデータベースに格納するためのデータ管理方法であって、
制御部と、データベースと、を備えるコンピュータにより、
前記データベースに格納されたデータファイルに係る情報と、前記データファイルの取得の可否に関する再取得可否情報と、を対応付けた再取得条件情報を記録管理する再取得条件管理ステップと、
外部から提供されるデータファイルに付加された前記再取得可否情報に基づいて前記データファイルの再取得条件情報を登録し、提供された前記データファイルを前記データベースに送信するデータ送信ステップと、
所定のタイミングで前記データベースに格納されたデータファイルを確認し、前記データファイルが無い場合、前記データファイルの再取得条件情報を削除する再取得条件情報削除ステップと、
前記データベースに格納されたデータファイルの取得要求を受け付けると、管理される前記再取得条件情報に基づいて、前記データファイルの取得を許可されている場合のみ、前記データファイルを前記データベースから取得するデータ取得ステップと、
を実行するデータ管理方法。
【請求項7】
外部から提供されるデータファイルを内部のデータベースに格納するためのデータ管理方法であって、
制御部と、データベースと、を備えるコンピュータにより、
前記データベースに格納されたデータファイルに係る情報と、前記データファイルの取得の可否に関する再取得可否情報と、を対応付けた再取得条件情報を記録管理する再取得条件管理ステップと、
外部から提供されるデータファイルに付加された前記再取得可否情報に基づいて前記データファイルの再取得条件情報を登録し、提供された前記データファイルを前記データベースに送信するデータ送信ステップと、
前記データ送信ステップにおいて送信した前記データファイルに格納されたデータの範囲情報の少なくとも一部が、前記データベースに格納されているデータの範囲情報と重複する場合、前記データファイルの再取得条件情報を更新する再取得条件情報更新ステップと、
前記データベースに格納されたデータファイルの取得要求を受け付けると、管理される前記再取得条件情報に基づいて、前記データファイルの取得を許可されている場合のみ、前記データファイルを前記データベースから取得するデータ取得ステップと、
を実行するデータ管理方法。
【請求項8】
外部から提供されるデータファイルを内部のデータベースに格納するためのデータ管理プログラムであって、
制御部と、データベースと、を備えるコンピュータに、
前記データベースに格納されたデータファイルに係る情報と、前記データファイルの取得の可否に関する再取得可否情報と、を対応付けた再取得条件情報を記録管理する再取得条件管理ステップと、
外部から提供されるデータファイルに付加された前記再取得可否情報に基づいて前記データファイルの再取得条件情報を登録し、提供された前記データファイルを前記データベースに送信するデータ送信ステップと、
所定のタイミングで前記データベースに格納されたデータファイルを確認し、前記データファイルが無い場合、前記データファイルの再取得条件情報を削除する再取得条件情報削除ステップと、
前記データベースに格納されたデータファイルの取得要求を受け付けると、管理される前記再取得条件情報に基づいて、前記データファイルの取得を許可されている場合のみ、前記データファイルを前記データベースから取得するデータ取得ステップと、
を実行させるためのデータ管理プログラム。
【請求項9】
外部から提供されるデータファイルを内部のデータベースに格納するためのデータ管理プログラムであって、
制御部と、データベースと、を備えるコンピュータに、
前記データベースに格納されたデータファイルに係る情報と、前記データファイルの取得の可否に関する再取得可否情報と、を対応付けた再取得条件情報を記録管理する再取得条件管理ステップと、
外部から提供されるデータファイルに付加された前記再取得可否情報に基づいて前記データファイルの再取得条件情報を登録し、提供された前記データファイルを前記データベースに送信するデータ送信ステップと、
前記データ送信ステップにおいて送信した前記データファイルに格納されたデータの範囲情報の少なくとも一部が、前記データベースに格納されているデータの範囲情報と重複する場合、前記データファイルの再取得条件情報を更新する再取得条件情報更新ステップと、
前記データベースに格納されたデータファイルの取得要求を受け付けると、管理される前記再取得条件情報に基づいて、前記データファイルの取得を許可されている場合のみ、前記データファイルを前記データベースから取得するデータ取得ステップと、
を実行させるためのデータ管理プログラム。
【請求項10】
請求項8
又は9に記載のデータ管理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項11】
請求項1
又は2に記載のデータ管理サーバとしての受取側サーバと、
前記受取側サーバに外部から提供されるデータファイルを作成する提供側サーバと、を含むデータ管理システムであって、
前記提供側サーバは、
制御部と、
データベースと、を備え、
前記制御部は、
前記データベースに格納されたデータファイルを取得するデータ取得部と、
前記データファイルに、当該データファイルに対する取得の可否が指定された再取得可否情報を付加する再取得条件作成部と、
前記再取得条件作成部により、前記再取得可否情報が付加された前記データファイルを前記受取側サーバに提供する提供データファイルとして外部に出力するデータ出力部と、を備える、
データ管理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ管理システム、データ管理サーバ、データ管理方法、データ管理プログラム、及び記録媒体に関する。
【背景技術】
【0002】
製造装置の分野において、昨今、製造現場向けに様々な機能や目的を持った、例えば「見える化」「品質向上」「保守・保全」「開発者向けツールソフト/コンバータ」等のサーバアプリケーションソフトウェア(以降、単に「アプリケーション」、「アプリ」ともいう)が、様々な会社で開発されている。
例えば、システムインテグレータ等の開発者が、製造現場における工作機械、産業機器、産業用ロボット等のエッジ機器の稼働に伴う処理データに基づいて、製造現場向けのアプリケーションを開発する場合、開発者は、当該アプリケーションに必要となる当該エッジ機器の稼働に伴う処理データを入手して、その処理データを開発者の開発環境におけるデータベースに送信して、アプリケーションの開発作業を行う必要がある(例えば、特許文献1参照)。
より具体的には、エッジ機器の処理データとして、例えば、エッジ機器に係る動作状態を示すデータ、生産状況を示すデータ、生産物の品質状況を示すデータ、稼働状況等のイベント(履歴)を示すデータ等がある。これらの処理データは、予めデータモデル化(すなわち、標準化)されており、これらの標準化された処理データ(以下、「仮想機器データ」ともいう)を、標準化されたデータモデルに対応した所定のデータベースに格納することで、アプリケーションは、所定のAPI(以下、「アクセス用API」ともいう)を介して当該処理データにアクセスすることができるようになっている。製造現場から提供されるエッジ機器の処理データは、開発環境におけるデータベースに標準化されたデータモデルに対応して格納される。
【0003】
提供側サーバから受取側サーバに提供される、エッジ機器の稼働に伴う処理データの提供形態の一例を示す。ここで、提供側サーバは製造現場環境に、受取側サーバは開発環境に設置されている。
提供側サーバに含まれるデータベースに格納された、エッジ機器の稼働に伴う処理データを仮想機器データとしてデータベース操作ツールにより出力し、暗号化して外部にエクスポートする。暗号化された仮想機器データは、受取側サーバに提供され、受取側サーバは、暗号化された仮想機器データをインポートし、復号化した後、データベース操作ツールにより受取側サーバに含まれるデータベースに格納する。
そうすることで、開発者は、アクセス用APIを介して当該処理データにアクセスしてアプリの開発作業を行うことができる。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ここで、エッジ機器の稼働に伴う処理データの提供者が、仮に当該処理データを暗号化して、当該アプリケーションの開発者に対して提供したとしても、開発環境におけるデータベースに格納する際には、復号化された状態で当該データベースに格納される。そうすると、当該処理データは、当該開発環境にログインできる全てのユーザ(当該データの提供先を含むすべての開発者)がデータベース操作ツールを介して当該データベースから復号化された状態で取得(ダウンロード)することが可能となり、提供側のデータが任意の開発者によって2次利用される危険性、及び潜在的なセキュリティリスクを生じる可能性がある。そうすると、例えば、機械情報を解析することで、各機械がどのくらいの製造能力を持っているかを把握することができる。また、各機械の製造能力が分かることで、工場がどれだけの製品を製造したかを把握することができる。さらに、工場の製造能力が分かることで、工場を運用する企業の売上を把握することができるリスクが生じる。
【0006】
このため、データを外部に提供する際に、当該データが提供先のデータベースに格納されても、提供先において、任意のユーザがデータベース操作ツールを介して当該データを取得(ダウンロード)することができないように、データ提供者が予め当該データに対して提供先における任意のユーザが当該データを取得(ダウンロード)することができないように、制御できる機能が求められる。
本発明は、データを外部に提供する際に、当該データが提供先のデータベースに格納されても、提供先において、任意のユーザがデータベース操作ツールを介して当該データを取得(ダウンロード)することができないように、データ提供者が予め指定することで、提供したデータが外部に漏洩することを防ぐことができるセキュアなデータ管理システム、データ管理サーバ、データ管理方法、データ管理プログラム、及び記録媒体を提供することを目的とする。
【課題を解決するための手段】
【0007】
(1)本発明のデータ管理サーバの一態様は、制御部と、データベースと、を備えるデータ管理サーバであって、前記データベースに格納されたデータファイルに係る情報と、前記データファイルの取得の可否に関する再取得可否情報と、を対応付けた再取得条件情報を記録管理する再取得条件管理部と、前記データ管理サーバの外部から提供されるデータファイルに付加された前記再取得可否情報に基づいて前記データファイルの再取得条件情報を前記再取得条件管理部に登録し、提供された前記データファイルを前記データベースに送信するデータ送信部と、前記データベースに格納されたデータファイルの取得要求を受け付けると、前記再取得条件管理部により管理される前記再取得条件情報に基づいて、前記データファイルの取得を許可されている場合のみ、前記データファイルを前記データベースから取得するデータ取得部と、を備える。
【0008】
(2)本発明のデータ管理方法の一態様は、外部から提供されるデータファイルを内部のデータベースに格納するためのデータ管理方法であって、制御部と、データベースと、を備えるコンピュータにより、前記データベースに格納されたデータファイルに係る情報と、前記データファイルの取得の可否に関する再取得可否情報と、を対応付けた再取得条件情報を記録管理する再取得条件管理ステップと、外部から提供されるデータファイルに付加された前記再取得可否情報に基づいて前記データファイルの再取得条件情報を登録し、提供された前記データファイルを前記データベースに送信するデータ送信ステップと、前記データベースに格納されたデータファイルの取得要求を受け付けると、管理される前記再取得条件情報に基づいて、前記データファイルの取得を許可されている場合のみ、前記データファイルを前記データベースから取得するデータ取得ステップと、を実行する。
【0009】
(3)本発明のデータ管理プログラムの一態様は、外部から提供されるデータファイルを内部のデータベースに格納するためのデータ管理プログラムであって、制御部と、データベースと、を備えるコンピュータに、前記データベースに格納されたデータファイルに係る情報と、前記データファイルの取得の可否に関する再取得可否情報と、を対応付けた再取得条件情報を記録管理する再取得条件管理ステップと、外部から提供されるデータファイルに付加された前記再取得可否情報に基づいて前記データファイルの再取得条件情報を登録し、提供された前記データファイルを前記データベースに送信するデータ送信ステップと、前記データベースに格納されたデータファイルの取得要求を受け付けると、管理される前記再取得条件情報に基づいて、前記データファイルの取得を許可されている場合のみ、前記データファイルを前記データベースから取得するデータ取得ステップと、を実行させる。
【0010】
(4)本発明のデータ管理システムの一態様は、(1)に記載のデータ管理サーバとしての受取側サーバと、前記受取側サーバに外部から提供されるデータファイルを作成する提供側サーバと、を含むデータ管理システムであって、前記提供側サーバは、制御部と、データベースと、を備え、前記制御部は、前記データベースに格納されたデータファイルを取得するデータ取得部と、前記データファイルに、当該データファイルに対する取得の可否が指定された再取得可否情報を付加する再取得条件作成部と、前記再取得条件作成部により、前記再取得可否情報が付加された前記データファイルを前記受取側サーバに提供する提供データファイルとして外部に出力するデータ出力部と、を備える。
【発明の効果】
【0011】
本発明によれば、データを外部に提供する際に、当該データが提供先のデータベースに格納されても、提供先において、任意のユーザがデータベース操作ツールを介して当該データを取得(ダウンロード)することができないように、データ提供者が予め指定することで、提供したデータが外部に漏洩することを防ぐことができるセキュアなデータ管理システム、データ管理サーバ、データ管理方法、データ管理プログラム、及び記録媒体を提供することができる。
【図面の簡単な説明】
【0012】
【
図1】本実施形態におけるデータ管理システムの基本的構成を示す概略図である。
【
図2】本実施形態における提供側サーバの機能ブロック図である。
【
図3】本実施形態における提供側サーバで実行される提供側アプリケーションプログラムの概要図である。
【
図4】本実施形態におけるデータ管理サーバとしての受取側サーバの機能ブロック図である。
【
図5】本実施形態における受取側サーバで実行される受取側アプリケーションプログラムの概要図である。
【
図6】本実施形態におけるデータ使用条件情報の一例を示す図である。
【
図7】本実施形態における提供側サーバにおいて、自身のデータベースから外部に提供するデータを作成する処理を示すフローチャートである。
【
図8】本実施形態における受取側サーバが外部からデータファイルを受取り、データベースに格納するまでの処理を示すフローチャートである。
【
図9】本実施形態における受取側サーバにおけるデータの取得処理を示すフローチャートである。
【
図10】本実施形態におけるクラウドを介しての提供側サーバからの提供データを受取側サーバに対して提供する形態の一例を示す概要図である。
【発明を実施するための形態】
【0013】
本実施形態に係るデータ管理システム1000の構成の一例について説明する。ここでは、データとして、製造現場における工作機械、産業機器、産業用ロボット等のエッジ機器の稼働に伴う処理データを例示する。また、データを作成し提供する外部として、工場等の製造現場に設置された、CNC工作機械、産業機器、産業用ロボット等を含む製造装置(エッジ機器)の処理データにアクセスして、当該アプリケーションに係る所定の情報処理をするサーバ(「提供側サーバ」ともいう)を例示する。また、本願発明のサーバ(「受取側サーバ」ともいう)として、例えば開発環境に設置されたサーバであって、提供側サーバから提供されるデータに基づいて開発者がアプリケーションを開発するサーバを例示する。しかしながら、本願発明のデータ、サーバ等は、これらに限られない。本願発明は、任意のデータ及び任意のサーバに適用することができる。
【0014】
図1は、本実施形態におけるデータ管理システム1000の基本的構成を示す概略図である。
図1に示すように、データ管理システム1000は、提供側サーバ100と、データ管理サーバとしての受取側サーバ400と、を備えている。なお、提供側サーバ100と、受取側サーバ400とは、ネットワークN1を介して接続されるようにしてもよい。ネットワークは、例えば、インターネットや、VPN(Virtual Private Network)、公衆電話網等である。ネットワークにおける具体的な通信方式や、有線接続及び無線接続のいずれであるか等については、特に限定されない。
【0015】
本実施形態において、提供側サーバ100は、アプリケーションを実行させることにより、例えば工場等の製造現場に設置された、CNC工作機械、産業機器、産業用ロボット等を含む製造装置(エッジ機器)の処理データにアクセスして、当該アプリケーションに係る所定の情報処理をするサーバを例示する。ここで、処理データは、例えば当該エッジ機器に係る動作状態を示すデータ、生産状況を示すデータ、生産物の品質状況を示すデータ、稼働状況を示すデータ等の仮想機器データを指す。データ提供者は、提供側サーバ100のデータベース160から、例えばエッジ機器の処理データ(仮想機器データ)を抽出して開発者に提供する。そうすることで、開発者は、例えば開発環境としての受取側サーバ400のデータベース460(例えばデバッグ用データベース)に当該処理データ(仮想機器データ)を格納して、当該処理データ(仮想機器データ)を利用してアプリケーションの開発作業を行うことができる。
受取側サーバ400では、任意のアプリケーションを実行させることができる。このとき、提供側サーバ100から提供されデータベース460に格納された仮想機器データのうち、当該データの提供者により取得が不可に設定されたデータは、当該データが提供先のデータベースに格納されても、提供先において、任意のユーザがデータベース操作ツールを介して当該データを取得(ダウンロード)することができないように構成される。
【0016】
次に、データ管理システム1000の各装置の機能について説明する。
<提供側サーバ100>
図2は、提供側サーバ100の備える機能を示す機能ブロック図である。
図2に示すように、提供側サーバ100は、制御部110と、記憶部120と、通信部130と、データベース160と、を備える。データベース160は、提供側サーバ100により管理される内部又は外部記憶装置に構築される。
制御部110について説明する前に、記憶部120、通信部130、及びデータベース160について簡単に説明する。
【0017】
記憶部120は、制御部110により実行されるプログラム等を記憶し、また、後述するように、データ取得部111により、データベース160から取得されたデータを一時記憶する記憶領域(「データ格納部」という)を有する。
【0018】
通信部130は、ネットワークを介して外部機器(例えば、エッジ機器、クライアント端末、及び受取側サーバ400等)とデータの送受信を行う通信制御デバイスである。
【0019】
本実施形態において、データベース160としては、前述したように、例えばエッジ機器の処理データを標準化されたデータモデルに基づいて生成されるデータ(仮想機器データ)等を記憶するものを例示する。
具体的には、本実施形態において例示するデータベース160には、標準化されたデータモデルに基づいて生成される仮想機器データを入れるためのデータ構造が予め用意されている。このようなデータ構造の1つの要素をインスタンスといい、その識別子をインスタンスIDという。また、インスタンスに格納された各データをモーメントともいう。具体的には、1つのタイムスタンプにおけるデータをモーメントという。
また、本実施形態において例示するデータベース160は、1つの仮想機器データをインスタンスに格納するには、インスタンスIDを指定して、データを送信する(具体的にはPOST送信する)ことで当該インスタンスIDにより識別されるインスタンスに格納されるように構成される。このように、インスタンスIDを送信先として、データを送信することで、当該インスタンスに当該データが記録される。本実施形態において例示するデータベース160には、後述するデータベース操作ツール及びアクセス用APIを備えるようにしてもよい。しかしながら、本発明は、仮想機器データ及び仮想機器データを格納するデータベースシステムに限られない。本発明は、任意のデータ及び当該データを格納する任意のデータベースシステムに適用することができる。具体的には、本実施形態において例示されるデータベース160における用語「インスタンス」、「モーメント」、「データ送信部」、及び「データベースにデータを送信すること」は、それぞれ、通常のデータベースにおける「テーブル等のデータファイル」、「1つのレコードデータ」、「データ登録部」、及び「データベースにデータを格納すること」に相当することから、上記のように読み換えることで、本願発明は、任意のデータ及び当該データを格納する任意のデータベースに対して適用することができる。
【0020】
制御部110は、例えば、CPUであり、記憶部120に記憶された各種プログラムを実行することにより、提供側サーバ100を制御する。
図3は、提供側サーバ100で実行される提供側アプリケーションプログラム(「提供データ作成プログラム」ともいう)の概要図である。以下、「アプリケーション」を「アプリ」ともいう。
例えば、制御部110は、受取側サーバ400に提供する仮想機器データをデータベース160から取得するデータ取得(以下、「データ取得処理」ともいう)のためのプログラムを実行し、取得した仮想機器データを記憶部120に一時的に格納する。受取側サーバ400に格納される提供データの取得の可否(すなわち、受取側サーバ400における(提供先であるユーザを含む)任意のユーザによる当該提供データの取得の許可又は不可)を指定する再取得可否情報を付加(「再取得可否情報付加機能」)し、外部に出力(以下「エクスポート」ともいう)するデータ出力(以下「データ出力処理」ともいう)のためのプログラムを実行する。なお、提供データ作成処理のためのプログラム(特に、データ取得のためのプログラム、及びデータ出力のためのプログラム)は、データベース160に用意される管理ソフト(以下、「データベース操作ツール」ともいう)に含まれるプログラムとしてもよい。
制御部110は、提供データ作成プログラムを実行することにより、
図2に示すように、制御部110には、機能的構成として、データ取得部111、再取得条件作成部112、データ出力部113、及び暗号化処理部115が形成される。
【0021】
まず、データ取得部111について説明する。
データ取得部111は、ユーザ(例えば、データ提供者)から、例えば提供側サーバ100に通信可能に接続された端末等(図示せず)を介して入力されるデータ取得指示に対応して、データベース160から、提供データを取得する。なお、取得したデータは、記憶部120のデータ格納部に格納するようにしてもよい。ここで、データ取得指示に含まれる指示情報としては、データファイル名称(例えば、インスタンスID)、及び当該データファイルに含まれるデータのうち、提供対象となるデータの対象範囲(例えば、提供対象範囲となる最初のデータの識別情報及び最後のデータの識別情報)を含むようにしてもよい。また、取得するデータの個数を指定してもよい。なお、提供対象範囲が指定されない場合、データ取得部111は、当該データファイルに含まれるデータを全て取得するとともに、デフォルトとして当該データファイルに含まれるデータの最初及び最後の識別情報を作成するようにしてもよい。提供データが仮想機器データの場合、対象範囲を指定する識別情報として、各データに付与されたタイムスタンプを適用してもよい。
なお、データ取得指示に、当該データの提供先(すなわち、受取側サーバ400)において開発者による当該データに対する取得の可否を指定した、再取得可否情報を含むようにしてもよい。そうすることで、ユーザ(データ提供者等)は、データ提供の際に必要となる情報を同時に入力することができ、入力の効率化を図ることができる。この場合、データ取得部111は、再取得可否情報を後述する再取得条件作成部112に提供するようにしてもよい。
なお、再取得可否情報には、取得の可否とともに、取得を許可(又は不可)とする所定のデータ対象範囲(例えば、仮想機器データの場合、所定のタイムスタンプの範囲)を含めてもよい。なお、受取側サーバ400に提供するデータに対して取得を許可する場合、再取得可否情報をヌル(以下「空」ともいう)としてもよい。
また、受取側サーバ400に提供するデータの内、当該データの対象範囲をいくつかの部分範囲に区切って、部分範囲毎に、取得の可否を指定するようにしてもよい。
なお、基本的には必ず再取得可否情報を付加した状態で受取側サーバに提供することが好ましい。この場合、再取得可否情報として、取得OKかNG(Not Acceptable)かを必ず付加することとなる。しかし、本実施形態に記載した提供側サーバ100以外で作成され、提供されるデータには、再取得可否情報が付加されていないので、その場合は、デフォルトとして取得可と認定する。
【0022】
次に、再取得条件作成部112について説明する。再取得条件作成部112は、データ取得部111によりデータベースから抽出され、例えば記憶部120のデータ格納部に格納されたデータファイルの提供対象範囲に対応して、当該対象範囲のデータに対する取得の可否を指定する、再取得可否情報を付加する。再取得条件作成部112は、後述するデータ出力部113に含まれるようにしてもよい。なお、ユーザは、データ格納部に格納されたデータファイルの提供対象範囲に対応して、クライアント端末等(図示せず)を介して再取得条件作成部112に入力することができる。
再取得可否情報が指定されない場合、再取得条件作成部112は、再取得可否情報を取得の許可を示す空(ヌル)として作成する。こうすることで、提供側サーバ100から外部に提供されるデータには、空(ヌル)情報を含めて再取得可否情報が付加された状態となる。
【0023】
最後に、データ出力部113について説明する。データ出力部113は、再取得条件作成部112により、再取得可否情報が付加されたデータファイルを受取側サーバ400に提供するデータファイル(以下、「提供データファイル」ともいう)として外部に出力する。
データ出力部113は、外部に出力する際に、データのセキュリティを担保するために、公開鍵方式の鍵データ又は共通鍵方式による共通鍵を用いて、提供データファイルを暗号化するようにしてもよい。
具体的には、制御部110は、暗号化処理部115を設けてもよい。この場合、例えば、予め提供側に受取側の公開鍵を予め知らせておくことで、暗号化処理部115は、当該公開鍵を適用して暗号化してもよい。また、暗号化処理部115は、共通鍵を生成して、生成された共通鍵に公開鍵を適用して暗号化し、暗号化された共通鍵と、当該共通鍵を適用して暗号化された提供データと、を生成してもよい。
データ出力部113により外部に出力された提供データファイルは、通信部130を介して受取側サーバ400に送信してもよい。また、記憶媒体に格納して、郵送又は手渡し等するようにしてもよい。なお、後述するように、提供側サーバ100は提供データファイルをクラウドにアップロードし、受取側サーバ400は、クラウドから提供データファイルをダウンロードするようにしてもよい。
以上、提供側サーバ100の備える機能について説明した。次に受取側サーバ400の、備える機能について説明する。
【0024】
<受取側サーバ>
図4は、受取側サーバ400の備える機能を示す機能ブロック図である。
図4に示すように、受取側サーバ400は、制御部410と、記憶部420と、通信部430と、データベース460と、を備える。データベース460は、受取側サーバ400により管理される内部又は外部記憶装置に構築される。記憶部420及び通信部430は、提供側サーバ100のそれと同等のものであり、説明は省略する。なお、受取側サーバ400は、当業者にとって公知のクラウド上の仮想サーバとして実現してもよい。
また、データベース460についても、提供側サーバ100のデータベース160と同じ機能を有するようにしてもよい。従って、前述したように、受取側サーバ400においても、データベース460に係るデータベース操作ツール及びアクセス用APIは予め用意されているようにしてもよい。また、仮想機器データをデータベース460の所定のインスタンスに格納するには、インスタンスIDを指定して、データを送信することで当該インスタンスIDの識別するインスタンスに格納されるように構成される。このように、インスタンスIDを送信先として、データを送信することで、当該インスタンスにデータが記録される。
【0025】
制御部410は、例えば、CPUであり、記憶部420に記憶された各種プログラムを実行することにより、受取側サーバ400を統括制御する。
図5は、受取側サーバ400で実行される受取側アプリケーションプログラムの概要図である。以下、「アプリケーション」を「アプリ」ともいう。
例えば、制御部410は、記憶部420に記憶された受取側アプリケーションを実行するアプリケーション実行(以下、「アプリケーション実行処理」という)を行うためのプログラムを実行する。
また、制御部410は、データベース460に格納されたデータファイルに係る情報と、当該データファイルの取得の可否に関する再取得可否情報と、を対応づけた再取得条件情報を記録管理(登録)する、再取得条件管理(以下「再取得条件管理処理」という)を行うためのプログラムを実行する。
また、制御部410は、受取側サーバ400における(提供先であるユーザを含む)任意のユーザからデータベース460に格納されたデータに対する取得要求を受け付けると、取得要求されたデータと再取得条件情報との比較に基づいて、当該データに対する取得が不可に指定されているか否かをチェックし、取得が許可されている場合に当該データをデータベース460から取得する、データ取得(以下「データ取得処理」という)を行うためのプログラムを実行する。
また、制御部410は、提供側サーバ100から提供された提供データファイルをインポートして、記憶部420に一時的に格納するとともに、インポートされた提供データファイルが暗号化されている場合、復号化して、復号化された提供データファイルを後述するデータ送信処理に提供するデータ入力(以下、「データ入力処理」、又は「インポート処理」という)を行うためのプログラムを実行する。
また、制御部410は、外部から提供されるデータファイルに付加された、当該データファイルに対する取得の可否が指定された再取得可否情報に基づいて、当該データファイルに係る情報と当該データファイルの再取得可否情報とを対応付けた再取得条件情報を登録し、提供されたデータファイルをデータベース460に格納するために、インスタンスIDを指定して当該データを送信するデータ送信(以下「データ送信処理」という)を行うためのプログラムを実行する。前述したように、本実施形態において例示するデータベース460は、データをインスタンスに格納するには、インスタンスIDを指定して、データを送信する(具体的にはPOST送信する)ことで当該インスタンスIDにより識別されるインスタンスに格納されるように構成される。すなわち、本実施形態においては、「インスタンスIDを指定して当該データを送信するデータ送信」することは、当該インスタンスに当該データを記録する、又は格納すること、と同義である。
なお、再取得条件情報管理処理のためのプログラム、データ取得処理のためのプログラム、及びデータ送信処理のためのプログラムは、予めデータ管理システムに用意される管理ソフト(データベース操作ツール)に含まれるソフトウェアとしてもよい。
このように、アプリケーション実行処理のためのプログラム、インポート処理のためのプログラム、データ送信処理のためのプログラム、再取得条件情報管理処理のためのプログラム、及びデータ取得処理のためのプログラムを実行することにより、制御部410には、
図4に示すように、機能的構成として、アプリケーション実行部411、データインポート部412、データ送信部413、再取得条件管理部414、及びデータ取得部415が形成される。
【0026】
アプリケーション実行部411は、記憶部420のアプリケーション記憶部(図示せず)に記憶されたアプリケーションを、例えば、ユーザ、又は任意の稼働システム等からの起動要求に応じて、受取側サーバ400上で実行する。
【0027】
データインポート部412は、提供側サーバ100から提供された提供データファイルを受取側サーバ400の内部にインポートする。具体的には、当該提供データファイルを記憶部420のデータ格納部に格納するようにしてもよい。
データのセキュリティを担保するために、提供データファイルが、前述したように公開鍵方式の鍵データ又は共通鍵方式による共通鍵を用いて、暗号化されている場合、当該暗号化された提供データファイルを復号化する必要がある。
このため、制御部410は、復号化処理部416を設けてもよい。具体的には、例えば、提供データファイルが受取側の公開鍵を適用して暗号化されている場合、復号化処理部416は、受取側の秘密鍵を適用して復号化することができる。また、提供データファイルが提供側で生成された共通鍵を適用して暗号化されている場合、復号化処理部416は、公開鍵を適用して暗号化された共通鍵を受取側の秘密鍵を適用して復号化し、復号化された共通鍵を適用して、暗号化された提供データを復号化することができる。このようにすることで、データインポート部412は、復号化処理部416により復号化された提供データをデータ送信部413に出力することができる。
次に、データ送信部413を説明する前に、再取得条件管理部414について説明する。
【0028】
再取得条件管理部414には、後述するように、データ送信部413により、データベース460に送信されるデータファイルに係る情報が記録管理される。ここで、データファイルに係る情報は、例えばデータファイル名称としてのインスタンスID及び当該インスタンスに送信されるデータのうち、取得不可のデータの対象範囲を示す最初のデータの識別情報及び最後のデータの識別情報としての時系列データにおける最初のタイムスタンプから最後のタイムスタンプまでの範囲と、を対応づけた再取得条件情報を含む。
図6に再取得条件情報の一例を示す。なお、再取得条件管理部414は、提供データファイルに含まれる部分範囲のデータに対してのみ取得不可を付加し、残りの範囲については取得不可を付加しない場合、当該部分範囲を取得不可のデータの対象範囲とする再取得条件情報が記録管理される。残りの範囲(取得可能な範囲)については空(ヌル)が対応づけられる。
なお、前述したように、再取得可否情報として空(ヌル)が付加されている場合、当該データファイルの全てが取得可能として登録されるようにしてもよい。
【0029】
具体的には、再取得条件管理部414において、新たに入力される再取得条件情報が、既に再取得条件管理部414により記録管理されている再取得条件情報と、同じデータファイル名称(同じインスタンスID)の場合、データ送信部413により、当該新たに入力される再取得条件情報を、既に再取得条件管理部414に記録管理されている再取得条件情報に上書きされるように記録管理(更新)される。これにより、例えば、新たに入力された再取得条件情報において取得不可のデータの対象範囲が空(ヌル)の場合(すなわち、取得が許可されている場合)、同じデータファイル名称(同じインスタンスID)であって、既に記録管理されている再取得条件情報に含まれるデータファイル名称(インスタンスID)が同一で、取得不可のデータの対象範囲が一部重複している場合には、重複した範囲のデータについて、取得が可能とされるように更新される。
【0030】
再取得条件管理部414は、定期的に、又はユーザからの要求に応じて、自身の管理する再取得条件情報を更新して、最新の状態にすることができる。具体的には、再取得条件管理部414は、定期的に、又はユーザからの要求に応じて、再取得条件情報と、データベース460に記録されたデータと、を照らし合わせ、再取得条件情報に対応するデータがデータベース460に無い場合、当該再取得条件情報を削除するようにしてもよい。また、再取得条件情報に対応するデータファイルに実際に含まれているデータの範囲が、再取得条件に管理されている対象範囲よりも小さい場合、再取得条件に管理されている対象範囲をデータファイルに含まれるデータの範囲まで縮小するようにしてもよい。
【0031】
次に、データ送信部413について説明する。
データ送信部413は、データインポート部412から提供されるデータファイルに付加されている再取得可否情報に基づいて当該データファイルに係る情報と、当該データファイルの再取得可否情報と、を対応づけた再取得条件情報を作成し、再取得条件管理部414に登録する。なお、前述したように、再取得可否情報として空(ヌル)が付加されている場合、当該データファイルの全てが取得可能として登録されるようにしてもよい。
また、前述したように、データ送信部413は、提供データファイルに含まれる部分範囲のデータに対してのみ取得不可が付加され、残りの範囲については空(ヌル)の場合、当該部分範囲を取得不可のデータの対象範囲とする再取得条件情報を作成し、再取得条件管理部414に登録するようにしてもよい。
なお、データ送信部413が、新たに作成された再取得条件情報に基づいて、再取得条件管理部414に登録されている再取得条件情報を更新する処理内容については、再取得条件管理部414において説明したので、省略する。
データ送信部413は、外部から提供されたデータファイルに係る再取得条件情報を再取得条件管理部414に登録した後、当該データファイルをデータベース460に送信する。そうすることで、データベース460に格納されたデータファイル(インスタンス)に対する取得要求は、後述するデータ取得部415を介してデータベース460に依頼されることから、開発者は、当該データファイルのデータを容易に取得することができない。このため、データ提供者は、意図しない開発者による当該データの取得を防ぐことができる。
【0032】
最後にデータ取得部415について説明する。
データ取得部415は、データベース460に格納されたデータファイルの取得要求を受け付けると、再取得条件管理部414により管理される再取得条件情報に基づいて、データファイルの取得を許可されている場合のみ、データファイルをデータベース460から取得する。
具体的には、データ取得部415は、受取側サーバ400における(提供先であるユーザを含む)任意のユーザからデータベース460に格納されているデータファイル(インスタンス)の取得要求を受けた場合、取得要求されたデータファイル(インスタンス)のデータと、再取得条件管理部414の再取得条件情報と、を比較する。データ取得部415は、当該データと再取得条件情報とが1データでも該当する場合、取得要求されたデータファイル(インスタンス)のデータを取得しない。一方、データ取得部415は、当該データと再取得条件情報とが該当しない場合、取得要求されたデータファイルのデータを記憶部420のデータ格納部に格納する。
なお、データ取得部415は、取得要求されたデータファイル(インスタンス)のデータと再取得条件情報とが該当する場合、取得要求した受取側サーバ400における(提供先であるユーザを含む)任意のユーザに対して、当該データに対する取得が許可されていない旨のエラーメッセージを出力(応答)するようにしてもよい。
以上、受取側サーバ400の備える機能について説明した。
【0033】
このように、データ管理システム1000において、提供側サーバ100から、例えばエッジ機器の稼働に伴う処理データを開発者の備える開発環境(例えば、受取側サーバ400)に提供する際に、データ提供者が予め当該データの取得の可否を指定することで、当該提供データが、開発環境におけるデータベースに、復号化された状態で送信(すなわち、格納)されても、提供先において、任意のユーザがデータベース操作ツールを介して当該処理データを、取得(ダウンロード)することができないようにすることができる。それにより、データ提供者は、開発環境に提供した仮想機器データを不正に取得され、利用されることを防ぐことができる。また、各アプリケーションにおいては、データベースの利用に係るプログラムコードを何ら変更することなく、前述した課題を解決することができる。
【0034】
以上、提供側サーバ100及び受取側サーバ400に含まれる機能ブロックについて説明した。
なお、上記のデータ管理システム1000に含まれる各サーバは、ハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラム(アプリケーション)を読み込んで実行することにより実現されることを意味する。
例えば、提供側サーバ100、及び受取側サーバ400は、一般的なサーバ又はクラウド上の仮想サーバに、本実施形態を実現するためのプログラム(アプリケーション)を組み込むことにより実現することができる。
【0035】
次に、データ管理システム1000における、提供側サーバ100による処理の流れ、受取側サーバ400が当該データをデータベース460に格納するまでの処理の流れ、及び受取側サーバ400におけるデータの取得処理の流れについて、
図7から
図9を参照しながら説明する。
図7は、提供側サーバ100において、自身のデータベース160から取得したデータを受取側サーバ400に提供するまでの処理の流れの概要を示す図である。なお、提供データは公開鍵方式の鍵データを用いて暗号化するものとする。
【0036】
ステップS1において、データ提供者からの指示により、データ取得部111は、データベース160から、提供するデータを取得する。
【0037】
ステップS2において、再取得条件作成部112は、データ提供者から指示される、取得したデータの範囲と、受取側サーバ400において当該データの取得の可否と、に基づいて再取得可否情報を作成し、ステップS1において取得されたデータに再取得可否情報を付加する。
【0038】
ステップS3において、データ出力部113は、ステップS2において、再取得可否情報が付加されたデータファイルを、公開鍵方式の鍵データ(受取側の公開鍵)により暗号化し、暗号化された提供データファイルを外部に出力する。
その後、外部に出力された提供データファイルは、予め設定された方法で受取側サーバ400に提供される。
【0039】
図8は、受取側サーバ400が提供側サーバ100から提供データファイルを受取り、受取側サーバ400のデータベース460に格納するまでの処理の流れの概要を示す図である。
【0040】
ステップS11において、データインポート部412は、提供側サーバ100から提供された提供データファイルをデータ格納部に格納する。
【0041】
ステップS12において、データインポート部412は、公開鍵方式の鍵データ(受取側の秘密鍵)により復号化し、データ送信部413に出力する。
【0042】
ステップS13において、データ送信部413は、データインポート部412から出力されたデータファイルに、空(ヌル)以外の再取得可否情報が付加されているか否かを判定する。空(ヌル)以外の再取得可否情報が付加されている場合(Yesの場合)、ステップS14に移る。空(ヌル)以外の再取得可否情報が付加されていない場合(Noの場合)、ステップS15に移る。
【0043】
ステップS14において、データ送信部413は、再取得可否情報に基づいて、再取得条件情報を作成し、再取得条件管理部414に登録する。その後、ステップS16に移る。
【0044】
ステップS15において、データ送信部413は、再取得条件情報をヌルにするように再取得条件管理部414に登録する。その後、ステップS16に移る。
【0045】
ステップS16において、データ送信部413は、データベース460に提供データを送信する。
【0046】
図9は、受取側サーバ400におけるデータの取得処理の流れの概要を示す図である。
【0047】
ステップS21において、データ取得部415は、受取側サーバ400における(提供先であるユーザを含む)任意のユーザからデータベース460に格納されたデータの取得要求を受ける。
【0048】
ステップS22において、データ取得部415は、取得要求されたデータファイル(インスタンス)のデータと、再取得条件管理部414の再取得条件情報と、を比較し、当該データに対する取得が不可か否かを判定する。取得が不可の場合は、ステップS24に移る。取得が不可でない、すなわち取得が許可されている場合、ステップS23に移る。
【0049】
ステップS23において、データ取得部415は、取得要求されたデータをデータベース460から取得し、データ格納部に格納する。その後、ステップS21に移る。
【0050】
ステップS24において、データ取得部415は、取得要求した受取側サーバ400における(提供先であるユーザを含む)任意のユーザに対して、当該データに対する取得が許可されていない旨のエラーメッセージを出力(応答)する。その後、ステップS21に移る。
【0051】
以上により、本願発明のデータ管理システム1000を適用することで、データを外部に提供する提供者は、予め提供先のサーバにおいて当該データに対する取得の可否を指定することで、データ提供者が、提供先のサーバにおいて任意のユーザがデータベース操作ツールを介して当該データを取得(ダウンロード)することができないようにすることで、提供したデータが外部に漏洩することを防ぐことができる。このように、データ提供者は、受取側サーバ400における(提供先であるユーザを含む)任意のユーザによるデータの取得を制御することができ、提供したデータが外部に漏洩することを防ぐことができる。また、提供したデータが2次利用される危険性を抑えることができる。
他方、当該データを受け取った受取側においても、例えば開発環境としての受取側サーバ400において、再取得条件情報で空(ヌル)、すなわち取得可能に設定されたデータのみを取得できるようになり、サーバの運用及び各アプリケーションにおいてデータベースの利用に係るプログラムコードを何ら変更することなく、自動的にセキュリティの向上を図ることができる。
【0052】
上述した実施形態は、本発明の好適な実施形態ではあるが、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。
【0053】
(変形例1)
上述した実施形態では、提供データファイルを提供側サーバ100から受取側サーバ400に対して、通信部を介してであれ、記憶媒体に格納して郵送又は手渡しする場合であれ、提供データファイルを両サーバ間で直接やりとりする形態を例示したが、これに限られない。予め設定されたクラウド経由で提供データをやり取りしてもよい。
クラウドを介しての提供データのアップロード及びダウンロードの一例を説明する。
図10は、提供側サーバ100が提供データをクラウドにアップロードし、受取側サーバ400が当該提供データをクラウドからダウンロードすることで、クラウドを介しての提供側サーバ100から受取側サーバ400に対して提供する形態の一例を示す概要図である。
ここでは、暗号化方式としては、公開鍵方式を採用して、公開鍵又は秘密鍵で暗号化する運用を例示して説明する。
最初にクラウドに提供側サーバ100と受取側サーバ400間におけるデータの授受を管理するためのデータ管理仮想サーバを設ける。ここで、提供側サーバ100はデータ管理仮想サーバの公開鍵2を取得し、提供側サーバ100に公開鍵2を登録している。また、受取側サーバ400は、事前に受取側サーバ400の公開鍵1を生成し、クラウド上のデータ管理仮想サーバに登録しているものとする。
そうすることで、提供側サーバ100(データ出力部113)は、データ管理仮想サーバ公開鍵2を用いて、受取側サーバ400に提供する提供データを暗号化し、暗号化したデータをデータ管理仮想サーバにアップロードする。そうすると、データ管理仮想サーバは、当該暗号化データを自身の(公開鍵2とペアとなる)秘密鍵2を用いて復号化する。その後、データ管理仮想サーバは、復号化した提供データを、受取側サーバ400の公開鍵1を用いて暗号化し、暗号化されたデータを受取側サーバ400に対してダウンロードさせる。そうすることで、受取側サーバ400(データインポート部412)は、自身の(公開鍵1とペアとなる)秘密鍵1を用いて復号化することができる。
なお、前述したように、提供側サーバ100からデータ管理仮想サーバに提供データをアップロードする場合、提供側サーバ100で生成した共通鍵を用いて暗号化してもよい。その場合、提供側サーバ100は、公開鍵2を用いて、暗号化した共通鍵をデータ管理仮想サーバに付加してアップロードする。
同様に、受取側サーバ400がデータ管理仮想サーバから提供データをダウンロードする場合、データ管理仮想サーバは、データ管理仮想サーバで生成した共通鍵を用いて暗号化してもよい。その場合、データ管理仮想サーバは、公開鍵1を用いて、暗号化した共通鍵を受取側サーバ400にダウンロードさせる。
以上のように、提供側サーバ100は、予め設定されたクラウド経由で提供データを受取側サーバ400に対して提供することができる。
【0054】
(変形例2)
上述した実施形態では、提供側サーバ100と受取側サーバ400と、をそれぞれ別のサーバとして説明したが、1つのサーバが、当該サーバにおいて作成されるデータを他のサーバに提供する提供側サーバ100として機能するとともに、他のサーバにおいて作成されたデータを他のサーバから受け取る、受取側サーバ400として機能するようにしてもよい。すなわち、1つのサーバが、提供側サーバ100の備える機能、及び受取側サーバ400の備える機能を共に備えるように構成してもよい。
【0055】
(変形例3)
本発明は、仮想機器データ及び仮想機器データを格納するデータベースシステムに限られない。前述したように、本発明は、任意のデータ及び当該データを格納する任意のデータベースシステムに適用することができる。具体的には、本実施形態において例示されるデータベース160における用語「インスタンス」、「モーメント」、「データ送信部」、及び「データベースにデータを送信すること」は、それぞれ、通常のデータベースシステムにおける「テーブル等のデータファイル」、「1つのレコードデータ」、「データ登録部」、及び「データベースにデータを格納すること」に相当することから、上記のように読み換えることで、本発明は、任意のデータ及び当該データを格納する任意のデータベースシステムに対して適用することができる。
【0056】
本発明で使用するアプリケーションを初めとするプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【0057】
以上を勘案すれば、本発明は、次のような構成を有する各種各様の実施形態を取ることができる。
【0058】
(1)本開示のサーバとしての受取側サーバ400は、制御部410と、データベース460と、を備えるデータ管理サーバであって、データベース460に格納されたデータファイルに係る情報と、データファイルの取得の可否に関する再取得可否情報と、を対応付けた再取得条件情報を記録管理する再取得条件管理部414と、受取側サーバ400の外部から提供されるデータファイルに付加された再取得可否情報に基づいてデータファイルの再取得条件情報を再取得条件管理部414に登録し、提供されたデータファイルをデータベース460に送信するデータ送信部413と、データベース460に格納されたデータファイルの取得要求を受け付けると、再取得条件管理部414により管理される再取得条件情報に基づいて、データファイルの取得を許可されている場合のみ、データファイルをデータベース460から取得するデータ取得部415と、を備える。
これにより、データを外部に提供する際にデータ提供者が予め当該データを受取側サーバ400における(提供先であるユーザを含む)任意のユーザが取得できないように指定することで、提供したデータが外部に漏洩することを防ぐことができる。データ提供者が、提供したデータが任意の開発者によって2次利用される危険性を防ぐことができる。
【0059】
(2) (1)に記載のサーバとしての受取側サーバ400において、再取得条件情報は、少なくとも取得が不可に指定されたデータファイルの識別情報、及びデータファイルに格納されたデータの範囲情報を含むようにしてもよい。
そうすることで、データ提供者は、提供データにおいて取得の許可、不可をデータの範囲によって指定することができる。データ提供者は、必要に応じてデータの取得可否に係る制御を細かくすることができる。
【0060】
(3) (2)に記載のサーバとしての受取側サーバ400において、データファイルに格納されるデータは、エッジ機器の動作状態を示すデータ、エッジ機器の生産状況を示すデータ、エッジ機器の生産物の品質状況を示すデータ、エッジ機器の稼働状況を示すデータ、及びエッジ機器のイベントを示すデータのうち、少なくともいずれか1つに対応し、データの範囲情報は、当該データの生成されたタイムスタンプに係る期間を含むようにしてもよい。
そうすることで、製造現場におけるエッジ機器の稼働に伴う処理データが意図しないアプリケーションに利用されて、例えば、機械情報を解析することで、悪用される危険(例えば、各機械の製造能力、工場の製造能力、工場を運用する企業の売上等の予測)を排除することができる。
【0061】
(4) (1)から(3)のいずれかに記載のサーバとしての受取側サーバ400において、再取得条件管理部414は、所定のタイミングでデータベース460に格納されたデータファイルを確認し、データファイルが無い場合、データファイルの再取得条件情報を削除するようにしてもよい。
そうすることで、受取側サーバ400は、データベース460に格納されたデータファイルに応じて再取得条件情報を最新の状態に更新することができる。
【0062】
(5) (1)から(3)のいずれかに記載のサーバとしての受取側サーバ400において、再取得条件管理部414は、データ送信部413が送信したデータファイルに格納されたデータの範囲情報の少なくとも一部が、データベース460に格納されているデータの範囲情報と重複する場合、データファイルの再取得条件情報を更新するようにしてもよい。
そうすることで、受取側サーバ400は、データベース460に格納されたデータファイルに応じて再取得条件情報を最新の状態に更新することができる。
【0063】
(6) (1)から(5)のいずれかに記載のサーバとしての受取側サーバ400は、通信部430を備え、受取側サーバ400の外部から提供され、受取側サーバ400にインポートされるデータファイルは、通信部430を介して受信するようにしてもよい。
そうすることで、例えば手運用による運用の煩雑さを避けることができる。
【0064】
(7)本開示のデータ管理方法は、外部から提供されるデータファイルを内部のデータベース460に格納するためのデータ管理方法であって、制御部410と、データベース460と、を備えるコンピュータにより、データベース460に格納されたデータファイルに係る情報と、データファイルの取得の可否に関する再取得可否情報と、を対応付けた再取得条件情報を記録管理する再取得条件管理ステップと、外部から提供されるデータファイルに付加された再取得可否情報に基づいてデータファイルの再取得条件情報を登録し、提供されたデータファイルをデータベース460に送信するデータ送信ステップと、データベース460に格納されたデータファイルの取得要求を受け付けると、管理される再取得条件情報に基づいて、データファイルの取得を許可されている場合のみ、データファイルをデータベース460から取得するデータ取得ステップと、を実行する。
そうすることで、データ管理方法は、(1)と同じ効果を奏することができる。
【0065】
(8)本開示のデータ管理プログラムは、外部から提供されるデータファイルを内部のデータベース460に格納するためのデータ管理プログラムであって、制御部410と、データベース460と、を備えるコンピュータに、データベース460に格納されたデータファイルに係る情報と、データファイルの取得の可否に関する再取得可否情報と、を対応付けた再取得条件情報を記録管理する再取得条件管理ステップと、外部から提供されるデータファイルに付加された再取得可否情報に基づいてデータファイルの再取得条件情報を登録し、提供されたデータファイルをデータベース460に送信するデータ送信ステップと、データベース460に格納されたデータファイルの取得要求を受け付けると、管理される再取得条件情報に基づいて、データファイルの取得を許可されている場合のみ、データファイルをデータベース460から取得するデータ取得ステップと、を実行させる。
そうすることで、データ管理プログラムは、(1)と同じ効果を奏することができる。
【0066】
(9)本開示のコンピュータ読み取り可能な記録媒体は、(8)に記載のデータ管理プログラムを記録する。
そうすることで、コンピュータ読み取り可能な記録媒体は、(1)と同じ効果を奏することができる。
【0067】
(10)本開示のデータ管理システム1000は、(1)に記載のサーバとしての受取側サーバ400と、受取側サーバ400に外部から提供されるデータファイルを作成するサーバとしての提供側サーバ100と、を含むデータ管理システム1000であって、提供側サーバ100は、制御部110と、データベース160と、を備え、制御部110は、データベース160に格納されたデータファイルを取得するデータ取得部111と、データファイルに、当該データファイルに対する取得の可否が指定された再取得可否情報を付加する再取得条件作成部112と、再取得条件作成部112により、再取得可否情報が付加されたデータファイルを受取側サーバ400に提供する提供データファイルとして外部に出力するデータ出力部113と、を備える。
そうすることで、データ管理システムは、(1)と同じ効果を奏することができる。
【符号の説明】
【0068】
1000 データ管理システム
100 提供側サーバ
110 制御部
111 データ取得部
112 再取得条件作成部
113 データ出力部
120 記憶部
130 通信部
160 データベース
400 受取側サーバ
410 制御部
411 アプリケーション実行部
412 データインポート部
413 データ送信部
414 再取得条件管理部
420 記憶部
430 通信部
460 データベース