JP2018538596A - データ処理のための方法および装置 - Google Patents

データ処理のための方法および装置 Download PDF

Info

Publication number
JP2018538596A
JP2018538596A JP2018519365A JP2018519365A JP2018538596A JP 2018538596 A JP2018538596 A JP 2018538596A JP 2018519365 A JP2018519365 A JP 2018519365A JP 2018519365 A JP2018519365 A JP 2018519365A JP 2018538596 A JP2018538596 A JP 2018538596A
Authority
JP
Japan
Prior art keywords
data
snapshot
block
determining
creating
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
JP2018519365A
Other languages
English (en)
Other versions
JP2018538596A5 (ja
JP6820918B2 (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 JP2018538596A publication Critical patent/JP2018538596A/ja
Publication of JP2018538596A5 publication Critical patent/JP2018538596A5/ja
Application granted granted Critical
Publication of JP6820918B2 publication Critical patent/JP6820918B2/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/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • 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/24553Query execution of query operations
    • G06F16/24554Unary operations; Data partitioning operations
    • G06F16/24557Efficient disk access during query execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/128Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion
    • 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/2358Change logging, detection, and notification
    • 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/2372Updates performed during offline database operations
    • 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

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)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Retry When Errors Occur (AREA)

Abstract

本出願は、一般に、データ処理方法および装置に関する。本明細書で開示する1つのデータ処理方法は:データ変更に基づいて書込み可能スナップショットを作成すること;書込み可能スナップショットを別個の所定の作成時間に複製することによって複数の読取り専用(「RO」)スナップショットを作成すること;データ照会要求を受信すること;および最新の作成時間をもつROスナップショットにおいて、インデックス化を通してデータ照会を実施することを含む。このアプローチは、データ変更とデータ照会の分離を達成して、効率的なリアルタイム更新を可能にする。さらに、高速インデックス化および逆インデックス化により、照会効率がさらに改善される。追加として、データがデータ列内に格納され、各列は、固定のブロックサイズに従って複数のデータブロックに分割され得、各データブロックは、同じ長さを有する。データを変更する場合、変更の影響は、他のデータブロックに影響を及ぼすことなく、変更されているデータブロックに制限され得、それは、データ変更によって被る資源消費を減らす。
【選択図】図1

Description

関連出願の相互参照
[0001] 本特許出願は、2015年11月4日に出願された、中国特許出願第201510742561.3号に対する優先権を主張し、その内容全体が参照により本明細書に組み込まれる。
[0002] 本開示は、一般に、データ処理の分野に関し、より詳細には、データ処理の方法およびデータ処理装置に関する。
[0003] 多くの既存のデータ処理方法は、OLTP(オンライントランザクション処理)データベース、OLAP(オンライン分析処理)データベース、およびInfobrightデータベースに基づく。最も一般的に使用されるOLTPデータベースは、レコードの挿入、更新、および削除の一貫性を維持するために、トランザクションログ方法を使用する。具体的には、期間(一日、一週間、または1か月)毎の初めに、新しいデータシートが作成される。取得されたデータがこの新しいデータシートにインポートされて、新しい静的インデックスが作成される。新しい静的インデックスの作成後、効率的な照会がサポートされ得るが、リアルタイムのデータ更新はサポートされない可能性がある。OLAPデータベースは、バッチデータインポートモード(importation mode)を使用し、それはリアルタイムデータ照会をサポートしない。Infobrightデータベースに関して、データ照会は、バッチデータ更新が完了した後にのみ実施でき、更新速度は従って遅い。その上、Infobrightデータベースは、履歴バージョンデータ照会をサポートせず、従って、拡張も、分散データベースシステムで使用することもできない。
[0004] これらのことから、高速なデータ更新およびデータ照会をサポートするデータ処理方法に対する必要性がある。
[0005] 前述した既存の技術の欠点を考慮して、本発明は、複数の読取り専用スナップショット(「ROスナップショット」)および1つの書込み可能スナップショットを含み、ROスナップショットの作成時間が異なっている、データ記憶システムに適用できるデータ処理方法を開示する。本明細書で開示するデータ処理方法は、以下を含む:
[0006] データ変更に基づいて書込み可能スナップショットを作成すること;
[0007] 書込み可能スナップショットを別個の所定の作成時間に複製することによって複数の読取り専用(「RO」)スナップショットを作成すること;
[0008] データ照会要求を受信すること;および
[0009] 最新の作成時間をもつROスナップショットにおいて、インデックス化を通してデータ照会を実施すること。
[0010] 本発明は、データ処理装置をさらに提供する。本明細書で開示するデータ処理装置は、以下を備える:
[0011] データ変更に基づいて書込み可能スナップショットを作成するために使用される、第1の作成モジュール;
[0012] 書込み可能スナップショットを別個の所定の作成時間に複製することによって複数の読取り専用(「RO」)スナップショットを作成するために使用される、第2の作成モジュール;ならびに
[0013] データ照会要求を受信すること、および最新の作成時間をもつROスナップショットにおいて、インデックス化を通してデータ照会を実施することのために使用される、照会モジュール。
[0014] 既存の技術と比較すると、本発明は、データ変更に基づいて書込み可能スナップショットを作成すること;書込み可能スナップショットを別個の所定の作成時間に複製することによって複数の読取り専用(「RO」)スナップショットを作成すること;データ照会要求を受信すること;および最新の作成時間をもつROスナップショットにおいて、インデックス化を通してデータ照会を実施することを開示する。このようにして、データ変更とデータ照会が分離され、それは、高速なリアルタイム更新を可能にする。さらに、高速インデックス化および逆インデックス化(invert indexing)に基づいて、本発明は、照会効率を改善する。追加として、カラムにデータを格納し、各カラムが、固定ブロックサイズに基づいて複数のデータブロックに分割され得、各データブロックは同じ長さを有し得、従って、データを変更する場合、変更の影響が、他のデータブロックに影響を及ぼすことなく、変更が実行される特定のブロックに制限できる。これは、変更プロセスで生じる資源消費を減らし得る。
[0015] 本明細書に組み込まれて、本明細書の一部を構成する、添付の図面は、本発明と一致する実施形態を例示しており、記述と共に、本発明の原理を説明するのに役立つ。
[0016]例示的な実施形態に従った、データ処理方法の流れ図である。 [0017]例示的な実施形態に従った、書込み可能スナップショットの作成プロセスを例示する概略図である。 [0018]例示的な実施形態に従った、スナップショットの構造を例示する概略図である。 [0019]例示的な実施形態に従った、データ挿入後の書込み可能スナップショットの構造を例示する概略図である。 [0020]例示的な実施形態に従った、データ削除後の書込み可能スナップショットの構造を例示する概略図である。 [0021]例示的な実施形態に従った、データ更新後の書込み可能スナップショットの構造を例示する概略図である。 [0022]例示的な実施形態に従った、逆インデックスを例示する概略図である。 [0023]例示的な実施形態に従った、データ処理装置のブロック図である。
[0024] 以下の説明では添付の図面を参照し、図面中、異なる図面における同じ番号は、別段の指示がない限り、同じか、または類似の要素を表す。以下の例示的な実施形態の説明で記載されている実施態様は、本発明と一致する全ての実施態様を表しているわけではない。むしろ、それらは、添付の請求項で列挙されているような本発明に関連した態様と一致する装置および方法の例にすぎない。
[0025] 本発明は、複数のROスナップショットおよび1つの書込み可能スナップショットを有し、ROスナップショットの作成時間が異なっている、データ記憶システムに適用できるデータ処理方法を提供する。ROスナップショットおよび書込み可能スナップショットは、データ自体ではなく、データのデータ情報(データの記述情報、および位置情報を含む)を格納する。データは、常に更新されるので、時間間隔毎に、ROスナップショットが現在のデータの記述情報および位置情報に基づいて作成され、他方、書込み可能スナップショットが、データに対する現在の変更に基づいて作成される。
[0026] 図1を参照すると、例示的な実施形態に従った方法は、以下を含む:
[0027] ステップ101、データ変更に基づいて書込み可能スナップショットを作成すること。
[0028] 具体的には、書込み可能スナップショットを作成することは、以下を含む:
[0029] ステップA、最新の作成時間をもつROスナップショットを決定すること;
[0030] ステップB、決定されたROスナップショット内のデータ情報を予め設定されたスナップショットに複製すること;
[0031] ステップC、予め設定されたスナップショット内で変更すべきデータの位置を決定して、データを変更し、データ変更に基づいて予め設定されたスナップショット内のデータ情報を更新すること;および
[0032] ステップD、予め設定されたスナップショット内の更新されたデータ情報に基づいて書込み可能スナップショットを作成すること。
[0033] 説明のための例として、初めは1つのクラス内に30人の学生がおり、各学生はデータ項目に対応する。学生情報(記述情報および位置情報を含む)に基づいてROスナップショットが作成される。最新の作成時間をもつROスナップショット、例えば、ROスナップショット1は、例えば、名前、性別、年齢、民族、およびクラス内での彼らの位置情報を含む、30人の学生の記述情報を格納する。例えば、位置情報は行2、座席2であり得る。
[0034] クラスに加わる新しい学生がいる場合、ROスナップショット1内のデータ(30人の学生の情報を有する)が、予め設定された空のスナップショットに複製される。複製後、新しい学生の位置が、予め設定されたスナップショットに基づいて決定され、その決定された位置に基づいて新しい学生が配置される。実際には、データが変更されるので、書込み可能スナップショットが変わる。書込み可能スナップショットは、最新の作成時間をもつROスナップショットを複製した後の予め設定されたスナップショットである。予め設定されたスナップショットに基づいて31番目の学生の位置を決定し、次いで31番目の学生を配置した後、予め設定されたスナップショットがそれに応じて変更されて、最終的な書込み可能スナップショットは、31人の学生の記述情報および彼らの対応する位置を含む。書込み可能スナップショット内に格納されたデータ情報は、最新のデータに対応する。
[0035] 後続のデータ照会では、全ての照会が、ROスナップショット(例えば、図2に示すような、RO−SNAP1、RO−SNAP2、およびRO−SNAP3)の任意の1つに関して実行できる。異なるROスナップショットは異なる時間のデータに対応するので、ROスナップショットを用いると、最新のデータの状態または履歴データの状態が、他のROスナップショットにおける照会、または書込み可能スナップショットの作成に影響を及ぼすことなく、照会され得る。さらに、1つ以上のデータ照会が実施されている間に、データが変更でき、従って、効率的なデータ照会および変更を可能にする。
[0036] 現在のデータの情報が照会される場合、照会は、好ましくは、最新のROスナップショット(新しいほど、その中のデータが新しい)に基づき得る。1つの書込み可能スナップショットしかなく、それは、全てのリアルタイムデータ変更に基づいて更新される。図2に示すように、最新のROスナップショットRO−SNAP3に基づいて、新しいデータ項目4を挿入する必要がある場合、最終的な書込み可能スナップショットが作成され、WR−DATAは、RO−SNAP3内の3つのデータ項目、および新しいデータ項目4を含む。前述の説明に制限されない、ROスナップショットおよび書込み可能スナップショットを指定する他の方法があることが予期される。全てのスナップショットはその中に、以前のスナップショット内のデータのデータ情報(記述情報および位置情報を含む)、および以前のスナップショットと比較して追加されたデータを格納する。実際のデータが1セットしかなく、そのため、記憶空間が効率的に削減できる。予め設定された時間間隔(例えば、60秒毎)で、現在の書込み可能スナップショットを複製することによりROスナップショットが自動的に作成され得、例えば、RO−SNAP4が、書込み可能スナップショットWR−DATAを複製することによって作成され得る。データ照会要求が受信されると、照会が、ROスナップショットにだけ基づいて実施され得、それは、最新の作成時間をもつROスナップショットまたは、他の履歴時間に作成された他のROスナップショットであり得る。
[0037] 具体的には、ROスナップショットの構造は、データがデータ列に格納される、書込み可能スナップショットの構造と一致し得る。全ての列は、1つ以上のデータブロックを含み得、各データブロックは、2列(idおよびname)をもつテーブルの記憶構造である、図3に示すような、同じ数のデータサブブロックを有する。全ての列は、3つのブロックを有する。「削除ビットセット」は、対応する行内のデータが削除されているかどうかを表すラベルである。特定の適用シナリオでは。対応するデータの状態を表すために、実際の必要性に従って、他のデータラベルが設定され得ることが予期される。図3では、スナップショット内に4レコードがある(1,“one”)、(2,“two”)、(3,“three”)、(4,“four”)。確かに、前述したもの以外に、例えば、学生数、対応する学生の名前、身長、体重など、他のデータレコードがあり得る。
[0038] 具体的には、データ変更は:挿入、更新、および削除を含み得る。これを考慮して、ステップC−予め設定されたスナップショット内で変更すべきデータの位置を決定して、データを変更し、データ変更に基づいて予め設定されたスナップショット内のデータ情報を更新すること−は、以下を含み得る:
[0039] (1)データを挿入する必要がある場合、予め設定されたスナップショット内でデータを挿入すべきデータサブブロックを決定して、記憶空間内のその決定されたデータサブブロックに対応する位置にデータを挿入し、挿入されたデータのデータ情報に基づいて予め設定されたスナップショット内のデータ情報を更新すること。
[0040] データ「挿入」プロセス中、「テーブル(id,name)への値(5,”five”)のSQL挿入」を実行した後、すなわち、データ項目5の挿入後、スナップショットの記憶構造が変更され得る。図4は、スナップショットの記憶構造内でのかかる変更を示す。予め設定されたスナップショット、すなわち、初期書込み可能スナップショットが、データが挿入されるデータサブブロックの位置を決定するために使用され、例えば、それは、データサブブロック1内の位置1と決定され得る。実際のデータの挿入プロセスでは、プロセッサは、実際のデータがデータ記憶空間内で格納される位置を見つけ得る。位置は、書込み可能スナップショット内の決定された位置(例えば、データサブブロック1内の位置1)に対応する。プロセッサは、次いで、実際のデータが格納される決定された位置内にデータを挿入し得る。同時に、書込み可能スナップショットが、データ挿入に基づき、それに応じて更新され得る。他のデータ変更プロセスもこれと同様である。
[0041] (2)データを削除する必要がある場合、削除すべきデータが存在するデータサブブロックを決定し、データ記憶空間内の決定されたデータサブブロックの位置に対応する位置内のデータを削除して、削除すべきデータが存在する決定されたデータサブブロックのデータラベルを、予め設定されたスナップショット内で「削除」と変更すること。
[0042] データ「削除」のプロセス中、「id=2のテーブルからのSQL削除」、すなわち、データ項目2の削除、を実行することは、データ項目2を実際に削除することなく、ビットマップの2番目の行を1と印を付けるだけで行われ得、このようにして、他のデータに影響を及ぼすのを回避する。作成された書込み可能スナップショットの構造は図5に示す通りである。
[0043] (3)データを更新する必要がある場合、更新すべきデータが存在するデータブロックを決定して、決定されたデータブロックを複製し、複製されたデータブロック内で更新すべきデータが存在するデータサブブロックを決定して、データ記憶空間内の決定されたデータサブブロックに対応する位置内のデータを更新し、更新されたデータブロックを作成して、予め設定されたスナップショット内の対応するデータブロックを更新されたデータブロックで置き換えること。
[0044] データ「更新」のプロセス中、「id=3のテーブルセットname=“san”のSQL更新」、すなわち、データ項目3の更新、を実行する場合、プロセッサは、データ項目3がデータブロック1(それぞれ、one、two、threeに対応する、データ1、データ2、およびデータ3を含む)内にあると判断して、データブロック1をコピーし、新しくコピーしたデータブロックの3番目の行を「san」と設定して、データブロック1を更新されたデータブロック1で置き換え得る。作成された書込み可能スナップショットの記憶構造が図6に示されている。
[0045] ステップ102:書込み可能スナップショットを所定の時間に複製することによって新しいROスナップショットを作成すること。
[0046] 特定のプロセスは、図2に示す通りであり得、すなわち、複製によってコピーを作成する。
[0047] ステップ103:データ照会要求を受信すると、最新の作成時間をもつスナップショットにおいて、インデックス化を通してデータ照会を実施すること。
[0048] 具体的には、データ照会は、データ照会要求が受信された場合に実施され得るか、または前述のようなデータ処理中に、処理が必要な位置を見つける場合にデータ照会を実施する。データブロック内に格納された複数のデータ項目が数値を含む場合、照会は次の2つの方法で実施され得る:
[0049] 方法1:
[0050] データ照会要求を受信すると、データ照会要求に基づいて、照会されているデータの数値を決定すること;
[0051] 最新の作成時間をもつROスナップショット、および決定されたROスナップショット内のデータブロックを決定し、各データブロック内のデータの数値範囲を決定すること;
[0052] 照会されているデータの数値が数値範囲内に含まれるかどうかの決定に基づいて、各データブロックをスクリーニングすること;
[0053] スクリーニングされたデータブロックをスキャンして、数値照合を実施することにより、データ照会を完了すること。
[0054] 具体的には、各データブロックに関して、データブロックの最大値および最小値を記録して、等価および範囲(equivalence and range)照会を実施する。等価および範囲がデータブロックの最大値および最大値と重なり合う場合に限り、データブロックがスキャンされ;重なり合いがない場合、それぞれのデータブロックはスキップされ得、従って、照会効率が向上する。
[0055] 例えば、列「id」内の第1のデータブロックの最大値は3であり、最小値は1である。照会SQLが「id=2の場合テーブルから*を選択する」の場合、2は範囲[1,3]内であるので、このデータブロックがスキャンされて、探索結果は(2,“two”)であろう;
[0056] 別の例について、照会SQLが「id=4の場合テーブルから*を選択する」の場合、4は範囲[1,3]内ではないので、このデータブロックは要件を満足していないと判断され得、スキップできる;
[0057] さらに、照会SQLが「idが2〜4の間の場合テーブルから*を選択する」の場合、[2,4]と[1,3]との間に重なり合いがあるので、データブロック[1,3]がスキャンされて、探索結果は(2,“two”)、(3,“three”)であろう;
[0058] 照会SQLが「idが4〜5の間の場合テーブルから*を選択する」の場合、[4,5]と[1,3]との間に重なり合いがないので、このデータブロックは要件を満足していないと判断され得、スキップされ得る。
[0059] 方法2:
[0060] データ照会要求を受信すると、データ照会要求に基づいて、照会されているデータの数値を決定すること;
[0061] 各データブロック内のデータの数値に基づいて、データが数値順になっているデータシーケンスを作成すること;
[0062] 二分探索および照会されているデータの数値を使用してデータシーケンス内を探索することにより、データ照会を完了すること。
[0063] 具体的には、方法2では、「各データブロック内のデータの数値に基づいて、データが数値順になっているデータシーケンスを作成すること」は、以下を含み得る:
[0064] 各データブロック内のデータに対して逆インデックスを作成することにより、データが数値昇順になっているデータシーケンスを作成すること;
[0065] 具体的には、頻繁に探索されるデータ列に関して、方法1における高速インデックス化を使用すると、全てのデータブロックを除外するとは限らない可能性があり、各データブロックに対して高速逆インデックスを作成する必要があり得る。逆インデックスは、ブロックサイズの長さをもつ数値配列である。配列の「i」番目の値は、昇順に配列されたブロック内の要素の位置を表す。
[0066] 図7に示すように、データブロック内に格納されたデータは、順に、13、16、14、1、12である。順番に配列されて、13が最初の位置をとって、位置0に配置され、残りはそれぞれ、16−1、14−2、1−3、12−4である。最小数値はブロック内でデータ項目1であり、それは、位置3に対応し、第2のものはデータ項目12(位置4に対応する)、第3はデータ項目13(位置0に対応する)、第4はデータ項目14(位置2に対応する)、および最大値は16である(位置1に対応する)。逆インデックスが前述に基づいて作成される。逆インデックス内の各要素を調べ、要素をインデックスとして使用してブロック値を読み取ると、順序付けされたシーケンスが取得される。図7に示すように、逆インデックス内の1番目の値は3である。1をブロック内の(0から始まる)3番目の要素から読み取ることができる。同様に、逆インデックス内の2番目の値は4である。従って、12をブロック内の4番目の要素から読み取ることができる。残りも同じ方法で取得され得る。順序付けされたシーケンスが、その結果、取得され得る:1、12、13、14、16。順序付けされたシーケンスに対して、二分探索が使用され得、等価または範囲照会が実施され得る。
[0067] 具体的には、二分探索に関して、例えば、データ1〜100がデータブロック内に格納されていて、照会されているデータは23である。まず、1〜100の中央値−50が探索され得る。中央値50が23と比較され得る。50は23よりも大きいので、探索が継続され得、1〜50の中央値が23と比較され得る。これは探索効率を向上し得る。
[0068] 本発明をさらに説明するため、本出願は、複数のROスナップショットおよび1つの書込み可能スナップショットを有し、ROスナップショットの作成時間が異なっている、データ記憶システムに対して使用されるデータ処理装置も提供する。図8に示すように、本明細書で開示する1つのデータ処理装置は、以下を備える:
[0069] 第1の作成モジュール801:データ変更に基づいて書込み可能スナップショットを作成するために使用される;
[0070] 第2の作成モジュール802:書込み可能スナップショットを所定の時間に複製することによって複数の新しいROスナップショットを作成するために使用される;および
[0071] 照会モジュール803:データ照会要求を受信すると、最新の作成時間をもつROスナップショットにおいて、インデックス化を通してデータ照会を実施するために使用される。
[0072] 具体的には、ROスナップショットの構造は、書込み可能スナップショットの構造と一致し得、データがデータ列に格納されて、各列は、1つ以上のデータブロックを含み、各データブロックは、同じ数のデータサブブロックを含む。
[0073] 任意選択として、第1の作成モジュール801は、以下のために使用され得る:
[0074] 最新の作成時間をもつROスナップショットを決定すること;
[0075] 決定されたROスナップショット内のデータ情報を予め設定されたスナップショットに複製すること;
[0076] 予め設定されたスナップショット内で変更すべきデータの位置を決定して、データを変更し、データ変更に基づいて予め設定されたスナップショット内のデータ情報を更新すること;および
[0077] 予め設定されたスナップショット内の更新されたデータ情報に基づいて書込み可能スナップショットを作成すること。
[0078] 具体的には、データ変更は:データを挿入すること、データを削除すること、およびデータを更新することを含む。
[0079] 第1の作成モジュール801による「予め設定されたスナップショット内で変更すべきデータの位置を決定して、データを変更し、データ変更に基づいて予め設定されたスナップショット内のデータ情報を更新すること」のステップは、以下を含む:
[0080] データを挿入する必要がある場合、挿入すべきデータが予め設定されたスナップショット内で格納されるデータサブブロックを決定して、データ記憶空間内のその決定されたデータサブブロックに対応する位置にデータを挿入し、挿入されたデータのデータ情報に基づいて予め設定されたスナップショット内のデータ情報を更新すること;
[0081] データを削除する必要がある場合、削除すべきデータが存在するデータサブブロックを決定し、データ記憶空間内の決定されたデータサブブロックに対応する位置内のデータを削除して、削除すべきデータが存在する決定されたデータサブブロックを、予め設定されたスナップショット内で「削除」とラベル付けすること;
[0082] データを更新する必要がある場合、更新すべきデータが存在するデータブロックを決定して、決定されたデータブロックを複製し、複製されたデータブロック内で更新すべきデータが存在するデータサブブロックを決定して、データ記憶空間内の決定されたデータサブブロックに対応する位置内のデータを更新し、更新されたデータブロックを作成して、予め設定されたスナップショット内の対応するデータブロックを、更新されたデータブロックで置き換えること。
[0083] 具体的には、データブロック内に格納された複数のデータ項目は数値を含み得る。
[0084] 照会モジュール803は以下のために使用され得る:
[0085] データ照会要求を受信すると、データ照会要求に基づいて、照会されているデータの数値を決定すること;
[0086] 最新の作成時間をもつROスナップショット、および予め設定されたスナップショット内のデータブロックを決定し、各データブロック内のデータの数値範囲を決定すること;
[0087] 照会されているデータの数値が数値範囲内に含まれるかどうかの決定に基づいて、各データブロックをスクリーニングすること;ならびに
[0088] スクリーニングされたデータブロックをスキャンして、数値照合を実施することにより、データ照会を完了すること。
[0089] 代替として、データブロック内に格納された複数のデータ項目は、数値を含み得る。
[0090] 照会モジュール803は、以下のために使用され得る:
[0091] データ照会要求を受信すると、データ照会要求に基づいて、照会されているデータの数値を決定すること;
[0092] 各データブロック内のデータの数値に基づいて、データが数値順になっているデータシーケンスを作成すること;
[0093] 二分探索および照会されているデータの数値を使用してデータシーケンス内で探索して、データ照会を完了すること。
[0094] 任意選択として、照会モジュール803による「各データブロック内のデータの数値に基づいて、データが数値順になっているデータシーケンスを作成すること」のステップは、以下を含み得る:
[0095] 各データブロック内のデータに対して逆インデックスを作成することにより、データが数値昇順になっているデータシーケンスを作成すること。
[0096] 本出願のいくつかの実施形態は:データ変更に基づいて書込み可能スナップショットを作成すること;書込み可能スナップショットを所定の時間に複製することによって新しいROスナップショットを作成すること;およびデータ照会要求を受信すると、最新の作成時間をもつROスナップショットにおいて、インデックス化を通してデータ照会を実施することを提供する。このアプローチは、データ変更とデータ照会の分離を達成し、それは、効率的なリアルタイム更新を改善する。さらに、高速インデックス化および逆インデックス化を利用することにより、照会効率がさらに改善される。
[0097] 本出願の実施態様は、専用装置が前述の機能を実行できるようにするために、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せを使用して、実装され得る。本明細書で説明する1つ以上のステップ、操作、機能、およびモジュールは、1つ以上のメモリ装置内に格納されたソフトウェア命令またはコードによって実装されて、1つ以上のハードウェアプロセッサ装置によって実行され得る。例示的なハードウェアプロセッサ装置は、データ処理および/または論理演算を実行するために構成または作成された論理ゲート回路、特定の機能を実行するために設計および作成された集積回路(IC)、プログラマブルゲートアレイ(PGA)、フィールドプログラマブルゲートアレイ(FPGA)などを含む。
[0098] さらに、1つ以上のコンピュータ可読記憶媒体が、本開示と一致する実施形態の実装において利用され得る。コンピュータ可読記憶媒体は、プロセッサによって可読な情報またはデータがその上に格納され得る、任意のタイプの物理および/または非一時的メモリを指す。従って、コンピュータ可読記憶媒体は、本明細書で説明する実施形態と一致するステップまたはステージをプロセッサ(複数可)に実行させるための命令を含む、1つ以上のプロセッサによって実行するための命令を格納し得る。用語「コンピュータ可読媒体」は、有形品目を含み、搬送波および過渡信号を除外する、すなわち、持続的であると理解すべきである。例には、RAM、ROM、揮発性メモリ、不揮発性メモリ、ハードドライブ、CD ROM、DVD、フラッシュドライブ、フラッシュメモリ、キャッシュ、レジスタ、ディスク、および任意の他の既知の記憶媒体を含む。
[0099] 当業者は、図面はいくつかの例示的および説明的な実施形態を説明するだけであること、ならびに図面中のモジュール/プロセスは実際の実施態様において任意選択であり得ることを理解し得る。
[0100] 当業者は、例示的な実施形態におけるモジュールは、前述したような方法で構成され得るか、または変更されて、1つ以上の装置内にインストールされ得ることを理解し得る。例えば、複数の機能モジュールが単一の物理装置に組み込まれ得るか、または別個の物理装置で提供され得る。当業者は、前述した複数のモジュールが1つのモジュールとして組み合わされ得、前述したモジュールの各々が複数のサブモジュールにさらに分割され得ることも理解するであろう。
[0101] 前述した例示的な実施形態の順番は、説明のために過ぎず、ある実施形態の優位性を表していない。
[0102] 本発明は、上で説明して、添付の図面に示す、正確な構造に制限されないこと、および様々な修正および変更を、その範囲から逸脱することなく、行うことができると考えられる。本発明の範囲は、添付の請求項によってのみ制限されることを意図する。

Claims (20)

  1. データ記憶システムによって実行されるデータ処理方法であって、
    データ変更に基づいて書込み可能スナップショットを作成することと、
    前記書込み可能スナップショットを別個の所定の作成時間に複製することによって複数の読取り専用(「RO」)スナップショットを作成することと、
    データ照会要求を受信することと、
    最新の作成時間をもつROスナップショットにおいて、インデックス化を通して前記データ照会を実施することと
    を含む、方法。
  2. 前記ROスナップショットが、前記書込み可能スナップショットと同じデータ構造を共有し、前記データ構造がデータをデータ列内に格納し、各データ列は、1つ以上のデータブロックを含み、各データブロックは同じ数のデータサブブロックを含む、請求項1に記載の方法。
  3. データ変更に基づいて書込み可能スナップショットを作成するステップが、
    前記最新の作成時間をもつ前記ROスナップショットを決定することと、
    前記決定されたROスナップショットと関連付けられたデータ情報を予め設定されたスナップショット内に複製することと、
    前記予め設定されたスナップショット内で対象データの位置を決定することと、
    前記対象データを変更することと、
    前記変更された対象データに基づいて、前記予め設定されたスナップショットと関連付けられたデータ情報を更新することと、
    前記更新されたデータ情報に基づいて、前記書込み可能スナップショットを作成することと
    を含む、請求項1または請求項2に記載の方法。
  4. 前記データ変更がデータを挿入することを含み、かつ
    前記方法は、
    前記対象データが前記予め設定されたスナップショット内で格納されるデータサブブロックを決定することと、
    データ記憶空間内の前記決定されたデータサブブロックに対応する位置に前記対象データを挿入することと、
    前記挿入されたデータのデータ情報に基づいて前記予め設定されたスナップショットと関連付けられた前記データ情報を更新することと
    をさらに含む、請求項3に記載の方法。
  5. 前記データ変更がデータを削除することを含み、かつ
    前記方法は、
    前記対象データが前記予め設定されたスナップショット内で格納されるデータサブブロックを決定することと、
    データ記憶空間内の前記決定されたデータサブブロックに対応する位置内の前記対象データを削除することと、
    削除すべき前記予め設定されたスナップショット内の前記決定されたデータサブブロックに対応するデータラベルを変更することと
    をさらに含む、請求項3に記載の方法。
  6. 前記データ変更がデータを更新することを含み、かつ
    前記方法は、
    前記対象データが前記予め設定されたスナップショット内で格納されるデータブロックを決定することと、
    前記決定されたデータブロックを複製することと、
    前記対象データが前記複製されたデータブロック内で格納されるデータサブブロックを決定することと、
    データ記憶空間内の前記決定されたデータサブブロックに対応する位置内の前記対象データを更新することと、
    更新されたデータブロックを作成することと、
    前記予め設定されたスナップショット内の対応するデータブロックを前記更新されたデータブロックで置き換えることと
    をさらに含む、請求項3に記載の方法。
  7. 前記データブロック内に格納された複数のデータ項目が数値を含み、かつ
    前記データ照会をインデックス化を通して実施することが
    前記データ照会要求に基づいて、照会されているデータの数値を決定することと、
    前記最新の作成時間をもつ前記ROスナップショットを決定することと、
    前記決定されたROスナップショット内の各データブロックの数値範囲を決定することと、
    照会されている前記データの前記数値が前記数値範囲内であるかどうかの決定に基づいて、各データブロックをスクリーニングすることと、
    前記スクリーニングされたデータブロックをスキャンし、データ照合を実行して、データ照会を完了することと
    をさらに含む、請求項2に記載の方法。
  8. 前記データブロック内に格納された複数のデータ項目が数値を含み、かつ
    前記データ照会を実施することが、
    前記データ照会要求に基づいて、照会されているデータの数値を決定することと、
    データが数値順になっている、各データブロック内のデータのデータシーケンスを作成することと、
    二分探索および照会されている前記データの前記数値を使用して、前記データシーケンス内で探索して、前記データ照会を完了することと
    をさらに含む、請求項2に記載の方法。
  9. データシーケンスを作成することが、
    各データブロック内の前記データを逆インデックス化することにより、データが数値昇順になっているデータシーケンスを作成すること
    をさらに含む、請求項8に記載の方法。
  10. データ記憶システムに対して使用されるデータ処理装置であって、
    データ変更に基づいて書込み可能スナップショットを作成するために使用される、第1の作成モジュールと、
    前記書込み可能スナップショットを別個の所定の作成時間に複製することによって複数のROスナップショットを作成するために使用される、第2の作成モジュールと、
    データ照会要求を受信することと、最新の作成時間をもつROスナップショットにおいて、インデックス化を通して前記データ照会を実施することとのために使用される、照会モジュールと
    を備える、データ処理装置。
  11. 前記ROスナップショットが、前記書込み可能スナップショットと同じデータ構造を共有し、前記データ構造がデータをデータ列内に格納し、各データ列は、1つ以上のデータブロックを含み、各データブロックは同じ数のデータサブブロックを含む、請求項10に記載の装置。
  12. 前記第1の作成モジュールが、
    前記最新の作成時間をもつ前記ROスナップショットを決定することと、
    前記決定されたROスナップショットと関連付けられたデータ情報を予め設定されたスナップショット内に複製することと、
    前記予め設定されたスナップショット内で対象データの位置を決定することと、
    前記対象データを変更することと、
    前記変更された対象データに基づいて、前記予め設定されたスナップショットと関連付けられたデータ情報を更新することと、
    前記更新されたデータ情報に基づいて、前記書込み可能スナップショットを作成することと
    を行うために使用される、請求項10または請求項11に記載の装置。
  13. 前記データ変更がデータを挿入することを含み、かつ
    前記第1の作成モジュールが、
    前記対象データが前記予め設定されたスナップショット内で格納されるデータサブブロックを決定することと、
    データ記憶空間内の前記決定されたデータサブブロックに対応する位置に前記対象データを挿入することと、
    前記挿入されたデータのデータ情報に基づいて前記予め設定されたスナップショットと関連付けられた前記データ情報を更新することと
    を行うためにさらに使用される、請求項12に記載の装置。
  14. 前記データ変更がデータを削除することを含み、かつ
    前記第1の作成モジュールが、
    前記対象データが前記予め設定されたスナップショット内で格納されるデータサブブロックを決定することと、
    データ記憶空間内の前記決定されたデータサブブロックに対応する位置内の前記対象データを削除することと、
    削除される前記予め設定されたスナップショット内の前記決定されたデータサブブロックに対応するデータラベルを変更することと
    を行うためにさらに使用される、請求項12に記載の装置。
  15. 前記データ変更がデータを更新することを含み、かつ
    前記第1の作成モジュールが、
    前記対象データが前記予め設定されたスナップショット内で格納されるデータブロックを決定することと、
    前記決定されたデータブロックを複製することと、
    前記対象データが前記複製されたデータブロック内で格納されるデータサブブロックを決定することと、
    データ記憶空間内の前記決定されたデータサブブロックに対応する位置内の前記対象データを更新することと、
    更新されたデータブロックを作成することと、
    前記予め設定されたスナップショット内の対応するデータブロックを前記更新されたデータブロックで置き換えることと
    を行うためにさらに使用される、請求項12に記載の装置。
  16. 前記データブロック内に格納された複数のデータ項目が数値を含み、かつ
    前記照会モジュールが、
    前記データ照会要求に基づいて、照会されているデータの数値を決定することと、
    前記最新の作成時間をもつ前記ROスナップショットを決定することと、
    前記決定されたROスナップショット内の各データブロックの数値範囲を決定することと、
    照会されている前記データの前記数値が前記数値範囲内であるかどうかの決定に基づいて、各データブロックをスクリーニングすることと、
    前記スクリーニングされたデータブロックをスキャンし、データ照合を実行して、データ照会を完了することと
    を行うためにさらに使用される、請求項11に記載の装置。
  17. 前記データブロック内に格納された複数のデータ項目が数値を含み、かつ
    前記照会モジュールが、
    前記データ照会要求に基づいて、照会されているデータの数値を決定することと、
    データが数値順になっている、各データブロック内のデータのデータシーケンスを作成することと、
    二分探索および照会されている前記データの前記数値を使用して、前記データシーケンス内で探索して、前記データ照会を完了することと
    を行うためにさらに使用される、請求項11に記載の装置。
  18. データシーケンスを作成することが、
    各データブロック内の前記データを逆インデックス化することにより、データが数値昇順になっているデータシーケンスを作成すること
    をさらに含む、請求項17に記載の装置。
  19. 命令のセットを格納する非一時的コンピュータ可読媒体であって、前記命令のセットは、データ記憶システムにデータ処理のための方法を実行させるために、前記データ記憶システムの少なくとも1つのプロセッサによって実行可能であり、前記方法が、
    データ変更に基づいて書込み可能スナップショットを作成することと、
    前記書込み可能スナップショットを別個の所定の作成時間に複製することによって複数の読取り専用(「RO」)スナップショットを作成することと、
    データ照会要求を受信することと、
    最新の作成時間をもつROスナップショットにおいて、インデックス化を通して前記データ照会を実施することと
    を含む、非一時的コンピュータ可読媒体。
  20. データ変更に基づいて書込み可能スナップショットを作成するステップが、
    前記最新の作成時間をもつ前記ROスナップショットを決定することと、
    前記決定されたROスナップショットと関連付けられたデータ情報を予め設定されたスナップショット内に複製することと、
    前記予め設定されたスナップショット内で対象データの位置を決定することと、
    前記対象データを変更することと、
    前記変更された対象データに基づいて、前記予め設定されたスナップショットと関連付けられたデータ情報を更新することと、
    前記更新されたデータ情報に基づいて、前記書込み可能スナップショットを作成することと
    を含む、請求項19に記載の非一時的コンピュータ可読媒体。
JP2018519365A 2015-11-04 2016-11-04 データ処理のための方法および装置 Active JP6820918B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201510742561.3A CN106649412B (zh) 2015-11-04 2015-11-04 一种数据处理方法和设备
CN201510742561.3 2015-11-04
PCT/US2016/060616 WO2017079619A1 (en) 2015-11-04 2016-11-04 Method and apparatus for data processing

Publications (3)

Publication Number Publication Date
JP2018538596A true JP2018538596A (ja) 2018-12-27
JP2018538596A5 JP2018538596A5 (ja) 2019-12-05
JP6820918B2 JP6820918B2 (ja) 2021-01-27

Family

ID=58634764

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018519365A Active JP6820918B2 (ja) 2015-11-04 2016-11-04 データ処理のための方法および装置

Country Status (5)

Country Link
US (1) US10789226B2 (ja)
EP (1) EP3371692A4 (ja)
JP (1) JP6820918B2 (ja)
CN (1) CN106649412B (ja)
WO (1) WO2017079619A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107291883B (zh) * 2017-06-20 2020-09-18 苏州浪潮智能科技有限公司 一种分布式存储系统的快照方法及装置
CN107330031B (zh) * 2017-06-26 2020-07-07 广州华多网络科技有限公司 一种数据存储的方法、装置及电子设备
CN108959548B (zh) * 2018-07-02 2023-04-18 创新先进技术有限公司 业务请求的处理方法及装置
CN110109894B (zh) * 2019-03-22 2021-08-20 新奥特(北京)视频技术有限公司 非关系型数据库的实现方法、装置、存储介质和设备
CN110008067B (zh) * 2019-04-15 2020-07-07 苏州浪潮智能科技有限公司 一种可写快照链式克隆的方法、装置及分布式存储系统
CN112951437B (zh) * 2019-12-11 2023-08-08 北京懿医云科技有限公司 医疗数据管理方法、装置、存储介质与电子设备

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5920873A (en) 1996-12-06 1999-07-06 International Business Machines Corporation Data management control system for file and database
US7457982B2 (en) * 2003-04-11 2008-11-25 Network Appliance, Inc. Writable virtual disk of read-only snapshot file objects
US7555504B2 (en) * 2003-09-23 2009-06-30 Emc Corporation Maintenance of a file version set including read-only and read-write snapshot copies of a production file
US7587563B1 (en) * 2006-07-11 2009-09-08 Network Appliance, Inc. Method and system to make a read-only file system appear to be writeable
US8296398B2 (en) 2008-04-29 2012-10-23 Overland Storage, Inc. Peer-to-peer redundant file server system and methods
US8489930B1 (en) * 2010-01-20 2013-07-16 Instavia Software, Inc. Method and system for creating virtual editable data objects by using a read-only data set as baseline
US8600939B2 (en) * 2011-10-24 2013-12-03 Oracle International Corporation Writable snapshots
IN2014DN05723A (ja) 2011-12-23 2015-04-10 Univ Arizona State
US9710475B1 (en) * 2012-07-16 2017-07-18 Tintri Inc. Synchronization of data
US8768977B2 (en) * 2012-07-31 2014-07-01 Hewlett-Packard Development Company, L.P. Data management using writeable snapshots in multi-versioned distributed B-trees
US9146877B2 (en) * 2012-11-29 2015-09-29 Infinidat Ltd. Storage system capable of managing a plurality of snapshot families and method of snapshot family based read
US9311014B2 (en) * 2012-11-29 2016-04-12 Infinidat Ltd. Storage system and methods of mapping addresses of snapshot families
US10311151B2 (en) * 2013-02-21 2019-06-04 Hitachi Vantara Corporation Object-level replication of cloned objects in a data storage system
US9817835B2 (en) * 2013-03-12 2017-11-14 Tintri Inc. Efficient data synchronization for storage containers
CN103473277B (zh) * 2013-08-27 2017-04-05 华为技术有限公司 文件系统的快照方法和装置
CN103761053B (zh) * 2013-12-30 2017-08-25 华为技术有限公司 一种数据处理方法和装置
CN104484471B (zh) * 2014-12-31 2017-09-15 天津南大通用数据技术股份有限公司 一种高性能数据存储引擎的实现方法
US9946604B1 (en) * 2015-02-04 2018-04-17 Tintri Inc. Optimized remote cloning
US9928003B2 (en) * 2015-05-01 2018-03-27 Hewlett Packard Enterprise Development Lp Management of writable snapshots in a network storage device
US10296219B2 (en) * 2015-05-28 2019-05-21 Vmware, Inc. Data deduplication in a block-based storage system

Also Published As

Publication number Publication date
US20170124130A1 (en) 2017-05-04
EP3371692A1 (en) 2018-09-12
WO2017079619A1 (en) 2017-05-11
CN106649412A (zh) 2017-05-10
EP3371692A4 (en) 2018-09-12
JP6820918B2 (ja) 2021-01-27
CN106649412B (zh) 2021-05-04
US10789226B2 (en) 2020-09-29

Similar Documents

Publication Publication Date Title
JP6820918B2 (ja) データ処理のための方法および装置
CN102541757B (zh) 写缓存方法、缓存同步方法和装置
US9183268B2 (en) Partition level backup and restore of a massively parallel processing database
US10585862B2 (en) Efficient data migration with reversible database schema modification
KR20070003577A (ko) 역 계층적 구조를 갖고 있는 파일 시스템
JP2007012058A (ja) フラッシュ様媒体におけるトランザクションレコードを格納するファイルシステム
KR20070003578A (ko) 데이터 무결성의 검증을 지연시킨 파일 시스템
JP2007012054A (ja) ファイルシステム保全の最適化されたスタートアップ認証
US20150248404A1 (en) Database schema migration
CN110109910A (zh) 数据处理方法及系统、电子设备和计算机可读存储介质
CN107391544B (zh) 列式存储数据的处理方法、装置、设备及计算机储存介质
US20170228468A1 (en) Data searching method of database, apparatus and computer program for the same
US8682872B2 (en) Index page split avoidance with mass insert processing
JP2018538596A5 (ja)
US10613988B2 (en) Purging storage partitions of databases
US11249968B2 (en) Large object containers with size criteria for storing mid-sized large objects
US10055442B2 (en) Efficient updates in non-clustered column stores
US20200089776A1 (en) Method for migrating data records from a source database to a target database
CN108073595B (zh) 一种在olap数据库实现数据更新和快照的方法及装置
KR101575639B1 (ko) 지도 서비스를 위한 타일 이미지 갱신 시스템 및 그 방법
AU2018345147B2 (en) Database processing device, group map file production method, and recording medium
CN110019192B (zh) 数据库的检索方法及装置
US20110153674A1 (en) Data storage including storing of page identity and logical relationships between pages
US10452496B2 (en) System and method for managing storage transaction requests
CN113821508B (zh) 一种数组索引的实现方法和系统

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191023

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191023

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200826

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200908

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201201

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210105

R150 Certificate of patent or registration of utility model

Ref document number: 6820918

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250