JP7403406B2 - データ利活用システムにおけるデータ提供方法 - Google Patents

データ利活用システムにおけるデータ提供方法 Download PDF

Info

Publication number
JP7403406B2
JP7403406B2 JP2020129491A JP2020129491A JP7403406B2 JP 7403406 B2 JP7403406 B2 JP 7403406B2 JP 2020129491 A JP2020129491 A JP 2020129491A JP 2020129491 A JP2020129491 A JP 2020129491A JP 7403406 B2 JP7403406 B2 JP 7403406B2
Authority
JP
Japan
Prior art keywords
data
transaction
processing
request
management server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020129491A
Other languages
English (en)
Other versions
JP2022026161A (ja
Inventor
健 久田
裕教 江丸
明人 金子
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2020129491A priority Critical patent/JP7403406B2/ja
Priority to US17/336,369 priority patent/US11816109B2/en
Publication of JP2022026161A publication Critical patent/JP2022026161A/ja
Application granted granted Critical
Publication of JP7403406B2 publication Critical patent/JP7403406B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24568Data stream processing; Continuous queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • G06Q20/0655Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash e-cash managed centrally
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/12Payment architectures specially adapted for electronic shopping systems
    • G06Q20/123Shopping for digital content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/14Payment architectures specially adapted for billing systems
    • G06Q20/145Payments according to the detected use or quantity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/389Keeping log of transactions for guaranteeing non-repudiation of a transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q2220/00Business processing using cryptography

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • General Engineering & Computer Science (AREA)
  • Finance (AREA)
  • Software Systems (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Description

本発明は、データ利活用システムにおけるデータ提供方法に関する。
ブロックチェーンとは、過去に行われたすべての取引データが、ブロックごとにまとめられ、各ブロックが1本の鎖のようにつながった分散型のデータベース(台帳)をいう。ネットワーク上に多数存在するコンピュータによって、この台帳は検証され、全く同じものが共有されており、参加者は誰でも台帳を参照することができる。なお、不特定多数が参加者として認められるパブリックチェーン、あらかじめ決められた参加者のみが参加できるプライベートチェーン、コンソーシアムチェーンがある。ブロックチェーンのブロックには前のブロックによって決まる部分が含まれているため、過去の取引データを改変すると次のブロックとの整合がつかなくなり、かつ新しいブロックをつなげるには複数の参加者の合意が必要であるため、実質的に台帳の内容を改ざんすることは困難となっている。
このような台帳の改ざんが困難であるという特徴を活かして、ブロックチェーンはその用途が広げられ、暗号資産に限られず、複数機関の間での電子データ共有や権利証明、サプライチェーンなどへの幅広い応用が検討されている。特に、複数機関の間で取引の信頼性を確保できる点でデータ共有プラットフォームへの親和性が高く、例えば、特許文献1には、ブロックチェーンを用いたデータ共有プラットフォームが提案されている。
特開2019-176458号公報
特許文献1に開示されるデータ共有プラットフォームでは、データ提供者がデータ保存サーバに保存したデータを、データ使用者が利用料を支払い、該当データをデータ保存サーバから伝送する、というオリジナルデータ単位の取引が想定されている。
しかしながら、データの大容量化や個人情報保護等の観点から、オリジナルデータである大容量データを丸ごと取引するよりも、むしろ、大容量データからの抜粋データや大容量データを加工して得られる特徴量データを取引対象とする需要の方が高まると考えられる。すなわち、ビッグデータを機械学習や統計解析に用いたいデータ利用者にとって、オリジナルデータそのものが必要なわけではなく、オリジナルデータに対して所定の加工を行って、適切なデータ範囲やデータ形式でデータ取得ができれば十分である。
本発明は、オリジナルデータに対してデータ利用者が所望する加工を行った処理データを提供するデータ共有プラットフォームにおいて、データ提供者がデータ利用者に提供する処理データについての信頼性を確保することでデータ利活用を促進可能なデータ利活用システム、データ利活用システムにおけるデータ提供方法を提案するものである。
本発明の一実施の形態であるデータ提供方法は、ネットワークに接続され、第1のユーザの第1のデータ管理サーバ及び第2のユーザの第2のデータ管理サーバを含む複数のデータ管理サーバとデータ処理サーバとを有するデータ利活用システムにおけるデータ提供方法であって、複数のデータ管理サーバはそれぞれ、分散共有台帳を保持しており、第1のデータ管理サーバは、データ登録プログラムを実行することにより、第1データをストレージに保存するとともに、第1データが保存されたことを示す第1のトランザクションを作成し、検証された第1のトランザクションを分散共有台帳の一つであるメタデータ管理テーブルのレコードとして追加し、第2のデータ管理サーバは、第1データを処理する解析処理リクエストを第1のデータ管理サーバに送信し、第1のデータ管理サーバは、解析処理リクエストを受けて解析処理プログラムを実行することにより、解析処理リクエストをデータ処理サーバに転送して第1データを処理して得られた第2データをストレージに保存させるとともに、データ処理サーバから第1データの処理完了通知を受けて、解析処理リクエストにしたがって第1データを処理したことを示す第2のトランザクションを作成し、検証された第2のトランザクションを分散共有台帳の一つである処理/利用証跡管理テーブルのレコードとして追加する。
データ提供者が外部にそのまま提供することを望まないオリジナルデータであっても、その処理データであることを改ざん困難な証跡として残した上で処理データを他者に提供することでデータ利活用を促進する。
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
データ利活用システムの全体構成図である。 データ利活用システムの全体構成図である。 データ管理サーバのハードウェア構成図である。 データ処理サーバのハードウェア構成図である。 クライアントサーバのハードウェア構成図である。 オリジナルデータ登録フローチャートである。 データ利活用フローチャートである。 第1の利用審査フローチャートである。 第2の利用審査フローチャートである。 データ解析処理フローチャートである。 課金フローチャートである。 アクセス権限管理テーブルのデータ構造例である。 アクセス権限管理テーブルのデータ構造例である。 処理/利用証跡管理テーブルのデータ構造例である。 メタデータ管理テーブルのデータ構造例である。 課金テーブルのデータ構造例である。 データ管理テーブルのデータ構造例である。 処理実行管理テーブルのデータ構造例である。
以下、本発明を実施するための形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための各図において、同一の機能を有する要素には同一の符号を付し、その繰り返しの説明は省略するものとする。
図1Aにデータ利活用システムの全体構成図を示す。本システムは、データ管理サーバ2000、データ処理サーバ3000、クライアントサーバ4000を有し、これらはネットワーク1100によって互いに通信可能に接続されている。ネットワーク1100は有線ネットワーク、無線ネットワーク、あるいはそれらの混在であってもよい。図1Aの構成は、本実施例でのデータ利活用システムによるサービスをパブリッククラウド上で実現する場合に好適なシステム構成である。
データ管理サーバ2000は、データ利活用システムを利用する主体(ユーザ)ごとに設けられる。なお、ユーザごとに一つのデータ管理サーバを割り当てる必要はなく、複数のユーザが一つのデータ管理サーバを共有してもよい。本実施例で説明するデータ利活用サービスの主体には、データ利用者A及びデータ提供者Bが含まれる。主体は、個人であってもよいし、企業のような組織であってもよい。また、主体の役割は必ずしも固定的ではなく、データ利用者Aにもデータ提供者Bにもなりうるものであるが、以下では説明を複雑にしないため、データ利用者Aとデータ提供者Bとは特記しない限り、以下の説明ではそれぞれの役割のみを果たす主体として記述する。データ利用者Aは、オリジナルデータを保有するデータ提供者Bに対して、オリジナルデータに対して所定の処理を施した処理データの提供を依頼する。データ提供者Bはその依頼を受け付けると、依頼に沿った処理をオリジナルデータに対して実行し、オリジナルデータを加工した処理データをデータ利用者Aに提供する。本実施例のデータ利活用システムでは、オリジナルデータの登録から処理データの提供及び課金に至るまでの過程における重要な手続き、具体的にはオリジナルデータの登録、オリジナルデータの利用審査、オリジナルデータの処理(加工)、課金をスマートコントラクトにより実行し、改ざん困難な証跡として残す。
このため、データ管理サーバ2000は、スマートコントラクトを実行する共通機能を有し、データ利活用における各種トランザクションを記録する分散共有台帳を保有している。
各主体(ユーザ)は端末1000からクライアントサーバ4000を通じて、データ利活用システムにアクセスする。端末1000からの入力は、クライアントサーバ4000を介して自己のデータ管理サーバ2000に送られる。例えば、ユーザがデータ利用者Aであれば、入力はデータ利用者Aのデータ管理サーバ2000Aに、ユーザがデータ提供者Bであれば、入力はデータ提供者Bのデータ管理サーバ2000Bに送られる。端末1000は、PC(Personal Computer)でもよく、スマートフォン、タブレットでもよい。
データ処理サーバ3000は、データ提供者Bの保有するオリジナルデータに対して、データ利用者Aの依頼にしたがった処理を実行する。データ処理サーバ3000は、データ利活用システムの主体間で共有されるサーバであってもよいし、データ提供者Bが占有するサーバであってもよい。さらに、データ利活用システムの主体として、データ加工者Cが存在する場合には、データ加工者Cが占有するサーバであってもよい。データ処理サーバ3000はデータ利活用システムに複数あってもよく、またデータ加工者が複数いても構わない。
図1Bは、データ利活用システムの別の全体構成図である。本システムは、サブネット1100によって互いに通信可能とされたデータ管理サーバ2000、データ処理サーバ3000、クライアントサーバ4000を有するサブシステムを複数有し、複数サブシステムがさらに共通ネットワーク1200によって互いに通信可能に接続されている。サブシステムは、データ利活用システムを利用する主体ごとに設けられ、データ処理サーバ3000も主体に占有される形でサブシステム上に設けられている。共通ネットワーク1200は有線ネットワーク、無線ネットワーク、あるいはそれらの混在であってもよい。図1Bの構成は、本実施例でのデータ利活用サービスを各主体のプライベートクラウド上で実現する場合に好適なシステム構成である。
なお、図1A、図1Bの全体構成図はそれぞれ典型例であって、様々な変形が許容される。例えば、図1Aのシステムに対して、図1Bのサブシステムを接続するような全体構成、図1Bのシステムにおいて共通ネットワーク1200上にデータ利活用システムの主体間で共有されるデータ処理サーバが配置されるような全体構成等、さまざまな変形例が考えられる。
次に、各サーバのハードウェア構成について説明する。
図2にデータ管理サーバ2000のハードウェア構成図を示す。データ管理サーバ2000は、プロセッサ2120、入出力デバイス2130、メモリ2140、ストレージメディア2150、ネットワークインタフェース2160を含み、これらはバス2170により通信可能に結合されている。入出力デバイス2130は、外部装置との情報の入出力を行うためのデバイスであり、ネットワークインタフェース2160はネットワーク1100と接続するためのインタフェースである。なお、以下では、データ管理サーバ2000及びその構成について、データ管理サーバ2000を使用する主体(ユーザ)を明示する場合、符号の後に主体を示す符号を付して示す。例えば、データ提供者Aのデータ管理サーバ2000であることを明示する場合には、データ管理サーバ2000Aと表示する。
ストレージメディア2150は、HDD(Hard Disk Drive)やSSD(Solid State Drive)などの不揮発性記憶装置であって、データ管理サーバ2000が実行するプログラムやプログラムが処理するデータなどを保存する。データには利活用対象となる対象データと対象データの管理情報である管理データが含まれる。図2は、データ提供者Bのデータ管理サーバを例示するものであり、対象データとしてオリジナルデータとその加工データである処理データとを保存している。ただし、対象データがビッグデータのような大規模データである場合には、データのコンテンツそのものをストレージメディア2150に保存する必要はなく、例えば、クラウド上のオブジェクトストレージに保存し、対象データにアクセスするためのデータパスを保存すればよい。管理データには、対象データを管理するデータ管理テーブル14000、証跡として記録される各種分散共有台帳が含まれる。本実施例では、対象データとしてオリジナルデータを保存しているのは、データ提供者Bのデータ管理サーバのみである。
メモリ2140はRAM(Random Access Memory)で構成され、プロセッサ2120の命令により、プログラムやプログラムの実行に必要なデータ等をストレージメディア2150から一時的に記憶する。プロセッサ2120は、ストレージメディア2150からメモリ2140にロードしたプログラムを実行する。
ストレージメディア2150に格納されたプログラム、データの内容については後述する。データ管理サーバ2000の機能は、ストレージメディア2150に格納されたプログラムがプロセッサ2120によって実行されることで実現される。
図3にデータ処理サーバ3000、図4にクライアントサーバ4000のハードウェア構成図を示す。ハードウェア構成そのものは図2のデータ管理サーバと同じであるため、説明を省略する。
以下では、本実施例のデータ利活用システムの利用例として、気象データを蓄積するデータ提供者Bに対して、データ利用者Aが特定地域、特定期間での気象予測の提供を依頼する例を用いて、本データ利活用システムのデータ提供方法について説明する。
例えば、データ提供者Bは、日本全国における観測された気象に関するメッシュデータを蓄積しているものとする。メッシュデータとは、所定の大きさのエリア、例えば1km四方単位ごとに、所定時間間隔での気象に関する観測データや予報データをまとめたものである。気象に関するデータには、天気、気温、降水量、気圧、風速・風向、PM2.5(微小粒子状物質)濃度などが含まれているものとする。データ利用者Aが、データ提供者Bに対し、データ提供者Bが蓄積する気象観測データ(オリジナルデータ)を元に、翌週の東京23区でのPM2.5分布予測データの提供を依頼する場合を例にして説明する。
(オリジナルデータ登録フロー)
データ利活用に先立ち、図5にデータ提供者Bが自己のデータ管理サーバ2000Bにオリジナルデータ(ここでは、気象データ)を登録するフローを示す。データ提供者Bはクライアントサーバ4000を介して、データ管理サーバ2000Bにオリジナルデータを登録する。
データ提供者Bはクライアントサーバ4000のデータ登録プログラム4200を起動し、オリジナルデータと対応するメタデータ(説明は後述する)をデータ提供者Bのデータ管理サーバ2000Bに転送する(5010)。データ登録にあたっては、オリジナルデータは、生データからあらかじめ定められた形式にデータ形式が整えられているものとする。メタデータは、オリジナルデータのデータ形式に基づき、オリジナルデータの概要を示すデータをオリジナルデータから切り出すことで生成される。または、データ提供者Bがオリジナルデータの内容に基づき、メタデータを手入力することも可能である。
データ管理サーバ2000Bのデータ登録プログラム2200Bは、クライアントサーバ4000からオリジナルデータとそのメタデータを受信する(5110)と、当該オリジナルデータに対してデータIDを発行し(5120)、ストレージメディア2150に保存する(5130)。ここで、ステップ5120で発行するデータIDは本システム全体で一意のデータIDとする。本実施例においては、データの登録や加工といったデータ履歴を耐改ざん性の高い証跡として分散共有台帳に記録するため、データ提供者Bが取得した新たなオリジナルデータは分散共有台帳に記録される。このため、分散共有台帳においてデータIDが重複しないよう、データIDは本システム全体で一意とされる必要がある。分散共有台帳の各レコードに対するIDの割り付けは、一般的なブロックチェーンの台帳作成と同様の処理であるため、詳しい説明は省略する。または、ステップ5120では、データ管理サーバ2000Bにおいて一意なローカルデータIDを発行し、分散共有台帳において当該オリジナルデータについて割り当てられるデータIDとの変換テーブルを別途保持する構成としてもよい。
データ登録プログラム2200Bは、オリジナルデータのストレージメディア2150への保存が完了すると受領通知を発行する。クライアントサーバ4000のデータ登録プログラム4200が受領通知を受信する(5020)と、データ登録プログラム4200は終了する。
一方、データ管理サーバ2000Bのデータ登録プログラム2200Bは、新規登録したオリジナルデータについてのレコードをデータ管理テーブル14000に追加する(5140)。
図14にデータ管理テーブル14000のデータ構造例を示す。データ管理テーブル14000は、データIDカラム14001、データパスカラム14002、親データIDカラム14003、登録者IDカラム14004、登録時刻カラム14005を含む。カラム14001には登録するデータのデータID、カラム14002にはデータの保存アドレス(データパス)、カラム14003には、登録されたデータが別のデータから加工された処理データである場合にその元となったデータ(親データを呼ぶ)のデータID、カラム14004にはデータを登録したユーザID、カラム14005にはデータがデータ管理サーバ2000Bに登録された時刻が記録される。
レコード14011がステップ5130で保存されたオリジナルデータについてのレコードであるとすると、カラム14001には、ステップ5120で割り当てられたデータIDが、カラム14003には、本データは加工されたデータではないので「-(Null)」が、カラム14004にはデータ提供者Bを示す「100」が登録される。なお、データ管理テーブル14000を登録されたデータのメタデータも保存できるように拡張してもよい。
続いて、データ登録プログラム2200Bは、システムへの新規データ登録を示すトランザクション(メタデータ登録TX)を作成する(5150)。作成されたトランザクションは、分散共有台帳を保有する他のデータ管理サーバによって検証が行われた後に、分散処理台帳への書き込み処理を行い(5160)、トランザクションはメタデータ管理テーブルの1つのレコードとして追加される(5170)。
図12に分散共有台帳であるメタデータ管理テーブル12000のデータ構造例を示す。メタデータ管理テーブル12000は、トランザクションIDカラム12001、データIDカラム12002、提供者IDカラム12003、メタデータカラム12004、トランザクション時刻カラム12005、利用者署名カラム12006、提供者署名カラム12007、検証時刻カラム12008、検証者署名カラム12009を含む。カラム12001にはトランザクション(履歴)を一意に特定するID(TXID)、カラム12002にはデータID、カラム12003にはデータを提供したユーザID、カラム12004にはデータのメタデータ、カラム12005~12009はトランザクションの検証情報、具体的にはカラム12005には、トランザクションが作成された時刻、カラム12006にはデータ利用者の署名、カラム12007にはデータ提供者の署名、カラム12008にはトランザクションが検証者によって検証された時刻、カラム12009にはトランザクションを検証した検証者の署名が記録される。なお、メタデータカラム12004にはデータのメタデータが登録され、データのデータ形式の他、データ形式ごとの項目を含む。
TXID「A1001」がステップ5130で保存されたオリジナルデータについてのレコードであるとすると、カラム12002には、ステップ5120で割り当てられたデータIDが、カラム12004には、ステップ5110で受信されたメタデータが、カラム12006には、新しいオリジナルデータの登録であるので「-」が、カラム12007にはデータ提供者Bの署名が登録されている。
以上の処理によりデータ提供者Bが登録したオリジナルデータは、メタデータ管理テーブルに登録されることによって、データ利活用システムのユーザが利用可能な状態となる。
(データ利活用フロー)
続いて、図6にデータ利用者Aがデータ提供者Bに対して、データ提供者Bの保有するオリジナルデータ(気象観測/予報データ)を加工した処理データの提供を依頼し、処理データ(PM2.5分布予測データ)を受け取り、課金するまでのデータ利活用フローを示す。
データ利用者Aはクライアントサーバ4000のリクエスト対応プログラム4300を起動し、データリクエストをデータ利用者Aのデータ管理サーバ2000Aに発出する(6010)。データリクエストは、依頼する処理データの情報、例えば、データ形式(PM2.5)、期間(翌週)、地域(東京23区)を含む。
クライアントサーバ4000から、データリクエストがデータ利用者Aのデータ管理サーバ2000Aに送信されると、リクエスト対応プログラム2300Aは、リクエストを実現するために必要なデータをピックアップする(6110)。例えば、データリクエストから、必要なデータとして「東京23区の先月のアメダス計測データ」、「東京23区の先月のPM2.5計測データ」、「東京23区のこの先1か月の天気予報データ」をピックアップしたとする。
リクエスト対応プログラム2300Aは、データ利活用システムに処理データを得るために必要なデータが登録されているかどうかを確認するため、メタデータ管理テーブル12000を検索する(6120)。検索により、必要なデータをそれぞれ含む「東京23区の先月のアメダス計測データ」、「関東地方の先月のPM2.5計測データ」、「日本全国のこの先1か月の天気予報データ」を、データ提供者Bが保有していることが確認されたとする。
リクエスト対応プログラム2300Aは、分散共有台帳であるアクセス権限管理テーブル10000を検索し、アクセス権限の有無を確認する(6130)。本実施例では、データの利用審査履歴を記録するアクセス権限管理テーブル10000において、当該データについて、過去にアクセス権限ありの履歴があれば、アクセス権限ありと判断するものとし、そうでなければアクセス権限の有無は不明(または、なし)とする。なお、ステップ6130でのアクセス権限チェック方法は、システムにおけるアクセス権限管理方法に従って行えばよく、例えば、メタデータ管理テーブル12000においてデータごとにアクセス権限を有する主体を特定して記録している場合には、メタデータ管理テーブル12000を参照してアクセス権限を確認することができる。逆に、システムに登録されているデータに対して、システムの主体はアクセス権限があることを前提とするようなシステムの場合は、ステップ6130を省略できる。
リクエスト対応プログラム2300Aは、データ利用者Aのデータリクエストに対するメタデータ管理テーブル12000の検索結果とアクセス権限チェックの結果とを含むデータリクエスト結果通知をクライアントサーバ4000に送付する(6140)。クライアントサーバ4000のリクエスト対応プログラム4300は、データ管理サーバ2000Aからデータリクエスト結果通知を受信する(6020)。データ利用者Aはリクエスト対応プログラム4300により、データリクエスト結果通知からリクエストを実現するために必要なデータの一覧とそれらのデータに対してそれぞれ利用審査が必要であるかを確認する。その後、オリジナルデータを加工して処理データを得るために必要なデータ処理の仕様(計算リソース)を指定する(6030)。使用するアルゴリズムやパラメータ、あるいは使用するデータ処理サーバの演算能力によって処理データである予測の精度や予測を入手するまでの時間が変わってくるためである。データ処理の仕様を指定した後に、データ利用者Aはリクエスト対応プログラム4300により、データ提供者Bに対する対象データの利用審査リクエストを作成する(6040)。クライアントサーバ4000から、利用審査リクエストがデータ利用者Aのデータ管理サーバ2000Aに送信されると、リクエスト対応プログラム2300Aは利用審査プログラム2400Aを呼び出す(6150)。
後述する利用審査の結果、すべてのデータについてアクセス権限が付与された場合(ステップ6160でYes)には、リクエスト対応プログラム2300Aは、データ提供者Bに対する解析処理リクエストを作成する(6170)。すべてのデータについてアクセス権限が付与されたのでなければ(ステップ6160でNo)、リクエスト対応プログラム2300Aは終了する。また、利用審査結果は、データ管理サーバ2000Aからクライアントサーバ4000に送信され、データ利用者Aに通知される(6050)。
なお、データリクエスト結果通知の受信(6020)時にすべてのデータについてアクセス権限が既にある場合には、ステップ6040で作成した利用審査リクエストは後述する利用審査において自動承認されるものとし、リクエスト対応プログラム2300Aは、データ提供者Bに対する解析処理リクエストを作成する(6170)。
この例では、データ利用者Aのデータ管理サーバ2000Aにおいて利用するデータが特定された後に、クライアントサーバ4000を介して、データ利用者Aにデータ処理の仕様を指定させている(6030)。これに対して、データ利用者Aにデータ処理の仕様を指定させないシステムであれば、データ管理サーバ2000Aのリクエスト対応プログラム2300Aが自動的に、データ提供者Bのデータ管理サーバ2000Bに対して、利用審査リクエストの作成(6040)、及び解析処理リクエストの作成(6170)を実行するようにしてもよい。データ処理の仕様を指定しないシステムにおいては、後述する中間処理データを有効に活用する機会の増加が期待される。
データ管理サーバ2000Aから、解析処理リクエストがデータ提供者Bのデータ管理サーバ2000Bに送信されると、データ管理サーバ2000Bのリクエスト対応プログラム2300Bは解析処理プログラム2500Bを呼び出し(6210)、解析処理リクエストに沿った処理を実行し、処理データを作成する。オリジナルデータの解析処理については後述する。
解析処理によって得られた処理データをデータ利用者Aに提供する(6220)。処理データのデータ利用者Aへの提供方法は、処理データそのものをデータ管理サーバ2000Aに送ってもよいし、処理データのデータパスをデータ管理サーバ2000Aに送ってもよい。処理データが大容量である場合は、データ転送量を抑制するためデータパスを送ることが望ましい。なお、図6のフローでは明示的には示されないが、ステップ6220は、ステップ6210に係る処理のトランザクションの分散共有台帳への書き込みが完了した後に実行される。これはトランザクションの検証段階でエラーが生じたり、トランザクションがキャンセルされたりした場合に、分散共有台帳への書き込みがなされることなく、データ提供者Bからデータ利用者Aに処理データが提供されてしまうことを防止するためである。
データ管理サーバ2000Aのリクエスト対応プログラム2300Aは処理データを受領する(6180)ことにより終了する。
データ管理サーバ2000Bのリクエスト対応プログラム2300Bは、引き続きデータ利用者Aへのデータ提供に係る課金のため、課金リクエストを作成し(6230)、課金プログラム2600Bを呼び出す(6240)。課金処理については後述する。課金処理が終了することにより、リクエスト対応プログラム2300Bは終了し、処理データの提供手続きはすべて完了する。
(利用審査フロー)
図6のフローチャートにおけるステップ6150に係る利用審査について説明する。図7Aに利用審査の第1のフロー例を示す。
データ管理サーバ2000Aの利用審査プログラム2400Aは、図6のフローチャートにおけるステップ6040にて作成された利用審査リクエストを、データ提供者Bのデータ管理サーバ2000Bに転送する(7010)。
データ管理サーバ2000Bの利用審査プログラム2400Bは、利用審査リクエストを受信し(7110)、利用審査を実施する(7120)。審査方法については特に限定せず、例えば、ホワイトリスト方式でも、ブラックリスト方式であってもよい。審査が終了すると、データごとに審査依頼時刻、審査実施時刻、審査結果等を含む審査終了通知をデータ管理サーバ2000Aに送付する(7130)。
データ管理サーバ2000Aの利用審査プログラム2400Aは、データ管理サーバ2000Bから審査終了通知を受信する(7020)と、データへのアクセス審査履歴を示すトランザクション(利用審査登録TX)を作成する(7030)。作成されたトランザクションは、分散共有台帳を保有する他のデータ管理サーバによって検証が行われた後に、分散処理台帳への書き込み処理を行い(7040)、トランザクションはアクセス権限管理テーブルの1つのレコードとして追加される(7050)。
図10Aに、図7Aのフローチャートに対応する分散共有台帳であるアクセス権限管理テーブル10000aのデータ構造例を示す。アクセス権限管理テーブル10000aは、トランザクションIDカラム10001、データIDカラム10002、利用者IDカラム10003、提供者IDカラム10004、審査時刻カラム10005、ステータスカラム10006、トランザクション時刻カラム10007、利用者署名カラム10008、提供者署名カラム10009、検証時刻カラム10010、検証者署名カラム10011を含む。カラム10001にはトランザクション(履歴)を一意に特定するID(TXID)、カラム10002にはデータID、カラム10003にはデータの利用審査依頼者、すなわちデータを利用するユーザID、カラム10004にはデータの利用審査依頼審査者、すなわちデータを提供したユーザID、カラム10005には利用審査が行われた時刻(この例では、審査依頼時刻と審査実施時刻)、カラム10006には、データの利用許否(利用審査結果)、カラム10007~10011はトランザクションの検証情報が記録される。なお、カラム10006にはデータの利用審査依頼が許諾された場合には1、利用審査依頼が拒否された場合には0が登録されるものとする。
TXID「B1001」がステップ7110で受信された利用審査リクエストに含まれる、ある1つのオリジナルデータの利用審査についてのトランザクションであるとすると、カラム10002には、利用審査対象であるデータのデータIDが、カラム10003には、データ利用者AのユーザIDが、カラム10004には、データ提供者BのユーザIDが、カラム10006には、利用審査リクエストが当該データについて許諾されたことを示す「1」が登録されている。
図7Bに利用審査の第2のフロー例を示す。利用審査において、利用審査依頼者の身元確認が必要になるような場合に、審査に時間を要する場合がある。このような場合、第2のフロー例では、利用審査依頼と利用審査とを分離することによって、データ管理サーバ2000Aの利用審査プログラム2400Aが長時間にわたってデータ管理サーバ2000Bからの応答待ちになることを防止することができる。図7Bのフローチャートでは、図7Aのフローチャートと同じステップについては同じ符号を付し、説明を省略する。
データ管理サーバ2000Bの利用審査プログラム2400Bは、利用審査リクエストを受信する(7110)と、審査依頼を受理したことをデータ管理サーバ2000Aに通知する(7140)。利用審査プログラム2400Bは、この段階ではデータの利用許否の審査を行わないので、遅滞なく受理通知をデータ管理サーバ2000Aに通知することができる。
データ管理サーバ2000Aの利用審査プログラム2400Aは、データ管理サーバ2000Bから審査依頼受理通知を受信する(7060)と、データへのアクセス審査依頼の履歴を示すトランザクション(利用審査依頼TX)を作成する(7070)。作成されたトランザクションは、分散共有台帳を保有する他のデータ管理サーバによって検証が行われた後に、分散処理台帳への書き込み処理を行い(7080)、トランザクションはアクセス権限管理テーブルの1つのレコードとして追加される(7090)。
データ管理サーバ2000Bの利用審査プログラム2400Bは、利用審査が終了すると審査終了通知をデータ管理サーバ2000Aに送付する(7130)。これ以降のフローは、図7Aのフローと同様である。
図10Bに、図7Bのフローチャートに対応する分散共有台帳であるアクセス権限管理テーブル10000bのデータ構造例を示す。アクセス権限管理テーブル10000bには、利用審査依頼トランザクションと利用審査登録トランザクションの両方とその対応付けが記録される。図10Aと異なるカラムは、トランザクション種別カラム10021、親トランザクション10022である。カラム10021には、利用審査依頼トランザクションと利用審査登録トランザクションとを識別する情報が、カラム10022には、利用審査登録トランザクションに対応する利用審査依頼トランザクションのTXIDが登録されている。
TXID「B1001」がステップ7110で受信された利用審査リクエストに含まれる、ある1つのオリジナルデータの利用審査依頼についてのトランザクションであり、TXID「B1002」がその利用審査依頼の利用審査についてのトランザクションであるとする。この場合、TXID「B1001」のカラム10021には、利用審査依頼トランザクションであることを示す「A」が、カラム10022及びカラム10006には、利用審査依頼トランザクションであるので「-」が、カラム10005には、利用審査依頼時刻が登録されている。TXID「B1002」のカラム10021には、利用審査登録トランザクションであることを示す「B」が、カラム10022には、対応する利用審査依頼トランザクションのTXID「B1001」が、カラム10005には、利用審査実施時刻が、カラム10006には、利用申請リクエストが当該データについて許諾されたことを示す「1」が登録されている。
(データ解析処理フロー)
図6のフローチャートにおけるステップ6210に係るデータ解析処理について説明する。図8にデータ解析処理のフロー例を示す。
データ利用者Aのデータ管理サーバ2000Aから、解析処理リクエストがデータ提供者Bのデータ管理サーバ2000Bに送信されると、解析処理プログラム2500Bは、受信した解析処理リクエストに対して、解析処理を実行するために必要な項目を追加する(8010)。追加される項目には、例えば、処理対象となるオリジナルデータ(この例では、「東京23区の先月のアメダス計測データ」、「関東地方の先月のPM2.5計測データ」、「日本全国のこの先1か月の天気予報データ」)のデータパス、処理データのデータID、処理データの出力先とするデータパス(「処理データパス」という)、解析処理を行うデータ加工者のユーザIDを含む。以下の例では、データ提供者B自身が、自己のリソースであるデータ処理サーバ3000を用いて解析処理を行うものとするが、データ加工者Cに依頼して解析処理を行わせることも可能である。この場合は、解析処理はデータ加工者Cのリソースであるデータ処理サーバを用いて行われる。
解析処理プログラム2500Bは、項目が追加された解析処理リクエストをデータ処理サーバ3000に転送し(8020)、データ処理サーバ3000の解析処理プログラム3200が当該リクエストを受信する(8110)。
解析処理プログラム3200は、受信した解析処理リクエストに対してリクエストID及びタスクIDを割り当てる。タスクIDは、最終的に処理データを得るために複数のタスクを実行する必要がある場合に、各タスクに対して割り当てられるIDである。ステップ8120で発行するリクエストIDは本システム全体で一意のリクエストIDである。本実施例においては、データの登録や加工といったデータ履歴を耐改ざん性の高い証跡として分散共有台帳に記録するため、データ利用者Aからの解析処理リクエストは分散共有台帳に記録される。このため、分散共有台帳においてリクエストIDが重複しないよう、リクエストIDは本システム全体で一意とされる必要がある。タスクIDはリクエストIDに紐づけられて設定される。
この例では、データ処理サーバ3000は、「東京23区の先月のアメダス計測データ(オリジナルデータ、データID:00011)」、「関東地方の先月のPM2.5計測データ(オリジナルデータ、データID:00022)」、「日本全国のこの先1か月の天気予報データ(オリジナルデータ、データID:00033)」から、「翌週の東京23区でのPM2.5分布予測データ(処理データ、データID:00044)」を得るための解析処理リクエスト(リクエストID:XYZ)につき、4つのタスク(タスクID:XYZ-1~4)を実行する。
タスク1(XYZ-1)は、関東地方のデータ(00022)から東京23区のデータ(00022-1)を抽出する。ここで、タスクごとの処理データを中間処理データといい、中間処理データのデータIDは、その元になったデータのデータIDに紐づけられて設定される。複数の元データから1つの中間処理データが得られる場合には、中間処理データのデータIDは、いずれか1つの元データのデータIDに紐づけて設定すればよい。
タスク2(XYZ-2)は、日本全国におけるこの先1か月のデータ(00033)から東京23区における翌週のデータ(00033-1)を抽出する。
タスク3(XYZ-3)は、アメダス計測データ(00011)とPM2.5計測データ(00022-1)との関係(00011-1)を解析する。
タスク4(XYZ-4)は、アメダス計測データとPM2.5計測データとの関係(00011-1)と翌週の天気予報(00033-1)とに基づき、翌週のPM2.5予測データ(00044)を算出する。
また、以上のタスクについて、解析処理プログラム3200は、データ利用者Aによって指定されたデータ処理の仕様(図6のフローチャートのステップ6030)に基づいて、各タスクについて計算リソースを指定する。計算リソースは、使用するソフトウェアのバージョン、パラメータを設定することで行える。このように解析処理リクエストについて設定されたタスクの内容は、データ処理サーバ3000の処理実行管理テーブル15000に登録される。
図15に処理実行管理テーブル15000のデータ構造例を示す。処理実行管理テーブル15000は、リクエストIDカラム15001、タスクIDカラム15002、親データIDカラム15003、データパス(親)カラム15004、子データIDカラム15005、データパス(子)カラム15006、利用者IDカラム15007、提供者IDカラム15008、加工者IDカラム15009、利用範囲カラム15010、計算リソースカラム15011、処理時間カラム15012を含む。カラム15001にはリクエストID、カラム15002にはタスクID、カラム15003には加工される元データ(親データという)のデータID、カラム15004には親データの保存アドレス(データパス)、カラム15005には加工により得られる中間処理データまたは処理データ(子データという)のデータID、カラム15006には子データの保存アドレス(データパス)、カラム15007には解析依頼者であるデータ利用者のユーザID、カラム15008には親データのデータ提供者のユーザID、カラム15009にはデータ処理を実行するデータ加工者のユーザID、カラム15010には、親データの利用範囲、カラム15011には設定された計算リソース、カラム15012には、データ処理サーバ3000が解析処理を実行した時間が記録される。なお、子データの保存先は、オリジナルデータの場合と同様に、データのコンテンツそのものをデータ処理サーバ3000のストレージメディア3150に保存してもよく、クラウド上のオブジェクトストレージに保存してもよい。
ステップ8130においては、各タスクについて、それぞれカラム15001~15011までの内容が登録される。
解析処理プログラム3200は、親データのデータパスに示されるデータの保存アドレスにアクセスし、処理対象となるデータを取り出し(8140)、設定された計算リソースを用いて処理を実行し(8150)、得られた子データを子データのデータパスに示されるデータの保存アドレスに保存する(8160)。
続いて、解析処理プログラム3200は処理実行管理テーブル15000のカラム15012に、各タスクの解析処理を実行した時間を記録する(8170)。また、データ処理サーバ3000のデータ管理テーブル14000’に処理データを登録する(8180)。データ管理テーブル14000’のデータ構造は図14に示したものと同様である。レコード14012は処理データについてのレコードであり、カラム14001には、処理データのデータIDが、カラム14003には、親データのデータID(中間処理データのデータIDであってもよい)が登録される。なお、カラム14004にはデータ加工者のユーザIDを登録するものとする。この例では、データ加工者であり、データ提供者Bでもある「100」が登録されることになるが、データ加工者Cが解析処理を行った場合には、データ加工者CのユーザIDが登録される。
以上で、データ処理サーバ3000における解析処理を終了し、解析処理プログラム3200は実行完了通知をデータ管理サーバ2000Bに行う(8190)。この実行完了通知には、リクエストIDに紐づく処理実行管理テーブル15000のレコードが添付される。添付する処理実行管理テーブル15000のレコードにおいて、データパスの情報(カラム15004、カラム15006)については除いてよい。
実行完了通知後において、すべての中間処理データを保存する必要はないとしても、使用頻度が高い中間処理データあるいは、中間処理データの作成に計算リソース負荷の大きい中間処理については保存しておくことで、再利用が可能になる。保存不要と判断した中間処理データについてはデータパスから削除する。中間処理データの保存要否については、タスクごとにデータ加工者が判断する。中間処理データを保存しておくことで、別の解析処理リクエストを受けた場合において、処理実行管理テーブル15000を検索し、ストレージに保存された中間処理データを利用することにより、再度中間処理データを得るための計算リソースと計算時間を省略することができる。
データ管理サーバ2000Bの解析処理プログラム2500Bは、データ処理サーバ3000からの実行完了通知を受信すると(8030)、処理データを自己のデータ管理テーブル14000に登録する(8040)。図14に示したデータ管理テーブル14000のレコード14012が処理データのレコードである。レコードの内容は、データ管理テーブル14000’と同様であるので省略する。
続いて、解析処理プログラム2500Bは、解析処理リクエストの処理がなされたことを示すトランザクション(リクエスト処理TX)を作成する(8050)。作成されたトランザクションは、分散共有台帳を保有する他のデータ管理サーバによって検証が行われた後に、分散処理台帳への書き込み処理を行い(8060)、トランザクションは処理/利用証跡管理テーブルの1つのレコードとして追加される(8070)。
図11に分散共有台帳である処理/利用証跡管理テーブル11000のデータ構造例を示す。処理/利用証跡管理テーブル11000は、トランザクションIDカラム11001、リクエストIDカラム11002、タスクIDカラム11003、親データIDカラム11004、子データIDカラム11005、利用者IDカラム11006、提供者IDカラム11007、加工者IDカラム11008、利用範囲カラム11009、計算リソースカラム11010、処理時間カラム11011、生成データ形式カラム11012、トランザクション時刻カラム11013、提供者署名カラム11014、検証時刻カラム11015、検証者署名カラム11016を含む。カラム11002~11011には、実行完了通知に添付された処理実行管理テーブル15000のレコードの該当カラムの内容が登録される。カラム11012には、タスクで得られた子データのデータ形式が登録されている。カラム11013~11016には、トランザクションの検証情報が登録されている。
続いて、解析処理プログラム2500Bは、解析処理リクエストによって得られた処理データのシステムへの登録がなされたことを示すトランザクション(メタデータ登録TX)を作成する。作成されたトランザクションは、分散共有台帳を保有する他のデータ管理サーバによって検証が行われた後に、分散処理台帳への書き込み処理を行い、トランザクションはメタデータ管理テーブルの1つのレコードとして追加される(8080)。
図12に示したメタデータ管理テーブル12000のTXID「C2001」のレコードが処理データのレコードである。処理データであるので、カラム12006にはデータ利用者Aの署名が含まれている。処理データについてもメタデータ管理テーブル12000に登録されることにより、処理データについてもオリジナルデータと同様に、データ利活用システムにおいて利用可能となる。
以上により、解析処理プログラム2500Bの処理が終了し、上述のように、データ管理サーバ2000Bのリクエスト対応プログラム2300Bは、解析処理によって得られた処理データをデータ利用者Aに提供する(6220)。
(課金処理フロー)
図6のフローチャートにおけるステップ6240に係る課金処理について説明する。図9に課金処理のフロー例を示す。
データ管理サーバ2000Bの課金プログラム2600Bは、データ利活用に伴う課金についてのトランザクション(課金TX)を作成する(9010)。作成されたトランザクションは、分散共有台帳を保有する他のデータ管理サーバによって検証が行われた後に、分散処理台帳への書き込み処理を行い(9020)、トランザクションは課金テーブルの1つのレコードとして追加される(9030)。課金トランザクションが確定後、確定したトランザクションに規定される所定の通貨量が取引される。
図13に分散共有台帳である課金テーブル13000のデータ構造例を示す。課金テーブル13000は、トランザクションIDカラム13001、請求元IDカラム13002、請求先IDカラム13003、対象トランザクションIDカラム13004、通貨量カラム13005、トランザクション時刻カラム13006、利用者署名カラム13007、提供者署名カラム13008、検証時刻カラム13009、検証者署名カラム13010を含む。
例えば、例として説明した処理データの提供がTXID「D1001」のレコードとして記録されているとすると、カラム13002にはデータ提供者BのユーザID「100」が、カラム13003にはデータ利用者AのユーザID「200」が記録され、処理データの提供についての請求額が通貨量1500であったことが分かる。また、TXID「D1003」のレコードのように請求元に複数の主体が存在する場合には、通貨量を寄与率により分配すればよい。寄与率は、オリジナルデータのデータ量や処理に使用した計算リソース量に応じて、複数の請求元間で取り決めればよい。
以上説明した実施例は、本発明の説明のための例示であって、本発明の範囲をこれらの実施形態にのみ限定する趣旨ではない。本発明は、多様な変更を加え、種々の形態で実施することが可能である。
1000:端末、1100:ネットワーク、1200:共通ネットワーク、2000:データ管理サーバ、3000:データ処理サーバ、4000:クライアントサーバ、2120,3120,4120:プロセッサ、2130,3130,4130:入出力デバイス、2140,3140,4140:メモリ、2150,3150,4150:ストレージメディア、2160,3160,4160:ネットワークインタフェース、2170,3170,4170:バス、2200:データ登録プログラム、2300:リクエスト対応プログラム、2400:利用審査プログラム、2500:解析処理プログラム、2600:課金プログラム、3200:解析処理プログラム、4200:データ登録プログラム、4300:リクエスト対応プログラム、10000:アクセス権限管理テーブル、11000:処理/利用証跡管理テーブル、12000:メタデータ管理テーブル、13000:課金テーブル、14000,14000’:データ管理テーブル、15000:処理実行管理テーブル。

Claims (15)

  1. ネットワークに接続され、第1のユーザの第1のデータ管理サーバ及び第2のユーザの第2のデータ管理サーバを含む複数のデータ管理サーバとデータ処理サーバとを有するデータ利活用システムにおけるデータ提供方法であって、
    前記複数のデータ管理サーバはそれぞれ、分散共有台帳を保持しており、
    前記第1のデータ管理サーバは、データ登録プログラムを実行することにより、第1データをストレージに保存するとともに、前記第1データが保存されたことを示す第1のトランザクションを作成し、検証された前記第1のトランザクションを前記分散共有台帳の一つであるメタデータ管理テーブルのレコードとして追加し、
    前記第2のデータ管理サーバは、前記第1データを処理する解析処理リクエストを前記第1のデータ管理サーバに送信し、
    前記第1のデータ管理サーバは、前記解析処理リクエストを受けて解析処理プログラムを実行することにより、前記解析処理リクエストを前記データ処理サーバに転送して前記第1データを処理して得られた第2データをストレージに保存させるとともに、前記データ処理サーバから前記第1データの処理完了通知を受けて、前記解析処理リクエストにしたがって前記第1データを処理したことを示す第2のトランザクションを作成し、検証された前記第2のトランザクションを前記分散共有台帳の一つである処理/利用証跡管理テーブルのレコードとして追加するデータ提供方法。
  2. 請求項1において、
    前記第1のデータ管理サーバは、前記解析処理プログラムを実行することにより、前記第2データがストレージに保存されたことを示す第3のトランザクションを作成し、検証された前記第3のトランザクションを前記メタデータ管理テーブルのレコードとして追加するデータ提供方法。
  3. 請求項2において、
    前記第1のデータ管理サーバは、検証された前記第2のトランザクションが前記処理/利用証跡管理テーブルに追加され、検証された前記第3のトランザクションが前記メタデータ管理テーブルに追加された後、前記第1のデータ管理サーバは前記第2のデータ管理サーバに前記第2データを提供するデータ提供方法。
  4. 請求項1において、
    前記メタデータ管理テーブルは、ストレージに保存される保存データを特定するデータID、前記保存データの提供者を特定する提供者ID、前記保存データの概要を示すメタデータ、及びトランザクションの検証情報を含み、
    前記データIDは、データ利活用システムにおいて一意に割り当てられており、
    前記メタデータは、前記保存データのデータ形式に応じて定められるデータ提供方法。
  5. 請求項1において、
    前記処理/利用証跡管理テーブルは、被処理データを処理して処理データを得る解析処理リクエストを特定するリクエストID、前記被処理データを特定する親データID、前記処理データを特定する子データID、前記解析処理リクエストの依頼者を特定する利用者ID、前記被処理データの提供者を特定する提供者ID、前記被処理データを処理する加工者ID、前記被処理データの処理に使用する計算リソース、前記被処理データの処理を行った時間、及びトランザクションの検証情報を含み、
    前記リクエストIDは、データ利活用システムにおいて一意に割り当てられているデータ提供方法。
  6. 請求項1において、
    前記データ処理サーバは、前記第1のデータ管理サーバから前記解析処理リクエストの転送を受けて、前記第1データの処理を複数のタスクに分けて実行し、前記タスクの実行により得られる中間処理データをストレージに保存し、前記第1データの処理についての情報を処理実行管理テーブルに保存し、
    前記処理実行管理テーブルは、前記解析処理リクエストを特定するリクエストID、前記タスクを特定するタスクID、前記タスクの被処理データを特定する親データID、前記中間処理データを特定する子データID、前記中間処理データの保存アドレスを示すデータパス、前記解析処理リクエストの依頼者を特定する利用者ID、前記被処理データの提供者を特定する提供者ID、前記被処理データを処理する加工者ID、前記被処理データの処理に使用する計算リソース、前記被処理データの処理を行った時間を含み、
    前記リクエストIDは、データ利活用システムにおいて一意に割り当てられ、前記タスクIDは前記リクエストIDに紐づけられて割り当てられるデータ提供方法。
  7. 請求項6において、
    前記データ処理サーバは、前記第1のデータ管理サーバから前記解析処理リクエストとは別の解析処理リクエストの転送を受けて、前記別の解析処理リクエストにしたがって前記被処理データを処理するとき、前記処理実行管理テーブルを検索し、ストレージに保存された前記解析処理リクエストの前記中間処理データを利用するデータ提供方法。
  8. 請求項1において、
    前記第2のデータ管理サーバは、前記第2のユーザからの前記第2データのデータリクエストを受けて、前記メタデータ管理テーブルを検索して前記第2データを得るために必要な前記第1データを特定し、
    前記第2のデータ管理サーバは、利用審査プログラムを実行することにより、前記第1データの利用審査リクエストを前記第1のデータ管理サーバに送信するとともに、前記第1のデータ管理サーバからの審査終了通知を受けて、前記第1データについて利用審査がなされたことを示す第4のトランザクションを作成し、検証された前記第4のトランザクションを前記分散共有台帳の一つであるアクセス権限管理テーブルのレコードとして追加するデータ提供方法。
  9. 請求項8において、
    前記第4のトランザクションは、前記第1データを特定するデータID、前記第2のユーザを特定する利用者ID、前記第1のユーザを特定する提供者ID、前記利用審査リクエストの審査が行われた審査実施時刻、及び前記第1データの前記第2のユーザへの利用許否を示すステータスを含むデータ提供方法。
  10. 請求項9において、
    前記第2のデータ管理サーバは、前記利用審査プログラムを実行することにより、前記第1のデータ管理サーバからの審査依頼受理通知を受けて、前記第1データについて利用審査依頼が受理されたことを示す第5のトランザクションを作成し、検証された前記第5のトランザクションを前記アクセス権限管理テーブルのレコードとして追加するデータ提供方法。
  11. 請求項10において、
    前記第5のトランザクションは、前記第1データを特定するデータID、前記第2のユーザを特定する利用者ID、前記第1のユーザを特定する提供者ID、及び前記利用審査リクエストが受理された審査依頼時刻を含むデータ提供方法。
  12. 請求項11において、
    前記アクセス権限管理テーブルは、前記第4のトランザクションと前記第4のトランザクションの検証情報、前記第5のトランザクションと前記第5のトランザクションの検証情報、及び前記第4のトランザクションと前記第5のトランザクションとの対応付けを含むデータ提供方法。
  13. 請求項8において、
    前記第1データの利用審査リクエストにおいて、前記第1データを処理するための計算リソースが前記第2のユーザにより指定されているデータ提供方法。
  14. 請求項3において、
    前記第1のデータ管理サーバは、前記第1のデータ管理サーバに前記第2データを提供した後、課金プログラムを実行することにより、前記第2データの提供についての課金を示す第6のトランザクションを作成し、検証された前記第6のトランザクションを前記分散共有台帳の一つである課金テーブルのレコードとして追加するデータ提供方法。
  15. 請求項14において、
    前記課金テーブルは、課金の請求元を特定する請求元ID、課金の請求先を特定する請求先ID、課金の対象を特定する対象トランザクションID、請求額を示す通貨量、及びトランザクションの検証情報を含むデータ提供方法。
JP2020129491A 2020-07-30 2020-07-30 データ利活用システムにおけるデータ提供方法 Active JP7403406B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020129491A JP7403406B2 (ja) 2020-07-30 2020-07-30 データ利活用システムにおけるデータ提供方法
US17/336,369 US11816109B2 (en) 2020-07-30 2021-06-02 Data provision method in a data utilization system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020129491A JP7403406B2 (ja) 2020-07-30 2020-07-30 データ利活用システムにおけるデータ提供方法

Publications (2)

Publication Number Publication Date
JP2022026161A JP2022026161A (ja) 2022-02-10
JP7403406B2 true JP7403406B2 (ja) 2023-12-22

Family

ID=80004381

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020129491A Active JP7403406B2 (ja) 2020-07-30 2020-07-30 データ利活用システムにおけるデータ提供方法

Country Status (2)

Country Link
US (1) US11816109B2 (ja)
JP (1) JP7403406B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4006867A1 (en) * 2020-11-25 2022-06-01 Ford Global Technologies, LLC Dynamic control of vehicle drivetrain modes operated in restricted emission traffic zones, based on real-time air quality measurements
JPWO2023162825A1 (ja) 2022-02-22 2023-08-31
US20230344834A1 (en) * 2022-04-21 2023-10-26 Cisco Technology, Inc. User role-driven metadata layers in a data mesh

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019176458A (ja) 2018-03-28 2019-10-10 マクロジェン・インコーポレイテッドMacrogen, Inc. 複数のブロックチェーンに基づいたデータ共有方法
JP2020013175A (ja) 2018-07-13 2020-01-23 富士通株式会社 データ管理プログラム、データ管理方法及びデータ管理装置
JP2020021048A (ja) 2018-08-03 2020-02-06 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America データ流通方法、認証サーバ及びデータ構造

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220245727A1 (en) * 2014-10-06 2022-08-04 State Farm Mutual Automobile Insurance Company Systems and Methods for Efficiently Reinsuring Insurance Policies
US10951626B2 (en) * 2018-03-06 2021-03-16 Americorp Investments Llc Blockchain-based commercial inventory systems and methods
WO2019193583A2 (en) * 2018-04-05 2019-10-10 Russell Blades Methods, systems, apparatuses and devices for facilitating provisioning of audit data related to energy consumption, water consumption, water quality, greenhouse gas emissions, and air emissions using blockchain
US11544229B1 (en) * 2020-04-29 2023-01-03 American Express Travel Related Services Company, Inc Enhanced tracking of data flows

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019176458A (ja) 2018-03-28 2019-10-10 マクロジェン・インコーポレイテッドMacrogen, Inc. 複数のブロックチェーンに基づいたデータ共有方法
JP2020013175A (ja) 2018-07-13 2020-01-23 富士通株式会社 データ管理プログラム、データ管理方法及びデータ管理装置
JP2020021048A (ja) 2018-08-03 2020-02-06 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America データ流通方法、認証サーバ及びデータ構造

Also Published As

Publication number Publication date
US11816109B2 (en) 2023-11-14
US20220035819A1 (en) 2022-02-03
JP2022026161A (ja) 2022-02-10

Similar Documents

Publication Publication Date Title
JP7403406B2 (ja) データ利活用システムにおけるデータ提供方法
US11709819B2 (en) Validating test results using a blockchain network
US11057225B2 (en) Enforcing compute equity models in distributed blockchain
US10776398B2 (en) Platform data lifecycle management
US10346406B2 (en) Decentralized autonomous edge compute coordinated by smart contract on a blockchain
US8566578B1 (en) Method and system for ensuring compliance in public clouds using fine-grained data ownership based encryption
US20190179672A1 (en) Enforcing compute equity models in distributed blockchain
KR20210133289A (ko) 블록체인 네트워크에서 데이터 추출
TW202038173A (zh) 基於區塊鏈的資料處理系統、方法、計算設備及儲存媒體
JP2021526751A (ja) 自己監視ブロックチェーンのための安全な合意に基づくエンドースメント
US10671709B2 (en) Data isolation in distributed hash chains
WO2022058183A1 (en) Integrating device identity into a permissioning framework of a blockchain
US9471665B2 (en) Unified system for real-time coordination of content-object action items across devices
CN110019194B (zh) 数据核对方法、装置、计算机设备及存储介质
US11675854B2 (en) Conflict-free version control
US20220036323A1 (en) Electronic wallet allowing virtual currency expiration date
US20200265514A1 (en) Recording medium recording communication program and communication apparatus
US9122733B2 (en) Generation of electronic pedigree
US20210150477A1 (en) Automated conflict resolution
US20210224253A1 (en) Conflict-free version control
CN112070504A (zh) 区块链交易的内容检查方法及装置
JP2017054448A (ja) 住宅ローン事前審査システム、方法およびプログラム
CN110602215A (zh) 基于联盟区块链的资源处理方法及联盟区块链系统
US11403348B2 (en) Conflict-free version control
US20230208911A1 (en) Visibility of digital assets at channel level

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230216

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231006

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231128

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231212

R150 Certificate of patent or registration of utility model

Ref document number: 7403406

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350