(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023047100
(43)【公開日】2023-04-05
(54)【発明の名称】情報処理装置、情報処理方法、及び情報処理プログラム
(51)【国際特許分類】
H04W 28/06 20090101AFI20230329BHJP
G08C 15/06 20060101ALI20230329BHJP
H04W 4/38 20180101ALI20230329BHJP
【FI】
H04W28/06 110
G08C15/06 J
H04W4/38
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2021156036
(22)【出願日】2021-09-24
(71)【出願人】
【識別番号】000003001
【氏名又は名称】帝人株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(71)【出願人】
【識別番号】522193547
【氏名又は名称】株式会社エー・アンド・デイ
(71)【出願人】
【識別番号】390010308
【氏名又は名称】東芝デベロップメントエンジニアリング株式会社
(71)【出願人】
【識別番号】510108951
【氏名又は名称】公立大学法人広島市立大学
(71)【出願人】
【識別番号】514020389
【氏名又は名称】TIS株式会社
(74)【上記3名の代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】齋藤 龍則
(72)【発明者】
【氏名】松野 孝也
(72)【発明者】
【氏名】高橋 慎一
(72)【発明者】
【氏名】藤原 貴広
(72)【発明者】
【氏名】上田 康弘
(72)【発明者】
【氏名】田中 宏和
(72)【発明者】
【氏名】清家 巧
(72)【発明者】
【氏名】吉見 真聡
(72)【発明者】
【氏名】宮本 励
【テーマコード(参考)】
2F073
5K067
【Fターム(参考)】
2F073AA01
2F073AA02
2F073AB03
2F073BB01
2F073BB04
2F073BC01
2F073BC02
2F073CC03
2F073CC09
2F073CD11
2F073CD17
2F073DD07
2F073DE08
2F073EE13
2F073FF01
2F073FG01
2F073FG02
2F073FG04
2F073GG01
2F073GG06
2F073GG08
5K067BB27
5K067DD17
5K067EE02
(57)【要約】 (修正有)
【課題】データ形式の異なるセンサデータを適切に読み出す情報処理装置、方法及びプログラムを提供する。
【解決手段】情報処理装置は、センサ装置が検出したセンサデータと、センサデータに付加される属性情報とを含むコンテナのフォーマットに対応するコンテナを受信する受信部と、受信したコンテナが属性情報の構造を示す構造情報を含まないフォーマットに対応する第1コンテナ又は構造情報を含むフォーマットに対応する第2コンテナの何れかを判定する判定部と、判定したコンテナの種類に応じてコンテナに含まれるデータを読み出す読出し部と、を備える。読出し部は、受信したコンテナが第1コンテナの場合には、第1コンテナとは別に定義された構造情報を読み出し、構造情報に従って第1コンテナに含まれるデータを読み出し、受信したコンテナが第2コンテナの場合には、第2コンテナに含まれる構造情報に従って第2コンテナに含まれるデータを読み出す。
【選択図】
図7
【特許請求の範囲】
【請求項1】
センサ装置によって検出されたセンサデータと、前記センサデータに付加される属性情報とを含むコンテナのフォーマットに対応する前記コンテナを受信する受信部と、
前記受信部が受信した前記コンテナが、前記属性情報の構造を示す構造情報を含まないフォーマットである第1フォーマットに対応する第1コンテナまたは前記構造情報を含むフォーマットである第2フォーマットに対応する第2コンテナのいずれであるかを判定する判定部と、
前記判定部が判定した前記コンテナの種類に応じて前記コンテナに含まれるデータを読み出す読出し部と、
を備え、
前記読出し部は、
前記判定部によって前記受信部が受信した前記コンテナが前記第1コンテナであると判定された場合には、前記第1コンテナとは別に定義された前記構造情報を読み出し、読み出した前記構造情報に従って、前記第1コンテナに含まれるデータを読み出し、
前記判定部によって前記受信部が受信した前記コンテナが前記第2コンテナであると判定された場合には、前記第2コンテナに含まれる前記構造情報に従って、前記第2コンテナに含まれるデータを読み出す、
情報処理装置。
【請求項2】
前記第1コンテナは、前記属性情報として、前記構造情報を識別可能なデータ識別情報を含み、
前記読出し部は、
前記判定部によって前記受信部が受信した前記コンテナが前記第1コンテナであると判定された場合には、前記第1コンテナに含まれる前記データ識別情報を読み出し、読み出した前記データ識別情報によって識別される前記構造情報を読み出し、読み出した前記構造情報に従って、前記第1コンテナに含まれるデータを読み出す、
請求項1に記載の情報処理装置。
【請求項3】
前記第1コンテナは、前記属性情報をデジタルデータに変換した数値である属性値および前記センサデータに関する情報をデジタルデータに変換した数値であるセンサ値を含み、
前記構造情報は、前記属性情報を識別可能な属性識別情報および前記属性値のバイト単位の長さを示す属性長情報を含み、
前記第2コンテナは、前記構造情報、前記属性値および前記センサ値を含む、
請求項1または2に記載の情報処理装置。
【請求項4】
前記構造情報は、前記属性情報の個数を示す属性数情報を含む、
請求項1~3のいずれか1つに記載の情報処理装置。
【請求項5】
前記第1コンテナは、前記属性情報として、前記センサデータに関する情報をデジタルデータに変換した数値であるセンサ値のバイト単位の長さを示すセンサ長情報を含み、
前記読出し部は、
前記判定部によって前記受信部が受信した前記コンテナが前記第1コンテナであると判定された場合には、前記第1コンテナに含まれる前記センサ長情報を読み出し、読み出した前記センサ長情報に従って、前記第1コンテナに含まれる前記センサ値を読み出す、
請求項1~4のいずれか1つに記載の情報処理装置。
【請求項6】
前記受信部は、
前記第1コンテナであることを示す第1コンテナ識別情報または前記第2コンテナであることを示す第2コンテナ識別情報をヘッダ領域に含む前記コンテナを受信し、
前記判定部は、
前記ヘッダ領域に前記第1コンテナ識別情報が含まれる場合は、前記受信部が受信した前記コンテナが前記第1コンテナであると判定し、
前記ヘッダ領域に前記第2コンテナ識別情報が含まれる場合は、前記受信部が受信した前記コンテナが前記第2コンテナであると判定する、
請求項1~5のいずれか1つに記載の情報処理装置。
【請求項7】
コンピュータが実行する情報処理方法であって、
センサ装置によって検出されたセンサデータと、前記センサデータに付加される属性情報とを含むコンテナのフォーマットに対応する前記コンテナを受信する受信工程と、
前記受信工程が受信した前記コンテナが、前記属性情報の構造を示す構造情報を含まないフォーマットである第1フォーマットに対応する第1コンテナまたは前記構造情報を含むフォーマットである第2フォーマットに対応する第2コンテナのいずれであるかを判定する判定工程と、
前記判定工程が判定した前記コンテナの種類に応じて前記コンテナに含まれるデータを読み出す読出し工程と、
を含み、
前記読出し工程は、
前記判定工程によって前記受信工程が受信した前記コンテナが前記第1コンテナであると判定された場合には、前記第1コンテナとは別に定義された前記構造情報を読み出し、読み出した前記構造情報に従って、前記第1コンテナに含まれるデータを読み出し、
前記判定工程によって前記受信工程が受信した前記コンテナが前記第2コンテナであると判定された場合には、前記第2コンテナに含まれる前記構造情報に従って、前記第2コンテナに含まれるデータを読み出す、
情報処理方法。
【請求項8】
センサ装置によって検出されたセンサデータと、前記センサデータに付加される属性情報とを含むコンテナのフォーマットに対応する前記コンテナを受信する受信手順と、
前記受信手順が受信した前記コンテナが、前記属性情報の構造を示す構造情報を含まないフォーマットである第1フォーマットに対応する第1コンテナまたは前記構造情報を含むフォーマットである第2フォーマットに対応する第2コンテナのいずれであるかを判定する判定手順と、
前記判定手順が判定した前記コンテナの種類に応じて前記コンテナに含まれるデータを読み出す読出し手順と、
をコンピュータに実行させ、
前記読出し手順は、
前記判定手順によって前記受信手順が受信した前記コンテナが前記第1コンテナであると判定された場合には、前記第1コンテナとは別に定義された前記構造情報を読み出し、読み出した前記構造情報に従って、前記第1コンテナに含まれるデータを読み出し、
前記判定手順によって前記受信手順が受信した前記コンテナが前記第2コンテナであると判定された場合には、前記第2コンテナに含まれる前記構造情報に従って、前記第2コンテナに含まれるデータを読み出す、
情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。
【背景技術】
【0002】
近年、IoT(Internet of Things)の普及により、IoT機器に搭載された各種センサが検出したセンサデータを活用する技術が知られている。例えば、人体とその周辺の数メートルの範囲でのネットワークであるボディーエリアネットワーク(Body Area Network)において複数の生体センサ装置によって検出された複数のセンサデータを統合活用するための技術が知られている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、一般的に、センサ装置から出力されたセンサデータをセンサ装置からクラウドサーバに送信する場合、センサデータの通信に使用可能な電力量は、センサ装置側に近いほど少なく(低電力量)、クラウド側に近いほど多くなる(高電力量)。また、センサデータの通信に使用される通信経路における通信速度は、センサ装置側に近いほど低く(低転送速度)、クラウド側に近いほど速くなる(高転送速度)。このように、センサデータの通信に使用可能な電力量や通信速度等の通信資源の量(以下、リソースの量ともいう)は、センサ装置からクラウドサーバまでの通信経路の段階に応じて異なる。そこで、例えば、センサデータの送信元となるセンサ装置側ではリソースの量が少ないので少ない情報量でセンサデータを送信し、センサデータの受信先となるクラウドサーバ側ではリソースの量が多いのでリッチな情報量でセンサデータを受信するといったように、通信資源の量に応じて適切にセンサデータを受け渡すことを可能とする仕組みが望まれている。また、このように異なるデータ形式のセンサデータが混在する環境において、データ形式の異なるセンサデータをそれぞれ適切に読み出す仕組みが望まれている。
【0005】
そこで、本開示では、データ形式の異なるセンサデータをそれぞれ適切に読み出すことができる情報処理装置、情報処理方法及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の一態様に係る情報処理装置は、センサ装置によって検出されたセンサデータと、前記センサデータに付加される属性情報とを含むコンテナのフォーマットに対応する前記コンテナを受信する受信部と、前記受信部が受信した前記コンテナが、前記属性情報の構造を示す構造情報を含まないフォーマットである第1フォーマットに対応する第1コンテナまたは前記構造情報を含むフォーマットである第2フォーマットに対応する第2コンテナのいずれであるかを判定する判定部と、前記判定部が判定した前記コンテナの種類に応じて前記コンテナに含まれるデータを読み出す読出し部と、を備え、前記読出し部は、前記判定部によって前記受信部が受信した前記コンテナが前記第1コンテナであると判定された場合には、前記第1コンテナとは別に定義された前記構造情報を読み出し、読み出した前記構造情報に従って、前記第1コンテナに含まれるデータを読み出し、前記判定部によって前記受信部が受信した前記コンテナが前記第2コンテナであると判定された場合には、前記第2コンテナに含まれる前記構造情報に従って、前記第2コンテナに含まれるデータを読み出す。
【0007】
本発明の一態様に係る情報処理方法は、コンピュータが実行する情報処理方法であって、センサ装置によって検出されたセンサデータと、前記センサデータに付加される属性情報とを含むコンテナのフォーマットに対応する前記コンテナを受信する受信工程と、前記受信工程が受信した前記コンテナが、前記属性情報の構造を示す構造情報を含まないフォーマットである第1フォーマットに対応する第1コンテナまたは前記構造情報を含むフォーマットである第2フォーマットに対応する第2コンテナのいずれであるかを判定する判定工程と、前記判定工程が判定した前記コンテナの種類に応じて前記コンテナに含まれるデータを読み出す読出し工程と、を含み、前記読出し工程は、前記判定工程によって前記受信工程が受信した前記コンテナが前記第1コンテナであると判定された場合には、前記第1コンテナとは別に定義された前記構造情報を読み出し、読み出した前記構造情報に従って、前記第1コンテナに含まれるデータを読み出し、前記判定工程によって前記受信工程が受信した前記コンテナが前記第2コンテナであると判定された場合には、前記第2コンテナに含まれる前記構造情報に従って、前記第2コンテナに含まれるデータを読み出す。
【0008】
本発明の一態様に係る情報処理プログラムは、センサ装置によって検出されたセンサデータと、前記センサデータに付加される属性情報とを含むコンテナのフォーマットに対応する前記コンテナを受信する受信手順と、前記受信手順が受信した前記コンテナが、前記属性情報の構造を示す構造情報を含まないフォーマットである第1フォーマットに対応する第1コンテナまたは前記構造情報を含むフォーマットである第2フォーマットに対応する第2コンテナのいずれであるかを判定する判定手順と、前記判定手順が判定した前記コンテナの種類に応じて前記コンテナに含まれるデータを読み出す読出し手順と、をコンピュータに実行させ、前記読出し手順は、前記判定手順によって前記受信手順が受信した前記コンテナが前記第1コンテナであると判定された場合には、前記第1コンテナとは別に定義された前記構造情報を読み出し、読み出した前記構造情報に従って、前記第1コンテナに含まれるデータを読み出し、前記判定手順によって前記受信手順が受信した前記コンテナが前記第2コンテナであると判定された場合には、前記第2コンテナに含まれる前記構造情報に従って、前記第2コンテナに含まれるデータを読み出す。
【発明の効果】
【0009】
本発明によれば、データ形式の異なるセンサデータをそれぞれ適切に読み出すことを可能とすることができる。
【図面の簡単な説明】
【0010】
【
図1】
図1は、実施形態に係る情報処理システムの構成例を示す図である。
【
図2】
図2は、実施形態に係る情報処理システムによる情報処理の概要を示す図である。
【
図3】
図3は、実施形態に係るコンテナの概念と表現形式を示す図である。
【
図4】
図4は、実施形態に係る属性情報と構造情報の関係を示す図である。
【
図5】
図5は、実施形態に係るコンテナの構造を示す図である。
【
図6】
図6は、実施形態に係るP型コンテナの構造と構造情報の関係を示す図である。
【
図7】
図7は、実施形態に係る情報処理装置の構成例を示す図である。
【
図8】
図8は、実施形態に係るP型コンテナの処理手順を示すフローチャートである。
【
図9】
図9は、実施形態に係るF型コンテナの処理手順を示すフローチャートである。
【
図10】
図10は、センサ装置からクラウドサーバへセンサデータを収集する処理手順の一例を示す図である。
【
図11】
図11は、情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【0011】
以下に、本願に係る情報処理装置、情報処理方法及び情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法及び情報処理プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【0012】
(実施形態)
〔1.情報処理システムの構成例〕
図1は、実施形態に係る情報処理システムの構成例を示す図である。情報処理システム1は、センサ装置10と、情報処理装置100と、構造情報レポジトリ200と、クラウドサーバ300を備える。センサ装置10と、情報処理装置100と、構造情報レポジトリ200と、クラウドサーバ300とは所定のネットワークNを介して、有線または無線により通信可能に接続される。なお、
図1に示す情報処理システム1には、任意の数のセンサ装置10と、任意の数の情報処理装置100と、任意の数の構造情報レポジトリ200と、任意の数のクラウドサーバ300が含まれてもよい。
【0013】
図2は、実施形態に係る情報処理システムによる情報処理の概要を示す図である。センサ装置10は、センサ素子を備え、センサ素子が検出した電気信号(アナログ信号)をデジタルデータに変換して出力する情報処理装置である。なお、以下では、センサ素子の測定対象となるデータのことセンサデータと記載する。言い換えると、センサデータとは、センサ装置10によって検出された測定対象に関する物理量(例えば、計測値など)のことを指す。また、センサ素子が検出した電気信号およびセンサ素子が検出した電気信号をAD変換したデジタルデータは、センサデータが形を変えたものなので、以下では、センサ素子が検出した電気信号またはセンサ素子が検出した電気信号をAD変換したデジタルデータのことをセンサデータと記載する場合がある。
【0014】
センサ装置10は、IoT機器に搭載される。具体的には、センサ装置10は、生体センサ素子を備える生体センサ装置であり、人体に装着可能なウェアラブルセンサであってよい。例えば、生体センサ装置であるセンサ装置10は、センサデータの一例として、人体の心電、心拍、脈拍、呼吸、脳波、体温、姿勢、活動量、加速度、におい、または筋電を示す電気信号を検出する。また、センサ装置10は、生体センサ素子が検出した電気信号(アナログ信号)をデジタルデータへとAD変換する。
【0015】
なお、センサ装置10は、環境センサ素子を備える環境センサ装置であってもよい。環境センサ装置であるセンサ装置10は、センサデータの一例として、環境の温度、湿度、照度、気圧、騒音、CO2濃度または紫外線を示す電気信号を検出する。また、センサ装置10は、環境センサ素子が検出した電気信号(アナログ信号)をデジタルデータへとAD変換する。
【0016】
また、センサ装置10は、検出した電気信号をAD変換したデジタルデータを情報処理装置100に送信する。具体的には、センサ装置10は、ネットワークN(
図1参照)を介して、デジタルデータを情報処理装置100に送信する。なお、
図2では、センサ装置10からのデジタルデータの入力を受け付け、後続(より上位の)の計算資源への通信機能を持つ計算資源をエッジコンピュータ(Edge Computer)と呼ぶ。
図2に示すエッジコンピュータは、
図1に示す情報処理装置100に相当する。以下では、エッジコンピュータのことを情報処理装置100と記載する。
【0017】
ここで、従来、センサ装置10から出力されるセンサデータのデータ構造は、非共通であることが一般的である。具体的には、センサデータのデータ構造は、センサ装置10の検出対象、センサ装置10を提供するセンサベンダ、センサ装置10である製品の種類、ならびにセンサデータを利用者に対して提供する方法または可視化する方法によって異なるのが一般的である。また、センサデータは、センサベンダによりいくつかの操作が加えられることで、多様な構造を持つ。
【0018】
また、従来、センサデータを送受信する際の通信方式も、非共通であることが一般的である。例えば、センサデータを有線によって送受信する場合、イーサネット(登録商標)(Ethernet(登録商標))、GPIO(General Purpose Input/Output)、またはI2C(Inter-Integrated Circuit)などの違いによって多様な通信方式が用いられる。
図2に示す例では、生体センサであるセンサ装置10によって検出されたセンサデータの通信方式の一例として、SmartBAN、BLE(Bluetooth(登録商標) Low Energy)、BT(Bluetooth(登録商標))、またはWi-Fi(登録商標)などの無線通信によってセンサデータを情報処理装置100に送信する場合を示す。
【0019】
上述したように、従来、センサデータを送受信する際の通信方式の違いや、センサデータのデータ構造の違いが存在するため、センサデータの取り扱いが困難な場合があった。例えば、従来は、異なる複数のセンサ装置10から出力される複数のセンサデータを組み合わせて利用したいような場合に、複数のセンサデータそれぞれのデータ構造が異なるため、複数のセンサデータを組み合わせて利用することが困難な場合があった。そこで、センサデータを送受信する際の通信方式の違いや、センサデータのデータ構造の違いを吸収可能な仕組みが望まれている。例えば、各種センサデータを共通のフォーマットで取り扱う技術が望まれている。
【0020】
これに対し、本願に係る情報処理装置100は、多種多様なセンサ装置10から出力されるセンサデータに共通して用いられるデータ構造(以下、フォーマットともいう)を提供可能とする。すなわち、情報処理装置100は、センサデータに関する標準化されたデータ構造を提供可能とする。具体的には、情報処理装置100は、センサ装置10によって検出されたセンサデータと、センサデータに付加される属性情報とを含むコンテナのフォーマットに対応するコンテナを生成する。ここで、コンテナのフォーマットとは、センサデータの流通時に使用される共通のフォーマットである。
【0021】
このように、情報処理装置100は、センサデータを共通のフォーマットに対応するコンテナに変換して、コンテナによってセンサデータの受け渡しを行う。これにより、情報処理装置100は、センサデータを送受信する際の通信方式の違いや、センサデータのデータ構造の違いに依存することなく、共通の方法でセンサデータを取り扱うことを可能にする。例えば、情報処理装置100は、センサデータを送受信するネットワーク経路上の計算機が、共通の論理的なインターフェイスでセンサデータを扱うことを可能とする。また、例えば、情報処理装置100は、異なる複数のセンサ装置10から出力される複数のセンサデータを組み合わせて利用する際の利便性を向上させることができる。
【0022】
図2に示すように、情報処理装置100は、Reader(入力機能)と、Unmarshaler(演算機能)と、Register(出力機能)の3つ機能を備える。Reader(入力機能)は、センサ装置10から受信したデジタルデータをコンテナに格納して出力する。具体的には、Readerは、センサ装置10からデジタルデータを受信すると、センサ装置10から受信したデジタルデータをコンテナのフォーマットに変換する。より具体的には、Readerは、デジタルデータを受信すると、受信したデジタルデータに属性情報を付加する。続いて、Readerは、センサ装置10から受信したデジタルデータと、デジタルデータに付加された属性情報とを含むコンテナを生成する。
【0023】
また、Unmarshaler(演算機能)は、Readerから出力されたコンテナに対する演算や加工を行う。例えば、Unmarshalerは、コンテナを入力として、コンテナに含まれるヘッダやペイロードに対して演算を行った結果を、新たなコンテナとして出力する。例えば、Unmarshalerは、SQL(Structured Query Language)を演算方法の定義として用いて、センサデータの平均値や最大値を計算する。また、Unmarshalerは、センサデータに対して、時間やデータ数による窓関数やフィルタを適用し、センサデータを定期的に集約してよい。また、Unmarshalerがコンテナを出力する際に、他のデータ交換形式への変換や、通信方式の変更(乗り換え:Hand Over)が行われることがある。
【0024】
構造情報レポジトリ200は、コンテナのデータを解釈するために必要なデータ(以下、構造情報と記載する場合がある)を格納、公開する。構造情報レポジトリ200は、複数の構造情報を蓄積する。構造情報は、ローカルファイルやネットワーク上のUnmarshalerが参照可能な場所に保管される。
【0025】
Unmarshalerは、コンテナの入力を受け付けると、入力されたコンテナのデータをヘッダ領域とペイロード領域に分割する。続いて、Unmarshalerは、構造情報レポジトリ200から構造情報を取得して、ヘッダ領域に格納された属性値とペイロード領域に格納された属性値を読み出す(Parsing)。なお、コンテナ自身に構造情報が記述されている場合もある(後述するF型コンテナ)。続いて、Unmarshalerは、属性値を読み出すと、1つ以上のコンテナの属性値群に対して演算を行う。
【0026】
Register(出力機能)は、Readerが生成したコンテナまたはUnmarshalerによる演算が適用されたコンテナの入力を受け付けて、出力先に合ったフォーマットのコンテナに変換した上で、後続の計算資源に出力する。例えば、Registerは、コンテナをクラウドサーバ300にアップロードして、コンテナやコンテナの演算結果をデータベースに蓄積する。また、Registerは、コンテナを利用者に対してフィードバックする。例えば、Registerは、コンテナのデータを可視化して表示する。
【0027】
クラウドサーバ300は、情報処理装置100からコンテナやコンテナの演算結果を受信する。クラウドサーバ300は、受信したコンテナやコンテナの演算結果をデータベースに蓄積する。
【0028】
〔2.コンテナのフォーマット〕
図3は、実施形態に係るコンテナの概念と表現形式を示す図である。
図3に示すように、コンテナ(Container)は、ヘッダ領域(Header)とペイロード領域(Payload)の2つの領域で構成される。コンテナを構成する領域の順序は固定で、ヘッダ領域、ペイロード領域の順にデータが配列される。
【0029】
ヘッダ領域は、センサ装置10から受信したデジタルデータ以外のデータ、例えば、デジタルデータに付加された属性情報を格納するコンテナの領域である。ヘッダ領域は、コンテナの種類を識別可能なコンテナ識別情報(Container Type)を含む。ペイロード領域は、センサ装置10から受信したデジタルデータを格納するコンテナの領域である。
【0030】
例えば、情報処理装置100は、温度センサであるセンサ装置10から、10分間の間に1分ごとに計測された10個の温度に対応する10個のデジタルデータを10分ごとに受信する。このとき、コンテナのペイロード領域には、10分間の間に1分ごとに計測された10個の温度に対応する10個のデジタルデータの数値の配列が格納される。例えば、各温度に対応するデジタルデータの数値のバイト長が1バイトである場合、コンテナのペイロード領域には、10個の温度に対応する10個のデジタルデータの数値の配列(1バイト×10個=10バイトのデータ)が格納される。
【0031】
図3に示すように、コンテナには2種類のフォーマット(表現形式ともいう)が存在する。2種類のフォーマットのうち、一方は、属性情報の構造を示す構造情報を含まないフォーマットであるP型(Pre-Defined Type)(以下、第1フォーマットともいう)である。また、他方は、属性情報の構造を示す構造情報を含むフォーマットであるF型(Flexible Type)(以下、第2フォーマットともいう)である。また、P型のコンテナ(以下、P型コンテナまたは第1コンテナともいう)とF型のコンテナ(以下、F型コンテナまたは第2コンテナともいう)は、相互に変換が可能である。
【0032】
図3に示すように、コンテナは、ヘッダ領域の先頭に、コンテナの種類を識別可能なコンテナ識別情報を格納する。コンテナ識別情報は、固定長2バイトのバイト列である。P型コンテナ(Type P Container)は、ヘッダ領域の先頭に、P型コンテナであることを示すP型コンテナ識別情報を格納する。また、P型コンテナは、ヘッダ領域のうち、コンテナ識別情報が格納された領域の後ろの領域に、属性情報をデジタルデータに変換した数値である属性値(AttrValue;Attribute Valueの略)を格納する。また、P型コンテナは、異なる複数の属性情報が存在する場合には、異なる複数の属性情報それぞれに対応する複数の属性値を並べた配列を格納する。また、P型コンテナは、ペイロード領域に、センサ装置10から受信したデジタルデータの数値であるセンサ値を格納する。
【0033】
また、F型コンテナ(Type F Container)は、ヘッダ領域の先頭に、F型コンテナであることを示すF型コンテナ識別情報を格納する。また、F型コンテナは、ヘッダ領域のうち、コンテナ識別情報が格納された領域の後ろの領域に、属性情報の個数を示す属性数情報(Attribute Count)を格納する。また、F型コンテナは、ヘッダ領域のうち、属性数情報が格納された領域の後ろの領域に、属性情報を識別可能な属性識別情報(AttrID;Attribute IDの略)、属性値のバイト単位の長さを示す属性長情報(AttrLen;Attribute Lengthの略)、および属性値をそれぞれ順番に格納する。また、P型コンテナと同様に、F型コンテナは、ペイロード領域に、センサ装置10から受信したデジタルデータの数値であるセンサ値を格納する。
【0034】
このように、P型コンテナは、属性値(AttrValue)のみをヘッダ領域に格納する。これに対して、F型コンテナは、属性値(AttrValue)とともに、属性識別情報(AttrID)と属性長情報(AttrLen)の組である構造情報をヘッダ領域に格納する点がP型コンテナと異なる。また、F型コンテナは、属性数情報(Attribute Count)をヘッダ領域に格納する点もP型コンテナと異なる。
【0035】
図4は、実施形態に係る属性情報と構造情報の関係を示す図である。属性情報(Attribute)は、属性識別情報(AttrID)、属性長情報(AttrLen)、および属性値(AttrValue)の3つの情報の組を含む。属性情報のうち、属性識別情報(AttrID)と属性長情報(AttrLen)の組を、構造情報(Attribute Meta)と呼ぶ。構造情報は、属性値に付加されたデータであるという意味で、属性メタ情報とも呼ばれる。なお、構造情報は、
図3に示した属性数情報(Attribute Count)を含んでよい。
【0036】
図5は、実施形態に係るコンテナの構造を示す図である。
図5に示す例では、コンテナのヘッダ領域は、必須領域(Required Fields)とオプション領域(Optional Attributes)によって構成される。ヘッダの必須領域は、属性情報の一例として、コンテナ識別情報(Container Type)、構造情報を識別可能なデータ識別情報(DataID)、およびコンテナ全体のバイト長を示すコンテナ長情報(Length)を格納する。ヘッダのオプション領域は、ペイロード領域に格納されたセンサデータに付加された属性情報を格納する。ヘッダのオプション領域は、コンテナの種類に応じて、配列の要素が異なる。
【0037】
データ識別情報(DataID)は、構造情報を識別可能な情報を示す固定長2バイトのバイト列である。なお、データ識別情報は、センサデータを検出したセンサ装置10を識別可能なセンサ装置識別子(例えば、固定長16バイト)、およびセンサ装置10のサービス情報や設定情報を識別可能な設定識別子(例えば、固定長5バイト)をさらに含んでよい。
【0038】
コンテナ長情報(Length)は、コンテナ全体のバイト長を示す固定長1バイトのバイト列である。また、ヘッダの必須領域は、コンテナ長情報の代わりに、センサデータをデジタルデータに変換した数値であるセンサ値のバイト長を示すセンサ長情報(固定長1バイト)を含んでよい。コンテナ長情報は、P型コンテナの場合は必須の属性となる。
【0039】
図6は、実施形態に係るP型コンテナの構造と構造情報の関係を示す図である。
図6に示すように、P型コンテナは、データ識別情報(DataID)と属性値(AttrValue)群をヘッダ領域に含む。P型コンテナは構造情報を含まないため、P型コンテナを読み出す場合、情報処理装置100は、データ識別情報(に含まれる構造情報識別子)によって識別される構造情報を構造情報レポジトリ200から取得する。情報処理装置100は、構造情報を取得すると、構造情報に含まれる属性識別情報(AttrID)によって識別される属性値をヘッダ領域から読み出す。具体的には、情報処理装置100は、構造情報に含まれる属性長情報(AttrLen)が示すバイト長のバイト列を読み出すことで、属性識別情報(AttrID)によって識別される属性値をヘッダ領域から読み出す。情報処理装置100は、属性識別情報(AttrID)の順番に属性値をヘッダ領域から読み出す。
【0040】
〔3.情報処理装置の構成例〕
図7は、実施形態に係る情報処理装置の構成例を示す図である。情報処理装置100は、通信部110と、記憶部120と、制御部130とを備える。なお、情報処理装置100は、情報処理装置100の管理者等から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示させるための表示部(例えば、液晶ディスプレイ等)を備えてもよい。
【0041】
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部110は、ネットワークNと有線または無線で接続され、例えば、センサ装置10や構造情報レポジトリ200やクラウドサーバ300との間で情報の送受信を行う。
【0042】
記憶部120は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。
【0043】
制御部130は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、情報処理装置100内部の記憶装置に記憶されている各種プログラム(情報処理プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部130は、コントローラであり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
【0044】
図7に示すように、制御部130は、受信部131と、判定部132と、読出し部133と、変換部134と、演算部135と、送信部136を有し、以下に説明する情報処理の作用を実現または実行する。なお、制御部130の内部構成は、
図7に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
【0045】
受信部131は、
図2で説明したReader(入力機能)を実行する。受信部131は、センサ装置10によって検出されたセンサデータを受信する。具体的には、受信部131は、デジタルデータを受信すると、受信したデジタルデータと、受信したデジタルデータに付加された属性情報とを含むコンテナのフォーマットに対応するコンテナを生成する。例えば、受信部131は、P型コンテナまたはF型コンテナを生成する。
【0046】
判定部132は、受信部131が受信したコンテナが、P型コンテナまたはF型コンテナのいずれであるかを判定する。具体的には、判定部132は、受信部131が受信したコンテナのヘッダ領域の先頭の2バイトのバイト列を読み出して、コンテナ識別情報を取得する。判定部132は、取得したコンテナ識別情報がP型コンテナ識別情報である場合は、受信部131が受信したコンテナがP型コンテナであると判定する。一方、判定部132は、取得したコンテナ識別情報がF型コンテナ識別情報である場合は、受信部131が受信したコンテナがF型コンテナであると判定する。
【0047】
読出し部133は、コンテナのデータを読み出す。具体的には、読出し部133は、コンテナの先頭からデータストリームを読み出すことで(read in order)、コンテナのデータを読み出す。より具体的には、読出し部133は、コンテナのヘッダ領域のうち、先頭の2バイトのバイト列に続くバイト列の属性値を読み出すことで、属性情報の属性値を読み出す。
【0048】
図8は、実施形態に係るP型コンテナの処理手順を示すフローチャートである。
図8では、受信部131が、16進数で表現された「0x00000x01230a456789ab19191a…19」で示されるP型コンテナを受信する。判定部132は、受信部131が受信したコンテナのヘッダ領域の先頭の2バイトのバイト列の属性値(「0x0000」で示されるP型コンテナ識別情報)を読み出して、受信部131が受信したコンテナがP型コンテナであると判定する。
【0049】
読出し部133は、判定部132によって受信部131が受信したコンテナがP型コンテナであると判定された場合には、P型コンテナのヘッダの必須領域を読み出す。より具体的には、読出し部133は、ヘッダ領域の先頭の2バイトのバイト列の属性値(「0x0000」で示されるP型コンテナ識別情報)に続く2バイトのバイト列の属性値(「0x0123」で示されるデータ識別情報)を読み出して、読み出したデータ識別情報によって識別される構造情報を構造情報レポジトリ200(
図8に示す「Preset」)から読み出す。例えば、読出し部133は、データ識別情報を示すバイト列のバイト長(2バイト)、センサ長情報を示すバイト列のバイト長(1バイト)、およびタイムスタンプ(TimeStamp)を示すバイト列のバイト長(4バイト)を含む構造情報を読み出す。続いて、読出し部133は、読み出した構造情報に従って、ヘッダ領域の先頭から4バイトのバイト列に続く1バイトのバイト列の属性値(「0x0a」で示されるセンサ長情報)と4バイトのバイト列の属性値(「0x456789ab」で示されるタイムスタンプ)を読み出す。このようにして、読出し部133は、P型コンテナの先頭からヘッダ領域に相当する7バイトのバイト列の属性値を読み出す。
【0050】
続いて、読出し部133は、ヘッダ領域を読み出した場合には、ヘッダ領域に続くペイロード領域を読み出す。より具体的には、読出し部133は、P型コンテナの先頭からヘッダ領域に相当する7バイトのバイト列を読み出し、読み出した「0x0a」で示されるセンサ長情報に従って、ヘッダ領域の次のバイト列からセンサ長情報によって示される10バイトの長さのバイト列を読み出すことで、ペイロード領域のセンサ値(「0x19191a…19」)を読み出す。
【0051】
図9は、実施形態に係るF型コンテナの処理手順を示すフローチャートである。
図9では、受信部131が、16進数で表現されたF型コンテナを受信する。判定部132は、受信部131が受信したコンテナのヘッダ領域の先頭の2バイトのバイト列の属性値(「0x0505」で示されるF型コンテナ識別情報)を読み出して、受信部131が受信したコンテナがF型コンテナであると判定する。
【0052】
読出し部133は、判定部132によって受信部131が受信したコンテナがF型コンテナであると判定された場合には、F型コンテナのヘッダ領域に含まれる構造情報を読み出す。より具体的には、読出し部133は、ヘッダ領域の先頭の2バイトのバイト列の属性値(「0x0505」で示されるF型コンテナ識別情報)に続くデータ識別情報を示すバイト列のバイト長(2バイト)を読み出す。続いて、読出し部133は、データ識別情報を示すバイト列のバイト長(2バイト)に続く2バイトのバイト列の属性値(「0x0123」で示されるデータ識別情報)を読み出す。続いて、読出し部133は、2バイトのバイト列の属性値(「0x0123」で示されるデータ識別情報)に続くセンサ長情報を示すバイト列のバイト長(1バイト)を読み出す。続いて、読出し部133は、センサ長情報を示すバイト列のバイト長(1バイト)に続く1バイトのバイト列の属性値(「0x0a」で示されるセンサ長情報)を読み出す。続いて、読出し部133は、1バイトのバイト列の属性値(「0x0a」で示されるセンサ長情報)に続くタイムスタンプ(TimeStamp)を示すバイト列のバイト長(4バイト)を読み出す。続いて、読出し部133は、タイムスタンプ(TimeStamp)を示すバイト列のバイト長(4バイト)に続く4バイトバイト列の属性値(「0x456789ab」で示されるタイムスタンプ)を読み出す。このようにして、読出し部133は、F型コンテナに含まれる構造情報に従って、F型コンテナの先頭からヘッダ領域に相当するバイト列の属性値を読み出す。
【0053】
続いて、読出し部133は、ヘッダ領域を読み出した場合には、ヘッダ領域に続くペイロード領域を読み出す。より具体的には、読出し部133は、F型コンテナの先頭からヘッダ領域に相当するバイト列を読み出し、読み出した「0x0a」で示されるセンサ長情報に従って、ヘッダ領域の次のバイト列からセンサ長情報によって示される10バイトの長さのバイト列を読み出すことで、ペイロード領域のセンサ値(「0x19191a…19」)を読み出す。
【0054】
図10は、センサ装置10からクラウドサーバ300へセンサデータを収集する処理手順の一例を示す図である。
図10に示す例では、センサ装置10は、温度センサである。温度センサであるセンサ装置10は、1分ごとに計測した環境の温度データ(センサデータの一例)を10分に1回まとめて情報処理装置100に送信する。センサ装置10は、デジタルデータを情報処理装置100に送信する代わりに、デジタルデータをコンテナに変換し、変換したコンテナを情報処理装置100に送信してよい。例えば、センサ装置10は、センサデータをP型コンテナに変換する。続いて、センサ装置10は、P型コンテナを情報処理装置100に送信する。
【0055】
より具体的には、センサ装置10は、センサデータを情報処理装置100に送信する際に使用可能な電力量が第1閾値以下であり、使用可能な電力量が少ない環境であると判定する。センサ装置10は、使用可能な電力量が少ない環境であると判定した場合、データ量のより少ないP型コンテナを選択し、選択したP型コンテナを生成する。あるいは、センサ装置10は、センサデータを情報処理装置100に送信する際に送信する際に使用可能な通信経路における通信速度が第2閾値以下であり、使用可能な通信経路における通信速度が低い環境であると判定する。センサ装置10は、使用可能な通信経路における通信速度が低い環境であると判定した場合、データ量のより少ないP型コンテナを選択し、選択したP型コンテナを生成する。
【0056】
例えば、センサ装置10は、10分間に1分に1回測定した10個の温度データの値を16進数で表現した10個のセンサ値のバイト列をペイロード領域に格納したP型コンテナを生成する。
図10の左端に示す表の例では、センサ装置10は、「13:00」に測定された「25」度を示す「0x19」で表されるセンサ値、「13:01」に測定された「25」度を示す「0x19」で表されるセンサ値、「13:02」に測定された「26」度を示す「0x1a」で表されるセンサ値、・・・、および「13:09」に測定された「25」度を示す「0x19」で表されるセンサ値を並べた「0x19191a……19」で示されるセンサ値のバイト列をペイロード領域に格納したP型コンテナを生成する。
【0057】
また、センサ装置10は、属性情報として、データ識別情報を示すバイト列のバイト長(2バイト)、センサ長情報を示すバイト列のバイト長(1バイト)、およびタイムスタンプ(TimeStamp)を示すバイト列のバイト長(4バイト)を含む構造情報をデータ識別情報と対応付けて構造情報レポジトリ200に格納する。
【0058】
例えば、センサ装置10は、10分間に1分に1回測定した10個の温度データのうち、最も未来に取得された温度データ(10個目)の取得時刻(例えば、2021/06/24 13:09:00)を示すユニックスタイムをタイムスタンプに設定する。この場合、10個の温度データのうち残り9個の温度データの取得時刻は、タイムスタンプに設定されている時刻(例えば、2021/06/24 13:09:00)から1分ずつ過去に遡った時刻に対応する、というルールが予め決められているものとする。
【0059】
続いて、センサ装置10は、P型コンテナを生成すると、生成したP型コンテナを情報処理装置100に送信する。情報処理装置100の受信部131は、センサ装置10からP型コンテナを受信する。情報処理装置100の変換部134は、受信部131が受信したP型コンテナをF型コンテナに変換する。続いて、情報処理装置100の送信部136は、変換部134が変換したF型コンテナをクラウドサーバ300に送信する。
【0060】
より具体的には、変換部134は、センサデータをクラウドサーバ300に送信する際に使用可能な電力量が第1閾値を超え、使用可能な電力量が多い環境であると判定する。変換部134は、使用可能な電力量が多い環境であると判定した場合、P型コンテナをデータ量のより多いF型コンテナに変換する。あるいは、変換部134は、センサデータをクラウドサーバ300に送信する際に送信する際に使用可能な通信経路における通信速度が第2閾値を超え、使用可能な通信経路における通信速度が高い環境であると判定する。変換部134は、使用可能な通信経路における通信速度が高い環境であると判定した場合、P型コンテナをデータ量のより多いF型コンテナに変換する。
【0061】
例えば、変換部134は、受信部131が受信したP型コンテナのヘッダ領域の先頭の2バイトのバイト列の属性値(P型コンテナ識別情報)に続く2バイトのバイト列の属性値(「0x0123」で示されるデータ識別情報)を読み出して、読み出したデータ識別情報によって識別される構造情報を構造情報レポジトリ200から読み出す。例えば、変換部134は、データ識別情報を示すバイト列のバイト長(2バイト)、センサ長情報を示すバイト列のバイト長(1バイト)、およびタイムスタンプ(TimeStamp)を示すバイト列のバイト長(4バイト)を含む構造情報を読み出す。続いて、変換部134は、読み出した構造情報に従って、ヘッダ領域の先頭から4バイトのバイト列に続く1バイトのバイト列の属性値(「0x0a」で示されるセンサ長情報)と4バイトのバイト列の属性値(「0x456789ab」で示されるタイムスタンプ)を読み出す。続いて、変換部134は、読み出した構造情報に基づいて、P型コンテナを構造化することで、P型コンテナをF型コンテナに変換する。また、変換部134は、ヘッダ領域の次のバイト列からセンサ長情報によって示される10バイトの長さのバイト列を読み出すことで、ペイロード領域のセンサ値(「0x19191a…19」)を読み出す。変換部134は、読み出したセンサ値(「0x19191a…19」)をF型コンテナのペイロード領域に格納する。
【0062】
演算部135は、
図2で説明したUnmarshaler(演算機能)を実行する。演算部135は、コンテナに対する演算や加工を行う。例えば、演算部135は、コンテナの入力を受け付けると、入力されたコンテナのデータをヘッダ領域とペイロード領域に分割する。続いて、演算部135は、コンテナの種類に応じて読み出した構造情報に従って、ヘッダ領域に格納された属性値とペイロード領域に格納された属性値を読み出す。続いて、演算部135は、属性値を読み出すと、1つ以上のコンテナの属性値群に対して演算を行う。
【0063】
演算部135は、例えば、コンテナとは別に定義された計算手順(マイクロコードともいう)を読み出して、コンテナに対する演算を行う。マイクロコードは、ローカルファイルやネットワーク上の演算部135が参照可能な場所に保管される。
【0064】
送信部136は、
図2で説明したRegister(出力機能)を実行する。送信部136は、受信部131または変換部134が生成したコンテナ、ならびに演算部135による演算が適用されたコンテナを後続の計算資源に出力する。例えば、送信部136は、コンテナをクラウドサーバ300にアップロードして、コンテナやコンテナの演算結果をデータベースに蓄積する。また、送信部136は、コンテナを利用者に対してフィードバックする。例えば、送信部136は、コンテナのデータを可視化して表示する。
【0065】
〔4.効果〕
上述してきたように、実施形態に係る情報処理装置100は、受信部131と、判定部132と、読出し部133を備える。受信部131は、センサ装置10によって検出されたセンサデータと、センサデータに付加される属性情報とを含むコンテナのフォーマットに対応するコンテナを受信する。判定部132は、受信部131が受信したコンテナが、属性情報の構造を示す構造情報を含まないフォーマットである第1フォーマットに対応する第1コンテナまたは構造情報を含むフォーマットである第2フォーマットに対応する第2コンテナのいずれであるかを判定する。読出し部133は、判定部132が判定したコンテナの種類に応じてコンテナに含まれるデータを読み出す。読出し部133は、判定部132によって受信部131が受信したコンテナが第1コンテナであると判定された場合には、第1コンテナとは別に定義された構造情報を読み出し、読み出した構造情報に従って、第1コンテナに含まれるデータを読み出し、判定部132によって受信部131が受信したコンテナが第2コンテナであると判定された場合には、第2コンテナに含まれる構造情報に従って、第2コンテナに含まれるデータを読み出す。
【0066】
このように、情報処理装置100は、センサデータを共通のフォーマットに対応するコンテナに変換して、コンテナによってセンサデータの受け渡しを行う。これにより、情報処理装置100は、センサデータを送受信する際の通信方式の違いや、センサデータのデータ構造の違いに依存することなく、共通の方法でセンサデータを取り扱うことを可能にする。例えば、情報処理装置100は、センサデータを送受信するネットワーク経路上の計算機が、共通の論理的なインターフェイスでセンサデータを扱うことを可能とする。また、例えば、情報処理装置100は、異なる複数のセンサ装置10から出力される複数のセンサデータを組み合わせて利用する際の利便性を向上させることができる。したがって、情報処理装置100は、データ形式の異なるセンサデータをそれぞれ適切に読み出すことができる。
【0067】
また、情報処理装置100は、2種類の異なるコンテナのフォーマットに対応するコンテナによってセンサデータの受け渡しを行う。これにより、情報処理装置100は、センサデータを送信する際に使用可能な電力量や使用可能な通信経路における通信速度等のリソースの量に応じて、2種類の異なるコンテナを使い分けて適切にセンサデータの受け渡しを行うことを可能にする。
【0068】
また、第1コンテナは、属性情報として、構造情報を識別可能なデータ識別情報を含む。読出し部133は、判定部132によって受信部131が受信したコンテナが第1コンテナであると判定された場合には、第1コンテナに含まれるデータ識別情報を読み出し、読み出したデータ識別情報によって識別される構造情報を読み出し、読み出した構造情報に従って、第1コンテナに含まれるデータを読み出す。また、第1コンテナは、属性情報として、センサデータに関する情報をデジタルデータに変換した数値であるセンサ値のバイト単位の長さを示すセンサ長情報を含む。読出し部133は、判定部132によって受信部131が受信したコンテナが第1コンテナであると判定された場合には、第1コンテナに含まれるセンサ長情報を読み出し、読み出したセンサ長情報に従って、第1コンテナに含まれるセンサ値を読み出す。
【0069】
これにより、情報処理装置100は、例えば、センサデータを送信する際に使用可能な電力量や使用可能な通信経路における通信速度等のリソースが少ない環境では、構造情報を含まない分、データ量が少なくミニマムなデータを含む第1コンテナによってセンサデータの受け渡しを行うことを可能にする。
【0070】
また、第1コンテナは、属性情報をデジタルデータに変換した数値である属性値およびセンサデータに関する情報をデジタルデータに変換した数値であるセンサ値を含む。構造情報は、属性情報を識別可能な属性識別情報および属性値のバイト単位の長さを示す属性長情報を含む。第2コンテナは、構造情報、属性値およびセンサ値を含む。また、構造情報は、属性情報の個数を示す属性数情報を含む。
【0071】
これにより、情報処理装置100は、例えば、センサデータを送信する際に使用可能な電力量や使用可能な通信経路における通信速度等のリソースが多い環境では、構造情報を含む分、データ量が多いがよりリッチなデータを含む第2コンテナによってセンサデータの受け渡しを行うことを可能にする。
【0072】
また、受信部131は、第1コンテナであることを示す第1コンテナ識別情報または第2コンテナであることを示す第2コンテナ識別情報をヘッダ領域に含むコンテナを受信する。判定部132は、ヘッダ領域に第1コンテナ識別情報が含まれる場合は、受信部131が受信したコンテナが第1コンテナであると判定し、ヘッダ領域に第2コンテナ識別情報が含まれる場合は、受信部131が受信したコンテナが第2コンテナであると判定する。
【0073】
これにより、情報処理装置100は、受信したコンテナの種類を適切に判定することができる。
【0074】
〔5.ハードウェア構成〕
また、上述してきた実施形態に係る情報処理装置100は、例えば
図11に示すような構成のコンピュータ1000によって実現される。
図11は、情報処理装置100の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM1300、HDD1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を備える。
【0075】
CPU1100は、ROM1300またはHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
【0076】
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、所定の通信網を介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータを所定の通信網を介して他の機器へ送信する。
【0077】
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを入出力インターフェイス1600を介して出力装置へ出力する。
【0078】
メディアインターフェイス1700は、記録媒体1800に格納されたプログラムまたはデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【0079】
例えば、コンピュータ1000が情報処理装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部130の機能を実現する。コンピュータ1000のCPU1100は、これらのプログラムを記録媒体1800から読み取って実行するが、他の例として、他の装置から所定の通信網を介してこれらのプログラムを取得してもよい。
【0080】
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【0081】
〔6.その他〕
また、上記実施形態及び変形例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【0082】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【0083】
また、上述してきた実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【0084】
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、特定部は、特定手段や特定回路に読み替えることができる。
【符号の説明】
【0085】
1 情報処理システム
10 センサ装置
100 情報処理装置
110 通信部
120 記憶部
131 受信部
132 判定部
133 読出し部
134 変換部
135 演算部
136 送信部
200 構造情報レポジトリ
300 クラウドサーバ