実施形態について、図面を参照して説明する。なお、以下に説明する実施形態は特許請求の範囲に係る発明を限定するものではなく、また実施形態の中で説明されている諸要素及びその組み合わせの全てが発明の解決手段に必須であるとは限らない。
(第1実施形態)
図1は、第1実施形態に係るデータ管理システムの概略構成を示すブロック図である。
図1において、データ管理システムには、複数のフィールド101a〜101cおよびセンタ102が設けられている。フィールド101a〜101cは、社会インフラ、工場、店舗または物流拠点などであってもよい。社会インフラは、道路、鉄道または港湾などであってもよいし、水道、電力、ガスなどの設備であってもよい。フィールド101a〜101cは、IoT(Inernet of Things)のモノであってもよい。
フィールド101a〜101cとセンタ102とはWAN回線108を介して接続されている。WAN回線108は、インターネットでもよいし、移動体通信網であってもよい。WAN回線108にはLAN(Local Area Network)回線が混在していてもよい。
フィールド101aには、センサ104、センササーバ107、エッジサーバ105a、105b、ゲートウェイサーバ106およびデータストア107b、107cが設けられている。他のフィールド101b、101cも同様に構成することができる。
センサ104は、モノの状態および状況をセンシングし、センシングデータを生成するデータソースである。例えば、センサ104は、Webカメラなどの監視カメラであってもよい。この時、センサ104は、サービスロボット、工場の制御機械、工事現場の工作機械、航空機向けタービンなどモノをセンシングすることができる。
センササーバ107は、センサ104からセンシングデータを受信して、一時的に格納したり、整形加工して送信したりする。また、センサ104を制御してセンシング能力を変更したり、センシング方法を変更したりする。例えば、センササーバ107は、監視カメラのデータを格納したり、監視カメラを制御したりすることができる。この時、監視カメラの高解像度かつ高サンプリングレートの高品質な元データを予め設定された期間だけストレージに格納することができる。また、センササーバ107は、外部からの要求に従って、監視カメラの撮影解像度、撮影サンプリングレート、撮影角度および焦点などのセンシング能力を制御することができる。
エッジサーバ105a、105bは、センシングデータを整形加工する。エッジサーバ105a、105bは、整形加工したデータをデータストア107bに格納する。例えば、エッジサーバ105a、105bは、高解像度の元データを整形加工することで中解像度の加工済みデータを生成し、データストア107bに格納することができる。エッジサーバ105a、105bの整形加工処理は、多段で実行することもできる。整形加工されたデータは、ゲートウェイサーバ106を介してセンタ102に送信される。
ゲートウェイサーバ106は、フィールド101aからセンタ102にデータを送信する。この時、送信タイミングを制御してセンタ102にデータを送信したり、内部でデータを整形加工してセンタ102に送信することができる。ゲートウェイサーバ106は、整形加工したデータをデータストア107cに格納する。
ゲートウェイサーバ106の整形加工処理は、例えば、帯域の細いWAN回線108の通信コストを削減するために、データ品質を落とす処理などである。例えば、ゲートウェイサーバ106は、中解像度の加工済みデータを整形加工することで低解像度の再加工済みデータを生成し、データストア107cに格納することができる。
なお、エッジサーバ105a、105bの整形加工処理およびゲートウェイサーバ106の整形加工処理は、複数のサーバ上で実行しても良いし、同一のサーバ上で実行してもよい。
データストア107bは、エッジサーバ105a、105bに接続され、エッジサーバ105a、105bでの整形加工後のデータを格納する。データストア107cは、ゲートウェイサーバ106に接続され、ゲートウェイサーバ106での整形加工後のデータを格納する。なお、図1の例では、エッジサーバ105a、105bの外部にデータストア107aを設けた構成を示したが、エッジサーバ105a、105b内にデータストア107aを設けるようにしてもよい。また、図1の例では、ゲートウェイサーバ106の外部にデータストア107bを設けた構成を示したが、ゲートウェイサーバ106内にデータストア107bを設けるようにしてもよい。
センタ102には、分析サーバ109、ハブ・管理サーバ110およびデータレイク111が設けられている。分析サーバ109は、複数の分析端末103a、103bから入力された分析アプリケーションを実行することで、データ分析A、Bを行う。
ハブ・管理サーバ110は、複数のフィールド101a〜101cからセンタ102に送信されたデータをセンタ102内の格納先や活用先アプリケーションに転送する。また、ハブ・管理サーバ110は、分析サーバ109などで実行されるアプリケーションからのデータ要求を受けて、指定されたデータ要件のデータを応答する。さらに、ハブ・管理サーバ110は、データに付加されているメタデータに基づいて、そのデータのデータ来歴を管理する。このデータ来歴は、データのケーパビリティを示すことができる。ケーパビリティは、データの素質または性能を示すことができる。ケーパビリティとしては、具体的は、データソース、データ品質、データ移行コストまたはデータ保持期間を挙げることができる。データ来歴は、データソース、データ品質、データ移行コストおよびデータ保持期間の少なくともひとつを含むことができる。ハブ・管理サーバ110は、このデータ来歴に基づいて、新たなデータ要件のデータをフィールド101a〜101cから取得することができる。
データレイク111は、フィールド101a〜101cから送信されたデータを格納し、取得要求に応じて格納したデータを取り出すことができる。
ここで、ハブ・管理サーバ110はデータの来歴を管理することで、データ量やデータ品質を落とす前のデータソースを辿ることができる。このため、データソースに遡ってフィールド101a〜101cからデータを再取得することができ、新たなデータ要件のデータを追加で取得することができる。
また、データソースに遡ってフィールド101a〜101cからデータを再取得する前は、データ量やデータ品質を落としたデータをデータレイク111に保持することができる。この時、データレイク111には、例えば、低解像度の再加工済みデータを保持することができる。そして、データ量やデータ品質を落とす前のデータがセンタ102で必要になった時に、新たなデータ要件のデータをフィールド101a〜101cから追加で取得することができる。この時、新たなデータ要件のデータとして、中解像度の加工済みデータまたは高解像度の元データをフィールド101a〜101cから取得することができる。これにより、WAN回線108にかかるデータ伝送の負荷を低減し、WAN回線108の通信コストを抑えることができる。
図2は、図1のフィールドおよびセンタの構成例を示すブロック図である。
図2において、図1のセンサ104としてWebカメラ104aが設けられている。Webカメラ104aは生成部213を備える。生成部213は、センシングデータを生成する。例えば、生成部213は、Webカメラ104aが撮影したカメラ映像を生成することができる。
センササーバ107は、管理部211a、データストア107a、管理データベース220aおよび送受信部212aを備える。
管理部211aは、センササーバ107が受信したデータをデータストア107aに格納する。また、管理部211aは、ハブ・管理サーバ110からのデータ取得要求を送受信部212aを介して受信する。また、管理部211aは、生成部213から受信したデータや、データストア107aから読み出したデータ233a、234aを、送受信部212aを介して管理部211b、211cに送信する。
データストア107aは、データ233a、234aを保持する。データ233a、234aは、センササーバ107が保持するデータである。データ233a、234aは、加工済みデータ231aと、メタデータ232aを備える。加工済みデータ231aは、生成部213より受信したセンシングデータ本体である。メタデータ232aは、加工済みデータ231aのメタデータであり、データ品質情報を保持する。
管理データベース220aは、管理部211aの管理情報を保持する。管理データベース220aは、ローカルアドレス221aとインデックステーブル222aを備える。ローカルアドレス221aは、フィールド101a内部の管理部211aのアクセス用アドレスである。インデックステーブル222aは、管理部211aがデータストア107a上のデータ233a、234aにアクセスするためのインデックス情報を保持する。送受信部212aは、センササーバ107で送受信されるデータを仲介する。
エッジサーバ105aは、加工部213b、管理部211b、データストア107b、管理データベース220bおよび送受信部212bを備える。なお、図1では、データストア107bをエッジサーバ105aの外部に配置した構成を示したが、図2では、データストア107bをエッジサーバ105a内に配置した構成を示した。
加工部213bは、エッジサーバ105aが受信したデータを加工処理し、加工済みデータ231bを生成する。
管理部211bは、エッジサーバ105aが受信したデータをデータストア107bに格納する。また、管理部211bは、ハブ・管理サーバ110からのデータ取得要求を送受信部212bを介して受信する。また、管理部211bは、センササーバ107から受信したデータや、データストア107bから読み出したデータ233b、234bを、送受信部212bを介して管理部211cに送信する。また、管理部211bは、加工部213bでの加工処理に基づいて、加工済みデータ231bのメタデータ232bを生成する。メタデータ232bは、加工済みデータ231bの来歴を示すことができる。
データストア107bは、データ233b、234bを保持する。データ233b、234bは、エッジサーバ105aが保持するデータである。データ233b、234bは、加工済みデータ231bと、メタデータ232bを備える。
管理データベース220bは、管理部211bの管理情報を保持する。管理データベース220bは、ローカルアドレス221bとインデックステーブル222bを備える。ローカルアドレス221bは、フィールド101a内部の管理部211bのアクセス用アドレスである。インデックステーブル222bは、管理部211bがデータストア107b上のデータ233b、234bにアクセスするためのインデックス情報を保持する。送受信部212bは、エッジサーバ105a、105bに送受信されるデータを仲介する。
ゲートウェイサーバ106は、加工部213c、管理部211c、データストア107c、管理データベース220cおよび送受信部212cを備える。なお、図1では、データストア107cをゲートウェイサーバ106の外部に配置した構成を示したが、図2では、データストア107cをゲートウェイサーバ106内に配置した構成を示した。
加工部213cは、ゲートウェイサーバ106が受信したデータを加工処理し、加工済みデータ231cを生成する。
管理部211cは、ゲートウェイサーバ106が受信したデータをデータストア107cに格納する。また、管理部211cは、ハブ・管理サーバ110からのデータ取得要求を送受信部212cを介して受信する。また、管理部211cは、エッジサーバ105a、105bから受信したデータや、データストア107cから読み出したデータ233c、234cを、送受信部212cを介して管理部211dに送信する。また、管理部211cは、加工部213cでの加工処理に基づいて、加工済みデータ231cのメタデータ232cを生成する。メタデータ232cは、加工済みデータ231cの来歴を示すことができる。
データストア107cは、データ233c、234cを保持する。データ233c、234cは、ゲートウェイサーバ106が保持するデータである。データ233c、234cbは、加工済みデータ231cと、メタデータ232cを備える。
管理データベース220cは、管理部211cの管理情報を保持する。管理データベース220cは、アドレス変換テーブル223、グローバルアドレス221cおよびインデックステーブル222cを備える。グローバルアドレス221cは、WAN回線108上におけるゲートウェイサーバ106のグローバルなアドレスである。ハブ・管理サーバ110の管理部211dは、このグローバルアドレス221c宛にデータ取得要求を送信する。インデックステーブル222cは、管理部211cがデータストア107c上のデータ233c、234cにアクセスするためのインデックス情報を保持する。アドレス変換テーブル223は、グローバルアドレス221cと、フィールド101a内部の管理部211cのアクセス用のローカルアドレスとの対応関係を保持する。送受信部212cは、ゲートウェイサーバ106に送受信されるデータを仲介する。
分析サーバ109は、分析部201を備える。分析部102は、各種分析アプリが動作する。データレイク111は、データ233d、234dを保持する。データ233d、234dは、ゲートウェイサーバ106で整形加工されたデータである。
データ233d、234dは、それぞれ加工済みデータ231dと、メタデータ232dを備える。加工済みデータ231dは、ゲートウェイサーバ106で加工整形されたデータのデータ本体である。この時、センサ104からセンササーバ107に送られたデータをエッジサーバ105a、105bおよびゲートウェイサーバ106で加工処理することで加工済みデータ231cを生成し、その加工済みデータ231cをWAN回線108を介してセンタ102が受信し、その加工済みデータ231cを加工済みデータ231dとしてデータレイク111が保持することができる。
メタデータ232dは、加工済みデータ231dのメタデータである。メタデータ232dは、データソース104からセンササーバ107、エッジサーバ105a、105bおよびゲートウェイサーバ106での各加工処理後のデータ品質情報を備えることができる。
ハブ・管理サーバ110は、管理部211dと、送受信部212dを備える。管理部211dは、ハブ/管理サーバ110へのデータ要求を受け付け、データを応答したり、受信したデータをデータレイク111に格納したりする。送受信部212dは、ハブ・管理サーバ110のデータを送受信する。
管理データベース220dは、グローバルアドレス220cとインデックステーブル222dを備える。グローバルアドレス220cは、WAN回線108上におけるハブ・管理サーバ110のグローバルなアドレスである。ゲートウェイサーバ106の管理部211cは、このグローバルアドレス220c宛にデータを送信する。インデックステーブル222dは、管理部211dがデータレイク111上のデータ233d、234dにアクセスするためのインデックス情報を保持する。
図3は、図1のサーバに用いられる計算機のハードウェア構成を示すブロック図である。
図3において、計算機300は、中央演算装置301、主記憶装置302、外部記憶装置303、送受信装置304およびバス305を備える。中央演算装置301、主記憶装置302、外部記憶装置303および送受信装置304は、バス305を介して相互に接続されている。
計算機300は、図2のセンササーバ107、エッジサーバ105a、105b、ゲートウェイサーバ106およびハブ・管理サーバ110ごとに別個に設けることができる。
中央演算装置301は、各サーバ全体の動作制御を司るハードウェアである。主記憶装置302は、例えば、半導体メモリから構成され、各種プログラムや制御データを一時的に保持する。
外部記憶装置303は、大容量の記憶容量を有する記憶デバイスであり、例えば、ハードディスク装置やSSD(Solid State Drive)である。外部記憶装置303は、各種プログラムの実行ファイルなどを保持することができる。主記憶装置302および外部記憶装置303は、中央演算装置301からアクセス可能である。
センササーバ107の外部記憶装置303には、加工済みデータ231aの生成処理、メタデータ232aの付加処理、データ取得受付処理などを中央演算装置301に実行させるデータ処理プログラムを格納することができる。
エッジサーバ105aの外部記憶装置303には、加工済みデータ231bの生成処理、メタデータ232bの付加処理、データ取得受付処理などを中央演算装置301に実行させるデータ処理プログラムを格納することができる。
ゲートウェイサーバ106の外部記憶装置303には、加工済みデータ231cの生成処理、メタデータ232cの付加処理、データ取得受付処理などを中央演算装置301に実行させるデータ処理プログラムを格納することができる。
ハブ・管理サーバ110の外部記憶装置303には、加工済みデータ231dおよびメタデータ232dの管理処理、データ来歴に基づくデータ取得要求処理などを中央演算装置301に実行させるデータ管理プログラムを格納することができる。
送受信装置304は、外部との通信を制御する機能を有するハードウェアである。送受信装置304は、WAN回線108を介してデータを送受信することができる。
図4は、データ来歴の取得に用いられる要求クエリのデータ構造を示す図である。
図4において、要求クエリ400は、データレイク111にあるデータ233d、234dを指定し、そのデータ233d、234dに対して過去に施された加工後のデータ品質一覧をデータ来歴として取得する。
要求クエリ400は、ハブ・管理サーバ110が発行する。要求クエリ400は、引数領域401を備えている。引数領域401は、クエリID402、クエリタイプ403およびデータID404を備えている。
クエリID402は、要求クエリ400を識別するための識別子である。クエリタイプ403は、要求クエリ400の要求内容を識別するための識別子である。データID404は、クエリタイプ403で指定した要求クエリ400の対象となるデータを識別する識別子である。ここでは、データ来歴を取得する対象のデータを特定している。
図5は、図4の要求クエリに対する応答データのデータ構造を示す図である。
図5において、応答データ500は、応答ヘッダ501と、応答本文502を備えている。応答ヘッダ501は、応答メッセージを識別するための応答IDと、応答メッセージの対象となる要求クエリ400を識別するクエリIDを記憶している。
応答本文502は、データ来歴を記憶している。データ来歴には、そのデータが過去に施された加工後のデータ品質情報503a、503b、503cがリスト形式で示される。データ品質情報503a、503b、503cは、データIDごとに記憶することができる。各データ品質情報503a、503b、503cには、ソースIDおよびソースラベルを付加することができる。ソースIDは、ソースデータを識別するための識別子である。ソースラベルは、ソースデータに対して過去に施された加工後のデータを識別するための識別子である。データ品質情報503a、503b、503cとして、例えば、解像度、サンプリングレート、保持期間および移行コストなどを記憶することができる。
このデータIDは、センタ102がフィールド101a〜101cからデータを取得する時に、取得対象となるデータを特定することができる。ソースIDは、センタ102がフィールド101a〜101cからデータを取得する時に、取得対象となるデータのソースデータを特定することができる。ソースラベルは、センタ102がフィールド101a〜101cからデータを取得する時に、ソースデータに対して過去に施された加工後のデータを特定することができる。ソースデータに対して何段階にも渡って加工が施された場合には、各段階ごとに別個のソースラベルを付すことができる。
図6は、データの取得に用いられる要求クエリのデータ構造を示す図である。
図6において、要求クエリ600は、指定されたデータ要件を満たすデータを取得するために用いることができる。
要求クエリ600は、ハブ・管理サーバ110が発行する。要求クエリ600は、引数領域601を備えている。引数領域601は、クエリID602、クエリタイプ603、データID604およびデータ要件605を備えている。データ要件605は、要求するデータのデータ品質条件606を備えている。
図7は、図6の要求クエリに対する応答データのデータ構造を示す図である。
図7において、応答データ700は、応答ヘッダ701、メッセージ本文のデータ格納領域702およびメッセージ本文のメタデータ格納領域703を備えている。応答ヘッダ701は、応答ヘッダ701および応答本文702を備えている。メッセージ本文のデータ格納領域702は、要求クエリ600で指定されたデータ条件を満たすデータを格納している。
メッセージ本文のメタデータ格納領域703は、データ格納領域702のデータのメタデータを記憶する。メタデータ格納領域703は、データID欄704、ソースID欄705、ソースラベル欄706、データ品質欄707およびデータ来歴欄708を備えている。データ来歴欄708は、過去のデータ来歴708a、708b、708cを記憶する。データ来歴708a、708b、708cのデータ構造は、図5のデータ品質情報503a、503b、503cのデータ構造と同様に設定することができる。
図8は、図2のデータストアに格納されるデータのデータ構造を示す図である。
図8において、データ800は、加工済データ格納領域801およびメタデータ格納領域802を備えている。加工済データ格納領域801は、要求クエリ600で指定されたデータ条件を満たすデータを格納している。
メタデータ格納領域802は、加工済データ格納領域801のデータのメタデータを記憶する。メタデータ格納領域802は、データID欄804、ソースID欄805、ソースラベル欄806、データ品質欄807およびデータ来歴欄808を備えている。データ来歴欄808は、過去のデータ来歴808a、808b、808cを記憶する。データ来歴808a、808b、808cのデータ構造は、図7のデータ来歴708a、708b、708cのデータ構造と同様に設定することができる。
図9は、図2のインデックステーブルのデータ構造を示す図である。
図9において、インデックステーブル222は、データID欄901および格納アドレス欄902を備えている。データID欄901にはデータIDが格納され、格納アドレス欄902には格納アドレスが格納されている。格納アドレスは、データIDで示されるデータにアクセスするためのデータストア上のアドレスである。
図10は、図2のアドレス変換テーブルのデータ構造を示す図である。
図10において、アドレス変換テーブル223は、グローバルアドレス欄1001、ソースラベル欄1002およびローカルアドレス欄1003を備えている。グローバルアドレス欄1001のグローバルアドレスとラベル欄1002のソースラベルとをセットにしたものが、ローカルアドレス欄1003のローカルアドレスと対応している。
ここで、図2のゲートウェイサーバ106は、ハブ・管理サーバ110からのデータ取得要求を受け取ると、アドレス変換テーブル223を参照し、グローバルアドレスとソースラベルとからローカルアドレスを特定することができる。そして、ローカルアドレスに基づいて、ハブ・管理サーバ110からのデータ取得要求で指定されたデータのフィールド101a〜101c内の格納場所を特定することができる。そして、ゲートウェイサーバ106は、そのフィールド101a〜101c内の格納場所から取得したデータをハブ・管理サーバ110に応答することができる。
図11は、第1実施形態に係るデータ管理システムのデータ収集処理シーケンスを示すブロック図である。
図11において、生成部213はセンサデータを生成し(S1101)、センササーバ107の送受信部212aがセンサデータを送信する(S1102)。
次に、エッジサーバ105aの送受信部212bは、送受信部212aから送信されたセンサデータを受信する(S1103)。
次に、エッジサーバ105aの管理部211bはセンサデータを受け取り(S1104)、加工部213bを通して加工処理する(S1105)。そして、管理部211bは、加工済みデータ231bの品質情報をメタデータ232bとして加工済みデータ231bに付与する(S1106)。
次に、管理部211bは、加工済みデータ231bをメタデータ232bとともにデータストア107bに格納し(S1107)、送受信部212bを介してデータを送信する(S1108)。
次に、ゲートウェイ106の送受信部211cは送受信部212bから送信されたデータを受信する(S1109)。
次に、ゲートウェイ106の管理部211cは送受信部212bから送信されたデータを受け取り(S1110)、加工部213cを通して再加工処理する(S1111)。そして、管理部211cは、加工済みデータ231cの品質情報をメタデータ232cとして加工済みデータ231cに付与する(S1112)。
次に、管理部211cは、加工済みデータ231cをメタデータ232cとともにデータストア107cに格納し(S1113)、送受信部212cを介してデータを送信する(S1114)。
次に、ハブ・管理サーバ110の送受信部212dは送受信部212cから送信された加工済みデータ231cを受信する(S1115)。
次に、ハブ・管理サーバ110の管理部211dは、送受信部212cから送信された加工済みデータ231cにメタデータ232dを付与し(S1116)、メタデータ232dを解釈し(S1117)、加工済みデータ231dをメタデータ232dとともにデータレイク111に格納する(S1118)。
図12は、第1実施形態に係るデータ管理システムのデータ取得処理シーケンスを示すブロック図である。
図12において、分析サーバ109の分析部201は、データを要求すると(S1201)、送受信部202を介してデータ要求を送信する(S1202)。
ハブ・管理サーバ110の送受信部212dはデータ要求を受信すると(S1203)、管理部211dは、そのデータ要求で要求されるデータを特定し(S1204)、データレイク111からデータを取得する(S1205)。次に、管理部211dは、データレイク111から取得したデータからデータ来歴を取得する(S1206)。さらに、管理部211dは、データ要求からデータ要件を特定する(S1207)。そして、管理部211dは、データ来歴とデータ要件を突き合わせ、データ来歴の中からデータ要件を満たすデータソースのデータを特定する(S1208)。次に、管理部211dは、特定したデータのデータ取得要求を送信する(S1209)。データ取得要求は送受信部212dを介して送信される(S1210)。
ゲートウェイサーバ106の送受信部212cはデータ取得要求を受信すると(S1212)、管理部211cがデータソースを特定して(S1213)、フィールド101a内のエッジサーバ105aにデータ取得要求を送信する(S1214)。データ取得要求は送受信部212cを介して送信される(S1215)。
エッジサーバ105aの送受信部212bは、データ取得要求を受信すると(S1217)、管理部211bは、データ取得要求を判定し(S1218)、データ取得要求で要求されるデータをデータストア107bから取得する(S1219)。データストア107bから取得されたデータは送受信部212bを介して送信される(S1220)。
ゲートウェイサーバ106の送受信部212cはデータを受信すると(S1221)、管理部211cは、データ検証し(S1222)、そのデータを応答する(S1223)。その応答されたデータは送受信部212cを介して送信される(S1224)
送受信部212cを介して送信されたデータは、ハブ・管理サーバ110の送受信部212dで受信され、データレイク111に格納されるとともに(S1226)、分析サーバ109に応答される(S1227)。分析サーバ109に応答されるデータは、送受信部212dを介して送信される(S1228)。
送受信部212dを介して送信されたデータは分析サーバ109の送受信部202で受信され(S1229)、分析部201で利用される(S1230)。
ここで、センタ102側でデータ来歴を管理することにより、フィールド101a〜101c側でのデータ整形加工の来歴をセンタ102側で参照することができる。このため、センタ102側でデータ品質が不足するデータがフィールド101a〜101c側にあるかどうか判定することができ、データ品質を充足するデータをフィールド101a〜101c側から取得することが可能となる。
(第2実施形態)
図13は、第2実施形態に係るデータ管理システムの概略構成を示すブロック図である。
図13において、このデータ管理システムには、フィールド101d〜101gが設けられている。フィールド101d〜101gは協調して動作することができる。この時、各フィールド101d〜101gは、データ来歴を管理することができる。そして、自己のフィールド101d〜101gでデータ品質が不足するデータが、他のフィールド101a〜101cにあるかどうか判定することができる。そして、自己のフィールド101d〜101gは、データ品質を充足するデータを他のフィールド101a〜101cから取得することができる。フィールド101d〜101gはWAN回線108を介して接続されている。
フィールド101dには、センサ104d、センササーバ107d、エッジサーバ105c、105d、ゲートウェイサーバ106d、データストア107c、107d、分析サーバ109dおよび分析端末103c、103dが設けられている。フィールド101eには、センサ104e、センササーバ107e、エッジサーバ105e、105f、ゲートウェイサーバ106e、データストア107f、107g、分析サーバ109eおよび分析端末103e、103fが設けられている。他のフィールド101f、101gも同様に構成することができる。
ゲートウェイサーバ106dは分析サーバ109dに接続されている。ゲートウェイサーバ106eは分析サーバ109eに接続されている。各ゲートウェイサーバ106d、106eは、図2のゲートウェイサーバ106と同様の機能を持つとともに、ハブ・管理サーバ110と同様の機能も持ち合わせることができる。
センサ104dで高解像度のセンサデータが生成され、センササーバ107deに保持される。この高解像度のセンサデータは、エッジサーバ105c、104dで中解像度のデータに整形加工され、その加工済みデータがデータストア107cに保持される。さらに、ゲートウェイサーバ106dにて、その加工済みデータが低解像度のデータに整形加工され、その再加工済みデータがデータストア107dに保持される。分析サーバ109dは、分析端末103c、103dから入力された分析アプリケーションを実行することで、データ分析A、Bを行う。
フィールド101dのゲートウェイサーバ106dは、分析サーバ109dからのデータ要求に応じたデータ要件を特定し、データストア107c、107dから取得したデータ来歴と照合する。そして、そのデータ来歴の中からデータ要件を満たすデータソースのデータを特定し、その特定したデータを他のフィールド101e〜101gから取得する。
ここで、フィールド101dのゲートウェイサーバ106dはデータの来歴を管理することで、データ量やデータ品質を落とす前のデータソースを他のフィールド101e〜101gから辿ることができる。このため、フィールド101dは、データソースに遡って他のフィールド101e〜101gからデータを再取得することができ、新たなデータ要件のデータを追加で取得することができる。
他のフィールド101e〜101gもフィールド101dと同様に動作することができる。
図14は、図13のフィールドの構成例を示すブロック図である。なお、図14では、図13のフィールド101dを例にとる。他のフィールド101e〜101gもフィールド101dと同様に構成することができる。
図14において、分析サーバ109dは、分析部201dおよび送受信部212eを備える。図13のセンサ104dとしてWebカメラ104fが設けられている。Webカメラ104fは生成部213dを備える。センササーバ107dは、管理部211e、データストア107e、管理データベース220eおよび送受信部212eを備える。データストア107eは、データ233e、234eを保持する。データ233e、234eは、加工済みデータ231eと、メタデータ232eを備える。管理データベース220eは、ローカルアドレス221eとインデックステーブル222eを備える。
エッジサーバ105cは、加工部213f、管理部211f、データストア107c、管理データベース220fおよび送受信部212fを備える。データストア107cは、データ233f、234fを保持する。データ233f、234fは、加工済みデータ231fと、メタデータ232fを備える。管理データベース220fは、ローカルアドレス221fとインデックステーブル222fを備える。
分析サーバ109d、Webカメラ104f、センササーバ107dおよびエッジサーバ105cは、図2の分析サーバ109、Webカメラ104a、センササーバ107およびエッジサーバ105aと同様に構成することができる。
ゲートウェイサーバ106dは、加工部213g、管理部211g、データストア107d、管理データベース220gおよび送受信部212gを備える。データストア107dは、データ233g、234gを保持する。データ233g、234gは、加工済みデータ231gと、メタデータ232gを備える。
加工部213g、データストア107gおよび送受信部212gは、図2の加工部213c、データストア107cおよび送受信部212cと同様に構成することができる。
管理部211gは、ゲートウェイサーバ106dが受信したデータをデータストア107gに格納する。また、管理部211gは、他のフィールド101e〜101gからのデータ取得要求を送受信部212gを介して受信する。また、管理部211gは、エッジサーバ105c、105dから受信したデータや、データストア107gから読み出したデータ233g、234gを、送受信部212gを介して、他のフィールド101e〜101gに送信する。また、管理部211gは、加工部213gでの加工処理に基づいて、加工済みデータ231gのメタデータ232gを生成する。メタデータ232gは、加工済みデータ231gの来歴を示すことができる。
管理データベース220gは、管理部211gの管理情報を保持する。管理データベース220gは、アドレス変換テーブル223g、グローバルアドレス221g、インデックステーブル222gおよびノードテーブル224gを備える。グローバルアドレス221gは、WAN回線108上におけるゲートウェイサーバ106dのグローバルなアドレスである。他のフィールド101e〜101gは、このグローバルアドレス221g宛にデータ取得要求を送信する。インデックステーブル222gは、管理部211gがデータストア107g上のデータ233g、234gにアクセスするためのインデックス情報を保持する。アドレス変換テーブル223gは、グローバルアドレス221gと、フィールド101d内部の管理部211gのアクセス用のローカルアドレスとの対応関係を保持する。ノードテーブル224gは、相互に連携する他のフィールド101e〜101gのゲートウェイサーバの管理部のアクセス情報を保持する。送受信部212gは、ゲートウェイサーバ106dに送受信されるデータを仲介する。
図15は、第2実施形態に係るデータ管理システムのデータ収集処理シーケンスを示すブロック図である。
図15において、生成部213dはセンサデータを生成し(S1501)、センササーバ107dの送受信部212eがセンサデータを送信する(S1502)。
次に、エッジサーバ105cの送受信部212fは、送受信部212eから送信されたセンサデータを受信する(S1503)。
次に、エッジサーバ105cの管理部211fはセンサデータを受け取り(S1504)、加工部213fを通して加工処理する(S1505)。そして、管理部211fは、加工済みデータ231fの品質情報をメタデータ232fとして加工済みデータ231fに付与する(S1506)。
次に、管理部211fは、加工済みデータ231fをメタデータ232fとともにデータストア107fに格納し(S1507)、送受信部212fを介してデータを送信する(S1508)。
次に、ゲートウェイ106dの送受信部212gは送受信部212fから送信されたデータを受信する(S1509)。
次に、ゲートウェイ106dの管理部211gは送受信部212gで受信されたデータを受け取り(S1510)、加工部213gを通して再加工処理する(S1511)。そして、管理部211gは、加工済みデータ231gの品質情報をメタデータ232gとして加工済みデータ231gに付与する(S1512)。次に、管理部211gは、加工済みデータ231gをメタデータ232gとともにデータストア107dに格納する(S1513)。
図16は、第2実施形態に係るデータ管理システムのデータ取得処理シーケンスを示すブロック図である。
図16において、フィールド101dの分析サーバ109dの分析部201dがデータを要求すると(S1601)、送受信部212eはゲートウェイサーバ106dにデータ要求を送信する(S1602)。
次に、フィールド101dのゲートウェイサーバ106dの送受信部212gがデータ要求を受信すると(S1603)、ゲートウェイサーバ106dの管理部211gがデータ要求で要求されたデータを特定する(S1604)。この時、管理部211gは、データ要求で要求されたデータがゲートウェイサーバ106dの備えるデータストア107gにないと判定した場合、他のフィールド101e〜101gにデータ要求を送信する。
管理部211gは、他のフィールド101e〜101gにデータ要求するのに先立ち、他のフィールド101e〜101gが保持するデータのメタデータおよびデータ来歴を要求する(S1605)。この時、管理部211gは、送受信部212gを介して、メタデータおよびデータ来歴の要求を他のフィールド101e〜101gのゲートウェイサーバ106eに送信する。
他のフィールド101e〜101gのゲートウェイサーバ106eは、送受信部212jを介して、フィールド101dからのメタデータおよびデータ来歴の要求を受信する(S1607)。そして、管理部211jは、データ要求の条件を満たすメタデータまたはデータ来歴があれば、データストア107gから取得し(S1608)、応答する(S1609)。応答メッセージは、送受信部212jを介して、フィールド101dのゲートウェイサーバ106dに送信される(S1610)。
次に、フィールド101dのゲートウェイサーバ106dは、送受信部212gを介して、応答メッセージを他のフィールド101e〜101gから受信する(S1611)。
次に、管理部211gは、S1603で受信したデータ要求で指定されたデータを特定し(S1612)、S1611で受信した応答メッセージから、データ要求を満たすデータが存在する他のフィールド101e〜101gを特定する(S1613)。
次に、管理部211gは、特定した他のフィールド101e〜101gに対して、データ取得要求を送信する(S1614)。このデータ取得要求は、送受信部212gを介して他のフィールド101e〜101gに送信される(S1615)。
フィールド101dからのデータ取得要求は送受信部212jを介して受信される(S1616)。そして、管理部211jは、フィールド101e〜101g内でデータを保持するデータソースを特定し(S1617)、データ取得要求を送信する(S1618)。このデータ取得要求は、送受信部212jを介して送信される(S1619)。
フィールド101e〜101gのエッジサーバ105eの送受信部212hがデータ取得要求を受信すると(S1620)、管理部211hは、データ取得要求で指定されたデータがあるか否かを判定する(S1621)。管理部211hは、そのデータがあると判定した場合はデータストア107fから、そのデータを取得し(S1622)、送受信部212hを介してデータを送信する(S1623)。
次に、ゲートウェイサーバ106eの送受信部212jがデータを受信すると(S1624)、管理部211jはデータを検証して(S1625)、データを応答する(S1626)。フィールド101dからのデータ要求に対する応答は、送受信部212jを介して、フィールド101dのゲートウェイサーバ106dに送信される(S1627)。
次に、フィールド101dのゲートウェイサーバ106dの送受信部212gは、応答メッセージを受信すると、管理部211gがデータストア107dに格納し(S1629)、送受信部212gを介して分析サーバ109dに応答される(S1630)。
次に、分析サーバ109dの送受信部212eが応答メッセージを受信すると(S1631)、分析部201dは、応答されたデータを分析処理に利用する(S1632)。
なお、上述した第2実施形態では、フィールド101dは、他のフィールド101e〜101gにデータ要求するのに先立ち、他のフィールド101e〜101gが保持するデータのデータ来歴を要求する方法について説明した。フィールド101dは、自己のフィールド101edが保持するデータのデータ来歴を保持するとともに、他のフィールド101e〜101gが保持するデータのデータ来歴を全て保持するようにしてもよい。この時、フィールド101dは、他のフィールド101e〜101gにデータ要求するのに先立ち、他のフィールド101e〜101gが保持するデータのデータ来歴を要求する処理を省略することができる。
(第3実施形態)
図17は、第3実施形態に係るデータ管理システムの構成を示すブロック図である。
図17において、データ管理システムには、複数のフィールド101p〜101rとセンタ102aとが設けられている。フィールド101p〜101rとセンタ102aとはWAN回線108を介して接続されている。
フィールド101pには、センサ104p、センササーバ107p、エッジサーバ105p、105q、ゲートウェイサーバ106p、データストア107p、107qが設けられている。他のフィールド101q、101rも同様に構成することができる。
センサ104pおよびセンササーバ107pは、図1のセンサ104およびセンササーバ107と同様に構成することができる。
エッジサーバ105p、105qは、加工部213pおよび管理部211pを備える。加工部213pは、エッジサーバ105pが受信したデータを加工処理し、加工済みデータ231pを生成する。
管理部211pは、エッジサーバ105pが受信したデータをデータストア107pに格納する。また、管理部211pは、ハブ・管理サーバ110aからのデータ取得要求を受信する。また、管理部211pは、センササーバ107pから受信したデータや、データストア107pから読み出した加工済みデータ231pを管理部211qに送信する。また、管理部211pは、加工部213pでの加工処理に基づいて、加工済みデータ231pのメタデータ232pを生成する。メタデータ232pは、加工済みデータ231pの来歴を示すことができる。
さらに、管理部211pは、ハブ・管理サーバ110aからのデータ来歴の取得要求に基づいて、そのデータ来歴を含むメタデータ232pをデータストア107bから読み出し、ゲートウェイサーバ106pを介してハブ・管理サーバ110aに送信する。データストア107pは、加工済みデータ231pと、メタデータ232pを保持する。
ゲートウェイサーバ106pは、加工部213qおよび管理部211qを備える。加工部213qは、ゲートウェイサーバ106pが受信したデータを加工処理し、加工済みデータ231qを生成する。
管理部211qは、ゲートウェイサーバ106pが受信したデータをデータストア107qに格納する。また、管理部211qは、ハブ・管理サーバ110aからのデータ取得要求を受信する。また、管理部211qは、エッジサーバ105p、105qから受信したデータや、データストア107qから読み出した加工済みデータ231qをハブ・管理サーバ110aに送信する。また、管理部211qは、加工部213qでの加工処理に基づいて、加工済みデータ231qのメタデータ232qを生成する。メタデータ232qは、加工済みデータ231qの来歴を示すことができる。
さらに、管理部211qは、ハブ・管理サーバ110aからのデータ来歴の取得要求に基づいて、そのデータ来歴を含むメタデータ232qをデータストア107qから読み出し、WAN回線108を介してハブ・管理サーバ110aに送信する。データストア107pq、加工済みデータ231qと、メタデータ232qを保持する。
センタ102aには、分析サーバ109およびハブ・管理サーバ110aが設けられている。分析サーバ109は、複数の分析端末103a、103bから入力された分析アプリケーションを実行することで、データ分析A、Bを行う。
ハブ・管理サーバ110aは、複数のフィールド101p〜101rからセンタ102aに送信されたデータをセンタ102a内の格納先や活用先アプリケーションに転送する。また、ハブ・管理サーバ110aは、分析サーバ109などで実行されるアプリケーションからのデータ要求を受けて、指定されたデータ要件のデータを応答する。さらに、ハブ・管理サーバ110aは、データに付加されているメタデータに基づいて、データの来歴を管理する。ハブ・管理サーバ110aは、このデータの来歴に基づいて、新たなデータ要件のデータをフィールド101p〜101rから取得する。
また、ハブ・管理サーバ110aは、フィールド101p〜101rにデータ要求するのに先立ち、フィールド101p〜101rが保持するメタデータ232p、232qを取得する。各メタデータ232p、232qは、加工済みデータ231p、231qのデータ来歴を含むことができる。
そして、ハブ・管理サーバ110aは、分析サーバ109からのデータ要求で指定されたデータ要件を満たすデータソースのデータをデータ来歴の中から特定し、その特定したデータソースに遡ることができる。これにより、ハブ・管理サーバ110aは、分析サーバ109からのデータ要求で指定されたデータ要件を満たす加工済みデータ231p、231qを、WAN回線108を介してフィールド101p〜101rから取得することができる。
ここで、ハブ・管理サーバ110aは、フィールド101p〜101rにデータ要求するのに先立ち、フィールド101p〜101rが保持するデータ来歴をフィールド101p〜101rに要求することにより、各フィールド101p〜101rで加工されたデータの全てのデータ来歴をセンタ102a側で保持する必要をなくすことができる。
(第4実施形態)
図18は、第4実施形態に係るデータ管理システムの構成を示すブロック図である。
図18において、データ管理システムには、複数のフィールド101s〜101uとセンタ102bとが設けられている。フィールド101s〜101uとセンタ102bとはWAN回線108を介して接続されている。
フィールド101sには、センサ104s、105t、センササーバ107s、エッジサーバ105s、105t、ゲートウェイサーバ106sおよびデータストア107s、107tが設けられている。他のフィールド101t、101uも同様に構成することができる。
センサ104s、104tは、モノの状態および状況をセンシングし、センシングデータを生成するデータソースである。センサ104sは高解像データを生成し、センサ104tは低解像データを生成することができる。
センササーバ107sは、センサ104s、104tからセンシングデータを受信して、一時的に格納したり、整形加工して送信したりする。
エッジサーバ105s、105tは、センシングデータを整形加工する。エッジサーバ105a、105bは、整形加工したデータをデータストア107sに格納する。例えば、エッジサーバ105s、105tは、高解像度の元データを整形加工することで中解像度の加工済みデータを生成し、データストア107sに格納することができる。さらに、エッジサーバ105s、105tは、低解像度の元データを整形加工することで中解像度の補間済みデータを生成し、データストア107sに格納することができる。
ゲートウェイサーバ106sは、フィールド101sからセンタ102bにデータを送信する。この時、送信タイミングを制御してセンタ102bにデータを送信したり、内部でデータを整形加工してセンタ102bに送信することができる。ゲートウェイサーバ106sは、整形加工したデータをデータストア107tに格納する。例えば、ゲートウェイサーバ106sは、中解像度の加工済みデータを整形加工することで低解像度の再加工済みデータを生成し、データストア107tに格納することができる。さらに、ゲートウェイサーバ106sは、中解像度の補間済みデータを整形加工することで高解像度の再補間済みデータを生成し、データストア107tに格納することができる。
センタ102bには、分析サーバ109、ハブ・管理サーバ110bおよびデータレイク111bが設けられている。分析サーバ109は、複数の分析端末103a、103bから入力された分析アプリケーションを実行することで、データ分析A、Bを行う。
ハブ・管理サーバ110bは、複数のフィールド101s〜101uからセンタ102bに送信されたデータをセンタ102b内の格納先や活用先アプリケーションに転送する。また、ハブ・管理サーバ110bは、分析サーバ109などで実行されるアプリケーションからのデータ要求を受けて、指定されたデータ要件のデータを応答する。さらに、ハブ・管理サーバ110bは、データに付加されているメタデータに基づいて、データ来歴を管理する。このデータ来歴は、データのケーパビリティを示すことができる。ハブ・管理サーバ110bは、このデータの来歴に基づいて、新たなデータ要件のデータをフィールド101s〜101uから取得することができる。
データレイク111bは、フィールド101s〜101uから送信されたデータを格納し、データ取得要求に応じて格納データを取り出すことができる。
ここで、ハブ・管理サーバ110はデータの来歴を管理することで、データ量やデータ品質を落とす前のデータソースを辿ることができる。このため、データソースに遡ってフィールド101a〜101cからデータを再取得することができ、新たなデータ要件のデータを追加で取得することができる。
また、ハブ・管理サーバ110はデータの来歴を管理することで、データ量やデータ品質の低いデータソースまで辿ることなく、データソースの下流側でデータ量やデータ品質の高いデータを再取得することができ、新たなデータ要件のデータを追加で取得することができる。
また、データソースに遡ってフィールド101s〜101uからデータを再取得する前は、データ量やデータ品質を落としたデータをデータレイク111bに保持することができる。そして、データ量やデータ品質を落とす前のデータがセンタ102bで必要になった時に新たなデータ要件のデータをフィールド101s〜101uから追加で取得することにより、WAN回線108にかかるデータ伝送の負荷を低減し、WAN回線108の通信コストを抑えることができる。
例えば、センタ102bでは、センサ104sのセンサデータについては低解像度の再加工済みデータをデータレイク111bに保持し、センサ104tのセンサデータについては低解像度の元データをデータレイク111bに保持することができる。そして、センサ104sのセンサデータについて、高解像度の元データがセンタ102b側で必要になった時に、センササーバ107sまで辿ることで高解像度の元データを取得することができる。また、センサ104tのセンサデータについて、高解像度の再補間済みデータがセンタ102b側で必要になった時に、センササーバ107sまで辿ることなく、ゲートウェイサーバ106sから高解像度の再補間済みデータを取得することができる。