IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士通株式会社の特許一覧

特開2024-32446データ処理方法およびデータ処理プログラム
<>
  • 特開-データ処理方法およびデータ処理プログラム 図1
  • 特開-データ処理方法およびデータ処理プログラム 図2
  • 特開-データ処理方法およびデータ処理プログラム 図3
  • 特開-データ処理方法およびデータ処理プログラム 図4
  • 特開-データ処理方法およびデータ処理プログラム 図5
  • 特開-データ処理方法およびデータ処理プログラム 図6
  • 特開-データ処理方法およびデータ処理プログラム 図7
  • 特開-データ処理方法およびデータ処理プログラム 図8
  • 特開-データ処理方法およびデータ処理プログラム 図9
  • 特開-データ処理方法およびデータ処理プログラム 図10
  • 特開-データ処理方法およびデータ処理プログラム 図11
  • 特開-データ処理方法およびデータ処理プログラム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024032446
(43)【公開日】2024-03-12
(54)【発明の名称】データ処理方法およびデータ処理プログラム
(51)【国際特許分類】
   G06F 16/176 20190101AFI20240305BHJP
【FI】
G06F16/176
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022136107
(22)【出願日】2022-08-29
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】100104190
【弁理士】
【氏名又は名称】酒井 昭徳
(72)【発明者】
【氏名】野田 政秀
(72)【発明者】
【氏名】横田 耕一
(57)【要約】
【課題】サービス数が増大してもストレージを効率的に使用できること。
【解決手段】データ処理装置100は、受信したソースデータS0を加工した第一の加工データS1が格納される共通DT110と、ソースデータS0を加工した第二の加工データS2が格納される固有DT111,112と、共通DT110または固有DT111,112へのアクセスを要求してデータ処理を行う複数のサービス別のサービス部である、個別加工処理部121,122および分析部131,132と、を含む。サービス部は、予め定めたデータ振分けルールに従ってDTにアクセスする。例えば、分析部132は、複数のサービス別の固有DT112から第二の加工データS2の読込みを行い、読込み対象のデータが存在しないと判定された場合には、共通DT110から第一の加工データS0の読込みを行う。
【選択図】図1
【特許請求の範囲】
【請求項1】
受信したソースデータを加工した第一の加工データが格納される共通デジタルツインと、前記ソースデータを加工した第二の加工データが格納される固有デジタルツインと、前記共通デジタルツインまたは前記固有デジタルツインへのアクセスを要求してデータ処理を行う複数のサービス別のサービス部と、を含むデータ処理装置のコンピュータが実行するデータ処理方法であって、
複数の前記サービス部は、予め定めたデータ振分けルールに従い、
複数のサービス別の前記固有デジタルツインから前記第二の加工データの読込みを行い、
読込み対象のデータが存在しないと判定された場合には、
前記共通デジタルツインから前記第一の加工データの読込みを行う、
ことを特徴とするデータ処理方法。
【請求項2】
前記デジタルツインへのアクセスの要求元が、個別の振り分けルールを有する場合、当該個別の振り分けルールを取得し、
取得した個別の振り分けルールに従い、前記共通デジタルツインまたは前記固有デジタルツインへのアクセスを行う、
ことを特徴とする請求項1に記載のデータ処理方法。
【請求項3】
複数の前記サービス部は、
前記ソースデータを加工した第二の加工データを生成し、当該前記第二の加工データを前記固有デジタルツインに書込む個別加工処理部と、前記第一の加工データまたは前記第二の加工データを処理する分析部と、を含み、
前記分析部は、
複数のサービス別の前記固有デジタルツインから前記第二の加工データの読込みを行い、
読込み対象のデータが存在しないと判定された場合には、
前記共通デジタルツインから前記第一の加工データの読込みを行う、
ことを特徴とする請求項1に記載のデータ処理方法。
【請求項4】
複数の前記サービス部は、
前記共通デジタルツインから前記第一の加工データを読込み、
読込んだ前記第一の加工データを加工した第二の加工データを、各サービス別の固有デジタルツインに書込む、
ことを特徴とする請求項1に記載のデータ処理方法。
【請求項5】
前記サービス部は、
前記共通デジタルツイン、および前記固有デジタルツインに対し、同じ属性のデータに対する読書きのアクセスを行うことを特徴とする請求項1に記載のデータ処理方法。
【請求項6】
前記個別加工処理部は、
前記共通デジタルツインから前記第一の加工データを読込み、加工した前記第二の加工データの作成、にかかる処理を実行または未実行で切替える場合、
前記分析部は、
前記個別加工処理部の未実行時には、前記共通デジタルツインから前記第一の加工データを読込み、
前記個別加工処理部の実行時には、前記固有デジタルツインから前記第二の加工データを読込む、
ことを特徴とする請求項3に記載のデータ処理方法。
【請求項7】
前記分析部は、
前記ソースデータのデータ精度または更新頻度に基づき、前記ソースデータのデータ精度が低精度あるいは低更新頻度であれば、前記固有デジタルツインから前記第二の加工データを読込み、
前記ソースデータのデータ精度が高精度、あるいは高更新頻度であれば、前記共通デジタルツインから前記第一の加工データを読込む、
ことを特徴とする請求項3に記載のデータ処理方法。
【請求項8】
予め定めたデータ振分けルールに従い、
受信した前記ソースデータを加工した前記第一の加工データを、前記共通デジタルツインに書込み、
複数のサービス部は、
前記ソースデータを加工した前記第二の加工データを、サービス別の前記固有デジタルツインに書込む、
ことを特徴とする請求項1に記載のデータ処理方法。
【請求項9】
受信したソースデータを加工した第一の加工データが格納される共通デジタルツインと、前記ソースデータを加工した第二の加工データが格納される固有デジタルツインと、前記共通デジタルツインまたは前記固有デジタルツインへのアクセスを要求してデータ処理を行う複数のサービス別のサービス部と、を含むデータ処理装置のコンピュータに実行させるデータ処理プログラムであって、
複数の前記サービス部は、予め定めたデータ振分けルールに従い、
複数のサービス別の前記固有デジタルツインから前記第二の加工データの読込みを行い、
読込み対象のデータが存在しないと判定された場合には、
前記共通デジタルツインから前記第一の加工データの読込みを行う、
ことを特徴とするデータ処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ処理方法およびデータ処理プログラムに関する。
【背景技術】
【0002】
デジタルツイン(DT)により、実世界上で実際に稼働している対象物を仮想空間上に写像のモデルとして表現できる。例えば、実世界のIoTデバイスが検出したセンサー値等のステートのソースデータをセンターへ送る。センターは、受信したソースデータから実世界の対象物のデジタルツインを構築する。センターは、サービス毎のデジタルツインがソースデータを用いて実世界の可視化や分析の処理を行う。センターが分析や可視化を行う際に、対象のソースデータをもとに導出された情報を、対象物(ツイン)に紐付けて保管しておくことで、分析や可視化の加工処理(個別加工処理と称す)が行いやすくなる。
【0003】
先行技術としては、例えば、マルチテナント型のサービスで、データベースが共通データとテナント毎の個別データを有し、個別スキーマがビューを介して共通データにアクセス可能にした技術がある。また、例えば、データ分析の複数の計算機を備え、分析処理毎にデータ分析の計算機を振分け実行する技術がある。また、例えば、複数のシミュレーション環境で各モデル固有データと、共通データを定義し、システムの複数の態様をシミュレートする技術がある。また、例えば、クラウド環境下でIDM(マルチテナントアイデンティティ管理)機能を利用し、個別と共通の領域を定義し、ドメイン間の分離を行う技術がある。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】国際公開第2017/090142号
【特許文献2】特開2017-199250号公報
【特許文献3】米国特許出願公開第2021/0117593号明細書
【特許文献4】米国特許出願公開第2016/0173475号明細書
【発明の概要】
【発明が解決しようとする課題】
【0005】
実世界は広大であるため、実世界の写像には巨大なストレージ領域が必要となる。このため、サービス毎にデジタルツインを用意した場合、コストが膨大となる。一方、複数サービスでデジタルツインを共有した場合、各サービスの個別加工処理結果をデジタルツインに保存(書込み)する時点で、サービス毎に異なる個別加工処理結果が衝突する問題が生じる。例えば、各サービスがそれぞれ算出する同じ属性「平均速度」について、各サービスで異なる値の個別加工処理結果を書込みしようとする衝突が生じる。従来技術ではサービス数の増大に対し、効率的なストレージ使用を行えない問題を有していた。
【0006】
一つの側面では、本発明は、サービス数が増大してもストレージを効率的に使用できることを目的とする。
【課題を解決するための手段】
【0007】
本発明の一側面によれば、受信したソースデータを加工した第一の加工データが格納される共通デジタルツインと、前記ソースデータを加工した第二の加工データが格納される固有デジタルツインと、前記共通デジタルツインまたは前記固有デジタルツインへのアクセスを要求してデータ処理を行う複数のサービス別のサービス部と、を含むデータ処理装置のコンピュータが実行するデータ処理方法であって、複数の前記サービス部は、予め定めたデータ振分けルールに従い、複数のサービス別の前記固有デジタルツインから前記第二の加工データの読込みを行い、読込み対象のデータが存在しないと判定された場合には、前記共通デジタルツインから前記第一の加工データの読込みを行う、ことを要件とする。
【発明の効果】
【0008】
本発明の一態様によれば、サービス数が増大してもストレージを効率的に使用できるという効果を奏する。
【図面の簡単な説明】
【0009】
図1図1は、実施の形態にかかるデータ処理方法の一実施例を示す説明図である。
図2図2は、サービス毎にデジタルツインを用意した場合の課題の説明図である。
図3図3は、複数のサービスでデジタルツインを共有した場合の課題の説明図である。
図4図4は、実施の形態のデータ処理装置の機能の説明図である。
図5図5は、データ処理装置のハードウェア構成例を示す図である。
図6図6は、データ処理装置が行う処理例1の説明図である。
図7図7は、ストレージ削減を説明する対比図である。
図8図8は、データ処理装置が行う処理例2の説明図である。
図9図9は、データ処理装置が行う処理例3の説明図である。
図10図10は、データ処理装置の全体処理例を示すフローチャートである。
図11図11は、データ処理装置のデフォルト読込み処理例を示すフローチャートである。
図12図12は、データ処理装置のデフォルト書込み処理例を示すフローチャートである。
【発明を実施するための形態】
【0010】
以下に図面を参照して、開示のデータ処理方法およびデータ処理プログラムの実施の形態を詳細に説明する。
【0011】
(実施の形態にかかるデータ処理方法の一実施例)
図1は、実施の形態にかかるデータ処理方法の一実施例を示す説明図である。データ処理装置100は、例えば、複数のサービスに共通の共通デジタルツイン(DT)と、複数のサービス別に固有の固有デジタルツインとを有する。データ処理装置100は、データ要求(IO要求)時、共通DTと、固有DTに対するデータの読書きを、振分けルールに基づき、振分ける処理を行うコンピュータである。共通DTおよび固有DTは、それぞれデータベース(DB)等の記憶領域上に形成される。
【0012】
図1に示す例に基づき、データ処理装置100のデータ処理の一例を説明する。この例では、車Aが速度をデータ処理装置100に送信し、複数のサービス別の平均時速を算出し、平均時速に基づく分析処理を行う。
【0013】
データ処理装置100は、例えば、車Aのセンサーが送信するソースデータS0である「速度」の情報を加工した第一の加工データS1を共通DT110に書込む(Write)。データ処理装置100は、共通DT110に、第一の加工データS1として、ツイン名「車A」、属性「時速」、速度の値「15km/h」を書込む。
【0014】
図1の例では、ツイン「車A」に関する異なる2つのサービスに対応し、2つの固有DTとして固有DT#1(111)と、固有DT#2(112)を有する。また、2つのサービスに対応し、個別加工処理部#1(121)と、個別加工処理部#2(122)を有する。また、2つのサービスに対応し、分析部#1(131)と、分析部#2(132)を有する。
【0015】
個別加工処理部#1(121)は、共通DT110から車Aの第一の加工データS1である時速の値を読込み、読込んだ値に対し、サービス#1に対応した第二の加工データS2を生成する個別加工処理を行う。そして、個別加工処理部#1(121)は、個別加工処理結果である第二の加工データS2を固有DT#1(111)に書込む(Write)。個別加工処理部#1(121)は、共通DT110から車Aのデータである「時速」の値について所定時間(例えば、過去10分間)の「時速」の平均値(平均速度)を算出する。
【0016】
図1の例では、個別加工処理部#1(121)は、第二の加工データS2として、平均速度「35km/h」を算出し、固有DT#1(111)に、ツイン名「車A」、属性「平均時速」、速度の値「35km/h」を書込む。
【0017】
分析部#1(131)は、サービス#1に対応した分析処理を行う。分析部#1(131)は、例えば、固有DT#1(111)から第二の加工データS2である車Aの平均時速を読込み(Read)、平均時速およびその他の属性の値に基づき、車Aの移動予測等のサービス#1の分析処理を行う。
【0018】
個別加工処理部#2(122)は、共通DT110から車Aの第一の加工データS1である時速の値を読込み、読込んだ値に対し、サービス#2に対応した第二の加工データS2を生成する個別加工処理を行う。そして、個別加工処理部#2(122)は、個別加工処理結果である第二の加工データS2を固有DT#2(112)に書込む(Write)。個別加工処理部#2(122)は、共通DT110から車Aのデータである「時速」の値について所定時間(例えば、過去30分間)の「時速」の平均値(平均速度)を算出する。
【0019】
図1の例では、個別加工処理部#2(122)は、第二の加工データS2として、平均速度「20km/h」を算出し、固有DT#2(112)に、ツイン名「車A」、属性「平均時速」、速度の値「20km/h」を書込む。
【0020】
分析部#2(132)は、サービス#2に対応した分析処理を行う。分析部#2(132)は、例えば、固有DT#2(112)から第二の加工データS2である車Aの平均時速を読込み(Read)、平均時速およびその他の属性の値に基づき、車Aの移動予測等のサービス#2の分析処理を行う。
【0021】
例えば、固有DT#1(111)、固有DT#2(112)は、異なるサービス事業者が管理し、共通DT110は、サービス基盤提供業者が管理する。
【0022】
ここで、例えば、固有DTの中には、個別加工処理部を有さないものが存在する。その場合には、個別加工処理部が処理した第二の加工データS2(個別加工処理結果)は、固有DTではなく共通DTにしか存在しないことになる。この場合、分析部が加工データ(個別加工処理結果)を取得するDTは固有DT毎に異なる。
【0023】
実施の形態では、データ処理装置100は、DTに対するアクセス要求元別の振分けルールを有する。基本的なデフォルトの振分けルールは、「第二の加工データS2の読込みを行い、読込み対象のデータが存在しないと判定された場合には、第一の加工データS1の読込みを行う。」である。データ処理装置100は、振分けルール設定に基づき、DTの読込みを制御する。これにより、簡易な仕組みでデータの取得元を制御することを可能とする。
【0024】
振分けルールは、DTに対するアクセス要求元別に設定できる。例えば、アクセスの要求元が振分けルールを有する場合、データ処理装置100は、要求元から振分けルールを取得できた場合、デフォルトの取得ルールに代えて取得した振分けルールに従って振分けを行ってもよい。
【0025】
なお、上記のデフォルトの振分けルールは、「サービスの個別加工処理が書込むまでは共通DTの属性の値を読込み、個別加工処理が書込むと固有DTの属性を読込む。」とも換言できる。
【0026】
これにより、データ処理装置100は、共通DTと固有DTを有しつつ、複数のサービスに対して、一つのDTに見せるようにでき、リソース削減等を図ることを可能とする。
【0027】
具体例を説明すると、図1に示すように、
(1)分析部#2(132)が固有DT#2(112)から第二の加工データS2(個別加工処理結果)の読込みを行ったとする。
(2)しかし、固有DT#2(112)に第二の加工データS2(個別加工処理結果)がなかったとする。この場合、
(3)振分けルールに基づき、分析部#2(132)は、共通DT110からデータ(第一の加工データS1)を読込む。
【0028】
ここで、分析部#2(132)は、共通DT110から第一の加工データS1「時速」を読込み、サービス#2に対応した分析処理を行うこともできる。図1には例示していないが、車Aが「時速」および「平均時速」を送信し、共通DT110に書込むとする。そして、固有DT#2(112)に属性「平均時速」のデータがなかったとする。この場合、(3)振分けルールに基づき、分析部#2(132)は、共通DT110から同じ属性「平均時速」を読込み、分析処理することができる。
【0029】
ここで、(3)振分けルールに基づき、分析部#2(132)は、共通DT110からデータ(第一の加工データS1)を読込む、という処理により、異なるサービス形態に対応することができる。例えば、下記1.~3.のサービス形態がある。
【0030】
1.複数の異なるサービスでDTを共有する。
2.状況に応じた属性値の算出を変更する場合の変更コストを下げる。
3.状況に応じてDTの読込み先を変えたい場合の変更コストを下げる。これら1.~3.の形態別のサービスの処理例は、処理例1.~3.として後述する。
【0031】
(従来のDTの課題)
ここで、図2図3を用いて従来のDTの課題について説明しておく。実世界は広大であるため、実世界の写像には巨大なストレージ領域が必要となる。
【0032】
図2は、サービス毎にデジタルツインを用意した場合の課題の説明図である。例えば、2つのサービスA,Bに対応して、DT-A(201)と、DT-B(202)を用意する必要がある。また、2つのサービスに対応して、個別加工処理部A(211)と、個別加工処理部B(212)、および分析部A(213)と分析部B(214)を用意する。図2の構成例では、同一の情報を2つのサービスで2重に収集、保持するため、DT-A(201)と、DT-B(202)とが必要となり、コストが膨大となる。
【0033】
図3は、複数のサービスでデジタルツインを共有した場合の課題の説明図である。図3(a)に示すように、2つのサービスA,Bで共通するDT210を用意する。また、2つのサービスに対応して、個別加工処理部A(211)と、個別加工処理部B(212)、および分析部A(213)と分析部B(214)を用意する。複数のサービスでデジタルツインを共有する場合、各サービスの個別加工処理結果をデジタルツインに保存(書込み)する時点で、サービス毎に異なる個別加工処理結果が衝突する問題が生じる。
【0034】
例えば、各サービスで共有するある属性「時速」について、各サービスで異なる値の個別加工処理結果を書込しようとする衝突が生じる。このように、複数のサービスでデジタルツインを共有する場合、複数のサービスが紐付ける情報、例えば、属性や関係性で衝突が生じるほか、機密性の問題も生じる。
【0035】
図3(b)には、衝突発生の具体例を示す。例えば、個別加工処理部A(211)では、車Aの「時速」に基づき、過去10分の属性「平均時速(35km/h)」を算出し、DT210に書込むとする。また、個別加工処理部B(212)では、車Aの「時速」に基づき、過去30分の属性「平均時速(20km/h)」を算出し、DT210に書込むとする。この場合、個別加工処理部A(211)と個別加工処理部B(212)とが、DT210に対し、同じ属性「平均時速」に対し、異なる値(35km/hと、20km/h)の書込みを試みるため衝突し、分析ができなくなる。
【0036】
図3(b)では、属性の衝突例を説明したが、他の衝突例としては、関係性の衝突がある。慣性系の衝突は、デジタルツイン間の関係(例えば、人と組織の階層関係等)で同様の関係名を利用する場合に衝突が生じる。また、機密性の問題も生じる。例えば、分析部A(213)と、分析B(214)とが異なる会社のサービスである場合、個別加工処理結果が相互間で見せたくない場合があるが、これに適応できず、機密性を維持できない。
【0037】
(実施の形態のデータ処理装置の機能)
図4は、実施の形態のデータ処理装置の機能の説明図である。データ処理装置100は、例えば、複数台のサーバの分散処理により構成される。データ処理装置100は、統合デジタルツインIO部401、サービスDT設定テーブル402、振分けルールテーブル403、共通DT110、固有DT#1(111)、固有DT#2(112)、サービス部#1(411)、サービス部#2(412)を含む。
【0038】
共通DT110と、固有DT#1(111)と、固有DT#2(112)とは、一つに統合した統合デジタルツイン400である。また、データ処理装置100は、ソースデータS0として図1に示した車Aのセンサーが検出した「速度」の値を受信するものとする。
【0039】
図4の構成例では、便宜上、固有デジタルツインの数は、2つのサービスに対応して固有DT#1(111)と、固有DT#2(112)の2つとしたが、サービス数に応じて固有デジタルツインの数を配置すればよい。サービス部#1(411)と、サービス部#2(412)は、図1に示した個別加工処理部と分析部とを含む。
【0040】
サービスDT設定テーブル402には、サービス毎にアクセスするDTの情報が設定される。例えば、サービス部#1(411)のアクセスは固有DT#1(111)であり、サービス部#2(412)のアクセスは固有DT#2(112)である情報が設定されている。なお、共通DT110については、サービス部#1(411)およびサービス部#2(412)のいずれからもアクセス可能である。
【0041】
例えば、サービス部#1(411)は、図1に示した個別加工処理部#1(121)と、分析部#1(131)とを含む。サービス部#1(411)は、統合デジタルツインIO部401を介して共通DT110と、固有DT#1(111)にアクセス(読書き)する。
【0042】
サービス部#2(412)は、図1に示した個別加工処理部#2(122)と、分析部#2(132)とを含む。サービス部#2(412)は、統合デジタルツインIO部401を介して共通DT110と、固有DT#2(112)にアクセスする。
【0043】
統合デジタルツインIO部401は、要求受信部421と、振分け先決定部422と、要求送信部423と、を含む。要求受信部421は、デジタルツインに対するアクセスの要求を受信する。図4の例では、要求受信部421は、「車両A」が送信する「速度」のソースデータS0と、サービス部#1(411)と、サービス部#2(412)からの要求を受信する。
【0044】
振分け先決定部422は、要求を行ったソースデータS0の送信元、あるいはサービス部#1,#2(411,412)からの要求に基づき、振分けルールテーブル403を参照する。そして、振分け先決定部422は、振分けルールテーブル403に設定された振り分けルールに基づき、DT(共通DT110、固有DT#1,#2(111,112)に対するアクセス(読書き)の振分け先を決める。
【0045】
振分けルールテーブル403は、要求元と、DTからの読込みの振分けルール、DTへの書込みの振分けルールの情報が設定されている。振分け先決定部422は、振分けルールに従い、例えば、個別加工処理部、および分析部からの書込み要求については、対応する固有DTへ書込みする。また、振分け先決定部422は、個別加工処理、および分析部からの読込み要求については、まずサービス固有DTを読込み、データがなければ共通DTから読込む。このほか、振分け先決定部422は、要求元による個別の振分けルールが未定義の場合には、デフォルトの振分けルールを適用して処理する。
【0046】
図4に示す例の振分けルールテーブル403には、デフォルトの振分けルールとして、「サービスの個別加工処理が書込むまでは共通DTの属性の値を読込み、個別加工処理が書込むと固有DTの属性を読込む。」が設定されている。この振分けルールテーブル403のレコード403-1には、センサーからのソースデータS0は、共通DT110への書込み、のみが設定されている。
【0047】
また、図4の例では、振分けルールテーブル403のレコード403-2には、サービス部#1(411)における、DTからの読込みは、「固有DT#1→共通DT」が設定されている。これは、はじめに固有DT#1(111)から要求された属性のデータを読込み、固有DT#1(111)からデータが読込めなかったとき(値がないときを含む)には、共通DT110からデータを読込む、ことを示す。例えば、図1の例では、サービス部#1(411)の分析部#1(131)は、はじめに固有DT#1(111)から要求された属性のデータを読込み、固有DT#1(111)からこの属性のデータが読込めなかったときには、共通DT110からデータを読込む。
【0048】
また、図4の例では、振分けルールテーブル403のレコード403-2には、サービス部#1(411)における、DTへの書込みは、「固有DT#1」が設定されている。これは、固有DT#1(111)のみに要求された属性のデータを書込む、ことを示す。
【0049】
また、図4の例では、振分けルールテーブル403のレコード403-3には、サービス部#2(412)における、DTからの読込みは、「固有DT#2→共通DT」が設定されている。これは、はじめに固有DT#2(112)から要求された属性のデータを読込み、固有DT#1(111)からデータが読込めなかったとき(値がないときを含む)には、共通DT110からデータを読込む、ことを示す。例えば、図1の例では、サービス部#2(412)の分析部#2(132)は、はじめに固有DT#2(112)から要求された属性のデータを読込み、固有DT#2(112)からこの属性のデータが読込めなかったときには、共通DT110からデータを読込む。
【0050】
また、図4の例では、振分けルールテーブル403のレコード403-3には、サービス部#2(412)における、DTへの書込みは、「固有DT#2」が設定されている。これは、固有DT#2(112)のみに要求された属性のデータを書込む、ことを示す。
【0051】
また、図4の例では、振分けルールテーブル403のレコード403-4には、要求元を特定しない「共通」の要求について、共通DT110からの読込み、および書込み、が設定されている。
【0052】
(データ処理装置のハードウェア構成例)
図5は、データ処理装置のハードウェア構成例を示す図である。データ処理装置100は、図5に示す汎用のハードウェアからなるサーバ等のコンピュータで構成することができる。
【0053】
データ処理装置100は、CPU(Central Processing Unit)501と、メモリ502と、ネットワークI/F(Interface)503と、を有する。また、データ処理装置100は、記録媒体I/F504と、記録媒体505と、可搬型記録媒体I/F506と、可搬型記録媒体507と、を有する。また、各構成部は、バス500によってそれぞれ接続される。
【0054】
CPU501は、データ処理装置100の全体の制御を司る制御部として機能する。CPU501は、複数のコアを有していてもよい。メモリ502は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMがOSのプログラムを記憶し、ROMがアプリケーションプログラムを記憶し、RAMがCPU501のワークエリアとして使用される。メモリ502に記憶されるプログラムは、CPU501にロードされることで、コーディングされている処理をCPU501に実行させる。
【0055】
ネットワークI/F503は、通信回線を通じてネットワークNWに接続され、ネットワークNWを介して外部のコンピュータに接続される。外部のコンピュータは、例えば、データ処理装置100を複数のサーバで構成した場合、ネットワークNWを介して、各サーバが接続される。そして、ネットワークI/F503は、ネットワークNWと装置内部とのインターフェースを司り、外部のコンピュータからのデータの入出力を制御する。ネットワークI/F503には、例えば、モデムやLANアダプタなどを採用することができる。
【0056】
記録媒体I/F504は、CPU501の制御に従って記録媒体505に対するデータのリード/ライトを制御する。記録媒体505は、記録媒体I/F504の制御で書込まれたデータを記憶する。記録媒体505としては、例えば、磁気ディスク、光ディスクなどが挙げられる。
【0057】
可搬型記録媒体I/F506は、CPU501の制御に従って可搬型記録媒体507に対するデータのリード/ライトを制御する。可搬型記録媒体507は、可搬型記録媒体I/F506の制御で書込まれたデータを記憶する。可搬型記録媒体507としては、例えば、CD(Compact Disc)-ROM、DVD(Digital Versatile Disk)、USB(Universal Serial Bus)メモリなどが挙げられる。
【0058】
なお、データ処理装置100は、上述した構成部のほかに、例えば、入力装置、ディスプレイなどを有することにしてもよい。
【0059】
図4に示した統合デジタルツインIO部401は、図5に示したCPU501がプログラム実行することで機能を実現できる。図4に示したサービスDT設定テーブル402、振分けルールテーブル403、共通DT110、固有DT#1(111)、固有DT#2(112)は、例えば、図5に示した記録媒体505、可搬型記録媒体507を用いて機能を実現できる。
【0060】
ところで、図4に記載したサービス部#1,#2(411,412)は、データ処理装置100の外部のサービス会社がそれぞれ所有する図5等のサーバ等のハードウェアで構成することができる。
【0061】
(データ処理装置の処理例)
次に、データ処理装置100の各処理例を説明する。以下の各処理は、データ処理装置100の制御部であるCPU501が実行処理する。
【0062】
(データ処理装置の処理例1)
図6は、データ処理装置が行う処理例1の説明図である。図6では、上述した1.複数の異なるサービスでDTを共有する場合の処理例を示す。図6(a)は、図1同様にDTへの読書きのアクセス状態を示し、図6(b)は、サービス別の要求に対する読書きの振分け状態を示す。
【0063】
図6(b)に示す振分けルールテーブル403は、デフォルトの振分けルールであり、「サービスの個別加工処理が書込むまでは共通DTの属性の値を読込み、個別加工処理が書込むと固有DTの属性を読込む。」である。具体的には、振分けルールテーブル403には、センサーからのソースデータS0は、共通DT110への書込み、のみが設定されている。また、サービス部#1(411)のDTからの読込みは、「固有DT#1→共通DT」が設定されている。また、サービス部#1(411)のDTへの書込みは、「固有DT#1」が設定されている。
【0064】
また、サービス部#2(412)のDTからの読込みは、「固有DT#2→共通DT」が設定されている。また、サービス部#2(412)のDTへの書込みは、「固有DT#2」が設定されている。
【0065】
この図6(a),(b)に示す例は、2つのサービス例であり、一つはA社の配車サービス(#1)411と、B社の脱酸素サービス(#2)412である。
【0066】
A社の配車サービス(#1)411では、車Aの配車にかかるサービスを行うため、個別加工処理部#1(121)は、「時速」から過去10分の属性「平均時速」を算出する。そして、個別加工処理部#1(121)は、振分けルールテーブル403の振分けルールに基づき、算出した値を固有DT#1(111)に書込む。
【0067】
また、分析部#1(131)は、振分けルールテーブル403の振分けルールに基づく読込みを行う。まず、分析部#1(131)は、固有DT#1(111)から属性「平均速度」の値を読込む。この際、固有DT#1(111)から属性「平均速度」の値を読込めなかった場合には、分析部#1(131)は、共通DT110から「時速」の値を読込み、「時速」に基づく分析を行う。
【0068】
また、B社の脱酸素サービス(#2)412では、CO2排出量予測のために、個別加工処理部#2(122)では、「時速」から過去30分の「平均時速」を算出する。そして、個別加工処理部#2(122)は、振分けルールテーブル403の振分けルールに基づき、算出した値を固有DT#2(112)に書込む。
【0069】
また、分析部#2(132)は、振分けルールテーブル403の振分けルールに基づく読込みを行う。まず、分析部#2(132)は、固有DT#2(112)から属性「平均速度」の値を読込む。この際、固有DT#2(112)から属性「平均速度」の値を読込めなかった場合には、分析部#2(132)は、共通DT110から「時速」の値を読込み、「時速」に基づく分析を行う。
【0070】
このように、データ処理装置100は、異なるサービスの要求に対し、一つのDTとして振る舞う形で見せることができ、一つのDTで複数のサービスを提供できるようになる。そして、共通DT110とサービス固有DT#1,#2(111,112)を使い分けることができ、DTに必要となるストレージ領域を削減できる。
【0071】
また、複数のサービスが共有する写像は、共通DT110の一つで済むため、写像をつくるためのソースデータS0のアップロード先を複数設ける必要がなく、写像のためのリソースが削減できる。例えば、2つのサービスに対し、車Aは一つの共通DT110にデータ送信するだけでよい。
【0072】
また、複数のサービス同士での解析結果を一つのDTとして俯瞰できるようになるため、いままで気づかなかった関係性を知ることもできるようになる。例えば、図6に示した2つのサービスの分析結果に基づき、個人の車Aを乗合のバスに変える提案を行う等で、さらなるCO2排出の削減の情報を提示することもできるようになる。
【0073】
(ストレージ削減効果について)
図7は、ストレージ削減を説明する対比図である。図7(a)は、従来技術のDT構成例を示す。従来技術では、サービス毎にDTを用意する必要がある。図7(a)のように、2つのサービスA,Bの場合、サービスAに共通DT210と、固有DT-A201を用意する。また、サービスBにも共通DT210と、固有DT-B202を用意しなければならない。このように、従来技術では、サービス毎に共通DT210相当の記憶域を用意しなければならず、サービス数が増えるほどDTのストレージ容量のコストが膨大となる。
【0074】
図7(b)は、実施の形態のDT構成例を示す。実施の形態では、共通DT110はサービスの数によらず一つ用意すればよい。図7(b)のように、2つのサービス部#1,#2(411,412)の場合、サービス部#1(411)用の固有DT#1(111)と、サービス部#2(412)用の固有DT#2(112)とを用意する。そして、サービス部#1,#2(411,412)で共有する共通DT110を用意すればよい。共通DT110は、全てのサービスに対し一つ配置すれば済む。これにより、実施の形態によれば、サービスが増えるほどDTのストレージ容量の削減効果を増大できる。
【0075】
(データ処理装置の処理例2)
図8は、データ処理装置が行う処理例2の説明図である。図8では、上述した2.状況に応じた属性値の算出を変更する場合の変更コストを下げる場合の処理例を示す。図8(a),(b)は、異なる時期のDTへの読書きのアクセス状態を示す。
【0076】
この図8に示す例では、一つのサービスの例であり、一つの共通DT110と、一つの固有DT#1(111)を有する。個別加工処理部(共通)801は、共通DT110の車Aの「時速」を読込み、過去10分間の「平均時速」を算出し、共通DT110に書込む処理を行う。
【0077】
個別加工処理部#1(121)は、動作時には、共通DT110の車Aの「時速」を読込み、過去30分間の「平均時速」を算出し、固有DT#1(111)に書込む処理を行うとする。
【0078】
ここで、振分けルールテーブル403は、デフォルトの振分けルールであり、「サービスの個別加工処理が書込むまでは共通DTの属性の値を読込み、個別加工処理が書込むと固有DTの属性を読込む。」である。
【0079】
この処理例2では、図8(a)に示すように、あるサービスの分析部#1(131)は、個別加工処理部#1(121)の未動作時には、共通DT110から「平均速度」を読込む。そして、図8(b)に示すように、分析部#1(131)は、個別加工処理部#1(121)の動作時は、固有DT#1(111)から同じ属性の「平均速度」を読込む。
【0080】
この図8(a),(b)に示す例では、車Aの時速のばらつきが大きいという要因により、「平均時速」の算出を過去10分から過去30分に長くしたい、という状況変化時に、個別加工処理部#1(111)を動作させる。これにより、分析部#1(131)が状況変化に応じて属性値を算出する個別加工処理部を「共通」→「#1」に変更する際の変更コストを下げることができるようになる。
【0081】
(データ処理装置の処理例3)
図9は、データ処理装置が行う処理例3の説明図である。図9では、上述した状況に応じてDTの読込み先を変えたい場合の変更コストを下げる場合の処理例を示す。図9(a),(b)は、異なる時期のDTへの読書きのアクセス状態を示す。
【0082】
この図9に示す例では、一つのサービスの例であり、一つの共通DT110と、一つの固有DT#1(111)を有する。共通DT110は、車Aのソースデータに基づき、属性「速度」、「加速度」、「更新頻度」と、各属性の値を保持している。また、共通DT110は、車Bのソースデータに基づき、属性「速度」、「更新頻度」と、各属性の値を保持している。
【0083】
図9(a)に示すように、個別加工処理部121は、共通DT110の車Aの各属性の値を読込み、「速度」を推定し、固有DT#1(111)に書込む処理を行う。そして、この処理例3では、車Bについては、個別加工処理部を有しておらず、併せて車Bに関する固有DTも有していない。
【0084】
分析部#1(131)は、車Aについては、固有DT#1(111)から「(推定)速度」の値を読込む。また、分析部#1(131)は、車Bについては、共通DT110から直接「(実測)速度」の値を読込む。ここで、車Aは、ソースデータ「速度」の更新頻度が1分であるのに対し、車Bは、ソースデータ「速度」の更新頻度が1秒であり、車Aよりも更新頻度が高い状態であるとする。
【0085】
ここで、振分けルールテーブル403は、デフォルトの振分けルールであり、「サービスの個別加工処理が書込むまでは共通DTの属性の値を読込み、個別加工処理が書込むと固有DTの属性を読込む。」である。
【0086】
この処理例3では、図9(a)に示すように、あるサービスの分析部#1(131)は、個別加工処理部#1(121)の動作時には、固有DT#1(111)から「(推定)速度」を読込む。この時、分析部#1(131)は、車Aは、「更新頻度」が1分の「(推定)速度」に基づく低精度の分析であるのに対し、車Bは、「更新頻度」が1秒の「(実測)速度」に基づく高精度の分析である。例えば、データ処理装置100は、「更新頻度」を閾値と比較して高頻度であるか低頻度であるかを判断でき、データ精度についても「更新頻度」に基づき高精度であるか低精度であるかを判断できる。
【0087】
ここで、図9(b)に示すように、車Aの「速度」の「更新頻度」が1分から1秒に更新されたとする。この場合、分析部#1(131)は、個別加工処理部#1(121)から車Aの「(推定)速度」の読込みを止めて、共通DT110から「(実測)速度」を読込む。この場合、車Aは、「更新頻度」が1秒であり、車Bと同様の更新頻度で「(実測)速度」に基づく高精度な分析が行えるようになる。
【0088】
この図9(a),(b)に示す例では、例えば、車Aの速度を検出するセンサーの交換等に基づく、更新頻度の変更(高精度化)を要因として、より高精度な値のDTに読込み先を変更させる。これにより、分析部#1(131)が読込み先を「固有DT#1」→「共通DT」に変更する際の変更コストを下げることができるようになる。
【0089】
(データ処理装置の処理手順例)
次に、図10図12を用いてデータ処理装置100のデータ処理手順例を説明する。
【0090】
図10は、データ処理装置の全体処理例を示すフローチャートである。図10の処理は、主に図4の統合デジタルツインIO部401が行う処理であり、図5に示したCPU501が処理実行する。
【0091】
はじめに、データ処理装置100は、DTに対するアクセスの要求を受信する(ステップS1001)。次に、データ処理装置100は、要求元と要求内容を取得する(ステップS1002)。要求元は、例えば、上述したサービス部#1、#2(411,412)の個別加工処理部#1、#2(121,122)、あるいは分析部#1、#2(131,132)である。
【0092】
次に、データ処理装置100は、要求内容が読込みか書込みかを判断する(ステップS1003)。データ処理装置100は、要求内容が読込みであれば(ステップS1003:読込み)、ステップS1004の処理に移行する。一方、要求内容が書込みであれば(ステップS1003:書込み)、データ処理装置100は、ステップS1008の処理に移行する。
【0093】
ステップS1004では、データ処理装置100は、要求元の読込みルールを取得する(ステップS1004)。そして、データ処理装置100は、要求元の読込みルールを取得できたか否かを判断する(ステップS1005)。要求元の読込みルールを取得できれば(ステップS1005:Yes)、データ処理装置100は、取得したルール(振分けルール)に応じてデータの読込みを処理し(ステップS1006)、以上の処理を終了する。
【0094】
一方、要求元の読込みルールを取得できなければ(ステップS1005:No)、データ処理装置100は、デフォルト読込み処理を行い(ステップS1007)、以上の処理を終了する。デフォルトの読込み処理では、データ処理装置100は、デフォルトの振分けルールに応じてデータを読込み処理し、以上の処理を終了する。
【0095】
ステップS1008では、データ処理装置100は、要求元の書込みルールを取得する(ステップS1008)。そして、データ処理装置100は、要求元の書込みルールを取得できたか否かを判断する(ステップS1009)。要求元の書込みルールを取得できれば(ステップS1009:Yes)、データ処理装置100は、取得したルール(振分けルール)に応じてデータを書込み処理し(ステップS1010)、以上の処理を終了する。
【0096】
一方、要求元の書込みルールを取得できなければ(ステップS1009:No)、データ処理装置100は、デフォルト書込み処理を行い(ステップS1011)、以上の処理を終了する。デフォルトの書込み処理では、データ処理装置100は、デフォルトの振分けルールに応じてデータを書込み処理し、以上の処理を終了する。
【0097】
図11は、データ処理装置のデフォルト読込み処理例を示すフローチャートである。図11に示す処理は、図10のステップS1007に示したデフォルト読込み処理を詳細化したものである。
【0098】
はじめに、データ処理装置100は、DTに対する読込みの要求元と要求内容を取得する(ステップS1101)。ここで、要求元は、上述した車両Aの速度を送信するセンサー、あるいはサービス部#1、#2(411,412)の個別加工処理部#1、#2(121,122)、あるいは分析部#1、#2(131,132)であるとする。
【0099】
そして、データ処理装置100は、要求元がセンサーかサービスであるかを判断する(ステップS1102)。判断結果、要求元がセンサーであれば(ステップS1102:センサー)、データ処理装置100は、異常検出エラーをセットし(ステップS1103)、ステップS1111の処理に移行する。ここで、センサーは、送信による書込み要求のみを行うため、読込みは異常検出エラーとしている。
【0100】
一方、ステップS1102の判断結果、要求元がサービスであれば(ステップS1102:サービス)、データ処理装置100は、サービスに対応するサービス固有DTからデータを読込みする(ステップS1104)。次に、データ処理装置100は、データが読めたか否かを判断する(ステップS1105)。
【0101】
ステップS1105の判断結果、データが読めた場合には(ステップS1105:Yes)、データ処理装置100は、読んだ値を利用し(ステップS1106)、ステップS1111の処理に移行する。
【0102】
一方、データが読めなかった場合には(ステップS1105:No)、データ処理装置100は、デフォルトの振分けルールに従い、共通DTからデータを読込みする(ステップS1107)。次に、データ処理装置100は、データが読めたか否かを判断する(ステップS1108)。
【0103】
ステップS1108の判断結果、データが読めた場合には(ステップS1108:Yes)、データ処理装置100は、読んだ値を利用し(ステップS1109)、ステップS1111の処理に移行する。
【0104】
一方、データが読めなかった場合には(ステップS1108:No)、データ処理装置100は、読込み失敗エラーをセットし(ステップS1110)、ステップS1111の処理に移行する。
【0105】
ステップS1111では、データ処理装置100は、読んだ値かエラーを要求元に返し(ステップS1111)、以上の処理を終了する。要求元であるサービス部(個別加工処理部、あるいは分析部)は、データ処理装置100が返す値に基づくデータ処理を行い、エラー時にはエラー処理を行う。
【0106】
図12は、データ処理装置のデフォルト書込み処理例を示すフローチャートである。図12に示す処理は、図10のステップS1011に示したデフォルト書込み処理を詳細化したものである。
【0107】
はじめに、データ処理装置100は、DTに対する書込みの要求元を取得する(ステップS1201)。ここで、要求元は、上述した車両Aの速度を送信するセンサー、あるいはサービス部#1、#2(411,412)の個別加工処理部#1、#2(121,122)、あるいは分析部#1、#2(131,132)であるとする。
【0108】
そして、データ処理装置100は、要求元がセンサーかサービスであるかを判断する(ステップS1202)。判断結果、要求元がセンサーであれば(ステップS1202:センサー)、データ処理装置100は、共通DTにデータを書込み(ステップS1203)、ステップS1204の処理に移行する。
【0109】
一方、ステップS1202の判断結果、要求元がサービスであれば(ステップS1202:サービス)、データ処理装置100は、サービスに対応するサービス固有DTにデータの書込みを行い(ステップS1207)、ステップS1208の処理に移行する。
【0110】
ステップS1203の処理後、データ処理装置100は、データが書けたか否かを判断する(ステップS1204)。判断の結果、共通DTにデータが書けた場合には(ステップS1204:Yes)、データ処理装置100は、書込みが正常処理であるとし(ステップS1205)、ステップS1211の処理に移行する。
【0111】
一方、判断の結果、共通DTにデータが書けなかった場合には(ステップS1204:No)、データ処理装置100は、書込みエラーを検出し(ステップS1206)、ステップS1211の処理に移行する。
【0112】
また、ステップS1207の処理後、データ処理装置100は、データが書けたか否かを判断する(ステップS1208)。判断の結果、サービス固有DTにデータが書けた場合には(ステップS1208:Yes)、データ処理装置100は、書込みが正常処理であるとし(ステップS1209)、ステップS1211の処理に移行する。
【0113】
一方、判断の結果、サービス固有DTにデータが書けなかった場合には(ステップS1208:No)、データ処理装置100は、書込みエラーを検出し(ステップS1210)、ステップS1211の処理に移行する。
【0114】
ステップS1211では、データ処理装置100は、書込みが正常終了であるかエラーを要求元に返し(ステップS1211)、以上の処理を終了する。要求元であるサービス部(個別加工処理部、あるいは分析部)は、データ処理装置100が返す値に基づくデータ処理を行い、エラー時にはエラー処理を行う。
【0115】
以上説明したデータ処理装置100の説明において、DTへのアクセスを行う要求元は、サービス毎に限らず、個別加工処理部や分析部の単位で設定することとしてもよい。また、要求元に固有の振分けルールとして、図4の振分けルールテーブル403のレコード403-4に示したように、個別加工処理(例えば、処理例2相当)は、データの読書きを共通DTとする設定とすることもできる。そして、要求元から固有の振分けルールを取得できた場合、図4の振分けルールテーブル403にレコード403-4を追加するだけで簡単に振分けルールを追加できる。
【0116】
以上説明した実施の形態のデータ処理装置100は、受信したソースデータを加工した第一の加工データが格納される共通デジタルツインと、ソースデータを加工した第二の加工データが格納される固有デジタルツインと、共通デジタルツインまたは固有デジタルツインへのアクセスを要求してデータ処理を行う複数のサービス別のサービス部と、を含む。複数のサービス部は、予め定めたデータ振分けルールに従い、複数のサービス別の固有デジタルツインから第二の加工データの読込みを行い、読込み対象のデータが存在しないと判定された場合には、共通デジタルツインから第一の加工データの読込みを行う。これにより、複数のサービスで共通して利用するデータを共通デジタルツインに格納し、複数のサービス別に固有のデータは固有デジタルツインに格納する一つの統合デジタルツインとなる。また、固有デジタルツイン→共通デジタルツインのデータ振分けルールにより、サービス部は、必要とするデータを効率的に読込みできる。これにより、サービス数が増大してもストレージ領域の増大を抑え効率的に使用できる。
【0117】
また、データ処理装置100は、デジタルツインへのアクセスの要求元が、個別の振り分けルールを有する場合、当該個別の振り分けルールを取得する。そして、取得した個別の振り分けルールに従い、共通デジタルツインまたは固有デジタルツインへのアクセスを行う。これにより、要求元の振り分けルールに従った共通デジタルツインまたは固有デジタルツインへのアクセスを行うことができるようになる。
【0118】
また、データ処理装置100は、複数のサービス部は、ソースデータを加工した第二の加工データを生成し、当該第二の加工データを固有デジタルツインに書込む個別加工処理部と、第一の加工データまたは第二の加工データを処理する分析部と、を含んでもよい。分析部は、複数のサービス別の固有デジタルツインから第二の加工データの読込みを行い、読込み対象のデータが存在しないと判定された場合には、共通デジタルツインから第一の加工データの読込みを行う。このように、サービス部は、サービス毎に個別の個別加工処理と、個別加工処理後の分析を行う分析部とを有することができる。この場合、分析部は、個別加工処理後の第二の加工データによる分析に限らず、第一の加工データに基づく分析を行うこともできるようになる。
【0119】
また、データ処理装置100は、複数のサービス部は、共通デジタルツインから第一の加工データを読込み、読込んだ第一の加工データを加工した第二の加工データを、各サービス別の固有デジタルツインに書込む、処理を行うことができる。これにより、複数のサービス部で第一の加工データを共通して利用できるとともに、各サービス部が個別に処理した第二の加工データは、サービス毎に異なる固有デジタルツインに格納できるようになる。
【0120】
また、データ処理装置100は、サービス部は、共通デジタルツイン、および固有デジタルツインに対し、同じ属性のデータに対する読書きのアクセスを行うこととしてもよい。これにより、例えば、共通デジタルツインからある属性のデータが読込みできない場合、固有デジタルツインから同じ属性のデータを読込んで、分析等のサービスを継続できるようになる。
【0121】
また、データ処理装置100は、個別加工処理部は、共通デジタルツインから第一の加工データを読込み、加工した第二の加工データの作成、にかかる処理を実行または未実行で切替える場合があるとする。この場合、分析部は、個別加工処理部の未実行時には、共通デジタルツインから第一の加工データを読込む。一方、分析部は、個別加工処理部の実行時には、固有デジタルツインから第二の加工データを読込む、処理に切替えることができる。これにより、例えば、個別加工処理部の実行の有無で属性の値の算出状態を変える等の状況の変更に対応でき、状況の変更にかかる処理の変更コストを抑制できる。
【0122】
また、データ処理装置100は、分析部は、ソースデータのデータ精度または更新頻度に基づき、ソースデータのデータ精度が低精度あるいは低更新頻度であれば、固有デジタルツインから第二の加工データを読込む。一方、ソースデータのデータ精度が高精度、あるいは高更新頻度であれば、共通デジタルツインから第一の加工データを読込むことができる。これにより、ソースデータのデータ精度または更新頻度の変更に対応でき、例えば、共通デジタルツインと固有デジタルツインが保持するデータのうち、より高精度または高更新頻度のデータを読込んで分析に用いることができるようになる。
【0123】
また、データ処理装置100は、予め定めたデータ振分けルールに従い、受信したソースデータを加工した第一の加工データを、共通デジタルツインに書込む。また、複数のサービス部は、ソースデータを加工した第二の加工データを、サービス別の固有デジタルツインに書込むこととすることができる。これにより、多数のソースデータを常に受信可能にして共通デジタルツインに第一の加工データとして格納保持できるとともに、サービス部別の第二の加工データを各サービス別の固有デジタルツインに格納できるようになる。
【0124】
これらのことから、実施の形態のデータ処理装置100は、多数のサービスがアクセスするデジタルツインにおいて、各サービスに対し、共通して利用可能なデータを共通デジタルツインで提供し、各サービスに固有のデータは、固有デジタルツインで提供できる。固有デジタルツインは、サービス別に分離しており、互いに異なるサービスに適用できるほか、異なるサービス間では互いにデータを読込みできず、機密性を維持できる。共通デジタルツインと固有デジタルツインとを統合した統合デジタルツインは、MaaS(Mobility as a Service)や、人流誘導等のスマートシティ等への適用が可能である。
【0125】
なお、本発明の実施の形態で説明したデータ処理方法は、予め用意されたプログラムをサーバ等のプロセッサに実行させることにより実現することができる。本方法は、ハードディスク、フレキシブルディスク、CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disk)、フラッシュメモリ等のコンピュータで読取り可能な記録媒体に記録され、コンピュータによって記録媒体から読出されることによって実行される。また本方法は、インターネット等のネットワークを介して配布してもよい。
【0126】
上述した実施の形態に関し、さらに以下の付記を開示する。
【0127】
(付記1)受信したソースデータを加工した第一の加工データが格納される共通デジタルツインと、前記ソースデータを加工した第二の加工データが格納される固有デジタルツインと、前記共通デジタルツインまたは前記固有デジタルツインへのアクセスを要求してデータ処理を行う複数のサービス別のサービス部と、を含むデータ処理装置のコンピュータが実行するデータ処理方法であって、
複数の前記サービス部は、予め定めたデータ振分けルールに従い、
複数のサービス別の前記固有デジタルツインから前記第二の加工データの読込みを行い、
読込み対象のデータが存在しないと判定された場合には、
前記共通デジタルツインから前記第一の加工データの読込みを行う、
ことを特徴とするデータ処理方法。
【0128】
(付記2)前記デジタルツインへのアクセスの要求元が、個別の振り分けルールを有する場合、当該個別の振り分けルールを取得し、
取得した個別の振り分けルールに従い、前記共通デジタルツインまたは前記固有デジタルツインへのアクセスを行う、
ことを特徴とする付記1に記載のデータ処理方法。
【0129】
(付記3)複数の前記サービス部は、
前記ソースデータを加工した第二の加工データを生成し、当該前記第二の加工データを前記固有デジタルツインに書込む個別加工処理部と、前記第一の加工データまたは前記第二の加工データを処理する分析部と、を含み、
前記分析部は、
複数のサービス別の前記固有デジタルツインから前記第二の加工データの読込みを行い、
読込み対象のデータが存在しないと判定された場合には、
前記共通デジタルツインから前記第一の加工データの読込みを行う、
ことを特徴とする付記1に記載のデータ処理方法。
【0130】
(付記4)複数の前記サービス部は、
前記共通デジタルツインから前記第一の加工データを読込み、
読込んだ前記第一の加工データを加工した第二の加工データを、各サービス別の固有デジタルツインに書込む、
ことを特徴とする付記1に記載のデータ処理方法。
【0131】
(付記5)前記サービス部は、
前記共通デジタルツイン、および前記固有デジタルツインに対し、同じ属性のデータに対する読書きのアクセスを行うことを特徴とする付記1に記載のデータ処理方法。
【0132】
(付記6)前記個別加工処理部は、
前記共通デジタルツインから前記第一の加工データを読込み、加工した前記第二の加工データの作成、にかかる処理を実行または未実行で切替える場合、
前記分析部は、
前記個別加工処理部の未実行時には、前記共通デジタルツインから前記第一の加工データを読込み、
前記個別加工処理部の実行時には、前記固有デジタルツインから前記第二の加工データを読込む、
ことを特徴とする付記3に記載のデータ処理方法。
【0133】
(付記7)前記分析部は、
前記ソースデータのデータ精度または更新頻度に基づき、前記ソースデータのデータ精度が低精度あるいは低更新頻度であれば、前記固有デジタルツインから前記第二の加工データを読込み、
前記ソースデータのデータ精度が高精度、あるいは高更新頻度であれば、前記共通デジタルツインから前記第一の加工データを読込む、
ことを特徴とする付記3に記載のデータ処理方法。
【0134】
(付記8)予め定めたデータ振分けルールに従い、
受信した前記ソースデータを加工した前記第一の加工データを、前記共通デジタルツインに書込み、
複数のサービス部は、
前記ソースデータを加工した前記第二の加工データを、サービス別の前記固有デジタルツインに書込む、
ことを特徴とする付記1に記載のデータ処理方法。
【0135】
(付記9)受信したソースデータを加工した第一の加工データが格納される共通デジタルツインと、前記ソースデータを加工した第二の加工データが格納される固有デジタルツインと、前記共通デジタルツインまたは前記固有デジタルツインへのアクセスを要求してデータ処理を行う複数のサービス別のサービス部と、を含むデータ処理装置のコンピュータに実行させるデータ処理プログラムであって、
複数の前記サービス部は、予め定めたデータ振分けルールに従い、
複数のサービス別の前記固有デジタルツインから前記第二の加工データの読込みを行い、
読込み対象のデータが存在しないと判定された場合には、
前記共通デジタルツインから前記第一の加工データの読込みを行う、
ことを特徴とするデータ処理プログラム。
【0136】
(付記10)受信したソースデータを加工した第一の加工データが格納される共通デジタルツインと、
前記ソースデータを加工した第二の加工データが格納される固有デジタルツインと、
前記共通デジタルツインまたは前記固有デジタルツインへのアクセスを要求してデータ処理を行う複数のサービス別のサービス部と、を含むデータ処理装置であって、
予め定めたデータ振分けルールに従い、
複数のサービス別の前記固有デジタルツインから前記第二の加工データの読込みを行い、
読込み対象のデータが存在しないと判定された場合には、
前記共通デジタルツインから前記第一の加工データの読込みを行う、
振分け部を有することを特徴とするデータ処理装置。
【符号の説明】
【0137】
100 データ処理装置
110 共通デジタルツイン(DT)
111,112 固有DT
121,122 個別加工処理部
131,132 分析部
400 統合デジタルツイン
401 統合デジタルツインIO部
402 サービスDT設定テーブル
403 振分けルールテーブル
421 要求受信部
422 振分け先先決定部
423 要求送信部
501 CPU
502 メモリ
503 ネットワークI/F
505 記録媒体
507 可搬型記録媒体
S0 ソースデータ
S1 第一の加工データ
S2 第二の加工データ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12