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

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

▶ 日本電気通信システム株式会社の特許一覧

特許7436005コマンド変換処理装置、コマンド変換処理方法、制御プログラム、及び処理装置
<>
  • 特許-コマンド変換処理装置、コマンド変換処理方法、制御プログラム、及び処理装置 図1
  • 特許-コマンド変換処理装置、コマンド変換処理方法、制御プログラム、及び処理装置 図2
  • 特許-コマンド変換処理装置、コマンド変換処理方法、制御プログラム、及び処理装置 図3
  • 特許-コマンド変換処理装置、コマンド変換処理方法、制御プログラム、及び処理装置 図4
  • 特許-コマンド変換処理装置、コマンド変換処理方法、制御プログラム、及び処理装置 図5
  • 特許-コマンド変換処理装置、コマンド変換処理方法、制御プログラム、及び処理装置 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-02-13
(45)【発行日】2024-02-21
(54)【発明の名称】コマンド変換処理装置、コマンド変換処理方法、制御プログラム、及び処理装置
(51)【国際特許分類】
   G06F 16/182 20190101AFI20240214BHJP
【FI】
G06F16/182
【請求項の数】 7
(21)【出願番号】P 2020007651
(22)【出願日】2020-01-21
(65)【公開番号】P2021114248
(43)【公開日】2021-08-05
【審査請求日】2022-12-05
(73)【特許権者】
【識別番号】000232254
【氏名又は名称】日本電気通信システム株式会社
(74)【代理人】
【識別番号】100103894
【弁理士】
【氏名又は名称】家入 健
(72)【発明者】
【氏名】鈴木 直人
【審査官】吉田 誠
(56)【参考文献】
【文献】米国特許出願公開第2019/0238525(US,A1)
【文献】特開2017-041017(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00 - 16/958
(57)【特許請求の範囲】
【請求項1】
データベース制御コマンドを取得する第1インタフェース部と、
前記取得されたデータベース制御コマンドをブロックチェーン制御コマンドに変換する変換部と、
前記変換部にて得られたブロックチェーン制御コマンドをブロックチェーン処理部に出力する第2インタフェース部と、
を具備し、
前記変換部は、前記データベース制御コマンドに対応するデータベースのカテゴリと前記ブロックチェーン処理部に実装されているブロックチェーンの種類との組み合わせに応じた前記ブロックチェーン制御コマンドを生成するコマンド生成部を含む、
コマンド変換処理装置。
【請求項2】
前記変換部は、
前記データベース制御コマンドに対応するデータベースのカテゴリを判定する第1判定部と、
前記ブロックチェーンの種類を判定する第2判定部と、
をさらに具備する、
請求項記載のコマンド変換処理装置。
【請求項3】
前記データベース制御コマンドは、SQL(Structured Query Language)コマンドであり、
前記第1判定部は、前記SQLコマンドに対応するデータベースのカテゴリとして、SQLタイプを判定する、
請求項記載のコマンド変換処理装置。
【請求項4】
前記データベース制御コマンドは、SQL(Structured Query Language)コマンドである、
請求項1又は2に記載のコマンド変換処理装置。
【請求項5】
コマンド変換処理装置によって実行される方法であって、
データベース制御コマンドを取得することと
前記取得されたデータベース制御コマンドをブロックチェーン制御コマンドに変換することと
前記変換によって得られたブロックチェーン制御コマンドをブロックチェーン処理部に出力することと
を含み、
前記変換することは、前記データベース制御コマンドに対応するデータベースのカテゴリと前記ブロックチェーン処理部に実装されているブロックチェーンの種類との組み合わせに応じた前記ブロックチェーン制御コマンドを生成することを含む、
コマンド変換処理方法。
【請求項6】
データベース制御コマンドを取得することと
前記取得されたデータベース制御コマンドをブロックチェーン制御コマンドに変換することと
前記変換によって得られたブロックチェーン制御コマンドをブロックチェーン処理部に出力することと
を含む処理を、コマンド変換処理装置に実行させ
前記変換することは、前記データベース制御コマンドに対応するデータベースのカテゴリと前記ブロックチェーン処理部に実装されているブロックチェーンの種類との組み合わせに応じた前記ブロックチェーン制御コマンドを生成することを含む、
制御プログラム。
【請求項7】
サーバ機能部と、
コマンド変換処理部と、
ブロックチェーン処理部と、
を具備し、
前記サーバ機能部は、クライアント装置からデータベース制御コマンドを受け付け、
前記コマンド変換処理部は、
前記サーバ機能部から、前記データベース制御コマンドを取得する第1インタフェース部と、
前記取得されたデータベース制御コマンドをブロックチェーン制御コマンドに変換する変換部と、
前記変換部にて得られたブロックチェーン制御コマンドを前記ブロックチェーン処理部に出力する第2インタフェース部と、
を具備
前記変換部は、前記データベース制御コマンドに対応するデータベースのカテゴリと前記ブロックチェーン処理部に実装されているブロックチェーンの種類との組み合わせに応じた前記ブロックチェーン制御コマンドを生成するコマンド生成部を含む、
処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、コマンド変換処理装置、コマンド変換処理方法、制御プログラム、及び処理装置に関する。
【背景技術】
【0002】
ブロックチェーンの技術の応用が拡大している(例えば、非特許文献1)。ブロックチェーンは、分散型の管理台帳であり、例えば、ビットコインと呼ばれる仮想通貨を使用したオンライン決済等に用いられている。
【先行技術文献】
【非特許文献】
【0003】
【文献】小松研吾、「仮想通貨とブロックチェーン」、科学雑誌 Newton 2018年11月号、株式会社ニュートンプレス、2018年9月
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、ブロックチェーンには多くの種類が存在し、ブロックチェーンに用いられるブロックチェーン制御コマンドの種類も多岐に亘る。このため、各ブロックチェーンの利用には各ブロックチェーンに関する専門的な知識が必要となり、ユーザの利便性がよくない可能性がある。
【0005】
本開示の目的は、ユーザの利便性を向上させることができる、コマンド変換処理装置、コマンド変換処理方法、制御プログラム、及び処理装置を提供することにある。
【課題を解決するための手段】
【0006】
第1の態様にかかるコマンド変換処理装置は、データベース制御コマンドを取得する第1インタフェース部と、
前記取得されたデータベース制御コマンドをブロックチェーン制御コマンドに変換する変換部と、
前記変換部にて得られたブロックチェーン制御コマンドをブロックチェーン処理部に出力する第2インタフェース部と、
を具備する。
【0007】
第2の態様にかかるコマンド変換処理方法は、データベース制御コマンドを取得し、
前記取得されたデータベース制御コマンドをブロックチェーン制御コマンドに変換し、
前記変換部にて得られたブロックチェーン制御コマンドをブロックチェーンに出力する。
【0008】
第3の態様にかかる制御プログラムは、データベース制御コマンドを取得し、
前記取得されたデータベース制御コマンドをブロックチェーン制御コマンドに変換し、
前記変換部にて得られたブロックチェーン制御コマンドをブロックチェーンに出力する、
処理を、コマンド変換処理装置に実行させる。
【0009】
第4の態様にかかる処理装置は、サーバ機能部と、
コマンド変換処理部と、
ブロックチェーン処理部と、
を具備し、
前記サーバ機能部は、クライアント装置からデータベース制御コマンドを受け付け、
前記コマンド変換処理部は、
前記サーバ機能部から、前記データベース制御コマンドを取得する第1インタフェース部と、
前記取得されたデータベース制御コマンドをブロックチェーン制御コマンドに変換する変換部と、
前記変換部にて得られたブロックチェーン制御コマンドを前記ブロックチェーン処理部に出力する第2インタフェース部と、
を具備する。
【発明の効果】
【0010】
本開示により、ユーザの利便性を向上させることができる、コマンド変換処理装置、コマンド変換処理方法、制御プログラム、及び処理装置を提供することができる。
【図面の簡単な説明】
【0011】
図1】第1実施形態におけるコマンド変換処理装置の一例を示すブロック図である。
図2】第2実施形態におけるコマンド変換処理装置の一例を示すブロック図である。
図3】第2実施形態におけるコマンド変換処理装置の処理動作の一例を示すフローチャートである。
図4】第3実施形態における処理システムの一例を示す図である。
図5】第3実施形態における処理装置の一例を示すブロック図である。
図6】コマンド変換処理装置のハードウェア構成例を示す図である。
【発明を実施するための形態】
【0012】
以下、図面を参照しつつ、実施形態について説明する。なお、実施形態において、同一又は同等の要素には、同一の符号を付し、重複する説明は省略される。
【0013】
<第1実施形態>
図1は、第1実施形態におけるコマンド変換処理装置の一例を示すブロック図である。図1においてコマンド変換処理装置10は、インタフェース部(第1インタフェース部)11と、変換部12と、インタフェース部(第2インタフェース部)13とを有している。
【0014】
インタフェース部(第1インタフェース部)11は、「データベース制御コマンド」を取得する。「データベース制御コマンド」は、例えば、SQL(Structured Query Language)コマンドであってもよい。
【0015】
変換部12は、インタフェース部11にて取得されたデータベース制御コマンドを「ブロックチェーン制御コマンド」に変換する。
【0016】
インタフェース部(第2インタフェース部)13は、変換部12にて得られたブロックチェーン制御コマンドをブロックチェーン処理部(ブロックチェーン処理装置)(不図示)に出力する。
【0017】
以上で説明したコマンド変換処理装置10の構成により、ユーザの利便性を向上させることができる。すなわち、データベース技術はブロックチェーン技術に比べて汎用性が高いため、ブロックチェーン制御コマンドよりもデータベース制御コマンドの方がユーザにとって扱いやすい。このため、コマンド変換処理装置10がデータベース制御コマンドを取得してブロックチェーン制御コマンドに変換しこのブロックチェーン制御コマンドをブロックチェーン処理部(不図示)に渡すことによって、ユーザはブロックチェーンを意識せずにブロックチェーンを操作することができるので、ユーザの利便性を向上させることができる。
【0018】
<第2実施形態>
第2実施形態は、コマンド変換処理装置のより具体的な構成例に関する。
【0019】
<コマンド変換処理装置の構成例>
図2は、第2実施形態におけるコマンド変換処理装置の一例を示すブロック図である。図2においてコマンド変換処理装置10は、インタフェース部(第1インタフェース部)11と、変換部12と、インタフェース部(第2インタフェース部)13とを有している。変換部12は、データベース(DB)カテゴリ判定部12Aと、ブロックチェーン(BC)種類判定部12Bと、コマンド生成部12Cとを有している。
【0020】
DBカテゴリ判定部12Aは、データベース制御コマンドに対応するデータベースのカテゴリを判定(分析)する。例えば、DBカテゴリ判定部12Aは、データベース制御コマンドがSQL(Structured Query Language)コマンドである場合、SQLコマンドに対応するデータベースのカテゴリとして、SQLタイプを判定する。SQLタイプは、例えば、MySQL(登録商標)、PostgreSQL(登録商標)、及び、SQLite等を含む。
【0021】
例えば、インタフェース部11としては、コマンド変換処理装置10が受け付けるデータベース制御コマンドに対応するデータベースのカテゴリに応じた種類のインタフェースが実装される。このため、DBカテゴリ判定部12Aは、例えば、コマンド変換処理装置10の初期設定時に、インタフェース部11の実装種類(例えば、MySQL、PostgreSQL、SQLite等)を取得し、取得した実装種類に基づいて、データエース制御コマンドに対応するデータベースのカテゴリを判定する。
【0022】
BC種類判定部12Bは、コマンド変換処理装置10に接続されているブロックチェーン処理部(ブロックチェーン処理装置)(不図示)に実装されているブロックチェーンの種類を判定(確認)する。ブロックチェーンの種類としては、例えばbitcoin型、ripple型、etherum型等がある。
【0023】
例えば、インタフェース部13としては、コマンド変換処理装置10に接続されるブロックチェーン処理部(不図示)に実装されているブロックチェーンの種類に応じた種類のインタフェースが実装される。このため、BC種類判定部12Bは、例えば、コマンド変換処理装置10の初期設定時に、インタフェース部13の実装種類(例えば、bitcoin、ripple、etherum等)を取得し、取得した実装種類に基づいて、ブロックチェーン処理部(不図示)に実装されているブロックチェーンの種類を判定する。
【0024】
コマンド生成部12Cは、DBカテゴリ判定部12Aにて判定されたデータベースのカテゴリとBC種類判定部12Bにて判定されたブロックチェーンの種類との組み合わせに応じた、ブロックチェーン制御コマンドを生成(発行)する。ここで、ブロックチェーン処理部(不図示)に複数種類のブロックチェーンが実装されている場合、ブロックチェーンの種類とデータベースのカテゴリとの組み合わせ毎にブロックチェーン制御コマンドを生成(発行)する。
【0025】
例えば、コマンド生成部12Cは、DBカテゴリ判定部12Aで得たカテゴリとBC種類判定部12Bで得た種類からコマンド生成組み合わせパターンを確定させる。そして、コマンド生成部12Cは、確定させたコマンド生成組み合わせパターンに応じた、データベース制御コマンドとブロックチェーン制御コマンドとの対応に基づいて、インタフェース部11で受け付けたデータベース制御コマンドにマッチするブロックチェーン制御コマンドを特定し、この特定されたブロックチェーン制御コマンドを生成してもよい。例えば、コマンド生成部12Cは、データベースのカテゴリとブロックチェーンの種類との組み合わせとの組み合わせとコマンド生成組み合わせパターンとを対応づける第1テーブルと、コマンド生成組み合わせパターン毎にデータベース制御コマンドとブロックチェーン制御コマンドとを対応づける複数の第2テーブルとを保持していてもよい。なお、第1テーブルと複数の第2テーブルとは、それぞれ独立したテーブルでもよいが、1つのテーブルにまとめられてもよい。
【0026】
<コマンド変換処理装置の動作例>
以上の構成を有するコマンド変換処理装置の処理動作の一例について説明する。図3は、第2実施形態におけるコマンド変換処理装置の処理動作の一例を示すフローチャートである。
【0027】
インタフェース部11は、サーバ機能部(サーバ装置)(不図示)から、データベース制御コマンドを受け付ける(ステップS101)。
【0028】
DBカテゴリ判定部12Aは、インタフェース部11にて受け付けたデータベース制御コマンドに対応するデータベースのカテゴリを判定する(ステップS102)。
【0029】
BC種類判定部12Bは、コマンド変換処理装置10に接続されているブロックチェーン処理部に実装されているブロックチェーンの種類を判定する(ステップS103)。
【0030】
コマンド生成部12Cは、ステップS102にて判定されたデータベースのカテゴリとステップS103にて判定されたブロックチェーンの種類との組み合わせに応じた、ブロックチェーン制御コマンドを生成する(ステップS104)。
【0031】
インタフェース部13は、ステップS104にて得られたブロックチェーン制御コマンドをブロックチェーン処理部(ブロックチェーン処理装置)(不図示)に出力する(ステップS105)。
【0032】
以上のように第2実施形態によれば、コマンド変換処理装置10にてDBカテゴリ判定部12Aは、データベース制御コマンドに対応するデータベースのカテゴリを判定(分析)する。BC種類判定部12Bは、コマンド変換処理装置10に接続されているブロックチェーン処理部(ブロックチェーン処理装置)(不図示)に実装されているブロックチェーンの種類を判定(確認)する。コマンド生成部12Cは、DBカテゴリ判定部12Aにて判定されたデータベースのカテゴリとBC種類判定部12Bにて判定されたブロックチェーンの種類との組み合わせに応じた、ブロックチェーン制御コマンドを生成(発行)する。
【0033】
このコマンド変換処理装置10の構成により、コマンド変換処理装置10に入力されるデータベース制御コマンドに対応するデータベースのカテゴリ、及び、コマンド変換処理装置10に接続されているブロックチェーン処理部(不図示)に実装されているブロックチェーンの種類の組み合わせに応じたブロックチェーン制御コマンドを生成することができるので、ユーザの利便性をより向上させることができる。
【0034】
<第3実施形態>
<処理システムの概要>
図4は、第3実施形態における処理システムの一例を示す図である。図4において処理システム1は、処理装置20-1~20-5を有している。なお、以下では、処理装置20-1~20-5を区別しない場合、単に処理装置20と呼ぶことがある。ここでは、処理システム1に含まれる処理装置20の数を5つとしているが、これに限定されるものではなく、2つ以上であればよい。
【0035】
処理装置20-1~20-5は、互いにピアツーピア(P2P:Peer to Peer)に接続されており、ブロックチェーンシステムを構成している。
【0036】
<処理装置の構成例>
図5は、第3実施形態における処理装置の一例を示すブロック図である。図5において処理装置20は、サーバ機能部(サーバ装置)21と、コマンド変換処理部(コマンド変換処理装置)10と、ブロックチェーン処理部(ブロックチェーン処理装置)22とを有している。処理装置20には、クライアント装置30-1,30-2が通信可能に接続されている。なお、処理装置20に接続されるクライアント装置30の数は、これに限定されるものではない。
【0037】
サーバ機能部21は、クライアント装置30からデータベース制御コマンドを受け付けて、コマンド変換処理部10へ出力する。
【0038】
コマンド変換処理部10は、第1実施形態及び第2実施形態にて説明したコマンド変換処理装置10と同じ構成を有している。なお、コマンド変換処理部10は、ストレージエンジン(Storage Engine)であってもよい。
【0039】
ブロックチェーン処理部22は、ブロックチェーンを処理する機能部である。処理装置20-1~20-5に含まれるブロックチェーン処理部22が互いにピアツーピア接続されることによって、上記のブロックチェーンシステムを構築する。
【0040】
例えば、サーバ機能部21がクライアント装置30からトランザクションデータと共に書き込み処理を示すデータベース制御コマンドを受け付けると、コマンド変換処理部10は、書き込み処理を示すデータベース制御コマンドを、書き込みを示すブロックチェーン制御コマンドに変換する。そして、コマンド変換処理部10は、上記のトランザクションデータと書き込みを示すブロックチェーン制御コマンドとを、ブロックチェーン処理部22へ出力する。
【0041】
また、例えば、サーバ機能部21がクライアント装置30から読み出し処理を示すデータベース制御コマンド(参照要求)を受け付けると、コマンド変換処理部10は、読み出し処理を示すデータベース制御コマンドを、読み出し処理を示すブロックチェーン制御コマンドに変換する。そして、コマンド変換処理部10は、読み出し処理を示すブロックチェーン制御コマンドを、ブロックチェーン処理部22へ出力する。ブロックチェーン処理部22は、読み出し処理を示すブロックチェーン制御コマンドに対応する、ブロックチェーンに含まれるデータをクライアント装置30へ送出する。
【0042】
ここで、ブロックチェーン処理部22は、ブロックチェーン制御コマンドに対応する処理を完了すると、ブロックチェーン応答をコマンド変換処理部10へ出力してもよい。コマンド変換処理部10においてインタフェース部13は、ブロックチェーン応答を受け取ってインタフェース部11へ出力し、インタフェース部11は、ブロックチェーン応答に対応するデータベース応答(例えば、SQL応答)をサーバ機能部21へ出力してもよい。
【0043】
なお、以上の説明では、サーバ機能部(サーバ装置)21と、コマンド変換処理部(コマンド変換処理装置)10と、ブロックチェーン処理部(ブロックチェーン処理装置)22とが、1つの装置(つまり、処理装置20)に含まれることを前提に説明を行ったが、これに限定されるものではない。例えば、サーバ機能部(サーバ装置)21と、コマンド変換処理部(コマンド変換処理装置)10と、ブロックチェーン処理部(ブロックチェーン処理装置)22とは、それぞれ独立した装置であってもよいし、任意の組み合わせがそれぞれ1つの装置を構成してもよい。
【0044】
<他の実施形態>
図6は、コマンド変換処理装置のハードウェア構成例を示す図である。図6においてコマンド変換処理装置は、プロセッサ101と、メモリ102と、インタフェース103,104とを有している。プロセッサ101は、例えば、マイクロプロセッサ、MPU(Micro Processing Unit)、又はCPU(Central Processing Unit)であってもよい。プロセッサ101は、複数のプロセッサを含んでもよい。メモリ102は、揮発性メモリ及び不揮発性メモリの組み合わせによって構成される。メモリ102は、プロセッサ101から離れて配置されたストレージを含んでもよい。この場合、プロセッサ101は、図示されていないI/Oインタフェースを介してメモリ102にアクセスしてもよい。
【0045】
第1実施形態から第3実施形態のコマンド変換処理装置10は、それぞれ、図6に示したハードウェア構成を有することができる。第1実施形態から第3実施形態のコマンド変換処理装置10の変換部12は、プロセッサ101がメモリ102に記憶されたプログラムを読み込んで実行することにより実現されてもよい。インタフェース部11,13は、それぞれ、インタフェース103,104によって実現されてもよい。プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コマンド変換処理装置10に供給することができる。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)を含む。さらに、非一時的なコンピュータ可読媒体の例は、CD-ROM(Read Only Memory)、CD-R、CD-R/Wを含む。さらに、非一時的なコンピュータ可読媒体の例は、半導体メモリを含む。半導体メモリは、例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコマンド変換処理装置10に供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコマンド変換処理装置10に供給できる。
【0046】
以上、実施の形態を参照して本願発明を説明したが、本願発明は上記によって限定されるものではない。本願発明の構成や詳細には、発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【0047】
1 処理システム
10 コマンド変換処理部(コマンド変換処理装置)
11 インタフェース部(第1インタフェース部)
12 変換部
12A データベース(DB)カテゴリ判定部
12B ブロックチェーン(BC)種類判定部
12C コマンド生成部
13 インタフェース部(第2インタフェース部)
20 処理装置
21 サーバ機能部(サーバ装置)
22 ブロックチェーン処理部(ブロックチェーン処理装置)
30 クライアント装置
図1
図2
図3
図4
図5
図6