JP2022543306A - ブロックチェーンデータ処理の方法、装置、機器及び可読記憶媒体 - Google Patents

ブロックチェーンデータ処理の方法、装置、機器及び可読記憶媒体 Download PDF

Info

Publication number
JP2022543306A
JP2022543306A JP2022507639A JP2022507639A JP2022543306A JP 2022543306 A JP2022543306 A JP 2022543306A JP 2022507639 A JP2022507639 A JP 2022507639A JP 2022507639 A JP2022507639 A JP 2022507639A JP 2022543306 A JP2022543306 A JP 2022543306A
Authority
JP
Japan
Prior art keywords
data
value
data type
query
blockchain
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.)
Pending
Application number
JP2022507639A
Other languages
English (en)
Other versions
JPWO2021051830A5 (ja
Inventor
邵珠光
▲張▼爽
▲趙▼光▲偉▼
Original Assignee
京▲東▼科技信息技▲術▼有限公司
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 京▲東▼科技信息技▲術▼有限公司 filed Critical 京▲東▼科技信息技▲術▼有限公司
Publication of JP2022543306A publication Critical patent/JP2022543306A/ja
Publication of JPWO2021051830A5 publication Critical patent/JPWO2021051830A5/ja
Pending legal-status Critical Current

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/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • 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/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • 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
    • 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/242Query formulation
    • 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/242Query formulation
    • G06F16/2433Query languages
    • 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
    • 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

Abstract

本発明はブロックチェーンデータ処理の方法、装置、機器及び可読記憶媒体を提供する。本発明の方法は、リレーショナルデータベースにデータ種別情報テーブルを予め記憶することにより、全てのデータ種別の記憶情報を記憶するために用いられ、記憶情報は、当該データ種別に対応するテーブル、当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び当該データ種別のValueのデータフォーマットを含む。それによりリレーショナルデータベースにおけるテーブルとブロックチェーンにおけるサービスデータとのマッピングを実現する。Key-Valueデータを記憶する必要があるときに、Valueのデータ種別を決定する。データ種別情報テーブルに基づいて、Valueのデータ種別に対応するターゲットテーブルを決定して、Key-Valueデータをターゲットテーブルに書き込み、リレーショナルデータベースに基づいてブロックチェーンデータを記憶することを実現でき、アプリケーション層サービスシステムがリレーショナルデータベースに基づいたデータクエリをサポートし、クエリ効率を向上させる。【選択図】図1

Description

本発明はブロックチェーンの技術分野に関し、特にブロックチェーンデータ処理の方法、装置、機器及び可読記憶媒体に関する。
ブロックチェーン技術の発展に伴い、ますます多くのデータは、ブロックチェーンを使用して記憶、対話され始める。ブロックチェーン技術において、データをブロックの形成で時間優先順位に従って1つずつ生成し重畳してチェーンデータ構造を形成し、各ブロックには対応する時間に発生した取引情報が記録される。
ブロックチェーンでデータを記憶する構造の不確実性のため、大部分のブロックチェーンシステムにおけるデータは、Key-Value記憶モデルを採用し、キー値ペアの形式でされる。しかし、現在大部分のサービスシステムのアプリケーション層のマスタロジックはリレーショナルデータベースに基づいてデータ処理を行い、ブロックチェーンが使用するKey-Value記憶モデルと異なり、それによりブロックチェーンのデータはアプリケーション層に適用されることができない。従来のブロックチェーンは一部の特定条件に対するクエリ又は複雑なロジックのクエリをサポートせず、クエリ効率が低い。
本発明は、従来のブロックチェーンが一部の特定条件に対するクエリ又は複雑なロジックのクエリをサポートせず、クエリ効率が低く、かつアプリケーション層に適用できないという問題を解決するためのブロックチェーンデータ処理の方法、装置、機器及び可読記憶媒体を提供する。
本発明の1つの態様はブロックチェーンデータ処理の方法を提供し、
Key-Valueデータを記憶する必要があるときに、Key-ValueデータにおけるValueを分析し、前記Valueのデータ種別を決定することと、
データ種別情報テーブルに基づいて、前記Valueのデータ種別に対応するターゲットテーブルを決定することであって、ここで、前記データ種別情報テーブルは全てのデータ種別の記憶情報を記憶するために用いられ、前記データ種別の記憶情報は、当該データ種別に対応するテーブル、当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び当該データ種別のValueのデータフォーマットを含むことと、
データ種別情報テーブルに基づいて、前記Key-Valueデータを前記ターゲットテーブルに書き込むことと、を含む。
本発明の他の1つの態様はブロックチェーンデータ処理の装置を提供し、
Key-Valueデータを記憶する必要があるときに、Key-ValueデータにおけるValueを分析し、前記Valueのデータ種別を決定するためのデータ分析モジュールと、
データ種別情報テーブルに基づいて、前記Valueのデータ種別に対応するターゲットテーブルを決定するためのデータ書込モジュールであって、ここで、前記データ種別情報テーブルは全てのデータ種別の記憶情報を記憶するために用いられ、前記データ種別の記憶情報は、当該データ種別に対応するテーブル、当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び当該データ種別のValueのデータフォーマットを含むデータ書込モジュールと、を含み、
前記データ書込モジュールはさらに、データ種別情報テーブルに基づいて、前記Key-Valueデータを前記ターゲットテーブルに書き込むために用いられる。
本発明の他の1つの態様はコンピューティング機器を提供し、
プロセッサ、メモリ、及び前記メモリに記憶されて前記プロセッサで実行可能なコンピュータプログラムを含み、
ここで、前記プロセッサは前記コンピュータプログラムを実行する場合に上記に記載のブロックチェーンデータ処理の方法を実現する。
本発明の他の態様はコンピュータ可読記憶媒体を提供することであり、前記コンピュータ可読記憶媒体にコンピュータプログラムが記憶され、前記コンピュータプログラムがプロセッサで実行されるときに上記に記載のブロックチェーンデータ処理の方法を実現する。
本発明の他の態様は命令を動作するチップを提供することであり、前記チップはメモリ、プロセッサを含み、前記メモリにはコード及びデータが記憶され、前記メモリは前記プロセッサに結合され、前記プロセッサは前記メモリにおけるコードを実行することにより前記チップが上記ブロックチェーンデータ処理の方法のステップを実行するために用いられる。
本発明の他の様態は命令を含むプログラム製品を提供することであり、前記プログラム製品がコンピュータで実行されるときに、前記コンピュータに上記ブロックチェーンデータ処理の方法のステップを実行させる。
本発明の他の様態はコンピュータプログラムを提供することであり、前記コンピュータプログラムがプロセッサにより実行されるときに、上記ブロックチェーンデータ処理の方法のステップを実行するために用いられる。
本発明に係るブロックチェーンデータ処理の方法、装置、機器及び可読記憶媒体は、リレーショナルデータベースにデータ種別情報テーブルを予め記憶し、データ種別情報テーブルは全てのデータ種別の記憶情報を記憶するために用いられ、前記データ種別の記憶情報は、当該データ種別に対応するテーブル、当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び当該データ種別のValueのデータフォーマットを含む。それによりリレーショナルデータベースにおけるテーブルとブロックチェーンにおけるサービスデータとのマッピングを実現する。Key-Valueデータを記憶する必要があるときに、Key-ValueデータにおけるValueを分析し、前記Valueのデータ種別を決定する。データ種別情報テーブルに基づいて、前記Valueのデータ種別に対応するターゲットテーブルを決定する。データ種別情報テーブルに基づいて、前記Key-Valueデータを前記ターゲットテーブルに書き込み、リレーショナルデータベースに基づいてブロックチェーンデータを記憶することを実現でき、アプリケーション層サービスシステムがリレーショナルデータベースに基づいたデータクエリをサポートし、クエリ効率を向上させる。
本発明の実施例1に係るブロックチェーンデータ処理の方法のフローチャートである。 本発明の実施例2に係るブロックチェーンデータ処理の方法のフローチャートである。 本発明の実施例3に係るブロックチェーンデータ処理の方法のフローチャートである。 本発明の実施例4に係るブロックチェーンデータ処理の方法のフローチャートである。 本発明の実施例5に係るブロックチェーンデータ処理の装置の模式的な構成図である。 本発明の実施例6に係るブロックチェーンデータ処理の装置の模式的な構成図である。 本発明の実施例7に係るコンピューティング機器の模式的な構成図である。 上記図面により、本発明の明確な実施例を示し、後により詳細に説明する。これらの図面及び文字記述はいかなる方式で本発明の構想の範囲を限定するものではなく、特定の実施例を参照することにより当業者に対して本発明の概念を説明する。
ここで例示的な実施例を詳細に説明し、その例は図面に表れる。以下の説明は図面に関するときに、特に示さない限り、異なる図面における同じ数字は同じ又は類似する要素を示す。以下の例示的な実施例に記載された実施形態は本発明と一致する全ての実施形態を示すものではない。逆に、それらは添付の特許請求の範囲に詳細に説明された、本発明のいくつかの態様と一致する装置及び方法の例である。
本発明に係る用語「第1」、「第2」等は単に説明の目的のために用いられ、相対的な重要性を指示するか又は暗示すること、指示された技術的特徴の数を暗黙的に明示することと理解することができない。以下の各実施例の説明において、特に具体的な限定がない限り、「複数」の意味は2つ以上である。
本発明は具体的にはブロックチェーンシステムに応用され、ブロックチェーンシステムにおいて、データはKey-Value記憶モデルを採用し、キー値ペアの形式で記憶される。本実施例において、リレーショナルデータベースを採用してデータを記憶し、データベース操作のAPIインタフェースを介して、ブロックチェーンシステムのデータ記憶とリレーショナルデータベースとを統合し、ブロックチェーンシステムには1つのKey-Valueデータを記憶する必要があるときに、Key-Valueデータを統合してリレーショナルデータベースに記憶し、かつリレーショナルデータベースにおけるブロックチェーンデータのクエリをサポートする。
本実施例に係るブロックチェーンデータ処理の方法について、1つの応用シーンは、ブロックチェーンシステムがKey-Valueデータを記憶する必要があるときに、Key-ValueデータにおけるValueを分析し、Valueのデータ種別を決定し、データ種別情報テーブルに基づいて、Valueのデータ種別に対応するターゲットテーブルを決定し、データ種別情報テーブルに基づいて、Key-Valueデータをターゲットテーブルに書き込むことである。
他の応用シーンは以下のとおりである。ブロックチェーンシステムがデータをクエリする必要があるときに、指定されたKey、データ種別及びサービスフィールドを採用してデータをクエリするときに、クエリ対象としてのデータのKey、データ種別及びサービスフィールドを取得する。クエリ対象としてのデータのデータ種別に基づいて、データ種別情報テーブルをクエリし、クエリ対象としてのデータのデータ種別に対応する第2の目標テーブルを決定する。クエリ対象としてのデータのKeyデータ及サービスフィールドに基づいて、第2の目標テーブルをクエリし、クエリ結果を得る。
他の応用シーンは以下のとおりである。ブロックチェーンシステムがデータをクエリする必要があるときに、クエリ語句を入力すること(例えばSQL言語など)を採用してデータをクエリするときに、クエリ語句を分析し、クエリ対象としてのデータのデータ種別及びサービスフィールドを決定する。クエリ対象としてのデータのデータ種別の記憶情報に基づいて、クエリ語句におけるデータ種別を対応するテーブル名称に置き換え、クエリ語句におけるサービスフィールドを対応するテーブルフィールドに置き換え、新しいクエリ語句を生成する。新しいクエリ語句を実行し、クエリ結果を得る。
本実施例における方法はブロックチェーンシステムにおいてブロックチェーンデータ処理を行うコンピューティング機器に適用される。
以下に具体的な実施例によって本発明の技術案及び本願の技術案が上記技術的問題をどのように解決するかについて詳細に説明する。以下のいくつかの具体的な実施例を相互に組み合わせることができ、同じ又は類似する概念又はプロセスに対していくつかの実施例では説明を省略する可能性がある。以下に図面を参照して、本発明の実施例を説明する。
実施例1
図1は本願の実施例に係るデータ処理の方法のフローチャートである。本発明の実施例は、従来のブロックチェーンが一部の特定条件に対するクエリ又は複雑なロジックのクエリをサポートせず、クエリ効率が低いという問題について、ブロックチェーンデータ処理の方法を提供する。
図1に示すように、当該方法の具体的なステップは以下のとおりである。
ステップS101において、Key-Valueデータを記憶する必要があるときに、Key-ValueデータにおけるValueを分析し、Valueのデータ種別を決定する。
一般的に、ブロックチェーンシステムにおいて以下の2種類の方式を採用してブロックチェーンデータをKey-Valueデータベースに書き込む。1つの種類の方式は、Put(Key,Value)であって、Key及びValueが特定されたものである。もう1つの方式は、Write(Value)であって、Valueが特定されたが、Keyが特定されないものである。
本実施例において、Key-Value構造のブロックチェーンデータをリレーショナルデータベースに記憶させることができるように、ブロックチェーンデータのValueのフォーマットを予め定義し、ブロックチェーンシステムに生成されたKey-ValueデータにおけるValueがデータ種別、データフォーマット、フィールド数及びValue値を含むことを要求する。
ここで、データ種別はValueのサービス分類を示し、即ちValueが対応する取引情報のサービス分類であり、リレーショナルデータベースのテーブル名にマッピングすることができる。
データフォーマットは当該データ種別のValueのパターンを表し、例えば、JSONフォーマットであってもよく、又はデリミタで分類されたものであってもよい。また、同一のデータ種別は同一のデータフォーマットに対応し、同一のデータ種別に対して、異なるデータフォーマットを記憶することを許可せず、それによりシステム全体の複雑度を低減し、システムの安定性を保証する。
フィールド数は当該データ種別のフィールドの数を表し、同一のデータ種別に対応して、同一のフィールド数を有し、同一のデータ種別に対して、複数の種類のフィールド数を設定することを許可しない。また、データ種別のフィールド数は現在の実際のValueのフィールド数以上に設定されてもよい。
本実施例において、ブロックチェーンシステムにおいてKey-Valueデータを任意の方式で記憶する必要があるときに、Valueフォーマットに基づいてKey-ValueデータにおけるValueを分析し、Valueのデータ種別、データフォーマット、フィールド数及びValue値を決定することができる。
ステップS102において、データ種別情報テーブルに基づいて、Valueのデータ種別に対応するターゲットテーブルを決定し、ここでデータ種別情報テーブルは全てのデータ種別の記憶情報を記憶するために用いられ、データ種別の記憶情報は、当該データ種別に対応するテーブル、当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び当該データ種別のValueのデータフォーマットを含む。
本実施例において、リレーショナルデータベースにデータ種別情報テーブルを予めメンテナンスし、当該データ種別情報テーブルは全てのデータ種別の記憶情報を記憶するために用いられる。データ種別の記憶情報は、当該データ種別に対応するテーブル、当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び当該データ種別のValueのデータフォーマットを含む。ここで、あるデータ種別に対応するテーブルは1つ又は複数を有してもよい。
例示的に、データ種別情報テーブルのテーブル構造は以下のテーブル1に示すとおりである。
Figure 2022543306000002
ここで、サービスフィールド識別子はサービスフィールド名又はサービスフィールド順序番号などであってもよい。
例えば、Person及びStudentという2種類のデータ種別があると仮定する。データ種別情報テーブルは以下のテーブル2に示すデータを含んでもよい。
Figure 2022543306000003
テーブル2に示すデータによれば、IDが1及び2である2つの行のデータから分かるように、Personサービスデータはテーブルtd_000に記憶され、記憶されたデータフォーマットはJSONであり、そのJSONフォーマットにおけるname属性は1番目のサービスフィールド(サービスフィールド名が「name」である)であり、対応するテーブルフィールドはcolumn1であり、age属性は2番目のサービスフィールド(サービスフィールド名が「age」である)であり、対応するテーブルフィールドはcolumn2である。
IDが3~5の3つの行のデータから分かるように、Studentサービスデータはテーブルtd_001に記憶され、記憶されたデータフォーマットは「SPLIT(,)」であり、カンマデリミタで分類されることを示す。その1番目のセグメントは1番目のサービスフィールド(順序が0である)であり、対応するテーブルフィールドはcolumn1であり、2番目のセグメントは2番目のサービスフィールド(順序が1である)であり、対応するテーブルフィールドはcolumn2である。これによって類推する。
また、テーブルフィールドcolumn0はKeyを格納するために保留されてもよい。
Valueのデータ種別を決定した後、当該ステップにおいて、Valueのデータ種別に基づいてデータ種別情報テーブルをクエリすることにより、Valueのデータ種別に対応するターゲットテーブルを決定する。
ステップS103において、データ種別情報テーブルに基づいて、Key-Valueデータをターゲットテーブルに書き込む。
Key-Valueデータを書き込むターゲットテーブルを決定した後、データ種別情報テーブルから当該Valueのデータ種別の記憶情報を取得し、当該Valueのデータ種別の記憶情報における当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び当該データ種別のValueのデータフォーマットに基づいて、Key値及びValueにおける各サービスフィールドの値をターゲットテーブルの対応するテーブルフィールドに書き込む。
例示的に、データ種別に対応するテーブルにおいて保留された指定フィールドを採用してKey値を記憶してもよい。
本発明の実施例はリレーショナルデータベースにデータ種別情報テーブルを予め記憶し、データ種別情報テーブルは全てのデータ種別の記憶情報を記憶するために用いられ、データ種別の記憶情報は、当該データ種別に対応するテーブル、当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び当該データ種別のValueのデータフォーマットを含む。それによりリレーショナルデータベースにおけるテーブルとブロックチェーンにおけるサービスデータとのマッピングを実現する。Key-Valueデータを記憶する必要があるときに、Key-ValueデータにおけるValueを分析し、Valueのデータ種別を決定する。データ種別情報テーブルに基づいて、Valueのデータ種別に対応するターゲットテーブルを決定する。データ種別情報テーブルに基づいて、Key-Valueデータをターゲットテーブルに書き込み、リレーショナルデータベースに基づいてブロックチェーンデータを記憶することを実現でき、アプリケーション層サービスシステムがリレーショナルデータベースに基づいたデータクエリをサポートし、クエリ効率を向上させる。
実施例2
図2は本発明の実施例2に係るブロックチェーンデータ処理の方法のフローチャートである。上記実施例1に基づいて、本実施例において、Valueはデータ種別、データフォーマット、フィールド数及びValue値を含む。データ種別情報テーブルに基づいて、Valueのデータ種別に対応するターゲットテーブルを決定することは、以下を含む。データ種別情報テーブルにはValueのデータ種別が存在するか否かを判定する。データ種別情報テーブルにはValueのデータ種別が存在する場合、データ種別情報テーブルからValueのデータ種別の記憶情報を取得する。Valueのデータ種別の記憶情報に基づいて、Valueにおけるデータフォーマット及びフィールド数が記憶情報におけるデータフォーマット及びフィールド数と一致するか否かを判定する。一致すれば、データ種別情報テーブルからValueのデータ種別に対応するターゲットテーブルを取得する。データ種別情報テーブルにValueのデータ種別が存在しないか、又はValueのデータフォーマット及びフィールド数が記憶情報におけるデータフォーマット及びフィールド数と一致しないと、記憶情報におけるデータフォーマット及びフィールド数とマッチングする新しいテーブルを取得し、ターゲットテーブルとする。新しいテーブルに基づいてデータ種別情報テーブルにおけるValueのデータ種別の記憶情報を更新する。
図2に示すように、当該方法の具体的なステップは以下のとおりである。
ステップS201において、Key-Valueデータを記憶する必要があるときに、Key-ValueデータにおけるValueを分析し、Valueのデータ種別を決定する。
当該ステップは上記ステップS101と一致し、本実施例にここで説明を省略する。
本実施例において、Valueのデータ種別を決定した後、ステップS202~S208により、データ種別情報テーブルに基づいてValueのデータ種別に対応するターゲットテーブルを決定する実施形態とする。
選択的に、Key-ValueデータにおけるValueを分析するときに、まずKey-ValueデータにおけるValueがValueフォーマット要件を満たすか否かを判断することができる。ValueがValueフォーマット要件を満たさないときに、Key-Valueデータをリレーショナルデータベースに記憶することができず、データ書き込み異常のプロンプトを行うことができる。ValueがValueフォーマット要件を満たすと、後続のステップを実行し続ける。
ステップS202において、データ種別情報テーブルにValueのデータ種別が存在するか否かを判断する。
ここで、データ種別情報テーブルは全てのデータ種別の記憶情報を記憶するために用いられ、データ種別の記憶情報は、当該データ種別に対応するテーブル、当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び当該データ種別のValueのデータフォーマットを含む。
また、データ種別情報テーブルに関する詳細な説明は上記ステップS102を参照し、本実施例はここで説明を省略する。
本実施例において、まずはデータ種別情報テーブルにValueのデータ種別が存在するか否かを判断する。データ種別情報テーブルにValueのデータ種別が存在する場合、ステップS203を実行し、データ種別情報テーブルからValueのデータ種別の記憶情報を直接取得する。
データ種別情報テーブルにValueのデータ種別が存在しなければ、ステップS207~S208を実行し、新しいテーブルをターゲットテーブルとして取得し、かつ新しいテーブルに基づいてデータ種別情報テーブルにおけるValueのデータ種別の記憶情報を更新する。
ステップS203において、データ種別情報テーブルにValueのデータ種別が存在する場合、データ種別情報テーブルからValueのデータ種別の記憶情報を取得する。
ステップS204において、Valueのデータ種別の記憶情報に基づいて、Valueにおけるデータフォーマット及びフィールド数が記憶情報におけるデータフォーマット及びフィールド数と一致するか否かを判断する。
本実施例において、データ種別情報テーブルからValueのデータ種別の記憶情報を取得した後、記憶情報における当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び該データ種別のValueのデータフォーマットに基づいて、Valueにおけるデータフォーマットが記憶情報におけるデータフォーマットと一致するか否か、及びValueにおけるフィールド数が記憶情報におけるフィールド数と一致するか否かを判断する。
Valueにおけるデータフォーマット及びフィールド数が記憶情報におけるデータフォーマット及びフィールド数といずれも一致すれば、ステップS205を実行し、データ種別情報テーブルからValueのデータ種別に対応するターゲットテーブルを取得する。
Valueのデータフォーマットが記憶情報におけるデータフォーマットと一致しないと、又はValueのフィールド数が記憶情報におけるフィールド数と一致しないと、ステップS207~S208を実行し、新しいテーブルをターゲットテーブルとして取得し、かつ新しいテーブルに基づいてデータ種別情報テーブルにおけるValueのデータ種別の記憶情報を更新する。
ステップS205において、Valueにおけるデータフォーマット及びフィールド数が記憶情報におけるデータフォーマット及びフィールド数といずれも一致すれば、データ種別情報テーブルからValueのデータ種別に対応するターゲットテーブルを取得する。
ステップS206において、ターゲットテーブルの現在状態が書込可能状態であるか否かを判断する。
本実施例において、各データ種別に対応するテーブルの状態を増加させ、テーブルに書き込むことができるか否かを説明するために用いられる。ここで、ターゲットテーブルの状態は書込可能状態及び書込不可能状態を含む。
例示的に、リレーショナルデータベースに状態情報テーブルをメンテナンスすることができ、状態情報テーブルは各テーブルの状態を記憶することに用いられる。例えば、状態情報テーブルは少なくとも以下のようなフィールドを含む。テーブル名及びテーブル状態である。状態情報テーブルはさらにフィールド数を含んでもよい。
本実施例において、初期に各データ種別に対応するテーブルは書込可能状態であると設定され、後続にテーブルに記憶されるデータ量の大きさに応じてテーブルの状態をリアルタイムに更新し、単一のテーブルが大きすぎることを防止し、クエリ効率を向上させることができる。
例示的に、コンピューティング機器は各テーブルの行数が予め設定された閾値に達するか否かを検出する。あるテーブルの行数が予め設定された閾値に達すると、当該テーブルの状態を書込不可能状態に更新する。ここで、予め設定された閾値は当業者によって実際の応用シーン及び必要に応じて設定されてもよく、本実施例はここで具体的に限定しない。
選択的に、コンピューティング機器は単独のスレッドにより所定計画に応じて各テーブルの状態を更新することができ、例えば、一定の時間ごとに一回更新し、定期的に更新し、リアルタイムに更新するなどであり、本実施例は各テーブルの状態を更新する所定計画を具体的に限定しない。
また、各テーブルのデータ量に対する要求は非常に厳しいものではないため、ラッチロジックなどの複雑なロジック処理を追加する必要がない。
データ種別情報テーブルからValueのデータ種別に対応するターゲットテーブルを取得した後、当該ステップにおいて、ターゲットテーブルの現在の状態を決定し、ターゲットテーブルが書込不可能状態であれば、実行ステップS207~S208を実行し、新しいテーブルをターゲットテーブルとして取得し、かつ新しいテーブルに基づいてデータ種別情報テーブルにおけるValueのデータ種別の記憶情報を更新する。
ターゲットテーブルが書込可能状態であれば、ステップS209を実行し、データ種別情報テーブルに基づいてKey-Valueデータをターゲットテーブルに書き込む。
ステップS207において、Valueのデータ種別のフィールド数とマッチングする新しいテーブルを取得し、ターゲットテーブルとする。
1つの可能な実施形態として、Valueのデータ種別のフィールド数とマッチングする新しいテーブルを直接作成し、ターゲットテーブルとしてもよい。
別の可能な実施形態として、指定されたフィールドの数を有する空テーブルを予め作成してもよく、ここで指定されたフィールドの数は使用頻度の高い1つ又は複数のフィールド数であってもよい。当該ステップにおいて、Valueのデータ種別のフィールド数に基づいて、Valueのデータ種別のフィールド数と一致する予め作成された空テーブルを直接取得し、ターゲットテーブルとする。このようにして、データを書き込むプロセスにおけるテーブル作成操作を節約することができ、データ書き込み効率を向上させることができる。
例示的に、コンピューティング機器は遊休テーブル情報テーブルをメンテナンスすることができ、当該遊休テーブル情報テーブルは既に作成された空テーブルの情報を記憶するために用いられ、テーブル名及びその対応するフィールド数を少なくとも含み、さらにテーブル状態を含んでもよい。Valueのデータ種別のフィールド数に基づいて、遊休テーブル情報テーブルをクエリし、Valueのデータ種別のフィールド数と一致する予め作成された空テーブルが存在するか否かを決定する。存在すれば、Valueのデータ種別のフィールド数と一致する予め作成された空テーブルを直接取得し、存在しなければ、Valueのデータ種別のフィールド数に基づいて、記憶情報におけるフィールド数と一致するテーブルを新規作成し、ターゲットテーブルとする。
また、存在しなければ、Valueのデータ種別のフィールド数に基づいて、Valueのデータ種別のフィールド数と一致するテーブルを新規作成した後、当該テーブルの状態を書込可能状態に設定して、当該テーブルの状態情報を状態情報テーブルに書き込む。
選択的に、本実施例において、さらに遊休テーブル情報テーブルと状態情報テーブルを1つのテーブルに合併して記憶してもよく、本実施例はここで具体的に限定しない。
ステップS208において、新しいテーブルに基づいてデータ種別情報テーブルにおけるValueのデータ種別の記憶情報を更新する。
Valueのデータ種別のフィールド数とマッチングする新しいテーブルをターゲットテーブルとして取得した後、当該新しいテーブルの情報、新しいテーブルのテーブルフィールドとValueのサービスフィールドとのマッピング関係、及びValueのデータ種別に対応するデータフォーマットなどに基づいて、当該Valueのデータ種別の1つの記憶情報を生成して、データ種別情報テーブルに書き込み、新しいテーブルに基づいてデータ種別情報テーブルにおけるValueのデータ種別の記憶情報を更新する。
ステップS209において、データ種別情報テーブルに基づいて、Key-Valueデータをターゲットテーブルに書き込む。
本実施例において、データ種別に対応するテーブルにおいて保留された指定フィールドを採用してKey値を記憶してもよい。
Valueのデータ種別に対応するターゲットテーブルを決定した後、データ種別情報テーブルにおける当該Valueのデータ種別に対応するValueのデータフォーマットに基づいて、当該Valueの各サービスフィールドの値を分析し、Valueのサービスフィールドの値をターゲットテーブルに対応するテーブルフィールドに書き込み、かつKey-ValueデータのKeyをターゲットテーブルの指定フィールドに書き込む。
また、書き込み対象のデータがKeyを含まなければ、Valueのサービスフィールドの値をターゲットテーブルに対応するテーブルフィールドに書き込むだけでよい。
本発明の実施例は、リレーショナルデータベースにデータ種別情報テーブルを予め記憶し、データ種別情報テーブルは全てのデータ種別の記憶情報を記憶するために用いられ、データ種別の記憶情報は、当該データ種別に対応するテーブル、当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び当該データ種別のValueのデータフォーマットを含む。それによりリレーショナルデータベースにおけるテーブルとブロックチェーンにおけるサービスデータとのマッピングを実現する。それによりリレーショナルデータベースにおけるテーブルの数を一定の範囲内にするように制御し、全体的にデータベースの性能を安定するように維持し、テーブルデータが多すぎることによりデータベースの性能が低下することを防止する。Key-Valueデータを記憶する必要があるときに、Key-ValueデータにおけるValueを分析し、Valueのデータ種別を決定する。データ種別情報テーブルに基づいて、Valueのデータ種別に対応するターゲットテーブルを決定する。データ種別情報テーブルに基づいて、Key-Valueデータをターゲットテーブルに書き込み、リレーショナルデータベースに基づいてブロックチェーンデータを記憶することを実現でき、アプリケーション層サービスシステムがリレーショナルデータベースに基づいたデータクエリをサポートし、クエリ効率を向上させる。さらに、テーブルにおけるデータ量の大きさに基づいてテーブルが書き込み可能な状態であるか否かを設定することにより、あるテーブルの行数が予め設定された閾値に達すると、当該テーブルの状態を書き込み不可能な状態に更新する。ターゲットテーブルが書き込み不可能な状態であると、記憶情報におけるフィールドの数とマッチングする新しいテーブルをターゲットテーブルとして取得し、単一のテーブルが大きすぎることを防止することができ、さらにクエリ効率を向上させる。
実施例3
図3は本発明の実施例3に係るブロックチェーンデータ処理の方法のフローチャートである。上記実施例1又は実施例2に基づいて、本実施例において、クエリ対象としてのデータKey、データ種別及びサービスフィールドを既知する場合に、ブロックチェーンデータクエリの流れを例示的に説明する。図3に示すように、当該方法の具体的なステップは以下のとおりである。
ステップS301において、ブロックチェーンシステムのデータクエリ要求に応答し、クエリ対象としてのデータのKey、データ種類及びサービスフィールドを取得する。
本実施例は以下の方式のデータクエリをサポートする。第1種類のクエリ方式は、指定されたKey及びデータ種別によって全てのフィールドをクエリし、QueryAll(Key,DataType)と表すことができ、ここでDataTypeがデータ種別を表すことである。第2種類のクエリ方式は、指定されたKey、データ種別及びサービスフィールドによってクエリし、QueryFields(Key,DataType,fields[])と表すことができ、ここで、DataTypeがデータ種別を表し、fields[]が指定された1つ又は複数のサービスフィールドを表すことである。
ここで、第2種類のクエリ方式は第1種類のクエリ方式に対するもう一回のパッケージ化することであると考えられ、さらにQueryFields(Key,DataType,*)であることを表すことができ、ここでDataTypeはデータ種別を表し、「*」は全てのサービスフィールドをクエリすることを表す。
本実施例において、コンピューティング機器はデータクエリ要求を受信する後、データクエリ要求におけるクエリ対象としてのデータのKey、データ種別及びサービスフィールドを抽出する。ここで、データクエリ要求はクエリ対象としてのデータのサービスフィールドを含まない可能性があり、この場合に全てのサービスフィールドの値をクエリする。
ステップS302において、クエリ対象としてのデータのデータ種別に基づいて、データ種別情報テーブルをクエリし、クエリ対象としてのデータのデータ種別に対応するテーブルを決定する。
データクエリ要求に指定されたデータ種別に基づいて、データ種別情報テーブルをクエリし、指定されたデータ種別に対応するテーブルを決定する。
各テーブルに記憶されたデータ量に制限があるため、1つのデータ種別に対応するテーブルは1つ又は複数を有してもよい。
ステップS303において、クエリ対象としてのデータのKey及びサービスフィールドに基づいて、クエリ対象としてのデータのデータ種別に対応するテーブルをクエリし、クエリ結果を得る。
当該ステップにおいて、データクエリ要求に指定されたデータ種別に対応するテーブルを決定した後に、データクエリ要求に指定されたデータ種別の記憶情報における当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係に基づいて、クエリ対象としてのデータのサービスフィールドに対応するテーブルフィールドを取得する。そしてクエリ対象としてのデータのKey、及びクエリ対象としてのデータのサービスフィールドに対応するテーブルフィールドに基づいて、クエリ対象としてのデータのデータ種別に対応するテーブルをクエリし、クエリ結果を得る。
例示的に、クエリ対象としてのデータのKey、クエリ対象としてのデータのサービスフィールドに対応するテーブルフィールド、及びクエリ対象としてのデータのデータ種別に対応するテーブルに基づいて、対応するクエリ語句を生成することができ、クエリ語句を実行することにより、クエリ結果を得る。ここでクエリ語句はSQL言語などであってもよい。
ステップS304において、クエリ対象としてのデータのデータ種別のValueのデータフォーマットに基づいて、クエリ結果をValueとしてパッケージ化する。
当該ステップは選択可能なステップであり、ステップS303でクエリ結果を得た後、クエリ結果をユーザに直接フィードバックし、又はステップS304によってクエリ結果をValueとしてパッケージ化した後、パッケージ化して得られたValueをユーザにフィードバックしてもよい。
クエリ結果を得た後、クエリ対象としてのデータのデータ種別の記憶情報におけるValueのデータフォーマットに基づいて、クエリ結果をValueとしてパッケージ化することができる。
例示的に、クエリ対象としてのデータのデータ種別の記憶情報におけるValueのデータフォーマットはJSONであると、クエリ結果をJSON文字列としてパッケージ化する。
例示的に、クエリ対象としてのデータのデータ種別の記憶情報におけるValueのデータフォーマットはデリミタに応じて分類されると、デリミタによりクエリ結果をフォーマットされた文字列に組み立てる。
本発明の実施例はリレーショナルデータベースにデータ種別情報テーブルを予め記憶し、データ種別情報テーブルは全てのデータ種別の記憶情報を記憶するために用いられ、データ種別の記憶情報は、当該データ種別に対応するテーブル、当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び当該データ種別のValueのデータフォーマットを含み、それによりリレーショナルデータベースにおけるテーブルとブロックチェーンにおけるサービスデータとのマッピングを実現し、リレーショナルデータベースに基づいてブロックチェーンデータを記憶することを実現することができ、ブロックチェーンシステムに応答するデータクエリ要求により、クエリ対象としてのデータのKey、データ種別及びサービスフィールドを取得し、クエリ対象としてのデータのデータ種別に基づいて、データ種別情報テーブルをクエリし、クエリ対象としてのデータのデータ種別に対応するテーブルを決定し、クエリ対象としてのデータのKey及びサービスフィールドに基づいて、クエリ対象としてのデータのデータ種別に対応するテーブルをクエリし、クエリ結果を得、リレーショナルデータベースに基づくデータクエリを実現し、クエリ効率を向上させる。
実施例4
図4は本発明の実施例4に係るブロックチェーンデータ処理の方法のフローチャートである。上記実施例1~3のいずれかの実施例に基づいて、本実施例において、クエリ語句を既知する場合に、ブロックチェーンデータクエリのフローを例示的に説明する。図4に示すように、当該方法の具体的なステップは以下のとおりである。
ステップS401において、ブロックチェーンシステムのデータクエリ要求に応答し、クエリ語句を取得する。
本実施例には、クエリ語句によってリレーショナルデータベースにおけるブロックチェーンデータをクエリすることがサポートされる。
本実施例において、コンピューティング機器はデータクエリ要求を受信した後、データクエリ要求におけるクエリ語句を抽出する。ここでクエリ語句はSQL語句などであってもよい。
ステップS402において、クエリ語句を分析し、クエリ対象としてのデータのデータ種別及びサービスフィールドを決定する。
クエリ語句を分析することにより、クエリ語句におけるテーブル名を取得し、クエリ対象としてのデータのデータ種別を取得する。クエリ語句におけるクエリフィールドを取得し、クエリ対象としてのサービスフィールドを取得する。
ステップS403において、クエリ対象としてのデータのデータ種別の記憶情報に基づいて、クエリ語句におけるデータ種別を対応するテーブル名称に置き換え、クエリ語句におけるサービスフィールドを対応するテーブルフィールドに置き換え、新しいクエリ語句を生成する。
クエリ対象としてのデータのデータ種別とクエリ対象としてのサービスフィールドを決定した後、コンピューティング機器はデータ種別情報テーブルをクエリすることによって、クエリ対象としてのデータのデータ種別の記憶情報を決定する。記憶情報における当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係に基づいて、クエリ対象としてのデータのデータ種別に対応するテーブル、及びクエリ対象としてのサービスフィールドに対応するテーブルフィールドを決定する。クエリ語句におけるデータ種別を対応するテーブル名称に置き換え、クエリ語句におけるクエリ対象としてのサービスフィールドを対応するテーブルフィールドに置き換え、新しいクエリ語句を生成する。
例示的に、クエリ対象としてのデータのデータ種別に対応するテーブルが複数あるときに、各テーブルに対して、クエリ語句におけるデータ種別を当該テーブルのテーブル名称に置き換え、クエリ語句におけるクエリ対象としてのサービスフィールドを対応するテーブルフィールドに置き換え、新しいクエリ語句を生成する。このようにして、複数の新しいクエリ語句を得ることができる。
例示的に、クエリ対象としてのデータのデータ種別に対応するテーブルが複数あるときに、新しい連携クエリ語句を生成してもよい。
ステップS404において、新しいクエリ語句を実行し、クエリ結果を得る。
新しいクエリ語句が複数あるときに、それぞれ各新しいクエリ語句を実行し、各新しいクエリ語句に対応するクエリ結果を得、その後に各新しいクエリ語句に対応するクエリ結果をまとめて最終的なクエリ結果を得てもよい。
ステップS405において、クエリ対象としてのデータのデータ種別のValueのデータフォーマットに基づいて、クエリ結果をKey-Valueデータとしてパッケージ化する。
当該ステップは選択可能なステップであり、ステップS404でクエリ結果を得た後、クエリ結果をユーザに直接フィードバックし、又はステップS405によってクエリ結果をKey-Valueデータとしてパッケージ化した後、パッケージ化して得られたKey-Valueデータをユーザにフィードバックしてもよい。
クエリ結果を得た後、クエリ対象としてのデータのデータ種別の記憶情報におけるValueのデータフォーマットに基づいて、クエリ結果をKey-Valueデータとしてパッケージ化することができる。
例示的に、クエリ対象としてのデータのデータ種別の記憶情報におけるValueのデータフォーマットはJSONであると、クエリ結果におけるValueデータをJSON文字列としてパッケージ化する。
例示的に、クエリ対象としてのデータのデータ種別の記憶情報におけるValueのデータフォーマットはデリミタに応じて分類されると、デリミタによりクエリ結果におけるValueデータをフォーマットされた文字列に組み立てる。
本発明の実施例はリレーショナルデータベースにデータ種別情報テーブルを予め記憶し、データ種別情報テーブルは全てのデータ種別の記憶情報を記憶するために用いられ、データ種別の記憶情報は、当該データ種別に対応するテーブル、当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び当該データ種別のValueのデータフォーマットを含み、それによりリレーショナルデータベースにおけるテーブルとブロックチェーンにおけるサービスデータとのマッピングを実現し、リレーショナルデータベースに基づいてブロックチェーンデータを記憶することを実現することができ、ブロックチェーンシステムに応答するデータクエリ要求により、クエリ語句を取得し、クエリ語句を分析し、クエリ対象としてのデータのデータ種別及びサービスフィールドを決定し、クエリ対象としてのデータのデータ種別の記憶情報に基づいて、クエリ語句におけるデータ種別を対応するテーブル名称に置き換え、クエリ語句におけるサービスフィールドを対応するテーブルフィールドに置き換え、新しいクエリ語句を生成し、新しいクエリ語句を実行し、クエリ結果を得、リレーショナルデータベースに基づくデータクエリを実現し、クエリ効率を向上させる。
実施例5
図5は本発明の実施例5に係るブロックチェーンデータ処理の装置の模式的な構成図である。本発明の実施例に係るブロックチェーンデータ処理の装置はブロックチェーンデータ処理の方法実施例に係る処理フローを実行することができる。図5に示すように、当該ブロックチェーンデータ処理の装置50は、データ分析モジュール501及びデータ書込モジュール502を含む。
具体的には、データ分析モジュール501はKey-Valueデータを記憶する必要があるときに、Key-ValueデータにおけるValueを分析し、Valueのデータ種別を決定するために用いられる。
データ書込モジュール502はデータ種別情報テーブルに基づいて、Valueのデータ種別に対応するターゲットテーブルを決定するために用いられ、ここでデータ種別情報テーブルは全てのデータ種別の記憶情報を記憶するために用いられ、データ種別の記憶情報は、当該データ種別に対応するテーブル、当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び当該データ種別のValueのデータフォーマットを含む。
データ書込モジュール502はさらに、データ種別情報テーブルに基づいて、Key-Valueデータをターゲットテーブルに書き込むために用いられる。
本発明の実施例に係る装置は具体的に上記実施例1に係る方法実施例を実行するために用いられ、具体的な機能はここで説明を省略する。
本発明の実施例はリレーショナルデータベースにデータ種別情報テーブルを予め記憶し、データ種別情報テーブルは全てのデータ種別の記憶情報を記憶するために用いられ、データ種別の記憶情報は、当該データ種別に対応するテーブル、当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び当該データ種別のValueのデータフォーマットを含み、それによりリレーショナルデータベースにおけるテーブルとブロックチェーンにおけるサービスデータとのマッピングを実現し、Key-Valueデータを記憶する必要があるときに、Key-ValueデータにおけるValueを分析し、Valueのデータ種別を決定し、データ種別情報テーブルに基づいて、Valueのデータ種別に対応するターゲットテーブルを決定し、データ種別情報テーブルに基づいて、Key-Valueデータをターゲットテーブルに書き込み、リレーショナルデータベースに基づいてブロックチェーンデータを記憶することを実現でき、アプリケーション層サービスシステムがリレーショナルデータベースに基づいたデータクエリをサポートし、クエリ効率を向上させる。
実施例6
図6は本発明の実施例6に係るブロックチェーンデータ処理の装置の模式的な構成図である。上記実施例5に基づいて、本実施例において、Valueはデータ種別、データフォーマット、フィールド数及びValue値を含む。データ書込モジュールはさらに、
データ種別情報テーブルにValueのデータ種別が存在するか否かを判定することと、データ種別情報テーブルにValueのデータ種別が存在する場合、データ種別情報テーブルからValueのデータ種別の記憶情報を取得することと、Valueのデータ種別の記憶情報に基づいて、Valueにおけるデータフォーマット及びフィールド数が記憶情報におけるデータフォーマット及びフィールド数と一致するか否かを判定することと、Valueにおけるデータフォーマット及びフィールド数が記憶情報におけるデータフォーマット及びフィールド数といずれも一致すれば、データ種別情報テーブルからValueのデータ種別に対応するターゲットテーブルを取得することと、のために用いられる。
選択的に、データ書込モジュールはさらに、
データ種別情報テーブルにValueのデータ種別が存在しないと、記憶情報におけるデータフォーマット及びフィールド数とマッチングする新しいテーブルを取得し、ターゲットテーブルとすることと、新しいテーブルに基づいてデータ種別情報テーブルにおけるValueのデータ種別の記憶情報を更新することとのために用いられる。
選択的に、データ書込モジュールはさらに、
Valueのデータフォーマットが記憶情報におけるデータフォーマットと一致しないと、又はValueのフィールド数が記憶情報におけるフィールド数と一致しないと、記憶情報におけるデータフォーマット及びフィールド数とマッチングする新しいテーブルを取得し、ターゲットテーブルとすることと、新しいテーブルに基づいてデータ種別情報テーブルにおけるValueのデータ種別の記憶情報を更新することと、のために用いられる。
選択的に、データ書込モジュールはさらに、
ターゲットテーブルの現在の状態を決定することであって、ターゲットテーブルの状態は書込可能状態及び書込不可能状態を含むことと、ターゲットテーブルが書込不可能状態であると、記憶情報におけるフィールド数とマッチングする新しいテーブルを取得し、ターゲットテーブルとすることと、新しいテーブルに基づいてデータ種別情報テーブルにおけるValueのデータ種別の記憶情報を更新することと、ターゲットテーブルが書込可能状態であると、データ種別情報テーブルに基づいてKey-Valueデータをターゲットテーブルに書き込むステップを実行することと、のために用いられる。
選択的に、データ書込モジュールはさらに、
ターゲットテーブルの行数が予め設定された閾値に達するか否かを検出することと、ターゲットテーブルの行数が予め設定された閾値に達すると、当該ターゲットテーブルの状態を書込不可能状態に更新することと、のために用いられる。
選択的に、データ書込モジュールはさらに、
Key-ValueデータのKeyをターゲットテーブルの指定フィールドに書き込むことと、Valueのデータ種別の記憶情報に基づいて、Valueのサービスフィールドの値をターゲットテーブルにおける対応するテーブルフィールドに書き込むことと、のために用いられる。
選択的に、図6に示すように、ブロックチェーンデータ処理の装置50は、第1のデータクエリモジュール503をさらに含んでもよい。
第1のデータクエリモジュール503は、
ブロックチェーンシステムのデータクエリ要求に応答して、クエリ対象としてのデータのKey、データ種別及びサービスフィールドを取得することと、クエリ対象としてのデータのデータ種別に基づいて、データ種別情報テーブルをクエリし、クエリ対象としてのデータのデータ種別に対応するテーブルを決定することと、クエリ対象としてのデータのKey及びサービスフィールドに基づいて、クエリ対象としてのデータのデータ種別に対応するテーブルをクエリし、クエリ結果を得ることと、のために用いられる。
選択的に、第1のデータクエリモジュール503はさらに、
クエリ対象としてのデータのデータ種別のValueのデータフォーマットに基づいて、クエリ結果をValueとしてパッケージ化するために用いられる。
選択的に、図6に示すように、ブロックチェーンデータ処理の装置50はさらに、第2のデータクエリモジュール504を含んでもよい。
第2のデータクエリモジュール504は、
ブロックチェーンシステムのデータクエリ要求に応答して、クエリ語句を取得することと、クエリ語句を分析し、クエリ対象としてのデータのデータ種別及びサービスフィールドを決定することと、クエリ対象としてのデータのデータ種別の記憶情報に基づいて、クエリ語句におけるデータ種別を対応するテーブル名称に置き換え、クエリ語句におけるサービスフィールドを対応するテーブルフィールドに置き換え、新しいクエリ語句を生成することと、新しいクエリ語句を実行し、クエリ結果を得ることと、のために用いられる。
選択的に、第2のデータクエリモジュール504はさらに、
クエリ対象としてのデータのデータ種別のValueのデータフォーマットに基づいて、クエリ結果をKey-Valueデータとしてパッケージ化するために用いられる。
本発明の実施例に係る装置は具体的に上記実施例2~4のいずれかの実施例に係る方法実施例を実行するために用いられ、具体的な機能はここで説明を省略する。
本発明の実施例は、リレーショナルデータベースにデータ種別情報テーブルを予め記憶し、データ種別情報テーブルは全てのデータ種別の記憶情報を記憶するために用いられ、データ種別の記憶情報は、当該データ種別に対応するテーブル、当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び当該データ種別のValueのデータフォーマットを含む。それによりリレーショナルデータベースにおけるテーブルとブロックチェーンにおけるサービスデータとのマッピングを実現し、それによりリレーショナルデータベースにおけるテーブルの数を一定の範囲内にするように制御し、全体的にデータベースの性能を安定するように維持し、テーブルデータが多すぎることによりデータベースの性能が低下することを防止する。Key-Valueデータを記憶する必要があるときに、Key-ValueデータにおけるValueを分析し、Valueのデータ種別を決定する。データ種別情報テーブルに基づいて、Valueのデータ種別に対応するターゲットテーブルを決定する。データ種別情報テーブルに基づいて、Key-Valueデータをターゲットテーブルに書き込み、リレーショナルデータベースに基づいてブロックチェーンデータを記憶することを実現でき、アプリケーション層サービスシステムがリレーショナルデータベースに基づいたデータクエリをサポートし、クエリ効率を向上させる。さらに、テーブルにおけるデータ量の大きさに基づいてテーブルが書き込み可能な状態であるか否かを設定することにより、あるテーブルの行数が予め設定された閾値に達すると、当該テーブルの状態を書き込み不可能な状態に更新する。ターゲットテーブルが書き込み不可能な状態であると、記憶情報におけるフィールドの数とマッチングする新しいテーブルをターゲットテーブルとして取得し、単一のテーブルが大きすぎることを防止することができ、さらにクエリ効率を向上させる。
実施例7
図7は本発明の実施例7に係るコンピューティング機器の模式的な構成図である。図7に示すように、当該コンピューティング機器70は、プロセッサ701、メモリ702、及びメモリ702に記憶されてプロセッサ701で実行できるコンピュータプログラムを含む。
ここで、プロセッサ701はコンピュータプログラムを実行する場合に上記いずれかの方法実施例に係るブロックチェーンデータ処理の方法を実現する。
本発明の実施例は、リレーショナルデータベースにデータ種別情報テーブルを予め記憶し、データ種別情報テーブルは全てのデータ種別の記憶情報を記憶するために用いられ、データ種別の記憶情報は、当該データ種別に対応するテーブル、当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び当該データ種別のValueのデータフォーマットを含む。それによりリレーショナルデータベースにおけるテーブルとブロックチェーンにおけるサービスデータとのマッピングを実現する。Key-Valueデータを記憶する必要があるときに、Key-ValueデータにおけるValueを分析し、Valueのデータ種別を決定する。データ種別情報テーブルに基づいて、Valueのデータ種別に対応するターゲットテーブルを決定する。データ種別情報テーブルに基づいて、Key-Valueデータをターゲットテーブルに書き込み、リレーショナルデータベースに基づいてブロックチェーンデータを記憶することを実現でき、アプリケーション層サービスシステムがリレーショナルデータベースに基づいたデータクエリをサポートし、クエリ効率を向上させる。
また、本発明の実施例はコンピュータ可読記憶媒体をさらに提供し、コンピュータ可読記憶媒体にコンピュータプログラムが記憶され、コンピュータプログラムがプロセッサによって実行されるときに上記いずれかの方法実施例に係るブロックチェーンデータ処理の方法を実現する。
また、本発明の実施例は命令を動作するチップをさらに提供し、前記チップはメモリ、プロセッサを含み、前記メモリにコード及びデータが記憶され、前記メモリは前記プロセッサに結合され、前記プロセッサは前記メモリにおけるコードを実行することにより前記チップが上記ブロックチェーンデータ処理の方法のステップを実行するために用いられる。
また、本発明の実施例は命令を含むプログラム製品をさらに提供し、前記プログラム製品がコンピュータで実行されるときに、前記コンピュータに上記ブロックチェーンデータ処理の方法のステップを実行させる。
また、本発明の実施例はコンピュータプログラムをさらに提供し、前記コンピュータプログラムがプロセッサにより実行されるときに、上記ブロックチェーンデータ処理の方法のステップを実行するために用いられる。
本発明に係るいくつかの実施例において、開示された装置及び方法は、他の方式で実現されることができることを理解すべきである。例えば、以上に説明された装置実施例は模式的なものだけであり、例えば、前記ユニットの分割は、ロジック機能の分割のみであり、実際に実現されるときに別の分割方式を有してもよく、例えば複数のユニット又はアセンブリを結合するか又は他のシステムに集積することができ、又はいくつかの特徴を無視するか、又は実行しない。また、表示されるか又は議論される相互間の結合又は直接結合又は通信接続はいくつかのインタフェース、装置又はユニットによる間接的な結合又は通信接続であってもよく、電気的、機械的又は他の形式であってもよい。
前記分離パーツとして説明されたユニットは物理的に分離されてもよく、又は物理的に分離されなくてもよく、ユニットとして表示された部材は物理ユニットであってもよく、物理ユニットでなくてもよく、つまり1つの場所に位置してもよく、又は複数のネットワークユニットに分布してもよい。実際の必要に応じてそのうちの一部又は全部のユニットを選択して本実施例の態様の目的を達成することができる。
また、本発明の各実施例における各機能ユニットは1つの処理ユニットに集積されてもよく、各ユニットが単独で物理的に存在してもよく、2つ又は2つ以上のユニットが1つのユニットに集積されてもよい。上記集積されたユニットはハードウェアの形式で実現されてもよく、ハードウェアとソフトウェア機能ユニットの形式で実現されてもよい。
上記ソフトウェア機能ユニットの形式で実現された集積されたユニットは、1つのコンピュータ可読記憶媒体に記憶されてもよい。上記ソフトウェア機能ユニットは1つの記憶媒体に記憶され、一台のコンピュータ機器(パーソナルコンピュータ、サーバ、又はネットワーク装置などであってもよい)又はプロセッサ(processor)が本発明の各実施例に記載の方法の一部のステップを実行するために用いられる複数の命令を含む。前述の記憶媒体は、Uディスク、リムーバブルハードディスク、読み出し専用メモリ(Read-Only Memory,ROM)、ランダムアクセスメモリ(Random Access Memory,RAM)、磁気ディスク又は光ディスクなどの様々なプログラムコードを記憶することができる媒体を含む。
当業者であれば、説明の便宜上簡潔にするために、上記各機能モジュールの分割だけを例に挙げて説明し、実際の応用において、必要に応じて上記機能の割り当てを異なる機能モジュールにより完成してもよく、つまり装置の内部構造を異なる機能モジュールに分割することにより、以上に説明された全て又は一部の機能を完成する。上記説明された装置の具体的な動作過程は、前述の方法実施例における対応するプロセスを参照することができ、ここで説明を省略する。
当業者であれば明細書考慮し、及びここで開示された発明を実践した後、本発明の他の実施形態を容易に想到できる。本発明は本発明の任意の変形、用途又は適応的な変化をカバーすることを目的とし、これらの変形、用途又は適応的な変化は本発明の一般的な原理に従って本発明に開示されない本技術分野における公知的な常識又は慣用されている技術手段を含む。明細書及び実施例は例示的なものと見なされ、本発明の真の範囲及び精神は以下の特許請求の範囲により指摘される。
理解すべきこととして、本発明は上記に記載されかつ図面に示された正確な構造に限定されず、かつその範囲から逸脱することなく様々な修正及び変更を行うことができる。本発明の範囲は添付の特許請求の範囲によってのみ制限される。
本願は2019年09月17日に中国特許局に出願され、出願番号は201910878095.Xであり、出願名称は「ブロックチェーンデータ処理の方法、装置、機器及び可読記憶媒体」の中国特許出願の優先権を主張し、その全ての内容は援用により本願に組み込まれる。

Claims (19)

  1. Key-Valueデータを記憶する必要があるときに、Key-ValueデータにおけるValueを分析し、前記Valueのデータ種別を決定することと、
    データ種別情報テーブルに基づいて、前記Valueのデータ種別に対応するターゲットテーブルを決定することであって、ここで前記データ種別情報テーブルは全てのデータ種別の記憶情報を記憶するために用いられ、前記データ種別の記憶情報は、当該データ種別に対応するテーブル、当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び当該データ種別のValueのデータフォーマットを含むことと、
    データ種別情報テーブルに基づいて、前記Key-Valueデータを前記ターゲットテーブルに書き込むことと、を含む、
    ことを特徴とするブロックチェーンデータ処理の方法。
  2. 前記Valueは、データ種別、データフォーマット、フィールド数及びValue値を含み、
    データ種別情報テーブルに基づいて、前記Valueのデータ種別に対応するターゲットテーブルを決定することは、
    前記データ種別情報テーブルに前記Valueのデータ種別が存在するか否かを判断することと、
    前記データ種別情報テーブルに前記Valueのデータ種別が存在する場合、前記データ種別情報テーブルから前記Valueのデータ種別の記憶情報を取得することと、
    前記Valueのデータ種別の記憶情報に基づいて、前記Valueにおけるデータフォーマット及びフィールド数が前記記憶情報におけるデータフォーマット及びフィールド数と一致するか否かを判断することと、
    前記Valueにおけるデータフォーマット及びフィールド数が前記記憶情報におけるデータフォーマット及びフィールド数といずれも一致すれば、前記データ種別情報テーブルから前記Valueのデータ種別に対応するターゲットテーブルを取得することと、を含む、
    ことを特徴とする請求項1に記載のブロックチェーンデータ処理の方法。
  3. 前記データ種別情報テーブルに前記Valueのデータ種別が存在するか否かを判断した後、
    前記データ種別情報テーブルに前記Valueのデータ種別が存在しないと、前記Valueのデータ種別のフィールド数とマッチングする新しいテーブルを取得し、ターゲットテーブルとすることと、
    前記新しいテーブルに基づいて前記データ種別情報テーブルにおける前記Valueのデータ種別の記憶情報を更新することと、をさらに含む、
    ことを特徴とする請求項2に記載のブロックチェーンデータ処理の方法。
  4. 前記Valueのデータ種別の記憶情報に基づいて、前記Valueにおけるデータフォーマット及びフィールド数が前記記憶情報におけるデータフォーマット及びフィールド数と一致するか否かを判断した後、
    前記Valueのデータフォーマットが前記記憶情報におけるデータフォーマットと一致しないと、又は前記Valueのフィールド数が前記記憶情報におけるフィールド数と一致しないと、前記Valueのデータ種別のフィールド数とマッチングする新しいテーブルを取得し、ターゲットテーブルとすることと、
    前記新しいテーブルに基づいて前記データ種別情報テーブルにおける前記Valueのデータ種別の記憶情報を更新することと、をさらに含む、
    ことを特徴とする請求項2に記載のブロックチェーンデータ処理の方法。
  5. 前記記憶情報におけるデータフォーマット及びフィールド数とマッチングする新しいテーブルを取得し、ターゲットテーブルとした後、
    前記ターゲットテーブルの現在の状態を決定し、前記ターゲットテーブルの現在の状態は書込可能状態及び書込不可能状態を含むことと、
    前記ターゲットテーブルが書込不可能状態であると、前記Valueのデータ種別のフィールド数とマッチングする新しいテーブルを取得し、ターゲットテーブルとして、前記新しいテーブルに基づいて前記データ種別情報テーブルにおける前記Valueのデータ種別の記憶情報を更新することと、
    前記ターゲットテーブルが書込可能状態であると、データ種別情報テーブルに基づいて前記Key-Valueデータを前記ターゲットテーブルに書き込むステップを実行することと、をさらに含む、
    ことを特徴とする請求項3に記載のブロックチェーンデータ処理の方法。
  6. 前記ターゲットテーブルの現在の状態を決定する前に、
    前記ターゲットテーブルの行数が予め設定された閾値に達するか否かを検出することと、
    前記ターゲットテーブルの行数が予め設定された閾値に達すると、前記ターゲットテーブルの状態を書込不可能状態に更新することと、をさらに含む、
    ことを特徴とする請求項5に記載のブロックチェーンデータ処理の方法。
  7. データ種別情報テーブルに基づいて、前記Key-Valueデータを前記ターゲットテーブルに書き込むことは、
    前記Key-ValueデータのKeyを前記ターゲットテーブルの指定フィールドに書き込むことと、
    前記Valueのデータ種別の記憶情報に基づいて、前記Valueのサービスフィールドの値を前記ターゲットテーブルにおける対応するテーブルフィールドに書き込むことと、を含む、
    ことを特徴とする請求項1~6のいずれか一項に記載のブロックチェーンデータ処理の方法。
  8. 前記方法は、
    ブロックチェーンシステムのデータクエリ要求に応答して、クエリ対象としてのデータのKey、データ種別及びサービスフィールドを取得することと、
    前記クエリ対象としてのデータのデータ種別に基づいて、前記データ種別情報テーブルをクエリし、前記クエリ対象としてのデータのデータ種別に対応するテーブルを決定することと、
    前記クエリ対象としてのデータのKey及びサービスフィールドに基づいて、前記クエリ対象としてのデータのデータ種別に対応するテーブルをクエリし、クエリ結果を得ることと、をさらに含む、
    ことを特徴とする請求項1~6のいずれか一項に記載のブロックチェーンデータ処理の方法。
  9. 前記クエリ結果を得た後、
    前記クエリ対象としてのデータのデータ種別のValueのデータフォーマットに基づいて、前記クエリ結果をValueとしてパッケージ化することをさらに含む、
    ことを特徴とする請求項8に記載のブロックチェーンデータ処理の方法。
  10. ブロックチェーンシステムのデータクエリ要求に応答し、クエリ語句を取得することと、
    前記クエリ語句を分析し、クエリ対象としてのデータのデータ種別及びサービスフィールドを決定することと、
    クエリ対象としてのデータのデータ種別の記憶情報に基づいて、前記クエリ語句におけるデータ種別を対応するテーブル名称に置き換え、前記クエリ語句におけるサービスフィールドを対応するテーブルフィールドに置き換え、新しいクエリ語句を生成することと、
    前記新しいクエリ語句を実行し、クエリ結果を得ることと、を含む、
    ことを特徴とする請求項1~6のいずれか一項に記載のブロックチェーンデータ処理の方法。
  11. クエリ結果を得た後、
    前記クエリ対象としてのデータのデータ種別のValueのデータフォーマットに基づいて、前記クエリ結果をKey-Valueデータとしてパッケージ化することをさらに含む、
    ことを特徴とする請求項10に記載のブロックチェーンデータ処理の方法。
  12. Key-Valueデータを記憶する必要があるときに、Key-ValueデータにおけるValueを分析し、前記Valueのデータ種別を決定するためのデータ分析モジュールと、
    データ種別情報テーブルに基づいて、前記Valueのデータ種別に対応するターゲットテーブルを決定するためのデータ書込モジュールであって、ここで前記データ種別情報テーブルは全てのデータ種別の記憶情報を記憶するために用いられ、前記データ種別の記憶情報は、当該データ種別に対応するテーブル、当該データ種別のValueのサービスフィールドと対応するテーブルにおけるテーブルフィールドとのマッピング関係、及び当該データ種別のValueのデータフォーマットを含むデータ書込モジュールとを含み、
    前記データ書込モジュールはさらに、データ種別情報テーブルに基づいて、前記Key-Valueデータを前記ターゲットテーブルに書き込むために用いられる、
    ことを特徴とするブロックチェーンデータ処理の装置。
  13. 前記装置はさらに第1のデータクエリモジュールを含み、前記第1のデータクエリモジュールは、
    ブロックチェーンシステムのデータクエリ要求に応答して、クエリ対象としてのデータのKey、データ種別及びサービスフィールドを取得することと、
    前記クエリ対象としてのデータのデータ種別に基づいて、データ種別情報テーブルをクエリし、前記クエリ対象としてのデータのデータ種別に対応するテーブルを決定することと、
    前記クエリ対象としてのデータのKey及びサービスフィールドに基づいて、前記クエリ対象としてのデータのデータ種別に対応するテーブルをクエリし、クエリ結果を得ることと、のために用いられる、
    ことを特徴とする請求項12に記載のブロックチェーンデータ処理の装置。
  14. 前記装置はさらに第2のデータクエリモジュールを含み、前記第2のデータクエリモジュールは、
    ブロックチェーンシステムのデータクエリ要求に応答し、クエリ語句を取得することと、
    前記クエリ語句を分析し、クエリ対象としてのデータのデータ種別及びサービスフィールドを決定することと、
    クエリ対象としてのデータのデータ種別の記憶情報に基づいて、前記クエリ語句におけるデータ種別を対応するテーブル名称に置き換え、前記クエリ語句におけるサービスフィールドを対応するテーブルフィールドに置き換え、新しいクエリ語句を生成することと、
    前記新しいクエリ語句を実行し、クエリ結果を得ることと、のために用いられる、
    ことを特徴とする請求項12に記載のブロックチェーンデータ処理の装置。
  15. プロセッサ、メモリ、及び前記メモリに記憶されて前記プロセッサで実行可能なコンピュータプログラムを含み、
    前記プロセッサは前記コンピュータプログラムを動作するときに、請求項1~11のいずれか一項に記載のブロックチェーンデータ処理の方法を実現する、
    ことを特徴とするコンピューティング機器。
  16. コンピュータ可読記憶媒体であって、前記コンピュータ可読記憶媒体にコンピュータプログラムが記憶され、前記コンピュータプログラムがプロセッサによって実行されるときに請求項1~11のいずれか一項に記載のブロックチェーンデータ処理の方法を実現する、
    ことを特徴とするコンピュータ可読記憶媒体。
  17. 命令を動作するチップであって、前記チップはメモリ、プロセッサを含み、前記メモリにコード及びデータが記憶され、前記メモリは前記プロセッサに結合され、前記プロセッサは前記メモリにおけるコードを実行することにより前記チップが請求項1~11のいずれか一項に記載のブロックチェーンデータ処理の方法を実行するために用いられる、
    ことを特徴とするチップ。
  18. 命令を含むプログラム製品であって、前記プログラム製品がコンピュータで実行されるときに、前記コンピュータに請求項1~11のいずれか一項に記載のブロックチェーンデータ処理の方法を実行させる、
    ことを特徴とするプログラム製品。
  19. コンピュータプログラムであって、前記コンピュータプログラムがプロセッサにより実行されるときに、請求項1~11のいずれか一項に記載のブロックチェーンデータ処理の方法を実行するために用いられる、
    ことを特徴とするコンピュータプログラム。
JP2022507639A 2019-09-17 2020-05-12 ブロックチェーンデータ処理の方法、装置、機器及び可読記憶媒体 Pending JP2022543306A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201910878095.XA CN110609839B (zh) 2019-09-17 2019-09-17 区块链数据处理的方法、装置、设备及可读存储介质
CN201910878095.X 2019-09-17
PCT/CN2020/089803 WO2021051830A1 (zh) 2019-09-17 2020-05-12 区块链数据处理的方法、装置、设备及可读存储介质

Publications (2)

Publication Number Publication Date
JP2022543306A true JP2022543306A (ja) 2022-10-11
JPWO2021051830A5 JPWO2021051830A5 (ja) 2022-10-18

Family

ID=68891452

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022507639A Pending JP2022543306A (ja) 2019-09-17 2020-05-12 ブロックチェーンデータ処理の方法、装置、機器及び可読記憶媒体

Country Status (4)

Country Link
US (1) US11966412B2 (ja)
JP (1) JP2022543306A (ja)
CN (1) CN110609839B (ja)
WO (1) WO2021051830A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110609839B (zh) * 2019-09-17 2021-05-25 北京海益同展信息科技有限公司 区块链数据处理的方法、装置、设备及可读存储介质
CN111259004B (zh) * 2020-01-08 2023-04-14 腾讯科技(深圳)有限公司 一种存储引擎中数据索引的方法以及相关装置
CN112765270B (zh) * 2020-12-31 2022-06-17 杭州趣链科技有限公司 区块链数据处理方法、装置、计算机设备及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012178455A (ja) * 2011-02-25 2012-09-13 Omron Corp 検査システム、管理サーバ、検査装置および検査データ管理方法
JP2014048741A (ja) * 2012-08-29 2014-03-17 Fujitsu Ltd データ検索プログラム、データベース装置および情報処理システム
JP2016149049A (ja) * 2015-02-13 2016-08-18 日本電気株式会社 情報処理装置、情報処理システム、ペアデータ更新方法及びプログラム
US20160253382A1 (en) * 2015-02-26 2016-09-01 Ori Software Development Ltd. System and method for improving a query response rate by managing a column-based store in a row-based database
JP2016170453A (ja) * 2015-03-11 2016-09-23 日本電気株式会社 データ格納制御装置、データ格納制御システム、データ格納制御方法、及び、データ格納制御プログラム

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020161757A1 (en) * 2001-03-16 2002-10-31 Jeffrey Mock Simultaneous searching across multiple data sets
US9372907B2 (en) * 2013-11-26 2016-06-21 Sap Se Table placement in distributed databases
CN103902698B (zh) * 2014-03-31 2018-04-13 北京皮尔布莱尼软件有限公司 一种数据存储系统和存储方法
CN103902701B (zh) * 2014-03-31 2017-12-29 北京皮尔布莱尼软件有限公司 一种数据存储系统和存储方法
US9881176B2 (en) 2015-06-02 2018-01-30 ALTR Solutions, Inc. Fragmenting data for the purposes of persistent storage across multiple immutable data structures
US11042556B2 (en) 2016-06-19 2021-06-22 Data.World, Inc. Localized link formation to perform implicitly federated queries using extended computerized query language syntax
KR102026225B1 (ko) * 2017-01-19 2019-09-27 주식회사 케이티 블록 체인을 이용하여 데이터를 관리하는 장치 및 방법
CN107239479B (zh) * 2017-03-28 2020-03-13 创新先进技术有限公司 一种基于区块链的数据存储以及查询的方法及装置
CN107247757B (zh) * 2017-05-31 2020-08-11 上海建工四建集团有限公司 基于bim的建设工程文档分类存储与检索方法及系统
CN107332847B (zh) * 2017-07-05 2019-04-26 武汉凤链科技有限公司 一种基于区块链的访问控制方法和系统
US11294943B2 (en) * 2017-12-08 2022-04-05 International Business Machines Corporation Distributed match and association of entity key-value attribute pairs
CN109086325A (zh) * 2018-06-29 2018-12-25 阿里巴巴集团控股有限公司 基于区块链的数据处理方法和装置
CN108959562B (zh) * 2018-07-04 2020-06-30 北京京东尚科信息技术有限公司 应用在区块链上的海量规则数据处理方法和系统
CN109189782A (zh) * 2018-08-02 2019-01-11 哈尔滨工程大学 一种区块链商品交易查询中的索引方法
US10909102B2 (en) * 2018-12-06 2021-02-02 Vmware, Inc. Systems and methods for performing scalable Log-Structured Merge (LSM) tree compaction using sharding
CN109656886B (zh) 2018-12-26 2021-11-09 百度在线网络技术(北京)有限公司 基于键值对的文件系统实现方法、装置、设备和存储介质
CN109684335B (zh) 2018-12-26 2021-04-02 百度在线网络技术(北京)有限公司 基于键值对的数据结构实现方法、装置、设备和存储介质
CN110110005B (zh) * 2019-04-04 2021-10-26 华信咨询设计研究院有限公司 基于区块链的关键信息基础数据资产的管控方法
CN110059092A (zh) * 2019-04-22 2019-07-26 广州市品高软件股份有限公司 基于区块链的关系型数据库的数据写入方法及系统
CN110222086A (zh) * 2019-05-07 2019-09-10 深圳壹账通智能科技有限公司 基于区块链的数据管理方法、装置、设备和存储介质
CN110096522B (zh) * 2019-05-15 2023-07-28 西安电子科技大学 一种支持关系型检索的区块链数据处理方法、装置及设备
CN110609839B (zh) 2019-09-17 2021-05-25 北京海益同展信息科技有限公司 区块链数据处理的方法、装置、设备及可读存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012178455A (ja) * 2011-02-25 2012-09-13 Omron Corp 検査システム、管理サーバ、検査装置および検査データ管理方法
JP2014048741A (ja) * 2012-08-29 2014-03-17 Fujitsu Ltd データ検索プログラム、データベース装置および情報処理システム
JP2016149049A (ja) * 2015-02-13 2016-08-18 日本電気株式会社 情報処理装置、情報処理システム、ペアデータ更新方法及びプログラム
US20160253382A1 (en) * 2015-02-26 2016-09-01 Ori Software Development Ltd. System and method for improving a query response rate by managing a column-based store in a row-based database
JP2016170453A (ja) * 2015-03-11 2016-09-23 日本電気株式会社 データ格納制御装置、データ格納制御システム、データ格納制御方法、及び、データ格納制御プログラム

Also Published As

Publication number Publication date
WO2021051830A1 (zh) 2021-03-25
US20220261415A1 (en) 2022-08-18
US11966412B2 (en) 2024-04-23
CN110609839B (zh) 2021-05-25
CN110609839A (zh) 2019-12-24

Similar Documents

Publication Publication Date Title
EP3563268B1 (en) Scalable database system for querying time-series data
US11169981B2 (en) Managing data with flexible schema
WO2020233367A1 (zh) 区块链数据存储和查询方法、装置、设备及存储介质
US11580070B2 (en) Utilizing metadata to prune a data set
US11907216B2 (en) Multi-language fusion query method and multi-model database system
US11226961B2 (en) Data storage apparatus, translation apparatus, and database access method
US9460186B2 (en) Database management method and system
EP3108386B1 (en) Transparent discovery of semi-structured data schema
WO2018177060A1 (zh) 查询优化方法及相关装置
WO2018149271A1 (zh) 数据查询方法、装置及计算设备
JP2022543306A (ja) ブロックチェーンデータ処理の方法、装置、機器及び可読記憶媒体
US20130086322A1 (en) Systems and methods for multitenancy data
JP2012123790A (ja) 仮想パーティションを用いたデータベース再分配
US20190311051A1 (en) Virtual columns to expose row specific details for query execution in column store databases
US10592153B1 (en) Redistributing a data set amongst partitions according to a secondary hashing scheme
US20220342888A1 (en) Object tagging
CN114443615A (zh) 数据库管理系统、相关装置、方法和介质
US20220215021A1 (en) Data Query Method and Apparatus, Computing Device, and Storage Medium
US11789971B1 (en) Adding replicas to a multi-leader replica group for a data set
US11803568B1 (en) Replicating changes from a database to a destination and modifying replication capacity
CN113742346A (zh) 资产大数据平台架构优化方法
CN118035229A (en) Database sub-table method and device, electronic equipment and storage medium

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220215

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220209

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230315

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230509

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230731

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240209