JP2020515976A - ブロックチェーンコンセンサスのための方法、装置およびシステム - Google Patents

ブロックチェーンコンセンサスのための方法、装置およびシステム Download PDF

Info

Publication number
JP2020515976A
JP2020515976A JP2019553325A JP2019553325A JP2020515976A JP 2020515976 A JP2020515976 A JP 2020515976A JP 2019553325 A JP2019553325 A JP 2019553325A JP 2019553325 A JP2019553325 A JP 2019553325A JP 2020515976 A JP2020515976 A JP 2020515976A
Authority
JP
Japan
Prior art keywords
consensus
transaction data
unit
consensus unit
units
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.)
Granted
Application number
JP2019553325A
Other languages
English (en)
Other versions
JP6882511B2 (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of JP2020515976A publication Critical patent/JP2020515976A/ja
Application granted granted Critical
Publication of JP6882511B2 publication Critical patent/JP6882511B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/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/466Transaction processing
    • 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/2379Updates performed during online database operations; commit processing
    • 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/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1012Server selection for load balancing based on compliance of requirements or conditions with available server resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Apparatus For Radiation Diagnosis (AREA)
  • Pens And Brushes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

ブロックチェーンコンセンサス方法が、トランザクションデータを取得することと、予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにトランザクションデータを分配して、少なくとも1つのコンセンサスユニットに、分配したトランザクションデータにコンセンサス処理を行わせることと、を含んでもよい。

Description

関連出願の相互参照
本出願は、2017年3月29日出願の中国出願第201710197538.X号に基づき、かつ、それに対する優先権を主張するものであり、その内容全体が引用により本明細書に援用される。
本出願は、コンピュータソフトウェア技術の分野に関し、特に、ブロックチェーンコンセンサスのための方法、装置およびシステムに関する。
ブロックチェーンは、本来はビットコインのために設計された分散データベース技術である。そのようなデータ構造は、システム内で検証される順序データを記憶するのに特に適する。その上、そのようなデータ構造は、コンセンサスアルゴリズムを使用して、データが改竄または偽造されることができないことを保証する。コンセンサスアルゴリズムは、ブロックチェーンにおけるノードによる参加を必要とし、そして複数のノードによる共同計算を通じてコンセンサスに達するアルゴリズムである。例えば、トランザクションデータを受信した上で、ブックキーピングノードが他の参加ノードにトランザクションデータをブロードキャストし、そして他の参加ノードは、コンセンサス処理を行って、ブックキーピングノードがトランザクションデータに対してブックキーピング権を有するかどうかを判定する。他の参加ノードのコンセンサス結果が、ブックキーピングノードがトランザクションデータに対してブックキーピング権を有するということであれば、ブックキーピングノードは、ブックキーピングノードに対応するブロックチェーンにトランザクションデータを記憶する。ブロックチェーン技術では、したがって、コンセンサスアルゴリズムは、ブロックチェーンにおけるプログラムまたはノードにとっての準拠法であり、これにより、全てのノードがいかなる状況でも一貫した方式で協働することができることを保証する。
実用的ビザンチンフォールトトレランス(PBFT)がブロックチェーンにおける一般的なコンセンサスアルゴリズムである。PBFTアルゴリズムは、アクティビティおよびセキュリティを保証すると共に若干の寛容性を提供することができ、したがって広く使用されてきた。PBFTアルゴリズムでは、1つのノードがマスタノードであり、その他のノードはバックアップノードである。マスタノードは、受信したトランザクション要求をソートし、次いでソート結果に従ってバックアップノードにトランザクション要求をブロードキャストすることを担う。PBFTアルゴリズムは通常3つのフェーズ:事前準備、準備およびコミットを含む。事前準備フェーズおよび準備フェーズは、一連のトランザクション要求を決定するために使用される。
しかしながら、マスタノードがトランザクション要求をソートするときに誤りを犯す、例えば、異なるトランザクション要求に同じ順序番号を与える、または順序番号を割り当てることができない、または隣接するトランザクション要求の順序番号を不連続であるようにする等のおそれがある。結果として、バックアップノードが順序付きトランザクション要求を受信するときに一連のトランザクション要求を検証する必要がある。
結果として、PBFTアルゴリズムは、多くの設計および計算をして順序を保証してきた。多くの現在使用されているコンセンサスアルゴリズム(例えば、作業量を証明するためのメカニズムならびに権利および利益を証明するためのメカニズム等のようなコンセンサスメカニズム)がコンセンサス処理を行うときに順序に関する大量の設計および計算を実施する必要があり、これが著しいシステムリソースを消費することが調査を通じて見いだされた。
実際的応用では、しかしながら、順序要件のないトランザクション要求が多くある。順序要件のないトランザクション要求は、慈善寄付トランザクション、上限または割当てのないクラウドファンディングトランザクション等など、トランザクション要求を受信した上で、サーバが受信したトランザクション要求を受入時間の順に従って処理する必要がないことを意味する。一例として慈善寄付トランザクションに関しては、寄付の順序はトランザクション処理に影響を及ぼさない。したがって、この種類のトランザクション要求は、順序要件を有しないトランザクション要求(つまり「順序要件のないトランザクション要求」)と称されてもよい。この種類のトランザクション要求がブロックチェーンで処理されるとき、現在のコンセンサスアルゴリズムの使用は、この種類のトランザクションに対して比較的低い処理効率に至り、そして同時に、ブロックチェーンのコンセンサス処理能力にも影響するであろう。
上記に鑑みて、本開示の実施形態は、コンセンサスアルゴリズムが順序要件のないトランザクション要求を処理するために使用されるときに処理効率が低いという先行技術における課題を少なくとも軽減する、ブロックチェーンコンセンサスのための方法、装置およびシステムを提供する。
一態様によれば、ブロックチェーンコンセンサス方法が、トランザクションデータを取得することと、予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにトランザクションデータを分配して、少なくとも1つのコンセンサスユニットに、分配したトランザクションデータにコンセンサス処理を行わせることと、を含んでもよい。
別の態様によれば、ブロックチェーンベースのデータ記憶方法が、異なるコンセンサスユニットからコンセンサス結果を受信することと、コンセンサス結果のタイムスタンプに従ってブロックチェーンのブロックへコンセンサス結果を記憶することと、を含んでもよい。
別の態様によれば、ブロックチェーンコンセンサスシステムが、分配ユニットおよび複数のコンセンサスユニットを含むコンセンサスユニット集合を備えてもよく、分配ユニットは、トランザクションデータを取得し、そして予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにトランザクションデータを分配するように構成され、かつ少なくとも1つのコンセンサスユニットは、分配されたトランザクションデータにコンセンサス処理を行うように構成される。
別の態様によれば、ブロックチェーンコンセンサス装置が、プロセッサ、およびプロセッサによって実行されると、ブロックチェーンコンセンサス装置に方法を行わせる命令を記憶した非一時的コンピュータ可読記憶媒体を備える。同方法は、トランザクションデータを取得することと、予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにトランザクションデータを分配して、少なくとも1つのコンセンサスユニットに、分配したトランザクションデータにコンセンサス処理を行わせることと、を含んでもよい。
別の態様によれば、ブロックチェーンベースのデータ記憶装置が、プロセッサ、およびプロセッサによって実行されると、ブロックチェーンデータ記憶装置に方法を行わせる命令を記憶した非一時的コンピュータ可読記憶媒体を備える。同方法は、異なるコンセンサスユニットからコンセンサス結果を受信することと、コンセンサス結果のタイムスタンプに従って、ブロックチェーンのブロックへコンセンサス結果を記憶することと、を含んでもよく、ブロックチェーンのブロックへコンセンサス結果を記憶することは、コンセンサス結果を生成するコンセンサスユニットに対応するブロックチェーンネットワークにおけるノードのブロックへコンセンサス結果を記憶することを含む。
本出願は、例証的なコンセンサスアルゴリズムを独立したコンセンサスユニットとして開示しており、これは従来のブロックチェーンコンセンサスと異なり、これらのコンセンサスユニットとコンセンサスユニット集合を形成し、そしてトランザクションデータの受信に応じて、設定された分配規則に従って、コンセンサスユニット集合におけるコンセンサスユニットにトランザクションデータを分配して、コンセンサスユニットによるトランザクションデータへのコンセンサス処理を達成することができる。このようにして、複数のコンセンサスユニットが順序要件のないトランザクション要求に並行してコンセンサス処理を行うことができ、現存のコンセンサスアルゴリズムによる順序操作が単純化され、順序要件のないトランザクション要求に関する処理効率および処理能力が改善され、そしてブロックチェーンネットワークの動作性能が改善される。
本開示の実施形態における技術的解決策をより明確に説明するために、添付図面が次の通り簡単に説明されることになる。添付図面は単に例証的である。当業者にとっては、これらの図面に従って発明的努力なしに他の図面が更に得られてもよい。
本開示の実施形態に係るブロックチェーンコンセンサス方法のフローチャートである。 本開示の実施形態に係るブロックチェーンコンセンサス方法のフローチャートである。 本開示の実施形態に係るブロックチェーンコンセンサス方法のフローチャートである。 本開示の実施形態に係るブロックチェーンベースのデータ記憶方法のフローチャートである。 本開示の実施形態に係るブロックチェーンコンセンサスシステムの構造概要図である。 本開示の実施形態に係るブロックチェーンコンセンサス装置の概要図である。 本開示の実施形態に係るブロックチェーンコンセンサス装置の概要図である。 本開示の実施形態に係るブロックチェーンベースのデータ記憶装置の構造概要図である。
当業者が本開示における技術的解決策をより良く理解することを可能にするために、実施形態における技術的解決策は、添付図面を参照しつつ明確かつ完全に下記されることになる。明らかに、記載される実施形態は単に例証的である。当業者によって発明的努力なしにかつ本開示の実施形態に基づいて得られる全ての他の実施形態が本開示の範囲によって包含されるものとする。
本開示に係る解決策は以下の実施形態を通じて詳細に記載されることになる。
図1は、本開示の実施形態に係るブロックチェーンコンセンサス方法のフローチャートである。プログラムの観点から、フローを実行する主体がパーソナルコンピュータ(PC)端末におけるアプリケーション(APP)またはプログラムであってもよい。装置の観点から、フローを実行する主体が以下の装置を含んでもよいが、それらに限定されない:パーソナルコンピュータ、大または中規模コンピュータ、コンピュータクラスタ、携帯電話、タブレットコンピュータ、スマートウェアラブルデバイス、車両用機械等。
一実施形態によれば、図1に図示されるようなブロックチェーンコンセンサス方法は以下のステップを含んでもよい。
S101:トランザクションデータ(例えば、ブロックチェーンネットワークにおけるコンセンサス処理を求めるトランザクションデータであり、このトランザクションデータは「コンセンサス形成されるべき」トランザクションデータと称されることができる)を取得する。
一実施形態において、方法を実行する主体がブロックチェーンネットワークにおけるブロックチェーンノード(以降「ノード」)であれば、ノードは、処理されるべきトランザクション要求を受信し、トランザクション要求からトランザクションデータを取得し、そしてトランザクションデータを記憶することができる。ステップS101におけるコンセンサス形成されるべきトランザクションデータは、記憶したトランザクションデータであってもよい。本明細書におけるトランザクション要求は、クライアント端末によって送信されるトランザクション要求、例えばブックキーピング要求、もしくは別の状態機械動作を実行する要求であってもよく、または他の装置によって送信されるトランザクション要求であってもよく、本明細書で限定されない。
一部の実施形態において、コンセンサス形成されるべきトランザクションデータは1組のトランザクションデータを指してもよく、例えば、1組のトランザクションデータが受信されると後続の動作がトリガされる。代替的に、コンセンサス形成されるべきトランザクションデータは複数組のコンセンサス形成されるべきトランザクションデータであってもよく、例えば、複数組のトランザクションデータが受信されると後続の動作がトリガされる。代替的に、コンセンサス形成されるべきトランザクションデータは設定時限内に生成されるトランザクションデータであってもよく、例えば、設定時限内に生成されるトランザクションデータが受信され、そして設定時限が終了すると、後続の動作がトリガされる。取得されるトランザクションデータの組数は本明細書で限定されない。
本明細書における「トランザクションデータ」は順序要件のないトランザクションデータを含む。すなわち、取得したトランザクションデータが処理されるとき、トランザクションデータの時間因子は考慮されない。例えば、受信したトランザクション要求は寄付要求である。次いで、コンセンサス形成されるべきトランザクションデータは、取得したコンセンサス形成されるべきトランザクションデータである。寄付に関連したトランザクションデータに関しては、トランザクションデータ処理の順序は送信者とは無関係である。すなわち、寄付要求がいつ送信者によって送信されるかという時間因子は無視される。したがって、この種類のトランザクション要求は順序要件のないトランザクション要求とも称される。
S102:予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにトランザクションデータを分配する。
ここで、コンセンサスユニットは、分配されたトランザクションデータにコンセンサス処理を行うために使用される。
ブロックチェーン技術では、取得したトランザクションデータを処理するためにコンセンサスアルゴリズムが使用される一方で、コンセンサスアルゴリズムは、コンセンサスに参加する投票ノードによって完了されるアルゴリズムであり、例えば、全ての投票ノードが共同計算を通じて最終的にコンセンサス結果に達する。
一実施形態におけるコンセンサスユニット集合はコンセンサスユニットを含み、そして各コンセンサスユニットは独立したコンセンサストランザクションを提供してもよい。言い換えれば、異なるコンセンサスユニットが同じコンセンサスアルゴリズムを使用してもよく、または異なるコンセンサスアルゴリズムを使用してもよい。
一部の実施形態において、コンセンサスユニット集合に含まれるコンセンサスユニット数は本明細書で限定されない。異なるコンセンサスユニットに備えられる投票ノードの数は同じであってもよく、または異なってもよい。例えば、コンセンサスアルゴリズムがPBFTアルゴリズムであれば、コンセンサスユニットにおける1つの投票ノードが1つの1次ノードおよび4つの2次ノードを含む。コンセンサスアルゴリズムがプルーフオブワークメカニズムであれば、コンセンサスユニットは少なくとも1つの投票ノードを備える。したがって、コンセンサスユニットにおける投票ノード数は本明細書で限定されずに、コンセンサスアルゴリズムの実際の要件に従って決定されることができる。
このようにして、コンセンサス形成されるべきトランザクションデータに関して、コンセンサス処理が様々な実施形態の解決策に従って並行方式で異なるトランザクションデータに行われることができる。すなわち、異なるトランザクションデータが異なるコンセンサスユニットに並行して分配され、そしてコンセンサスユニットは受信したトランザクションデータにコンセンサス処理を独立して行う。
予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配するための様々な方法が以下に詳細に記載されることになる。
一例では、第1の分配方法が、受信したコンセンサス形成されるべきトランザクションデータの組数に従って、コンセンサスユニット集合から一致数のコンセンサスユニットをランダム方式で決定することと、決定したコンセンサスユニットに、それぞれ、コンセンサス形成されるべきトランザクションデータを並行して分配することと、を含んでもよい。
一例では、コンセンサス形成されるべきトランザクションデータの組数が1であるとき、1つのコンセンサスユニットがコンセンサスユニット集合からランダム方式で決定される。コンセンサス形成されるべきトランザクションデータは決定したコンセンサスユニットに分配され、そしてコンセンサスユニットはコンセンサス形成されるべきトランザクションデータにコンセンサス処理を行う。
コンセンサス形成されるべきトランザクションデータの組数が1より大きいとき、コンセンサス形成されるべきトランザクションデータの組数に従って、同数のコンセンサスユニットがコンセンサスユニット集合からランダム方式で決定される。コンセンサス形成されるべきトランザクションデータの組は、それぞれ、決定した異なるコンセンサスユニットに順次分配される。
例えば、取得したコンセンサス形成されるべきトランザクションデータは、コンセンサス形成されるべきトランザクションデータ1、コンセンサス形成されるべきトランザクションデータ2およびコンセンサス形成されるべきトランザクションデータ3を含む、そしてコンセンサスユニット集合がコンセンサスユニット1、コンセンサスユニット2、コンセンサスユニット3、コンセンサスユニット4およびコンセンサスユニット5を含むと仮定する。ここで、3つのコンセンサスユニットがコンセンサスユニット集合からランダムに決定されることができる。ランダムに決定したコンセンサスユニットがコンセンサスユニット2、コンセンサスユニット4およびコンセンサスユニット5であると仮定すると、コンセンサス形成されるべきトランザクションデータ1、コンセンサス形成されるべきトランザクションデータ2およびコンセンサス形成されるべきトランザクションデータ3は、決定した異なるコンセンサスユニットにランダム方式で順次分配される。例えば、コンセンサス形成されるべきトランザクションデータ1はコンセンサスユニット5に分配され、コンセンサス形成されるべきトランザクションデータ2はコンセンサスユニット4に分配され、そしてコンセンサス形成されるべきトランザクションデータ3はコンセンサスユニット2に分配される。
本出願の実装モードにおけるコンセンサス分配はいかなる順序の要件も有しない。したがって、分配のためにランダム方式が使用されることができる。更に、「コンセンサス形成されるべきトランザクションデータ1、コンセンサス形成されるべきトランザクションデータ2およびコンセンサス形成されるべきトランザクションデータ3は、決定した異なるコンセンサスユニットにランダム方式で順次分配される」は、並行して分配する方式で実装されてもよい。分配はランダム方式で実施される。すなわち、コンセンサス形成されるべきトランザクションデータが取得されると、いかなるコンセンサスユニットもコンセンサストランザクションのコンセンサスユニットになって、コンセンサス形成されるべきトランザクションデータを処理することができる。そのようなランダム分配方式は、分配においてシステムによって使用されるリソースを削減することができる。
本明細書における「ランダム方式」はランダムアルゴリズムを通じて実装されてもよく、または他の方式で実装されてもよく、本明細書で特に限定されない。
別の例では、第2の分配方法が、コンセンサスユニット集合からコンセンサストランザクションを要するコンセンサスユニットをポーリング方式で決定することと、決定したコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することと、を含んでもよい。
一例では、コンセンサス形成されるべきトランザクションデータが取得されると、コンセンサスユニット集合における全てのコンセンサスユニットに照会メッセージがポーリング方式で送信されて、コンセンサストランザクションオブジェクト(例えば、トランザクション要求)を要するコンセンサスユニットがあるかどうかを判定する。コンセンサスユニットがコンセンサストランザクションオブジェクトを要すると判定されると、コンセンサス形成されるべきトランザクションデータはコンセンサスユニットに送信される。
コンセンサス形成されるべきトランザクションデータの数が1であるとき、コンセンサスユニット集合における全てのコンセンサスユニットに照会メッセージが順次送信される。受信される応答メッセージが、コンセンサストランザクションオブジェクトが必要とされることを示す場合、コンセンサス形成されるべきトランザクションデータは、応答メッセージを返すコンセンサスユニットに送信される。
コンセンサス形成されるべきトランザクションデータの数が1より大きいとき、コンセンサスユニット集合における全てのコンセンサスユニットに照会メッセージが並行して送信されてもよい。応答メッセージが受信されると、受信した応答メッセージに示される、コンセンサストランザクションオブジェクトを要するコンセンサスユニットの数が決定される。コンセンサスユニット数がトランザクション要求数より大きければ、受信した応答メッセージに示される、コンセンサストランザクションオブジェクトを要するコンセンサスユニットからコンセンサスユニットが第1の方式に従ってランダムに選択されることができ、そしてコンセンサス形成されるべきトランザクションデータは、それぞれ、ランダムに選択したコンセンサスユニットに並行して送信される。コンセンサスユニット数がトランザクション要求数以下であれば、コンセンサス形成されるべきトランザクションデータは、受信した応答メッセージに示される、コンセンサストランザクションオブジェクトを要するコンセンサスユニットにランダムに分配され、そして分配されなかったコンセンサス形成されるべきトランザクションデータは待ち続けることになる。
例えば、コンセンサストランザクションオブジェクトを要するコンセンサスユニットが3つあるとポーリング方式で判定される。取得したコンセンサス形成されるべきトランザクションデータが4組あると仮定する。次いで、4組の取得したコンセンサス形成されるべきトランザクションデータから3組のコンセンサス形成されるべきトランザクションデータがランダムに選択される。3組のランダムに選択したコンセンサス形成されるべきトランザクションデータは、それぞれ、コンセンサストランザクションオブジェクトを要するコンセンサスユニットに送信され、そして分配されなかった1組のコンセンサス形成されるべきトランザクションデータは分配されるべき状態にある。
取得したコンセンサス形成されるべきトランザクションデータが2組あると仮定すると、コンセンサストランザクションオブジェクトを要すると判定されたコンセンサス形成されるべきトランザクションデータから2組のコンセンサス形成されるべきトランザクションデータがランダムに選択される。2組の取得したコンセンサス形成されるべきトランザクションデータは、ランダムに選択したコンセンサスユニットに並行して送信され、その結果コンセンサスユニットは受信したコンセンサス形成されるべきトランザクションデータにコンセンサス処理を行う。
別の例では、第3の分配方法が、コンセンサスユニット集合における各コンセンサスユニットの負荷容量を決定することと、負荷バランス規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することと、を含んでもよい。
一例では、コンセンサス形成されるべきトランザクションデータが取得されると、コンセンサスユニット集合における各コンセンサスユニットの負荷容量(ここでの負荷容量は現在のコンセンサスユニットの負荷状態を指してもよく、それはコンセンサスユニットの総負荷容量と異なってもよい)が決定されて、コンセンサスユニット集合における全てのコンセンサスユニットに対して負荷のバランスがとられることを保証することができる。更には、各コンセンサスユニットの現在の遊休リソース量が各コンセンサスユニットの負荷容量に従って決定されることができる。一実施形態において、コンセンサス形成されるべきトランザクションデータが、設定条件を下回る負荷容量を有するコンセンサスユニット集合におけるコンセンサスユニットに分配されることができる。すなわち、コンセンサス形成されるべきトランザクションデータが、設定閾値より大きい遊休リソースを有するコンセンサスユニット集合におけるコンセンサスユニットに分配される。
一部の実施形態において、上記の第2の分配方法においてコンセンサストランザクションオブジェクトを要するコンセンサスユニット数がトランザクション要求数より大きい状況に関して、コンセンサスユニットを決定するために、ランダム方法に加えて、第3の分配方法に係る負荷バランス方法が使用されてもよいが、これは本明細書に詳細に記載されることはない。
一実施形態において、取得したコンセンサス形成されるべきトランザクションデータがコンセンサスユニットに1回で全て分配されることができない場合、トランザクション要求の一部が分配されるべき状態にある必要がある。次いで、分配されるべき状態のトランザクション要求に対して、上記の3つの分配方法を使用することによってコンセンサスユニットが更に決定されることができる。
例えば、コンセンサスユニット集合が3つのコンセンサスユニットを含む。次いで、コンセンサスユニット集合は、同じ時点に取得される3つのコンセンサス形成されるべきトランザクションデータを並行して処理することができる。4(すなわち、3より大きい)組のコンセンサス形成されるべきトランザクションデータが取得されれば:コンセンサス形成されるべきトランザクションデータ1、コンセンサス形成されるべきトランザクションデータ2、コンセンサス形成されるべきトランザクションデータ3およびコンセンサス形成されるべきトランザクションデータ4。次いで、コンセンサス形成されるべきトランザクションデータ1、コンセンサス形成されるべきトランザクションデータ2およびコンセンサス形成されるべきトランザクションデータ3がコンセンサスユニット集合における3つのコンセンサスユニットに並行して分配され、そしてコンセンサス形成されるべきトランザクションデータ4が分配されるべき状態にあることになると仮定される。一旦コンセンサスユニット集合におけるコンセンサスユニットが遊休になることが検出されると、コンセンサス形成されるべきトランザクションデータ4がコンセンサスユニットに分配されることができる。
一実施形態において、コンセンサスユニット集合からコンセンサスユニットを決定することは、コンセンサスユニット集合における各コンセンサスユニットの作業状態であって、正常状態および異常状態の少なくとも一方を含む作業状態を決定することと、作業状態が正常状態であるコンセンサスユニットからコンセンサスユニットを決定することと、を含む。
決定したコンセンサスユニットが取得されたコンセンサス形成されるべきトランザクションデータにコンセンサス処理を成功裏に行うことができることを保証するために、コンセンサスユニット集合におけるコンセンサスユニットの作業状態は更に監視されることができる。そのようにして、コンセンサスユニットが選択されるときに、異常な作業状態のコンセンサスユニットは回避されることができ、これはトランザクション要求の処理効率を効果的に改善する。
加えて、コンセンサスユニット集合におけるコンセンサスユニットは、スイッチコントロールが更に設けられることができる。そのようにして、ブロックチェーンネットワークにおいて処理されるべきトランザクション要求量が比較的少ないときに、コンセンサスユニット集合における一部のコンセンサスユニットはオフにされることができ、これはシステムリソースを節約してシステムリソースの利用率を改善する。一部の実施形態において、各コンセンサスユニットのスイッチ状態を制御することによって、本出願の実装方式でのブロックチェーンは、ダウンタイムまたはインターネット切断のような問題に直面するときにシステム稼動率を改善することができる。例えば、ノードダウンタイムまたはインターネット切断がコンセンサスユニットに発生したときに、コンセンサスユニットをシャットダウンすることによって、現存の方式での低システム稼動率の欠点が回避されることができる。
S103:コンセンサスユニットが分配されたトランザクションデータにコンセンサス処理を行う(例えば、行わされる)。
一実施形態において、コンセンサスユニットによって使用されるコンセンサスアルゴリズムは本明細書で限定されずに、主流のPBFTアルゴリズムを含め、いかなるコンセンサスアルゴリズムであることもできる。
当業者は、コンセンサス形成されるべきトランザクションデータを分配するための本開示の実装方式に順序要件がないことを理解するはずである。本開示において、コンセンサスアルゴリズムは独立したコンセンサスユニットとして設計されることができ、これは従来のブロックチェーンコンセンサスと異なる。これらのコンセンサスユニットによってコンセンサスユニット集合が形成され、そしてコンセンサス形成されるべきトランザクションデータの受信に応じて、トランザクションデータは、設定された分配規則に従って、コンセンサスユニット集合におけるコンセンサスユニットに分配されて、コンセンサスユニットによるトランザクションデータへのコンセンサス処理を達成することができる。このようにして、複数のコンセンサスユニットが順序要件のないトランザクション要求に並行してコンセンサス処理を行うことができ、現存のコンセンサスアルゴリズムによる順序操作が単純化され、順序要件のないトランザクション要求に関する処理効率および処理能力が改善され、そしてブロックチェーンネットワークの動作性能が改善される。
一部の実施形態において、トランザクション要求は順序要件のないトランザクション要求を含んでもよい。順序要件のないトランザクション要求は、慈善寄付トランザクション、上限または割当てのないクラウドファンディングトランザクション等を含むが、これらに限定されない。慈善寄付トランザクションに関して、寄付の順序はミリ秒レベルでトランザクションに影響を及ぼすことはなく、そして上限または割当てのないクラウドファンディングトランザクションが同じ性質を有してもよい。したがって、この種類のトランザクション要求は順序要件のない要求として扱われることができる。一実施形態において、コンセンサス処理の動作効率は、この種類の順序要件のないトランザクション要求に対して並行コンセンサス方式で改善されることができる。そのような並行コンセンサス方式の採用により、ブロックチェーンシステム全体の処理能力が大いに改善され、特に、コンセンサスアルゴリズムモジュールはもはやブロックチェーンシステム全体におけるボトルネックでない。
図2は、本開示の実施形態に係るブロックチェーンコンセンサス方法のフローチャートである。本方法は以下のステップを含んでもよい。
S201:トランザクションデータを取得する。
これは図1に関するステップS101の方式と同一または類似しており、詳細に記載されることはない。
S202:トランザクションデータを処理するために必要とされるリソース量およびコンセンサスユニット集合における各コンセンサスユニットの遊休リソース量を決定する。
一実施形態において、コンセンサス形成されるべきトランザクションデータが取得されると、コンセンサス形成されるべきトランザクションデータを処理するために必要とされるリソースが決定されることができる。
更には、コンセンサスユニット集合における各コンセンサスユニットの現在の遊休リソース量が照会を通じて決定されることができる。
S203:各コンセンサスユニットの遊休リソース量を、それぞれ、トランザクションデータを処理するために必要とされるリソースと比較し、そしてトランザクションデータを処理するために必要とされるリソース量より大きい遊休リソース量を有するコンセンサスユニットの数を決定する。
S204:その数が設定値より大きいかどうかを判定し、そうであれば、方法はS205に進み、そうでなければ、方法はS206に進む。
本開示の実施形態における設定値は必要に応じて決定されてもよく、または実験データに従って決定されてもよく、本明細書で限定されない。
S205:トランザクションデータを処理するために必要とされるリソースより多くの遊休リソースを有するコンセンサスユニットからコンセンサストランザクションを要するコンセンサスユニットをポーリング方式で決定し、そして決定したコンセンサスユニットにトランザクションデータを分配する。
コンセンサストランザクションを要するコンセンサスユニットを決定するポーリング方式として、ここでステップS102に関して上記した第2の分配方法が使用されてもよい。
一実施形態において、ポーリングし、かつ各コンセンサス形成されるべきトランザクションデータを分配するメカニズムが採用される。ポーリングおよび分配メカニズムによれば、アダプタまたは分配を担う分配ユニットがポールを周期的に送信して、コンセンサストランザクションオブジェクトが必要とされるかどうか各コンセンサスユニットを順次ポーリングする。そうであれば、トランザクションが提供され、すなわち、コンセンサス形成されるべきトランザクションデータが分配され、そしてトランザクションが完了されると、次のコンセンサスユニットがポーリングされ、これが連続的に繰り返される。
S206:負荷バランス規則に従って、トランザクションデータを処理するために必要とされるリソースより多くの遊休リソースを有するコンセンサスユニットから設定条件を下回る負荷容量を有するコンセンサスユニットを決定し、そして決定したコンセンサスユニットにトランザクションデータを分配する。
コンセンサスユニットを決定するために負荷バランス規則が使用されるここでの方式として、ステップS102に関して上記した第3の分配方法が使用されてもよい。
例えば、或る時点に処理を待っているコンセンサス形成されるべきトランザクションデータが5組ある一方で、コンセンサストランザクションに参加することが可能なコンセンサスユニットが現在3つある。それゆえ、トランザクション要求のロードは独立したコンセンサスユニットの処理能力を上回る。コンセンサス形成されるべきトランザクションデータのロードおよび独立したコンセンサスユニットの処理能力が比較されて次のコンセンサス分配のための基準を提供し、その結果、各コンセンサスユニットはその最大能力まで使用され、そして単位時間当たりのコンセンサス処理量、例えば、処理能力が改善される。
一部の実施形態において、使用される負荷バランス分配方法は、例えば、DNS負荷バランス、ゲートウェイ負荷バランスまたは負荷バランサを通じて、ソフトウェアまたはハードウェア負荷バランス方式を含むが、これに限定されない。負荷バランス方式での分配は、多くのトランザクション要求が一部の個々のコンセンサスユニットにオーバーロードするのを防止する一方で、他の個々のコンセンサスユニットを遊休したままにすることができる。
負荷バランス方法での分配と比較して、ポーリング分配方法は動作させるのがより簡単であるが、負荷バランス方法での分配はより高い効率を有する。
図3は、本開示の実施形態に係るブロックチェーンコンセンサス方法のフローチャートである。本方法は更に以下の通りであってもよい。
S301:少なくとも1組のトランザクションデータを取得する。
S302:少なくとも1つのトランザクションデータを分類して1つまたは複数のトランザクションデータ群を得る。
一実施形態において、コンセンサス形成されるべきトランザクションデータが順序要件のないトランザクションデータであるので、取得したコンセンサス形成されるべきトランザクションデータは分類されることができ、その結果トランザクションデータに対して処理効率が改善されることができる。
S303:予め設定された分配規則に従って、コンセンサスユニット集合における異なるコンセンサスユニットにトランザクションデータ群を分配する(例えば、並行して分配する)。
ここで、コンセンサスユニットは、分配されたコンセンサス形成されるべきトランザクションデータにコンセンサス処理を行うために使用される。
図4は、本開示の実施形態に係るブロックチェーンベースのデータ記憶方法のフローチャートである。本方法は以下の通りであってもよい。
S401:ブロックチェーンネットワークにおける異なるコンセンサスユニットによって送信されるコンセンサス結果を受信する。
一実施形態において、コンセンサスユニットはデータ記憶能力を有してもよい。コンセンサス結果が得られると、コンセンサス結果は実際に記憶される必要があるが、それらはデータ記憶能力を有しなくてもよく、それゆえ異なるコンセンサスユニットが得られたコンセンサス結果をパブリックノードに送信してもよく、そしてパブリックノードが記憶を完了することになる。
S402:コンセンサス結果のタイムスタンプに従ってブロックチェーンネットワークのブロックへコンセンサス結果を記憶する。
一例では、コンセンサス結果の生成時間に従って、異なるコンセンサス結果はブロックチェーンのブロックへ順次記憶され、代替的に、コンセンサス結果の受信時間に従って、異なるコンセンサス結果はブロックチェーンのブロックへ順次記憶される。
一実施形態において、コンセンサス結果がブロックチェーンのブロックへ記憶されるとき、記憶ノードがランダム方式で選択されてもよく、またはコンセンサスユニットと記憶ノードとの間の対応関係に従って、コンセンサス結果は、コンセンサス結果を生成するコンセンサスユニットに対応するブロックチェーンネットワークにおけるノードのブロックへ記憶され、本明細書で限定されない。すなわち、コンセンサスユニットは、それ自体によって生成されるコンセンサス結果を記憶すること、他のコンセンサスユニットによって生成されるコンセンサス結果を記憶することができ、またはコンセンサス結果を記憶せずに、コンセンサス結果が独立した記憶ノードに記憶される。
一例では、各コンセンサスユニットへのスイッチコントロールの提供に加えて、スイッチコントロールが記憶ノードに更に提供されてもよい。記憶ノードのダウンタイム、インターネット切断、新たなノードの追加および古いノードの追出しに直面するときに、そのようなスイッチコントロールはブロックチェーンシステム全体の稼働率を大いに改善する。
図5は、本開示の実施形態に係るブロックチェーンコンセンサスシステムの構造概要図である。コンセンサスシステムは、分配ユニット501およびコンセンサスユニット5021a〜dを含むコンセンサスユニット集合502を備えており、分配ユニット501は、コンセンサス形成されるべきトランザクションデータを取得し、そして予め設定された分配規則に従って、コンセンサスユニット集合502における少なくとも1つのコンセンサスユニット(例えば、5021a、b、cまたはd)にコンセンサス形成されるべきトランザクションデータを分配し、そしてコンセンサスユニット集合502に含まれるコンセンサスユニット5021a〜dは、分配されたコンセンサス形成されるべきトランザクションデータにコンセンサス処理を行う。
一実施形態において、コンセンサスシステムは、1つまたは複数の記憶ノード503a〜dを更に備えており、記憶ノード503a〜dは、ブロックチェーンネットワークにおける異なるコンセンサスユニットによって送信されるコンセンサス結果を受信し、そしてコンセンサス結果のタイムスタンプに従って、コンセンサス結果を順次記憶する。
一実施形態において、分配ユニット501が、予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することは、受信したコンセンサス形成されるべきトランザクションデータの組数に従って、コンセンサスユニット集合から一致数のコンセンサスユニットをランダム方式で決定することと、決定したコンセンサスユニットに、それぞれ、コンセンサス形成されるべきトランザクションデータを並行して分配することと、を含む。
一実施形態において、分配ユニット501が、予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することは、コンセンサスユニット集合からコンセンサストランザクションを要するコンセンサスユニットをポーリング方式で決定することと、決定したコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することと、を含む。
一実施形態において、分配ユニット501が、予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することは、コンセンサスユニット集合における各コンセンサスユニットの負荷容量を決定することと、負荷バランス規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することと、を含む。
一実施形態において、分配ユニット501が、負荷バランス規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することは、設定条件を下回る負荷容量を有するコンセンサスユニット集合におけるコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することを含む。
一実施形態において、分配ユニット501が、予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することは、コンセンサス形成されるべきトランザクションデータを処理するために必要とされるリソース量およびコンセンサスユニット集合における各コンセンサスユニットの遊休リソース量を決定することと、コンセンサス形成されるべきトランザクションデータを処理するために必要とされるリソース量より大きい遊休リソース量を有するコンセンサスユニットの数が設定値より大きい場合、コンセンサス形成されるべきトランザクションデータを処理するために必要とされるリソースより多くの遊休リソースを有するコンセンサスユニットからコンセンサストランザクションを要するコンセンサスユニットをポーリング方式で決定し、そして決定したコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することと、コンセンサス形成されるべきトランザクションデータを処理するために必要とされるリソース量より大きい遊休リソース量を有するコンセンサスユニットの数が設定値より小さい場合、負荷バランス規則に従って、コンセンサス形成されるべきトランザクションデータを処理するために必要とされるリソースより多くの遊休リソースを有するコンセンサスユニットから設定条件を下回る負荷容量を有するコンセンサスユニットを決定し、そして決定したコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することと、を含む。
一実施形態において、分配ユニット501が、コンセンサスユニット集合からコンセンサスユニットを決定することは、コンセンサスユニット集合における各コンセンサスユニットの作業状態であって、正常状態および異常状態の少なくとも一方を含む作業状態を決定することと、作業状態が正常状態であるコンセンサスユニットからコンセンサスユニットを決定することと、を含む。
一実施形態において、コンセンサス形成されるべきトランザクションデータは順序要件のないトランザクションデータを含む。
一実施形態において、記憶ノード503は、ブロックチェーンネットワークにおける異なるコンセンサスユニットによって送信されるコンセンサス結果を受信し、そしてコンセンサス結果のタイムスタンプに従って、ブロックチェーンネットワークのブロックへコンセンサス結果を記憶する。
一実施形態において、記憶ノード503が、ブロックチェーンのブロックへコンセンサス結果を記憶することは、コンセンサス結果を生成するコンセンサスユニットに対応するブロックチェーンネットワークにおけるノードのブロックへコンセンサス結果を記憶することを含む。
図6は、本開示の実施形態に係るブロックチェーンコンセンサス装置600の概要図である。コンセンサス装置600は、取得ユニット601および処理ユニット602を備えてもよく、取得ユニット601は、コンセンサス形成されるべきトランザクションデータを取得し、そして処理ユニット602は、予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配し、そしてコンセンサスユニットは、分配されたコンセンサス形成されるべきトランザクションデータにコンセンサス処理を行うように構成される。一部の実施形態において、ブロックチェーンコンセンサス装置600は、共に結合されたメモリおよびプロセッサを備えてもよい。メモリは、非一時的かつコンピュータ可読であってもよく、そしてプロセッサによって実行されると、装置600に本明細書に記載される1つまたは複数のステップを行わせる命令を記憶してもよい。命令は、本明細書に記載される様々なユニットとして実装されてもよい。各ユニットは、ソフトウェア、ハードウェアまたは両方の組合せであってもよい。
一実施形態において、処理ユニット602が、予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することは、受信したコンセンサス形成されるべきトランザクションデータの組数に従って、コンセンサスユニット集合から一致数のコンセンサスユニットをランダム方式で決定することと、決定したコンセンサスユニットに、それぞれ、コンセンサス形成されるべきトランザクションデータを並行して分配することと、を含む。
一実施形態において、処理ユニット602が、予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することは、コンセンサスユニット集合からコンセンサストランザクションを要するコンセンサスユニットをポーリング方式で決定することと、決定したコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することと、を含む。
一実施形態において、処理ユニット602が、予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することは、コンセンサスユニット集合における各コンセンサスユニットの負荷容量を決定することと、負荷バランス規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することと、を含む。
一実施形態において、処理ユニット602が、負荷バランス規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することは、設定条件を下回る負荷容量を有するコンセンサスユニット集合におけるコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することを含む。
一実施形態において、処理ユニット602が、予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することは、コンセンサス形成されるべきトランザクションデータを処理するために必要とされるリソース量およびコンセンサスユニット集合における各コンセンサスユニットの遊休リソース量を決定することと、コンセンサス形成されるべきトランザクションデータを処理するために必要とされるリソース量より大きい遊休リソース量を有するコンセンサスユニットの数が設定値より大きい場合、コンセンサス形成されるべきトランザクションデータを処理するために必要とされるリソースより多くの遊休リソースを有するコンセンサスユニットからコンセンサストランザクションを要するコンセンサスユニットをポーリング方式で決定し、そして決定したコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することと、コンセンサス形成されるべきトランザクションデータを処理するために必要とされるリソース量より大きい遊休リソース量を有するコンセンサスユニットの数が設定値より小さい場合、負荷バランス規則に従って、コンセンサス形成されるべきトランザクションデータを処理するために必要とされるリソースより多くの遊休リソースを有するコンセンサスユニットから設定条件を下回る負荷容量を有するコンセンサスユニットを決定し、そして決定したコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを分配することと、を含む。
一実施形態において、処理ユニット602が、コンセンサスユニット集合からコンセンサスユニットを決定することは、コンセンサスユニット集合における各コンセンサスユニットの作業状態であって、正常状態および異常状態の少なくとも一方を含む作業状態を決定することと、作業状態が正常状態であるコンセンサスユニットからコンセンサスユニットを決定することと、を含む。
一実施形態において、コンセンサス形成されるべきトランザクションデータは順序要件のないトランザクションデータを含む。
様々な実施形態に係るコンセンサス装置は、ソフトウェア的に実装されてもよく、またはハードウェア的に実装されてもよく、本明細書で限定されない。言い換えれば、ユニット601および602は、メモリに記憶されるソフトウェア機能ユニットであることができる。ソフトウェア機能ユニットがプロセッサによって実行されると、それらはプロセッサに記載された機能を行わせる。ユニット601および602は、記載された機能を行うためのプログラム式回路網などのハードウェアユニットであってもよい。
図7は、本出願の実施形態に係るブロックチェーンコンセンサス装置700の概要図である。コンセンサス装置700は、取得ユニット701および処理ユニット702を備えてもよく、取得ユニットは、少なくとも1つのコンセンサス形成されるべきトランザクションデータを取得し、そして処理ユニットは、予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを並行して分配し、そしてコンセンサスユニットは、分配されたコンセンサス形成されるべきトランザクションデータにコンセンサス処理を行うように構成される。一部の実施形態において、ブロックチェーンコンセンサス装置700は、共に結合されたメモリおよびプロセッサを備えてもよい。メモリは、非一時的かつコンピュータ可読であってもよく、そしてプロセッサによって実行されると、装置700に本明細書に記載される1つまたは複数のステップを行わせる命令を記憶してもよい。命令は、本明細書に記載される様々なユニットとして実装されてもよい。各ユニットは、ソフトウェア、ハードウェアまたは両方の組合せであってもよい。例えば、ユニット701および702は、メモリに記憶されるソフトウェア機能ユニットであることができる。ソフトウェア機能ユニットがプロセッサによって実行されると、それらはプロセッサに記載された機能を行わせる。ユニット701および702は、記載された機能を行うためのプログラム式回路網などのハードウェアユニットであってもよい。
一実施形態において、処理ユニット702が、予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットにコンセンサス形成されるべきトランザクションデータを並行して分配することは、少なくとも1つのコンセンサス形成されるべきトランザクションデータを分類して1つまたは複数のトランザクションデータ群を得ることと、予め設定された分配規則に従って、コンセンサスユニット集合における異なるコンセンサスユニットにトランザクションデータ群を分配することと、を含む。
図8は、本出願の実施形態に係るブロックチェーンベースのデータ記憶装置800の構造概要図である。記憶装置800は、受信ユニット801および記憶ユニット802を備えてもよく、受信ユニット801は、ブロックチェーンネットワークにおける異なるコンセンサスユニットによって送信されるコンセンサス結果を受信し、そして記憶ユニット802は、コンセンサス結果のタイムスタンプに従って、ブロックチェーンネットワークのブロックへコンセンサス結果を記憶する。一部の実施形態において、ブロックチェーンコンセンサス装置800は、共に結合されたメモリおよびプロセッサを備えてもよい。メモリは、非一時的かつコンピュータ可読であってもよく、そしてプロセッサによって実行されると、装置800に本明細書に記載される1つまたは複数のステップを行わせる命令を記憶してもよい。命令は、本明細書に記載される様々なユニットとして実装されてもよい。各ユニットは、ソフトウェア、ハードウェアまたは両方の組合せであってもよい。例えば、ユニット801および802は、メモリに記憶されるソフトウェア機能ユニットであることができる。ソフトウェア機能ユニットがプロセッサによって実行されると、それらはプロセッサに記載された機能を行わせる。ユニット801および802は、記載された機能を行うためのプログラム式回路網などのハードウェアユニットであってもよい。
一実施形態において、記憶ユニット802が、ブロックチェーンのブロックへコンセンサス結果を記憶することは、コンセンサス結果を生成するコンセンサスユニットに対応するブロックチェーンネットワークにおけるノードのブロックへコンセンサス結果を記憶することを含む。
様々な実施形態に係るコンセンサス装置は、ソフトウェア的に実装されてもよく、またはハードウェア的に実装されてもよく、本明細書で限定されない。コンセンサス装置に関して、コンセンサスアルゴリズムは独立したコンセンサスユニットとして設計され、これは従来のブロックチェーンコンセンサスと異なる。これらのコンセンサスユニットによってコンセンサスユニット集合が形成され、そしてコンセンサス形成されるべきトランザクションデータの受信に応じて、トランザクションデータは、設定された分配規則に従って、コンセンサスユニット集合におけるコンセンサスユニットに分配されて、コンセンサスユニットによるトランザクションデータへのコンセンサス処理を達成することができる。このようにして、複数のコンセンサスユニットが順序要件のないトランザクション要求に並行してコンセンサス処理を行うことができ、現存のコンセンサスアルゴリズムによる順序操作が単純化され、順序要件のないトランザクション要求に関する処理効率および処理能力が改善され、そしてブロックチェーンネットワークの動作性能が改善される。
本開示の実施形態によれば、装置はそれぞれ方法に対応する。したがって、装置も、対応する方法のものに類似している有利な技術的効果を達成する。方法の有利な技術的効果が詳細に上記されているので、対応する装置の有利な技術的効果は本明細書に繰り返されることはない。
1990年代、技術の改良はハードウェア改良(例えばダイオード、トランジスタ、スイッチ等などの回路構造の改良)またはソフトウェア改良(方法のフローの改良)へ区分されることができた。技術発展につれて、しかしながら、方法フローの多くの現在の改良がハードウェア回路構造の直接的な改良と考えられることができる。設計者は、改良された方法フローをハードウェア回路へプログラムすることによって対応するハードウェア回路構造を得ることができる。したがって、方法フローの改良がハードウェア実装によって実現されることができる。例えば、プログラマブル論理デバイス(PLD)(例えば、フィールドプログラマブルゲートアレイ(FPGA))は、デバイスをプログラムすることを通じてその論理機能がユーザによって決定されるような集積回路である。設計者は、チップメーカーに専用ICチップを設計および製造するよう依頼することなく、デジタルシステムを1個のPLDへ「集積」するようにプログラムすることができる。現在、この種類のプログラミングは、ICチップを手動で製造するよりもむしろ、大部分は「論理コンパイラ」ソフトウェアを通じて実装されてきた。論理コンパイラソフトウェアは、プログラム開発および作成のために使用されるソフトウェアコンパイラに類似している一方で、コンパイル前のソースコードを書くために特定のプログラミング言語が使用され、これはハードウェア記述言語(HDL)と称される。ABEL(高級ブール式言語)、AHDL(アルテラハードウェア記述言語)、Confluence、CUPL(コーネル大学プログラミング言語)、HDCal、JHDL(Java(登録商標)ハードウェア記述言語)、Lava、Lola、MyHDL、PALASM、RHDL(Rubyハードウェア記述言語)など、1つだけでなく多くの種類のHDLがある。最も一般的に使用されるHDLとしては、VHDL(超高速集積回路ハードウェア記述言語)およびVerilogを含む。当業者は、上記のHDLを使用して、方法フローに関して一部の論理プログラミングを行い、そしてそれをICへプログラムすることによって、論理方法フローを実装するハードウェア回路を得ることを知っているであろう。
コントローラが任意の適切な方式で実装されてもよい。例えば、コントローラは、例えば、マイクロプロセッサまたはプロセッサの他に、(マイクロ)プロセッサによって実行されることが可能なコンピュータ可読プログラムコード(例えば、ソフトウェアまたはファームウェア)を記憶したコンピュータ可読媒体、論理ゲート、スイッチ、特定用途向け集積回路(ASIC)、プログラマブル論理コントローラ、および組込みマイクロコントローラの形態であってもよい。コントローラの例としては、以下のマイクロコントローラを含むが、それらに限定されない:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20およびSilicone Labs C8051F320。メモリコントローラがメモリの制御論理の一部として更に実装されてもよい。当業者は、コントローラが純コンピュータ可読プログラムコード的に実装されることに加えて、方法のステップに関して論理プログラミングを行って、コントローラが論理ゲート、スイッチ、ASIC、プログラマブル論理コントローラおよび組込みマイクロコントローラの形態で同じ機能を実装することを可能にすることが実現可能であることも認識しているはずである。したがって、そのようなコントローラはハードウェア部品と考えられることができる一方で、そこに備えられて様々な機能を実施するように構成されるデバイスもハードウェア部品内部の構造と考えられてもよい。代替的に、様々な機能を実施するように構成されるデバイスは、方法を実装するソフトウェアモジュールともハードウェア部品内部の構造とも考えられてもよい。
上記の実施形態に記載されるシステム、装置、モジュールまたはユニットは、コンピュータチップもしくはエンティティによって実装されても、または機能を有する製品によって実装されてもよい。典型的な実装デバイスがコンピュータである。例えば、コンピュータは、パーソナルコンピュータ、ラップトップコンピュータ、携帯電話、カメラ付き電話、スマートフォン、携帯情報端末、メディアプレーヤ、ナビゲーションデバイス、電子メール装置、ゲーム機、タブレットコンピュータ、ウェアラブルデバイス、またはこれらのデバイスにおける任意のデバイスの組合せであってもよい。
説明の便宜のために、上記の装置は、説明する機能に従って様々なユニットへ分けられる。ユニットの機能は、本開示を実装するときに、1個または複数個のソフトウェアおよび/またはハードウェアで実装されてもよい。
当業者は、本開示の実施形態が方法、システムまたはコンピュータプログラム製品として提供されてよいことを理解するはずである。したがって、開示されたシステムは、完全なハードウェア実施形態、完全なソフトウェア実施形態、または開示された方法を行うためのソフトウェアおよびハードウェアを集めた実施形態として実装されてもよい。その上、開示されたシステムは、コンピュータ使用可能プログラムコードを備える1つまたは複数のコンピュータ使用可能記憶媒体(磁気ディスクメモリ、CD−ROM、光メモリ等を含むが、これらに限定されない)に実装されたコンピュータプログラム製品の形態であってもよい。
開示されたシステムは、本開示の実施形態に係る方法、デバイス(システム)およびコンピュータプログラム製品のフローチャートおよび/またはブロック図を参照しつつ記載される。フローチャートおよび/またはブロック図における各プロセスおよび/またはブロックならびにフローチャートおよび/またはブロック図におけるプロセスおよび/またはブロックの組合せを実装するためにコンピュータプログラム命令が使用されてもよい。これらのコンピュータプログラム命令は、汎用コンピュータ、専用コンピュータ、組込みプロセッサ、または他のプログラマブルデータ処理デバイスのプロセッサに提供されてマシンを生成してもよく、その結果コンピュータまたは他のプログラマブルデータ処理デバイスのプロセッサによって実行される命令は、フローチャートにおける1つもしくは複数のプロセスにおけるおよび/またはブロック図における1つもしくは複数のブロックにおける指定の機能を実装するための装置を生成する。
これらのコンピュータプログラム命令はまた、コンピュータまたは他のプログラマブルデータ処理デバイスに特定の方式で動くように命令することができるコンピュータ可読メモリに記憶されてもよく、その結果コンピュータ可読メモリに記憶された命令は、命令装置を含む製品を生成する。命令装置は、フローチャートにおける1つもしくは複数のプロセスにおけるおよび/またはブロック図における1つもしくは複数のブロックにおける1つまたは複数の機能を実装する。
これらのコンピュータプログラム命令はまた、コンピュータまたは他のプログラマブルデータ処理デバイスへロードされてもよく、その結果コンピュータまたは他のプログラマブルデバイスで一連の動作ステップが行われて、それによってコンピュータ実装処理を生成する。したがって、コンピュータまたは他のプログラマブルデバイスで実行される命令は、フローチャートにおける1つもしくは複数のプロセスにおけるおよび/またはブロック図における1つもしくは複数のブロックにおける1つまたは複数の機能を実装するためのステップを提供する。
典型的な構成では、計算デバイスは、1つまたは複数の中央処理装置(CPU)、入出力インタフェース、ネットワークインタフェースおよびメモリを含む。
メモリは、揮発性メモリ、ランダムアクセスメモリ(RAM)、および/または不揮発性メモリ、例えば、リードオンリメモリ(ROM)もしくはフラッシュRAMなどの、コンピュータ可読媒体を含んでもよい。メモリはコンピュータ可読媒体の一例である。
コンピュータ可読媒体は、永久、揮発性、移動および不動媒体を含み、任意の方法または技術を通じて情報記憶を実装することができる。情報は、コンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータであってもよい。コンピュータの記憶媒体の例としては、相変化RAM(PRAM)、スタティックRAM(SRAM)、ダイナミックRAM(DRAM)、他の種類のランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、フラッシュメモリもしくは他のメモリ技術、コンパクトディスクリードオンリメモリ(CD−ROM)、デジタル多用途ディスク(DVD)もしくは他の光メモリ、カセット、カセットおよびディスクメモリもしくは他の磁気メモリデバイス、または任意の他の非伝送媒体を含むが、これらに限定されず、これらは計算デバイスにアクセス可能な情報を記憶するために使用されることができる。本明細書における定義によれば、コンピュータ可読媒体には、変調データ信号および搬送波などの一時的媒体を含まない。
「含む」、「備える」またはその任意の他の変形の用語は、非排他的包含を達成する意図であり、その結果、一連の要素を備えるプロセス、方法、商品またはデバイスがこれらの要素を備えるだけでなく、列記されていない他の要素も備える、またはプロセス、方法、商品もしくはデバイスに固有である要素を更に備える。更なる制限がない場合、文「1つの...を備える」によって定義される要素は、定義された要素を備えるプロセス、方法、商品またはデバイスにおける追加の類似の要素を排除しない。
本開示は、プログラムモジュールなどのコンピュータによって実行されるコンピュータ実行可能命令の正規の文脈で記載されてもよい。様々な実施形態において、プログラムモジュールは、特定のタスクを実行する、または特定の抽象データ型を実装するためのルーチン、プログラム、オブジェクト、コンポーネント、データ構造等を備える。本開示は分散コンピューティング環境でも実践されてもよい。これらの分散コンピューティング環境では、通信ネットワークを介して接続される遠隔処理デバイスがタスクを実施する。分散コンピューティング環境では、プログラムモジュールは、記憶デバイスを含め、ローカルおよび遠隔コンピュータ記憶媒体に設けられることができる。
本説明における実施形態は、各実施形態が他の実施形態との違いに重点を置いて累進的に記載され、そして実施形態はその同一または類似部分について相互に参照されてもよい。システム実施形態に関しては、それが方法実施形態と実質的に類似しているので、その説明は比較的簡潔である。方法実施形態の説明がその関連部分について参照されてもよい。
本開示の実施形態は単に例証的であり、本開示を限定するために使用されるものではない。当業者にとって、開示された実施形態は様々に修正または変更されることができる。本開示の趣旨および原理の範囲内でなされるいかなる修正、等価な置換または改善も本開示の請求項によって包含されるものとする。

Claims (20)

  1. トランザクションデータを取得することと、
    予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットに前記トランザクションデータを分配して、前記少なくとも1つのコンセンサスユニットに、前記分配したトランザクションデータにコンセンサス処理を行わせることと、
    を含む、ブロックチェーンコンセンサス方法。
  2. 予め設定された分配規則に従って、前記コンセンサスユニット集合における少なくとも1つのコンセンサスユニットに前記トランザクションデータを分配することが、
    前記トランザクションデータの組数に従って、前記少なくとも1つのコンセンサスユニットとして前記コンセンサスユニット集合から一致数のコンセンサスユニットをランダム方式で決定することと、
    前記決定したコンセンサスユニットに、それぞれ、前記トランザクションデータの組を分配することと、
    を含む、請求項1に記載の方法。
  3. 予め設定された分配規則に従って、前記コンセンサスユニット集合における少なくとも1つのコンセンサスユニットに前記トランザクションデータを分配することが、
    前記少なくとも1つのコンセンサスユニットとして前記コンセンサスユニット集合からコンセンサストランザクションを要するコンセンサスユニットをポーリング方式で決定することと、
    前記決定したコンセンサスユニットに前記トランザクションデータを分配することと、
    を含む、請求項1に記載の方法。
  4. 予め設定された分配規則に従って、前記コンセンサスユニット集合における少なくとも1つのコンセンサスユニットに前記トランザクションデータを分配することが、
    前記コンセンサスユニット集合における各コンセンサスユニットの負荷容量を決定することと、
    負荷バランス規則に従って、前記コンセンサスユニット集合における前記少なくとも1つのコンセンサスユニットに前記トランザクションデータを分配することと、
    を含む、請求項1に記載の方法。
  5. 予め設定された分配規則に従って、前記コンセンサスユニット集合における少なくとも1つのコンセンサスユニットに前記トランザクションデータを分配することが、
    前記トランザクションデータを処理するために必要とされるリソース量および前記コンセンサスユニット集合における各コンセンサスユニットの遊休リソース量を決定することと、
    前記トランザクションデータを処理するために必要とされる前記リソース量より大きい遊休リソース量を有するコンセンサスユニットの数が設定値より大きいことに応答して、前記トランザクションデータを処理するために必要とされる前記リソースより多くの遊休リソースを有する前記コンセンサスユニットからコンセンサストランザクションを要するコンセンサスユニットをポーリング方式で決定し、そして前記決定したコンセンサスユニットに前記トランザクションデータを分配することと、
    前記トランザクションデータを処理するために必要とされる前記リソース量より大きい前記遊休リソース量を有するコンセンサスユニットの数が前記設定値より小さいことに応答して、負荷バランス規則に従って、前記トランザクションデータを処理するために必要とされる前記リソースより多くの遊休リソースを有する前記コンセンサスユニットから設定条件を下回る負荷容量を有するコンセンサスユニットを決定し、そして前記決定したコンセンサスユニットに前記トランザクションデータを分配することと、
    を含む、請求項1に記載の方法。
  6. 前記コンセンサスユニット集合における少なくとも1つのコンセンサスユニットに前記トランザクションデータを分配することが、
    前記コンセンサスユニット集合における各コンセンサスユニットの作業状態であって、正常状態または異常状態の少なくとも一方を含む作業状態を決定することと、
    前記少なくとも1つのコンセンサスユニットとして前記作業状態が正常状態であるコンセンサスユニットからコンセンサスユニットを決定することと、
    を含む、請求項1に記載の方法。
  7. 前記トランザクションデータが順序要件のないトランザクションデータを含む、請求項1に記載の方法。
  8. 前記トランザクションデータが複数組のトランザクションデータを含み、かつ、
    予め設定された分配規則に従って、前記コンセンサスユニット集合における少なくとも1つのコンセンサスユニットに前記トランザクションデータを分配することが、
    前記複数組のトランザクションデータを分類して1つまたは複数のトランザクションデータ群を得ることと、
    前記予め設定された分配規則に従って、前記コンセンサスユニット集合における異なるコンセンサスユニットに前記トランザクションデータ群を分配することと、
    を含む、請求項1に記載の方法。
  9. ブロックチェーンネットワークにおける異なるコンセンサスユニットからコンセンサス結果を受信することと、
    前記コンセンサス結果のタイムスタンプに従って前記ブロックチェーンネットワークのブロックへ前記コンセンサス結果を記憶することと、
    を含む、ブロックチェーンベースのデータ記憶方法。
  10. 前記ブロックチェーンネットワークのブロックへ前記コンセンサス結果を記憶することが、
    前記コンセンサス結果を生成するコンセンサスユニットに対応する前記ブロックチェーンネットワークにおけるノードのブロックへ前記コンセンサス結果を記憶することを含む、請求項9に記載の方法。
  11. 分配ユニットおよび複数のコンセンサスユニットを含むコンセンサスユニット集合を備え、
    前記分配ユニットが、トランザクションデータを取得し、そして予め設定された分配規則に従って、前記コンセンサスユニット集合における少なくとも1つのコンセンサスユニットに前記トランザクションデータを分配するように構成され、かつ、
    前記少なくとも1つのコンセンサスユニットが、前記分配されたトランザクションデータにコンセンサス処理を行うように構成される、
    ブロックチェーンコンセンサスシステム。
  12. 前記コンセンサスシステムが、異なるコンセンサスユニットからコンセンサス結果を受信し、そして前記コンセンサス結果のタイムスタンプに従って、前記コンセンサス結果を順次記憶するように構成される記憶ノードを更に備える、請求項11に記載のコンセンサスシステム。
  13. ブロックチェーンコンセンサス装置であって、プロセッサ、および前記プロセッサによって実行されると、前記ブロックチェーンコンセンサス装置に方法を行わせる命令を記憶した非一時的コンピュータ可読記憶媒体を備え、前記方法が、
    トランザクションデータを取得することと、
    予め設定された分配規則に従って、コンセンサスユニット集合における少なくとも1つのコンセンサスユニットに前記トランザクションデータを分配して、前記少なくとも1つのコンセンサスユニットに、前記分配したトランザクションデータにコンセンサス処理を行わせることと、
    を含む、ブロックチェーンコンセンサス装置。
  14. 予め設定された分配規則に従って、前記コンセンサスユニット集合における少なくとも1つのコンセンサスユニットに前記トランザクションデータを分配することが、
    前記トランザクションデータの組数に従って、前記少なくとも1つのコンセンサスユニットとして前記コンセンサスユニット集合から一致数のコンセンサスユニットをランダム方式で決定することと、
    前記決定したコンセンサスユニットに、それぞれ、前記トランザクションデータの組を分配することと、
    を含む、請求項13に記載の装置。
  15. 予め設定された分配規則に従って、前記コンセンサスユニット集合における少なくとも1つのコンセンサスユニットに前記トランザクションデータを分配することが、
    前記少なくとも1つのコンセンサスユニットとして前記コンセンサスユニット集合からコンセンサストランザクションを要するコンセンサスユニットをポーリング方式で決定することと、
    前記決定したコンセンサスユニットに前記トランザクションデータを分配することと、
    を含む、請求項13に記載の装置。
  16. 予め設定された分配規則に従って、前記コンセンサスユニット集合における少なくとも1つのコンセンサスユニットに前記トランザクションデータを分配することが、
    前記コンセンサスユニット集合における各コンセンサスユニットの負荷容量を決定することと、
    負荷バランス規則に従って、前記コンセンサスユニット集合における前記少なくとも1つのコンセンサスユニットに前記トランザクションデータを分配することと、
    を含む、請求項13に記載の装置。
  17. 予め設定された分配規則に従って、前記コンセンサスユニット集合における少なくとも1つのコンセンサスユニットに前記トランザクションデータを分配することが、
    前記トランザクションデータを処理するために必要とされるリソース量および前記コンセンサスユニット集合における各コンセンサスユニットの遊休リソース量を決定することと、
    前記トランザクションデータを処理するために必要とされる前記リソース量より大きい遊休リソース量を有するコンセンサスユニットの数が設定値より大きいことに応答して、前記トランザクションデータを処理するために必要とされる前記リソースより多くの遊休リソースを有する前記コンセンサスユニットからコンセンサストランザクションを要するコンセンサスユニットをポーリング方式で決定し、そして前記決定したコンセンサスユニットに前記トランザクションデータを分配することと、
    前記トランザクションデータを処理するために必要とされる前記リソース量より大きい前記遊休リソース量を有するコンセンサスユニットの数が前記設定値より小さいことに応答して、負荷バランス規則に従って、前記トランザクションデータを処理するために必要とされる前記リソースより多くの遊休リソースを有する前記コンセンサスユニットから設定条件を下回る負荷容量を有するコンセンサスユニットを決定し、そして前記決定したコンセンサスユニットに前記トランザクションデータを分配することと、
    を含む、請求項13に記載の装置。
  18. 前記コンセンサスユニット集合における少なくとも1つのコンセンサスユニットに前記トランザクションデータを分配することが、
    前記コンセンサスユニット集合における各コンセンサスユニットの作業状態であり、正常状態または異常状態の少なくとも一方を含む作業状態を決定することと、
    前記少なくとも1つのコンセンサスユニットとして前記作業状態が正常状態であるコンセンサスユニットからコンセンサスユニットを決定することと、
    を含む、請求項13に記載の装置。
  19. 前記トランザクションデータが複数組のトランザクションデータを含み、かつ、
    予め設定された分配規則に従って、前記コンセンサスユニット集合における少なくとも1つのコンセンサスユニットに前記トランザクションデータを分配することが、
    前記複数組のトランザクションデータを分類して1つまたは複数のトランザクションデータ群を得ることと、
    前記予め設定された分配規則に従って、前記コンセンサスユニット集合における異なるコンセンサスユニットに前記トランザクションデータ群を分配することと、
    を含む、請求項13に記載の装置。
  20. ブロックチェーンベースのデータ記憶装置であって、プロセッサ、および前記プロセッサによって実行されると、前記ブロックチェーンデータ記憶装置に方法を行わせる命令を記憶した非一時的コンピュータ可読記憶媒体を備え、前記方法が、
    ブロックチェーンネットワークにおける異なるコンセンサスユニットからコンセンサス結果を受信することと、
    前記コンセンサス結果のタイムスタンプに従って、前記ブロックチェーンネットワークのブロックへ前記コンセンサス結果を記憶することと、を含み、前記ブロックチェーンのブロックへ前記コンセンサス結果を記憶することが、前記コンセンサス結果を生成するコンセンサスユニットに対応する前記ブロックチェーンネットワークにおけるノードのブロックへ前記コンセンサス結果を記憶することを含む、
    ブロックチェーンベースのデータ記憶装置。
JP2019553325A 2017-03-29 2018-03-26 ブロックチェーンコンセンサスのための方法、装置およびシステム Active JP6882511B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201710197538.XA CN107360206B (zh) 2017-03-29 2017-03-29 一种区块链共识方法、设备及系统
CN201710197538.X 2017-03-29
PCT/US2018/024256 WO2018183148A1 (en) 2017-03-29 2018-03-26 Method, apparatus, and system for blockchain consensus

Publications (2)

Publication Number Publication Date
JP2020515976A true JP2020515976A (ja) 2020-05-28
JP6882511B2 JP6882511B2 (ja) 2021-06-02

Family

ID=60270911

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019553325A Active JP6882511B2 (ja) 2017-03-29 2018-03-26 ブロックチェーンコンセンサスのための方法、装置およびシステム

Country Status (16)

Country Link
US (3) US11010369B2 (ja)
EP (1) EP3602293A1 (ja)
JP (1) JP6882511B2 (ja)
KR (1) KR102262713B1 (ja)
CN (1) CN107360206B (ja)
AU (2) AU2018243696B2 (ja)
BR (1) BR112019020374B1 (ja)
CA (1) CA3057329C (ja)
MX (1) MX2019011549A (ja)
MY (1) MY202367A (ja)
PH (1) PH12019502200A1 (ja)
RU (1) RU2744498C1 (ja)
SG (1) SG11201908451UA (ja)
TW (1) TWI694339B (ja)
WO (1) WO2018183148A1 (ja)
ZA (1) ZA201906163B (ja)

Families Citing this family (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8874477B2 (en) 2005-10-04 2014-10-28 Steven Mark Hoffberg Multifactorial optimization system and method
CN111756550B (zh) 2017-03-28 2023-08-22 创新先进技术有限公司 一种区块链共识方法及装置
GB201707296D0 (en) * 2017-05-08 2017-06-21 Nchain Holdings Ltd Computer-implemented system and method
CN109819003A (zh) * 2017-11-22 2019-05-28 南京理工大学 一种区块链的分层共识方法和系统
CN108009824A (zh) * 2017-11-28 2018-05-08 北京博晨技术有限公司 数据共识方法、装置及电子设备
CN107992356B (zh) * 2017-12-13 2021-09-14 深圳壹账通智能科技有限公司 区块链事务区块处理方法、电子装置及可读存储介质
CN108234470B (zh) * 2017-12-28 2020-08-04 江苏通付盾科技有限公司 区块链网络中区块打包方法及系统、电子设备、存储介质
CN110083437A (zh) * 2018-01-25 2019-08-02 北京欧链科技有限公司 处理区块链事务的方法及装置
WO2019144353A1 (zh) * 2018-01-25 2019-08-01 深圳前海达闼云端智能科技有限公司 基于区块链的数据训练方法、装置、存储介质及区块链节点
CN108307000A (zh) * 2018-02-06 2018-07-20 武汉康慧然信息技术咨询有限公司 基于时间调度的区块链生成方法
US10873625B2 (en) * 2018-02-26 2020-12-22 International Business Machines Corpora ! Ion Service management for the infrastructure of blockchain networks
CN108540536B (zh) * 2018-03-16 2021-07-23 深圳前海微众银行股份有限公司 基于区块链的网络海量业务处理方法、设备及存储介质
CN108681963B (zh) * 2018-03-29 2020-07-31 深圳市网心科技有限公司 多区块链整合控制方法、系统、电子装置及存储介质
CN108564468A (zh) * 2018-04-04 2018-09-21 上海金丘信息科技股份有限公司 一种基于信任成员的动态权益的共识方法
CN108809929B (zh) * 2018-04-08 2020-07-17 浙江商业职业技术学院 一种基于区块链技术的农村金融系统
CN108833330B (zh) * 2018-04-08 2020-07-17 浙江商业职业技术学院 一种农村电子商务数据鉴证方法
CN108830709A (zh) * 2018-04-17 2018-11-16 中车工业研究院有限公司 一种基于区块链的众包交易系统
CN111433807A (zh) * 2018-04-18 2020-07-17 深圳市元征软件开发有限公司 区块链节点服务、挖矿方法、装置、设备、系统及介质
CN108683645A (zh) * 2018-04-27 2018-10-19 欧阳福 一种基于区块链的信息分布式域名及数据交易系统
EP3791348A4 (en) 2018-05-10 2022-01-19 Cornell University METASTABLE BYZANTINE CHORD
CN108664623A (zh) * 2018-05-14 2018-10-16 中钞信用卡产业发展有限公司杭州区块链技术研究院 一种数据存储方法、装置、设备及介质
CN108712491A (zh) * 2018-05-17 2018-10-26 易链科技(深圳)有限公司 区块链节点、交易信息处理方法、终端设备和介质
CN108717460A (zh) * 2018-05-25 2018-10-30 济南浪潮高新科技投资发展有限公司 一种在区块链中达成共识的方法及装置
CN108881177B (zh) * 2018-05-28 2021-04-23 夸克链科技(深圳)有限公司 一种异构平行区块链的实现方法
CN108985758B (zh) * 2018-06-07 2020-10-30 深圳海派创客教育学院有限公司 数据处理方法、数据处理系统及终端设备
US10880072B2 (en) * 2018-06-20 2020-12-29 Verizon Patent And Licensing Inc. Systems and methods for controlled random endorsement in a blockchain network
CN108768792B (zh) * 2018-07-06 2021-02-12 网宿科技股份有限公司 网络探测系统
CN109032803B (zh) 2018-08-01 2021-02-12 创新先进技术有限公司 数据处理方法和装置、客户端
CN109034809B (zh) * 2018-08-16 2021-08-17 北京京东尚科信息技术有限公司 区块链的生成方法、装置、区块链节点及存储介质
CN109086140A (zh) * 2018-08-21 2018-12-25 上海点融信息科技有限责任公司 在区块链中进行数据处理的方法、装置及存储介质
CN110875893B (zh) * 2018-08-29 2022-03-08 深圳启元信息服务有限公司 共识验证方法、校验节点及区块链系统
GB2577118B (en) 2018-09-14 2022-08-31 Arqit Ltd Autonomous quality regulation for distributed ledger networks
CN109257427B (zh) * 2018-09-26 2021-04-02 网宿科技股份有限公司 一种基于区块链的业务处理方法及系统
US11368446B2 (en) * 2018-10-02 2022-06-21 International Business Machines Corporation Trusted account revocation in federated identity management
CN111092925B (zh) * 2018-10-23 2022-08-05 中国移动通信有限公司研究院 一种区块链扩容处理方法、装置及设备
CN109376274B (zh) * 2018-10-23 2020-12-22 杭州能链科技有限公司 基于区块链系统的出块方法、设备以及存储介质
US11138188B2 (en) 2018-11-07 2021-10-05 International Business Machines Corporation Performance optimization
CA3041463C (en) * 2018-11-07 2020-08-25 Alibaba Group Holding Limited Facilitating practical byzantine fault tolerance blockchain consensus and node synchronization
CN109600323B (zh) * 2018-11-12 2021-10-01 中山大学 一种拜占庭共识机制
US20200175503A1 (en) 2018-11-29 2020-06-04 Paypal, Inc. Resource-based distributed public ledger system
CN111314393B (zh) * 2018-12-11 2023-04-18 京东科技控股股份有限公司 基于区块链的数据处理方法、装置及设备
BR112019014815A2 (pt) 2018-12-13 2020-02-27 Alibaba Group Holding Limited Método implementado por computador, meio de armazenamento legível por computador não transitório e sistema
SG11201906834SA (en) 2018-12-13 2019-08-27 Alibaba Group Holding Ltd Achieving consensus among network nodes in a distributed system
KR102134549B1 (ko) * 2018-12-13 2020-07-27 알리바바 그룹 홀딩 리미티드 분산 시스템에서 프라이머리 노드의 체인지 수행
CN111369243B (zh) * 2018-12-24 2023-07-14 航天信息股份有限公司 一种分布式记账的方法和装置
CN109660545B (zh) * 2018-12-27 2021-04-09 北京新唐思创教育科技有限公司 一种联盟链共识方法及计算机存储介质
CN109635595B (zh) * 2018-12-29 2020-10-23 杭州趣链科技有限公司 一种基于区块链的数据防篡改方法
CN111461468B (zh) * 2019-01-02 2023-10-31 中国移动通信有限公司研究院 数据处理方法及装置、数据节点及存储介质
CN111443998B (zh) * 2019-01-17 2023-03-21 杨税令 一种应用于区块链的多层段式共识方法及系统
CN109886681B (zh) * 2019-01-31 2021-06-18 北京瑞卓喜投科技发展有限公司 区块链共识方法及共识系统
US11824864B2 (en) 2019-01-31 2023-11-21 Salesforce, Inc. Systems, methods, and apparatuses for implementing a declarative and metadata driven blockchain platform using distributed ledger technology (DLT)
US11811769B2 (en) 2019-01-31 2023-11-07 Salesforce, Inc. Systems, methods, and apparatuses for implementing a declarative, metadata driven, cryptographically verifiable multi-network (multi-tenant) shared ledger
US11875400B2 (en) * 2019-01-31 2024-01-16 Salesforce, Inc. Systems, methods, and apparatuses for dynamically assigning nodes to a group within blockchains based on transaction type and node intelligence using distributed ledger technology (DLT)
US11899817B2 (en) 2019-01-31 2024-02-13 Salesforce, Inc. Systems, methods, and apparatuses for storing PII information via a metadata driven blockchain using distributed and decentralized storage for sensitive user information
CN109918378B (zh) * 2019-03-05 2020-09-25 中国科学院深圳先进技术研究院 一种基于区块链的遥感数据存储方法和存储系统
CN109871279B (zh) * 2019-03-11 2021-10-01 京东方科技集团股份有限公司 共识任务协调方法及装置、区块链系统、存储介质
EP3596888B1 (en) * 2019-03-18 2022-08-03 Advanced New Technologies Co., Ltd. System and method for ending view change protocol
EP3593249B1 (en) 2019-03-18 2021-06-23 Advanced New Technologies Co., Ltd. System and method for ending view change protocol
CA3058233C (en) * 2019-03-18 2023-03-07 Alibaba Group Holding Limited Consensus system downtime recovery
CN110049030B (zh) * 2019-04-08 2020-03-10 山东公链信息科技有限公司 基于随机连续离散的区块链共识系统
SG11201910057QA (en) 2019-04-12 2019-11-28 Alibaba Group Holding Ltd Performing parallel execution of transactions in a distributed ledger system
CA3060790C (en) 2019-04-12 2021-06-08 Alibaba Group Holding Limited Performing parallel execution of transactions in a distributed ledger system
CN110113388B (zh) * 2019-04-17 2020-01-14 四川大学 一种基于改进型聚类算法的区块链系统共识的方法和装置
CN110138597B (zh) * 2019-04-17 2021-11-05 上海大学 基于信用积分和节点聚类的区块链dpos共识机制改进方法
US11995647B2 (en) 2019-04-30 2024-05-28 Salesforce, Inc. System and method of providing interoperable distributed and decentralized ledgers using consensus on consensus and delegated consensus
CN110245006B (zh) * 2019-05-07 2023-05-02 深圳壹账通智能科技有限公司 区块链事务的处理方法、装置、设备及存储介质
CN110311958B (zh) * 2019-06-14 2021-01-01 柳州市蓝海数链科技有限公司 一种区块链网络系统
KR102342752B1 (ko) * 2019-06-19 2021-12-23 에스케이텔레콤 주식회사 블록체인 기반 합의 장치 및 방법
KR102228214B1 (ko) * 2019-07-22 2021-03-16 에이치엔핀코어 주식회사 블록체인 네트워크에서 블록을 생성하기 이전에 트랜잭션을 전파함으로써 트랜잭션 처리 속도를 향상시킬 수 있는 노드 장치 및 그 동작 방법
CN110599139B (zh) * 2019-08-19 2022-09-13 杭州秘猿科技有限公司 一种区块链共识算法中的出块方法和装置
CN110753028B (zh) * 2019-09-11 2021-06-22 复旦大学 一种控制分布式记账网络资源使用方法
US11768701B2 (en) * 2019-09-17 2023-09-26 Western Digital Technologies, Inc. Exception analysis for data storage devices
CN110855475B (zh) * 2019-10-25 2022-03-11 昆明理工大学 一种基于区块链的共识资源切片方法
CN110912994B (zh) * 2019-11-22 2022-02-11 中国联合网络通信集团有限公司 一种区块链共识方法及装置
CN110851537A (zh) * 2019-11-28 2020-02-28 蒋勇 一种基于区块链分片技术的共识方法
CN111343292B (zh) * 2020-02-10 2022-09-27 广州根链国际网络研究院有限公司 权威dns服务器信息更新方法及系统
CN111339109B (zh) 2020-02-21 2024-01-12 百度在线网络技术(北京)有限公司 一种区块链的资源处理方法、装置、设备和介质
CN111291067B (zh) * 2020-03-12 2021-01-26 南京珥仁科技有限公司 一种区块链数据结转方法
CN111522876B (zh) * 2020-04-07 2024-02-20 金蝶软件(中国)有限公司 区块链共识方法、装置和计算机设备、及区块链节点
CN111680076B (zh) * 2020-04-21 2023-08-22 广州中科易德科技有限公司 一种基于关联规则模型训练的区块链共识方法和系统
CN111524011B (zh) * 2020-05-06 2023-05-30 杭州复杂美科技有限公司 平行链共识确认方法、设备和存储介质
CN111524010B (zh) * 2020-05-06 2023-06-02 杭州复杂美科技有限公司 平行链共识方法、设备和存储介质
CN111522696B (zh) * 2020-07-03 2020-12-29 支付宝(杭州)信息技术有限公司 区块链共识节点的宕机处理方法、数据持久化方法及硬件
CN111522822A (zh) 2020-07-03 2020-08-11 支付宝(杭州)信息技术有限公司 一种区块链共识方法、装置及电子设备
CN112565240A (zh) * 2020-12-01 2021-03-26 杭州云象网络技术有限公司 一种用于承载海量通证流通的多链结构兼容方法及系统
CN112486518B (zh) * 2020-12-01 2024-03-12 北京微芯区块链与边缘计算研究院 共识算法装配方法及装置
CN112835743B (zh) * 2021-01-25 2023-12-19 中央财经大学 分布式账本数据存储优化方法、装置、电子设备及介质
CN113110921B (zh) * 2021-06-11 2021-10-22 北京百度网讯科技有限公司 区块链系统的运行方法、装置、设备和存储介质
CN113784238B (zh) * 2021-06-30 2023-04-18 北京邮电大学 基于区块链网络的频谱资源交易方法及系统
CN114296831A (zh) * 2021-12-30 2022-04-08 迅鳐成都科技有限公司 区块链共识算法动态加载方法、装置、系统及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009134472A (ja) * 2007-11-29 2009-06-18 Nomura Research Institute Ltd 電子商取引装置
JP5858507B1 (ja) * 2015-05-18 2016-02-10 株式会社Orb 仮想通貨管理プログラム、及び仮想通貨管理方法
US20160259937A1 (en) * 2015-03-02 2016-09-08 Dell Products L.P. Device reporting and protection systems and methods using a secure distributed transactional ledger

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5858507B2 (ja) 1979-09-21 1983-12-26 ヨツギ株式会社 支線への葛の巻上り防止具
US7454516B1 (en) 2000-08-03 2008-11-18 Microsoft Corporation Scalable virtual partitioning of resources
US7290059B2 (en) 2001-08-13 2007-10-30 Intel Corporation Apparatus and method for scalable server load balancing
US9406063B2 (en) 2002-10-01 2016-08-02 Dylan T X Zhou Systems and methods for messaging, calling, digital multimedia capture, payment transactions, global digital ledger, and national currency world digital token
US20040254984A1 (en) 2003-06-12 2004-12-16 Sun Microsystems, Inc System and method for coordinating cluster serviceability updates over distributed consensus within a distributed data system cluster
US7146353B2 (en) 2003-07-22 2006-12-05 Hewlett-Packard Development Company, L.P. Resource allocation for multiple applications
US7543069B2 (en) 2004-10-18 2009-06-02 International Business Machines Corporation Dynamically updating session state affinity
US7725901B2 (en) 2005-04-14 2010-05-25 International Business Machines Corporation Method and system for performance balancing in a distributed computer system
US20060242647A1 (en) 2005-04-21 2006-10-26 Kimbrel Tracy J Dynamic application placement under service and memory constraints
US8495604B2 (en) 2009-12-30 2013-07-23 International Business Machines Corporation Dynamically distribute a multi-dimensional work set across a multi-core system
US8910176B2 (en) 2010-01-15 2014-12-09 International Business Machines Corporation System for distributed task dispatch in multi-application environment based on consensus for load balancing using task partitioning and dynamic grouping of server instance
US9569771B2 (en) 2011-04-29 2017-02-14 Stephen Lesavich Method and system for storage and retrieval of blockchain blocks using galois fields
US9461876B2 (en) * 2012-08-29 2016-10-04 Loci System and method for fuzzy concept mapping, voting ontology crowd sourcing, and technology prediction
EP2954424B1 (en) 2014-05-05 2018-05-30 Huawei Technologies Co., Ltd. Method, device, and system for peer-to-peer data replication and method, device, and system for master node switching
US20160335628A1 (en) 2014-05-15 2016-11-17 Adam Mark Weigold System and method for digital currency storage, payment and credit
US9818092B2 (en) 2014-06-04 2017-11-14 Antti Pennanen System and method for executing financial transactions
US10346814B2 (en) 2014-06-04 2019-07-09 MONI Limited System and method for executing financial transactions
JP6425808B2 (ja) 2014-07-11 2018-11-21 ロイヤル コーポレイション 取引型および非取引型の商業を奨励する分散型台帳プロトコル
RU2584506C1 (ru) * 2014-10-22 2016-05-20 Закрытое акционерное общество "Лаборатория Касперского" Система и способ защиты операций с электронными деньгами
US20160217436A1 (en) 2015-01-25 2016-07-28 Dror Samuel Brama Method, System and Program Product for Tracking and Securing Transactions of Authenticated Items over Block Chain Systems.
US9875510B1 (en) 2015-02-03 2018-01-23 Lance Kasper Consensus system for tracking peer-to-peer digital records
US11386404B2 (en) * 2015-02-04 2022-07-12 Ripple Luxembourg S.A. Temporary consensus subnetwork in a distributed network for payment processing
WO2016154001A1 (en) 2015-03-20 2016-09-29 Rivetz Corp. Automated attestation of device integrity using the block chain
US9397985B1 (en) 2015-04-14 2016-07-19 Manifold Technology, Inc. System and method for providing a cryptographic platform for exchanging information
TWI676943B (zh) * 2015-05-06 2019-11-11 現代財富控股有限公司 加密貨幣的電子交易系統及其方法
US20160342977A1 (en) 2015-05-20 2016-11-24 Vennd.io Pty Ltd Device, method and system for virtual asset transactions
US20170011460A1 (en) * 2015-07-09 2017-01-12 Ouisa, LLC Systems and methods for trading, clearing and settling securities transactions using blockchain technology
EP3362965A4 (en) * 2015-10-13 2019-08-07 Transactive Grid Inc. USING A DISTRIBUTED CONSENSUS CONTROL BASED ON A BLOCK CHAIN
US10282457B1 (en) * 2016-02-04 2019-05-07 Amazon Technologies, Inc. Distributed transactions across multiple consensus groups
US10810583B2 (en) * 2016-04-29 2020-10-20 Digital Asset Holdings Digital asset modeling
US10360191B2 (en) * 2016-10-07 2019-07-23 International Business Machines Corporation Establishing overlay trust consensus for blockchain trust validation system
US10158527B2 (en) * 2016-10-28 2018-12-18 International Business Machines Corporation Changing an existing blockchain trust configuration
CN106534273B (zh) * 2016-10-31 2022-04-15 中金云金融(北京)大数据科技股份有限公司 区块链元数据存储系统及其存储方法与检索方法
CN106530072A (zh) * 2016-11-22 2017-03-22 天津米游科技有限公司 一种区块链共识机制
CN106529951A (zh) * 2016-12-30 2017-03-22 杭州云象网络技术有限公司 一种联盟链网络下采用异步方式的节点共识验证方法
JP7212266B2 (ja) * 2017-06-05 2023-01-25 バランスド メディア テクノロジー エルエルシー タスクを共同処理するためのプラットフォーム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009134472A (ja) * 2007-11-29 2009-06-18 Nomura Research Institute Ltd 電子商取引装置
US20160259937A1 (en) * 2015-03-02 2016-09-08 Dell Products L.P. Device reporting and protection systems and methods using a secure distributed transactional ledger
JP5858507B1 (ja) * 2015-05-18 2016-02-10 株式会社Orb 仮想通貨管理プログラム、及び仮想通貨管理方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"技術革新", 日立評論 第99巻特別号, vol. 第99巻, JPN6020048556, 10 January 2017 (2017-01-10), pages 112 - 128, ISSN: 0004410261 *

Also Published As

Publication number Publication date
EP3602293A1 (en) 2020-02-05
US20180285412A1 (en) 2018-10-04
PH12019502200A1 (en) 2020-12-07
MY202367A (en) 2024-04-24
US11010369B2 (en) 2021-05-18
KR20190125426A (ko) 2019-11-06
JP6882511B2 (ja) 2021-06-02
AU2018243696B2 (en) 2020-11-05
ZA201906163B (en) 2020-12-23
MX2019011549A (es) 2019-11-28
KR102262713B1 (ko) 2021-06-09
AU2018243696A1 (en) 2019-10-10
BR112019020374A2 (pt) 2020-04-28
CA3057329C (en) 2021-11-23
TW201837733A (zh) 2018-10-16
RU2744498C1 (ru) 2021-03-10
CN107360206B (zh) 2020-03-27
US10860574B2 (en) 2020-12-08
CN107360206A (zh) 2017-11-17
BR112019020374B1 (pt) 2022-01-25
TWI694339B (zh) 2020-05-21
AU2019101614A4 (en) 2020-01-23
SG11201908451UA (en) 2019-10-30
CA3057329A1 (en) 2018-10-04
US20200159721A1 (en) 2020-05-21
WO2018183148A1 (en) 2018-10-04
US20210248131A1 (en) 2021-08-12

Similar Documents

Publication Publication Date Title
JP6882511B2 (ja) ブロックチェーンコンセンサスのための方法、装置およびシステム
KR102304492B1 (ko) 합의 검증을 위한 방법 및 장치
KR102152556B1 (ko) 서비스 프로세싱 및 합의 방법 및 디바이스
US10789085B2 (en) Selectively providing virtual machine through actual measurement of efficiency of power usage
TWI694700B (zh) 資料處理方法和裝置、用戶端
EP3565219B1 (en) Service execution method and device
TW201837748A (zh) 一種基於區塊鏈的共識方法及裝置
CN107645520B (zh) 一种负载均衡方法、装置以及系统
TWI697223B (zh) 資料處理方法
US20180131756A1 (en) Method and system for affinity load balancing
TWI714017B (zh) 資料處理方法和裝置、伺服器
CN109428772B (zh) 实例探测的方法、装置及设备

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191127

A529 Written submission of copy of amendment under article 34 pct

Free format text: JAPANESE INTERMEDIATE CODE: A529

Effective date: 20191127

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191127

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201222

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20210127

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20210128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210319

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: 20210406

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210506

R150 Certificate of patent or registration of utility model

Ref document number: 6882511

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250