JP2023532352A - データ再配分の方法及び装置 - Google Patents

データ再配分の方法及び装置 Download PDF

Info

Publication number
JP2023532352A
JP2023532352A JP2022581648A JP2022581648A JP2023532352A JP 2023532352 A JP2023532352 A JP 2023532352A JP 2022581648 A JP2022581648 A JP 2022581648A JP 2022581648 A JP2022581648 A JP 2022581648A JP 2023532352 A JP2023532352 A JP 2023532352A
Authority
JP
Japan
Prior art keywords
data
rule table
redistribution
sharding
rule
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
JP2022581648A
Other languages
English (en)
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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Publication of JP2023532352A publication Critical patent/JP2023532352A/ja
Pending legal-status Critical Current

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/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables
    • 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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • 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/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24564Applying rules; Deductive queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24568Data stream processing; Continuous queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本願はデータ再配分の方法及び装置を開示し、前記方法は、計算ノード(301)から送信されたデータ再配分要求に応じて、元のテーブルの情報に基づいて、要求に対応するルールテーブルを作成するステップと、ルールテーブルデータを生成し、ルールテーブルデータに対応するストレージノード(303)に送信するステップと、ルールテーブルデータをルールテーブルにインポートし、元のテーブルに合わせてルールテーブルのデータを補完し、ルールテーブルの方式に従ってデータにアクセスするステップと、を含む。【選択図】図1

Description

関連出願の相互参照
本願は出願番号が「202010600815.9」で、出願日が2020年06月28日である中国特許出願に基づいて提出され、その中国特許出願の優先権を主張し、その中国特許出願の全文を援用により本願に組み入れる。
本願の実施形態は、データベースの分野に関するものであり、特に、データ再配分の方法及び装置に関するものである。
業界では、主に次の2つのデータ再配分方法がある。
1.再配分する必要のあるテーブルをロックし、テーブル内のデータの再配分がすべて完了するまで、読み取りと書き込みの操作を実行できないようにする。データ量の大きさやリソースの制限によっては、データ再配分に数時間ひいては数日かかる可能性があり、サービスが長時間にわたって再配分中のテーブルを操作できなくなり、重大な影響を及ぼす可能性がある。
2.より一般的な方法として、新しいテーブルを作成し、古いテーブルに格納されているデータをすべてエクスポートしてから、新しいルールに従って新しいテーブルにすべてインポートし、次に、増分データを追加し、完了すると、古いテーブルをロックして、新しいテーブルの使用に切り替える。このような処理方法では、効率が低く、ネットワークへの負荷が高く、ストレージに対する要求が高い。また、増分を追う過程はサービスの量によっては異なるタイムスパンとなり、いつまでも追いつけない可能性さえある。
データベースシステムの稼働中、上記従来の2つの再配分方法を使用する場合、既存ネットワーク環境に対する要求は比較的に高いとともに、運用保守者の応急処置能力に対する要求は更に高い。
分散型データベースの再配分シーンには、容量拡張のほか、容量縮小、配布方式の変更、配布フィールドの変更などのシーンがあり、これらのシーンはデータベース運用保守者が常に直面するシーンであり、成熟したデータベース製品が備えるべき機能でもある。
本願の実施形態によれば、データ再配分方法を提供し、前記データ再配分方法は、計算ノードから送信されたデータ再配分要求に応じて、元のテーブルの情報に基づいて、要求に対応するルールテーブルを作成するステップと、ルールテーブルデータを生成し、ルールテーブルデータに対応するストレージノードに送信するステップと、ルールテーブルデータをルールテーブルにインポートするステップと、元のテーブルに合わせてルールテーブルのデータを補完するステップと、ルールテーブルの方式に従ってデータにアクセスするステップと、を含む。
本願の実施形態はさらに、データ再配分の装置を提供し、この装置は、計算ノードから送信されたデータ再配分要求に応じて、元のテーブルの情報に基づいて、要求に対応するルールテーブルを作成するように構成されたプロセッサと、ルールテーブルデータを生成し、ルールテーブルデータに対応するストレージノードに送信し、ルールテーブルデータをルールテーブルにインポートし、元のテーブルに合わせてルールテーブルのデータを補完するように構成されたストレージノードと、ルールテーブルの方式に従ってデータにアクセスするように構成された計算ノードと、を備える。
本願の実施形態は、上述したようなデータ再配分装置を含むデータ再配分システムをさらに提供する。
本願の実施例によれば、さらに機器を提供する。前記機器は、1つまたは複数のプロセッサと、1つまたは複数のプログラムを記憶するメモリと、を備え、1つまたは複数のプログラムが1つまたは複数のプロセッサにより実行された場合、1つまたは複数のプロセッサに上記のデータ再配分方法を実現させる。
本願の実施形態は記憶媒体をさらに提供し、記憶媒体はコンピュータプログラムを記憶しており、コンピュータプログラムがプロセッサにより実行された場合、上記に記載のデータ再配分方法を実現する。
本願の実施形態1により提供されるデータ再配分の方法のフローチャートである。 本願の実施形態2により提供されるデータ再配分の方法のフローチャートである。 本願の実施形態3により提供されるデータ再配分の装置のプログラムモジュール模式図である。 本願の実施形態4により提供されるデータ再配分の装置のプログラムモジュール模式図である。 本願の一実施形態によって提供される機器の構成模式図である。
本願の目的、技術案及び利点をより明らかにするために、以下では、具体的な実施形態に添付図面を組み合わせて本願の実施形態をさらに詳しく説明する。ここで説明する具体的な実施形態は本願を解釈するためだけに使われるものであって、本願を限定するために使われるものではないことは、理解しておくべきである。
現在応用されているデータベースの同時性が高く、データの増加が速く、24時間年中無休でサービスを提供している。ビジネスの拡大に伴い、データの拡張が桁違いな増大である可能性があるため、優れたスケールアウト能力を持つ分散型データベースが広く利用されている。分散型データベースは一般的に、何も共有しない(share nothing)アーキテクチャを採用しており、すなわち、ノードごとに独立したストレージを持ち、ノード間でストレージを共有せず、データはルールに従って複数のノードに配分され、ノード間は一般的に光ファイバなどのネットワークを介して接続されている。
分散型データベースは優れたスケーラビリティを持ち、ビジネスシナリオに応じてノードデータを柔軟に分散させることができる。例えば、データ量オーダーが大きくなるにつれて、データストレージとクエリにさらなる要求が提出され、既存の分散型データベースの容量を拡張し、新しいデータノードを分散型データベースに追加し、データの移行を行う必要がある。
本願の実施形態により提供されるデータ再配分の方法及び装置によれば、いくつかの場合におけるデータ再配分処理方法の効率が低く、オーバーヘッドが大きいという問題を解決する。
実施形態1
いくつかの状況における、新しいテーブルを作成することによる効率低下を解決するために、本実施形態の中心的な考え方は、データ再配分要求を受信すると、新しいシャーディングルールに基づいて、シャーディングキーとメタデータ情報とを保持するルールテーブルを作成することであり、メタデータ情報とは、該シャーディングキーデータに対応するノード情報であり、例えば、それぞれ1、2、3で表すことができる3つのノードがある。再配分タスクが終了するまでは、分散型データベースの計算ノードは、旧テーブルの方式に従ってアクセスし、再配分タスクが終了すると、計算ノードは、ルールテーブルに従ってデータにアクセスする。
図1を参照し、本実施例にかかるデータ再配分方法は、以下のステップを含む。
ステップ102において、計算ノードから送信されたデータ再配分要求に応じて、元のテーブルの情報に基づいて、要求に対応するルールテーブルを作成する。
ステップ104において、ルールテーブルデータを生成し、ルールテーブルデータに対応するストレージノードに送信する。
ステップ106において、ルールテーブルデータをルールテーブルにインポートする。
ステップ108において、元のテーブルに合わせてルールテーブルのデータを補完する。
ステップ110において、ルールテーブルの方式に従ってデータにアクセスする。
本願の実施形態1により提供されるデータ再配分方法によれば、データを移行するために新しいテーブルを作成するのではなく、新しいルールテーブルを作成することにより、データ再配分の効率を向上させ、再配分中のデータ移行による影響を効果的に低減する。ルールテーブルのフィールドには、シャーディングキーとメタデータ情報のみが含まれているため、ストレージへの要求が極めて低く、オーバーヘッドが削減され、効率がさらに向上する。
実施形態2
図2を参照し、本実施例にかかるデータ再配分方法は、以下のステップを含むことができる。
ステップ202において、ルールテーブルを作成する。
データ再配分要求が送信されると、元のテーブルの情報に基づいて新しいルールテーブルを作成し、新しいルールテーブルのシャーディングキーは再配分要求の元のテーブルのシャーディング方式と一致する。例えば、元のテーブルはフィールドcol1でハッシュして3つのノードに分散し、再配分要求ではハッシュで4つのノードに分散することが求められる場合、ルールテーブルは、フィールドcol1でハッシュして4つのノードに分散する。
本実施形態において、配布パターンを3つのノードから4つのノードに変更する再配分を例に説明する。元のテーブル名はtbs_info_detailで、配布パターンはhash(uuid)(g1,g2,g3)であり、プロセッサは、配布パターンがhash(uuid)(g1,g2,g3,g4)の隠れたルールテーブルtbs_info_detail_res_ruleを作成する。ルールテーブルには、uuidとgroupidとの2つのフィールドがある。uuidフィールドの属性は元のテーブルの属性と完全に同じであるが、groupidフィールドの属性はunsginedtinyint属性(1バイトのみ占有する)を使用できるとともに、ルールではuuidについてインデックスを作成する必要がある(元のテーブルのuuidが主キーである場合、uuidを主キーに設定する)。
ステップ204において、ルールテーブルのデータを生成する。
各ストレージノードには、メタデータルールテーブルデータを生成およびインポートするように構成された再配分制御モジュールが含まれる。これらの再配分制御モジュールは並行して、ストレージノード番号情報とともに各ストレージノードから配布キー値をエクスポートし、分割されたファイルを新しい配布ルールに従って異なるストレージノードのファイルに分割し、対応するストレージノードに伝送する。
本ステップにおいて、該シャーディングキーに関連し且つ正常に実行されたすべてのINSERT/UPDATE/DELETE文を記録し、シャーディングキーの値および対応するgroupidを記録する。
ステップ206において、ルールテーブルにデータをインポートする。
各ストレージノードの再配分制御モジュールは、伝送されてきたデータをルールテーブルにインポートすることができる。
ステップ208において、読み取りロックをかける。
再配分が必要なテーブルに読み取りロックをかけるように、計算ノードに通知する。
ステップ210において、データを補完する。
記録されたシャーディングキーに関連するINSERT/UPDATE/DELETE文に記録されたシャーディングキーの値を、元のテーブルおよびルールテーブル内のシャーディングキーと比較し、ルールテーブルに該シャーディングキー値に対応するデータが欠落している場合、元のテーブル内の該シャーディングキー値に対応するデータを挿入し、ルールテーブルにシャーディングキー値に対応するデータが余分にある場合、該シャーディングキー値に対応するデータを削除し、ルールテーブルデータが元のテーブルと一致していない場合、元のテーブルと一致するデータに修正する。
ステップ212において、アクセス方式を変更する。
計算ノードにテーブルのアクセス方式の変更を通知し、計算ノード自身の計算配布アルゴリズムをルールテーブルの方式に従ってアクセスするように変更し、テーブルに関連するINSERT/UPDATE/DELETE文は同時にルールテーブルを変更する必要があり、新規データは新規データノードに優先的に挿入する。
ステップ214において、読み取りロックを解除する。
かけられた読み取りロックを解除する。
これで、再配分タスクは完了した。
ステップ216において、配布ルールを整列する。
ルールテーブルの配布方式が計算ノードと一致していない問題については、例えば以下のように、アイドル時間にバッチ処理を実行することができる。
1.まずはノード1内でルールテーブルのメタデータフィールドが2である行を検索し、その部分のデータをバッチに分けてノード2に移行すると同時に、ルールテーブルを変更する。
2.大部分のデータ移行が成功したらテーブルをロックし、残りのデータを移行する。
3.テーブルのアクセス方式を変更するように計算ノードに通知する。
4.ルールテーブルをクリーンアップする。
本願の実施形態2により提供されるデータ再配分方法によれば、2つのフィールドのみを含むルールテーブルを作成することによって、再配分の効率を向上させ、データ移行による影響を低減すると同時に、再配分のオーバーヘッドをさらに低減する。
実施形態3
図3を参照し、本実施例にかかるデータ再配分装置300は、
計算ノード301と、プロセッサ302と、ストレージノード303とを備える。プロセッサ302は、計算ノード301から送信されたデータ再配分要求に応じて、元のテーブルの情報に基づいて、要求に対応するルールテーブルを作成するように構成されている。ストレージノード303は複数あり、ルールテーブルデータを生成し、ルールテーブルデータに対応するストレージノード303に送信し、ルールテーブルデータをルールテーブルにインポートし、元のテーブルに合わせてルールテーブルのデータを補完するように構成されている。計算ノード301は、ルールテーブルの方式に従ってデータにアクセスするように構成されている。
本願の実施形態3により提供されるデータ再配分装置によれば、データを移行するために新しいテーブルを作成するのではなく、ルールテーブルを作成することにより、データ再配分の効率を向上させ、データ移行による影響を低減する。
実施形態4
図4を参照し、本実施例にかかるデータ再配分装置400は、
計算ノード401と、プロセッサ402と、ストレージノード403とを備える。ストレージノード403は4つある。
計算ノード401からデータ再配分要求が送信されると、プロセッサ402は、元のテーブルの情報に基づいて新しいルールテーブルを作成し、新しいルールテーブルのシャーディングキーは再配分要求の元のテーブルのシャーディング方式と一致する。
4つのストレージノード403にはそれぞれ、メタデータルールテーブルデータを生成およびインポートするように構成された再配分制御モジュール403aが含まれる。これらの再配分制御モジュール403aは並行して、ストレージノード番号情報とともに各ストレージノード403から配布キー値をエクスポートし、分割されたファイルを新しい配布ルールに従って異なるストレージノード403のファイルに分割し、対応するストレージノード403に伝送する。計算ノード401は、該シャーディングキーに関連し且つ正常に実行されたすべてのINSERT/UPDATE/DELETE文を記録し、シャーディングキーの値および対応するgroupidを記録する。
ストレージノード403の再配分制御モジュール403aは、伝送されてきたデータをルールテーブルにインポートする。
プロセッサ402は、再配分が必要なテーブルに読み取りロックをかけるように、計算ノード401に通知する。
再配分制御モジュール403aは、計算ノード401に記録されたシャーディングキーに関連するINSERT/UPDATE/DELETE文に記録されたシャーディングキーの値を、元のテーブルおよびルールテーブル内のシャーディングキーと比較し、ルールテーブルに該シャーディングキー値に対応するデータが欠落している場合、元のテーブル内の該シャーディングキー値に対応するデータを挿入し、ルールテーブルにシャーディングキー値に対応するデータが余分にある場合、該シャーディングキー値に対応するデータを削除し、ルールテーブルデータが元のテーブルと一致していない場合、元のテーブルと一致するデータに修正する。
プロセッサ402は、計算ノード401にテーブルのアクセス方式の変更を通知し、計算ノード401自身の計算配布アルゴリズムをルールテーブルの方式に従ってアクセスするように変更し、テーブルに関連するINSERT/UPDATE/DELETE文は同時にルールテーブルを変更する必要があり、新規データは新規データノードに優先的に挿入する。
計算ノード401は、かけられた読み取りロックを解除する。これで、再配分タスクは完了した。
それに対してルールを配布する必要がある場合、実施形態2のステップ216に従って実行する。
本願の実施形態4により提供されるデータ再配分装置によれば、2つのフィールドのみを含むルールテーブルを作成することによって、再配分の効率を向上させ、データ移行による影響を低減すると同時に、再配分のオーバーヘッドをさらに低減する。
本願は、実施形態4のデータ再配分装置を含むデータ再配分システムをさらに提供し、このシステムによれば、データ再配分タスクを効率よく実行することが可能である。
これにより分かるように、上記で開示された方法のステップ、システム、装置における機能モジュール/ユニットの全て又は一部は、ソフトウェア(コンピューティング装置によって実行可能なコンピュータプログラムコードによって実装できる)、ファームウェア、ハードウェア、及びそれらの適切な組み合わせとして実装されてもよいことを、当業者は理解できるであろう。ハードウェアによる実施形態において、上記説明で言及された機能モジュール/ユニット間の区分は、物理的組立体の区分に必ずしも対応しているとは限らず、例えば、一つの物理的組立体は複数の機能を有することができ、または、一つの機能またはステップはいくつかの物理的組立体によって協働して実行されることができる。いくつかの物理的組立体またはすべての物理的組立体は、中央処理装置、デジタルシグナルプロセッサまたはマイクロプロセッサのようなプロセッサによって実行されるソフトウェアとして、あるいはハードウェアとして、あるいは特定用途向け集積回路のような集積回路として実施することができる。
本願の実施形態は機器をさらに提供し、図5は本願の実施形態により提供される機器の構成模式図である。図5に示すように、該機器はプロセッサ51と、メモリ52と、入力装置53、出力装置54と通信装置55とを備える。機器内のプロセッサ51の数は1つまたは複数であってもよく、図5では1つのプロセッサ51を例に挙げている。機器内のプロセッサ51と、メモリ52と、入力装置53と出力装置54とはバスまたはその他の方法で接続されてもよく、図5ではバスで接続されている例を示している。
メモリ52は、コンピュータ可読記憶媒体として、ソフトウェアプログラム、コンピュータ実行可能なプログラムおよびモジュール、例えば本願の実施形態におけるデータ再配分方法に対応するプログラム指令/モジュールを記憶するように構成することが可能である。プロセッサ51は、メモリ52に記憶されているソフトウェアプログラム、指令及びモジュールを実行することにより、機器の様々な機能アプリケーション及びデータ処理を実行し、すなわち、本願の実施形態によって提供される何れか1つの方法を実現する。
メモリ52は、プログラム記憶領域とデータ記憶領域とを主に備えることができ、プログラム記憶領域はオペレーティングシステム、少なくとも1つの機能に必要なアプリケーションプログラムを記憶することができ、データ記憶領域には、装置の使用によって作成されたデータなどを記憶することができる。さらに、メモリ52は、高速ランダムアクセスメモリを含むことができ、または不揮発性のメモリ、例えば少なくとも1つの磁気ディスクメモリ装置、フラッシュメモリ装置、または他の不揮発性のソリッドステートメモリ装置を含むことができる。いくつかの実例において、メモリ52はさらに、プロセッサ51に対して遠隔地に配置されたメモリを含んでもよく、これらの遠隔メモリは、ネットワークを介して機器に接続することができる。上記のネットワークの実例は、インターネット、社内イントラネット、ローカルエリアネットワーク、移動通信ネットワーク、及びこれらの組み合わせを含むが、これらに限定されない。
入力装置53は、入力された数字や文字情報を受け取ったり、機器のユーザ設定や機能制御に関するキー信号入力を生成したりするために使用できる。出力装置54は、ディスプレイなどの表示機器を含むことができる。
通信装置55は、受信機および送信機を含むことができる。通信装置55は、プロセッサ51の制御に従って情報の送受信通信を行うように構成されている。
一実施形態において、本願の実施形態はさらに、コンピュータ実行可能な指令を含む記憶媒体を提供し、前記コンピュータ実行可能な指令は、コンピュータプロセッサにより実行された場合、データ再配分方法を実行するように構成されており、前記データ再配分方法は、ソースデータベースのストアドプロシージャを取得するステップと、ストアドプロシージャを解析して翻訳し、対応する構文ブロックリストを得るステップと、構文ブロックリストを処理して、ターゲットデータベースの要件を満たすストアドプロシージャを得るステップと、を含む。
もちろん、本願の実施形態が提供するコンピュータ実行可能な指令を含む記憶媒体によれば、そのコンピュータ実行可能な指令は、上述のような方法の操作に限定されるものではなく、本願の任意の実施形態が提供するデータ再配分方法における関連操作を実行することもできる。
以上の実施形態に関する説明を通して、当業者は、本願は、ハードウェアによって実現ことも勿論可能であるが、多くの場合ではより良い実施形態であるソフトウェアおよび必要な汎用ハードウェアの方法で実現できることを明確に理解できる。このような理解に基づいて、本願の技術案の本質的な部分または従来技術に貢献した部分は、ソフトウェア製品の形で具現化することができ、このソフトウェア製品は、例えばコンピュータのフロッピーディスク、読み取り専用メモリ(ROM:Read-Only Memory)、ランダムアクセスメモリ(RAM:Random Access Memory)、フラッシュメモリ(FLASH)、ハードディスク又は光ディスクなどの、1台のコンピュータ機器(パーソナルコンピュータ、サーバ又はネットワーク機器などでもよく)に本願の各実施形態のデータ再配分方法を実行させるように構成されたいくつかの指令を含む、コンピュータ読み取り可能な記憶媒体に格納できる。
以上の内容は、本願の実施形態を具体的な実施形態を合わせてさらに詳しく説明したものであり、本願の具体的な実施がこれらの説明に限定されると認めるべきではない。本願が属する技術分野の当業者にとって、本願の発明構想を逸脱することなく、いくつかの簡単な推断演繹又は置換を行うことができ、それらはいずれも本願の保護範囲に属するとみなすべきである。

Claims (13)

  1. データ再配分方法であって、
    計算ノードから送信されたデータ再配分要求に応じて、元のテーブルの情報に基づいて、前記要求に対応するルールテーブルを作成するステップと、
    ルールテーブルデータを生成し、前記ルールテーブルデータに対応するストレージノードに送信するステップと、
    前記ルールテーブルデータを前記ルールテーブルにインポートするステップと、
    前記元のテーブルに合わせて前記ルールテーブルのデータを補完するステップと、
    前記ルールテーブルの方式に従ってデータにアクセスするステップと、
    を含むデータ再配分方法。
  2. 前記ルールテーブルは、シャーディングキーとメタデータ情報とを含む
    請求項1に記載のデータ再配分方法。
  3. ルールテーブルのデータを生成する前記ステップは、
    配布キー値とノード番号情報をエクスポートし、前記要求に含まれる配布ルールに従って、対応するストレージノードのファイルに分割するステップと、
    シャーディングキーと配布パターン、および対応するシャーディングキーで正常に実行されたINSERT/UPDATE/DELETE文を記録するステップと、
    を含む請求項1又は2に記載のデータ再配分方法。
  4. 元のテーブルに合わせて前記ルールテーブルのデータを補完する前記ステップは、前記ルールテーブルと前記元のテーブルの前記シャーディングキーを、前記INSERT/UPDATE/DELETE文に記録されたシャーディングキーと比較し、前記ルールテーブルに前記シャーディングキーに対応するデータが欠落している場合、前記元のテーブル内の前記シャーディングキーに対応するデータを挿入し、前記ルールテーブルに前記シャーディングキーに対応するデータが余分にある場合、前記シャーディングキーに対応するデータを削除し、前記ルールテーブルの前記シャーディングキーに対応するデータと前記元のテーブル内の対応するデータとが一致していない場合、前記元のテーブル内の前記シャーディングキーに対応するデータに修正するステップ
    を含む請求項3に記載のデータ再配分方法。
  5. 元のテーブルに合わせて前記ルールテーブルのデータを補完する前記ステップの前に、
    データ再配分が必要なテーブルに読み取りロックをかけるステップをさらに含み、
    前記ルールテーブルの方式に従ってデータにアクセスするステップの後に、
    前記読み取りロックを解除するステップをさらに含む
    請求項1から4の何れか1項に記載のデータ再配分方法。
  6. データ再配分装置であって、
    計算ノードから送信されたデータ再配分要求に応じて、元のテーブルの情報に基づいて、前記要求に対応するルールテーブルを作成するように構成されたプロセッサと、
    ルールテーブルデータを生成し、前記ルールテーブルデータに対応するストレージノードに送信し、前記ルールテーブルデータを前記ルールテーブルにインポートし、前記元のテーブルに合わせて前記ルールテーブルのデータを補完するように構成されているストレージノードと、
    前記ルールテーブルの方式に従ってデータにアクセスするように構成された計算ノードと、
    を備えるデータ再配分装置。
  7. 前記ルールテーブルは、シャーディングキーとメタデータ情報とを含む
    請求項6に記載のデータ再配分装置。
  8. 前記ストレージノードはさらに、配布キー値とノード番号情報をエクスポートし、前記要求に含まれる配布ルールに従って、対応するストレージノードのファイルに分割するように構成され、
    前記計算ノードはさらに、シャーディングキーと配布パターン、および対応するシャーディングキーで正常に実行されたINSERT/UPDATE/DELETE文を記録するように構成されている
    請求項6又は7に記載のデータ再配分装置。
  9. 前記ストレージノードはさらに、前記ルールテーブルと前記元のテーブルの前記シャーディングキーを、前記INSERT/UPDATE/DELETE文に記録されたシャーディングキーと比較し、前記ルールテーブルに前記シャーディングキーに対応するデータが欠落している場合、前記元のテーブル内の前記シャーディングキーに対応するデータを挿入し、前記ルールテーブルに前記シャーディングキーに対応するデータが余分にある場合、前記シャーディングキーに対応するデータを削除し、前記ルールテーブルの前記シャーディングキーに対応するデータと前記元のテーブル内の対応するデータとが一致していない場合、前記元のテーブル内の前記シャーディングキーに対応するデータに修正するように構成されている
    請求項8に記載のデータ再配分装置。
  10. 前記計算ノードはさらに、前記ストレージノードがデータを補完する前に、データ再配分が必要なテーブルに読み取りロックをかけ、前記ルールテーブルの方式に従ってデータにアクセスした後に、前記読み取りロックを解放するように構成されている
    請求項6から9の何れか1項に記載のデータ再配分装置。
  11. 請求項6から10の何れか1項に記載のデータ再配分装置を含む
    データ再配分システム。
  12. 機器であって、
    1つまたは複数のプロセッサと、
    1つまたは複数のプログラムを記憶するメモリと、
    を備え、
    前記1つまたは複数のプログラムが前記1つまたは複数のプロセッサにより実行された場合、前記1つまたは複数のプロセッサに請求項1から5の何れか1項に記載の方法を実現させる
    機器。
  13. コンピュータプログラムを記憶している記憶媒体であって、
    前記コンピュータプログラムがプロセッサにより実行された場合、請求項1から5の何れか一項に記載の方法を実現する
    記憶媒体。
JP2022581648A 2020-06-28 2021-06-25 データ再配分の方法及び装置 Pending JP2023532352A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202010600815.9A CN113849496A (zh) 2020-06-28 2020-06-28 一种数据重分布的方法和装置
CN202010600815.9 2020-06-28
PCT/CN2021/102448 WO2022001883A1 (zh) 2020-06-28 2021-06-25 一种数据重分布的方法和装置

Publications (1)

Publication Number Publication Date
JP2023532352A true JP2023532352A (ja) 2023-07-27

Family

ID=78972778

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022581648A Pending JP2023532352A (ja) 2020-06-28 2021-06-25 データ再配分の方法及び装置

Country Status (5)

Country Link
EP (1) EP4174676A4 (ja)
JP (1) JP2023532352A (ja)
KR (1) KR20230025019A (ja)
CN (1) CN113849496A (ja)
WO (1) WO2022001883A1 (ja)

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9753999B2 (en) * 2012-01-06 2017-09-05 Citus Data Bilgi Islemieri Ticaret A.S. Distributed database with mappings between append-only files and repartitioned files
US9830346B2 (en) * 2013-11-26 2017-11-28 Sap Se Table redistribution in distributed databases
CN104765748B (zh) * 2014-01-07 2018-06-26 中国移动通信集团江西有限公司 一种将复制表转换为分片表的方法及装置
CN103870602B (zh) * 2014-04-03 2017-05-31 中国科学院地理科学与资源研究所 数据库空间分片复制方法及系统
CN104239417B (zh) * 2014-08-19 2017-06-09 天津南大通用数据技术股份有限公司 一种分布式数据库数据分片后动态调整方法及装置
CN104484469B (zh) * 2014-12-31 2017-12-15 天津南大通用数据技术股份有限公司 一种支持多hash map数据库集群系统不停机的扩容方法
CN106034144B (zh) * 2015-03-12 2019-10-15 中国人民解放军国防科学技术大学 一种基于负载均衡的虚拟资产数据存储方法
CN106407308A (zh) * 2016-08-31 2017-02-15 天津南大通用数据技术股份有限公司 一种分布式数据库的扩容方法及装置
US10783046B2 (en) * 2016-11-22 2020-09-22 Nutanix, Inc. Executing resource management operations in distributed computing systems
CN108319623B (zh) * 2017-01-18 2021-10-22 华为技术有限公司 一种数据重分布方法、装置及数据库集群
CN108932256A (zh) * 2017-05-25 2018-12-04 中兴通讯股份有限公司 分布式数据重分布控制方法、装置及数据管理服务器

Also Published As

Publication number Publication date
EP4174676A4 (en) 2023-11-08
KR20230025019A (ko) 2023-02-21
EP4174676A1 (en) 2023-05-03
CN113849496A (zh) 2021-12-28
WO2022001883A1 (zh) 2022-01-06

Similar Documents

Publication Publication Date Title
US11010358B2 (en) Data migration method and system
US11726984B2 (en) Data redistribution method and apparatus, and database cluster
US10853242B2 (en) Deduplication and garbage collection across logical databases
US11442961B2 (en) Active transaction list synchronization method and apparatus
CN110502916B (zh) 一种基于区块链的敏感性数据处理方法与系统
CN112765262B (zh) 一种数据重分布方法、电子设备及存储介质
US10831612B2 (en) Primary node-standby node data transmission method, control node, and database system
US9208186B2 (en) Indexing technique to deal with data skew
CN111258978B (zh) 一种数据存储的方法
US10467192B2 (en) Method and apparatus for updating data table in keyvalue database
CN110135184B (zh) 一种静态数据脱敏的方法、装置、设备及存储介质
CN112912870B (zh) 租户标识符的转换
WO2016169237A1 (zh) 数据处理方法及装置
US10673713B2 (en) Communication control device, communication device, and computer program product for dynamic group management
US10440523B2 (en) Communication control device, communication device, and computer program product for managing a group of devices
AU2019350694B2 (en) Identification of records for post-cloning tenant identifier translation
US20230252025A1 (en) Data Processing System, Blockchain-Based Data Processing Method, and Device
WO2023066222A1 (zh) 数据处理方法、装置、电子设备、存储介质及程序产品
JP2023532352A (ja) データ再配分の方法及び装置
WO2019174558A1 (zh) 一种数据索引方法及装置
CN117390078B (zh) 数据处理方法、装置、存储介质和计算机设备
CN117075823B (zh) 对象查找方法、系统、电子设备及存储介质
US20240169072A1 (en) Native multi-tenant row table encryption
CN114756628B (zh) 一种高复用可扩展的数据及文件同步的方法
CN115544321B (zh) 一种图数据库存储的实现方法、装置及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221228

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240430

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20240625