JP2018511853A - ストレージデバイスにおける論理アドレスのためのデータの前バージョンの管理 - Google Patents
ストレージデバイスにおける論理アドレスのためのデータの前バージョンの管理 Download PDFInfo
- Publication number
- JP2018511853A JP2018511853A JP2017541978A JP2017541978A JP2018511853A JP 2018511853 A JP2018511853 A JP 2018511853A JP 2017541978 A JP2017541978 A JP 2017541978A JP 2017541978 A JP2017541978 A JP 2017541978A JP 2018511853 A JP2018511853 A JP 2018511853A
- Authority
- JP
- Japan
- Prior art keywords
- logical
- checkpoint
- address
- physical
- data
- 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
Links
- 238000013507 mapping Methods 0.000 claims abstract description 176
- 230000004044 response Effects 0.000 claims abstract description 73
- 238000000034 method Methods 0.000 claims abstract description 28
- 238000012545 processing Methods 0.000 claims description 34
- 238000004590 computer program Methods 0.000 claims description 4
- 230000000977 initiatory effect Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- YIWGJFPJRAEKMK-UHFFFAOYSA-N 1-(2H-benzotriazol-5-yl)-3-methyl-8-[2-[[3-(trifluoromethoxy)phenyl]methylamino]pyrimidine-5-carbonyl]-1,3,8-triazaspiro[4.5]decane-2,4-dione Chemical compound CN1C(=O)N(c2ccc3n[nH]nc3c2)C2(CCN(CC2)C(=O)c2cnc(NCc3cccc(OC(F)(F)F)c3)nc2)C1=O YIWGJFPJRAEKMK-UHFFFAOYSA-N 0.000 description 1
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- AFCARXCZXQIEQB-UHFFFAOYSA-N N-[3-oxo-3-(2,4,6,7-tetrahydrotriazolo[4,5-c]pyridin-5-yl)propyl]-2-[[3-(trifluoromethoxy)phenyl]methylamino]pyrimidine-5-carboxamide Chemical compound O=C(CCNC(=O)C=1C=NC(=NC=1)NCC1=CC(=CC=C1)OC(F)(F)F)N1CC2=C(CC1)NN=N2 AFCARXCZXQIEQB-UHFFFAOYSA-N 0.000 description 1
- 230000002155 anti-virotic effect Effects 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 239000012620 biological material Substances 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 229910010272 inorganic material Inorganic materials 0.000 description 1
- 239000011147 inorganic material Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000002070 nanowire Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000011368 organic material Substances 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000011232 storage material Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
- G06F12/1466—Key-lock mechanism
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/062—Securing storage systems
- G06F3/0622—Securing storage systems in relation to access
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1456—Hardware arrangements for backup
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1471—Saving, restoring, recovering or retrying involving logging of persistent data for recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/062—Securing storage systems
- G06F3/0623—Securing storage systems in relation to content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0632—Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/815—Virtual
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1008—Correctness of operation, e.g. memory ordering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7205—Cleaning, compaction, garbage collection, erase control
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Retry When Errors Occur (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
ストレージデバイスにアクセスするために使用される論理アドレスごとに示す論理−物理マッピングを、論理−物理マッピングに提供される物理アドレスとは異なるストレージデバイスの物理アドレスにて、論理アドレスのためのデータの前バージョンが存在するかどうかを示す論理アドレスおよびバージョン情報のための現データを有するストレージデバイスにおける物理アドレスを提供することと、
ターゲット論理アドレスに向けられる書き込みを受信することと、
ターゲット論理アドレスのためのデータの前バージョンが存在しないことを示す論理−物理マッピングに応答して、
・ターゲット物理アドレスと、チェックポイント情報の論理−物理マッピングに示される物理アドレスとに関する情報を含め、
・データの前バージョンが存在することを示すターゲット論理アドレスのためのバージョン情報を更新し、
・ターゲット論理アドレスのための現データを有する物理アドレスとは異なるストレージデバイスの位置のターゲット物理アドレスに書き込みのためのデータを書き込み、
・ターゲット物理アドレスを示すターゲット論理アドレスのための論理−物理マッピングを更新すること
を実行すること
とを備える。
ターゲット論理アドレスのためのデータの前バージョンが存在することを示す論理−物理マッピングに応答して、
・書き込みのためのデータをストレージデバイスのターゲット物理アドレスに書き込むことと、
・チェックポイント情報を更新しないでターゲット物理アドレスを示すターゲット論理アドレスのための論理−物理マッピングを更新すること
を実行することを備えること
を含むことができる。
ホストシステムからのチェックポイントコマンドを処理することに応答して、
・チェックポイント情報を消去し、
・論理アドレスのためのデータの前バージョンがないことを示す論理−物理マッピングの論理アドレスの各々のためにバージョン情報を設定すること
を実行することを備えること
を含むことができる。
・チェックポイントコマンドによって確立されるチェックポイントのためのセキュリティキーを維持することを含み、
ストレージデバイスはチェックポイントに関連する受信コマンドを認証すべくキーを使用することを含むことができる。
データの前バージョンが存在することを示す論理アドレスのためのバージョン情報に応答して、
・論理アドレスのためのチェックポイント情報に示される物理アドレスに対する論理−物理マッピングの論理アドレスのために物理アドレスを設定し、
・データの前バージョンが存在しないことを示すバージョン情報を設定すること
を実行させることを
実行すること
を備えることを含むことができる。
ホストシステムからの差分要求を処理することに応答して、そのバージョン情報が論理アドレスのためのデータが最後のチェックポイント以後に変わったことを示す各論理アドレスに関する情報を戻すこと
を備えることを含むことができる。
ストレージデバイスへのチェックポイントを示すトークンを保存することと、
論理−物理マッピングおよびチェックポイント情報をストレージデバイスに保存することと、
ストレージデバイスの初期化の間に、チェックポイントが存在することを決定すべくトークンを処理することと、
トークンを処理することに応答して、初期化に続いて使用する論理−物理マッピングと、チェックポイント情報とを初期化することと
を含むことができる。
を含むことができる。
現チェックポイントを示さないターゲット論理アドレスのためのバージョン情報に応答して、ターゲット論理アドレスと、ターゲット論理アドレスのためのバージョン情報に示されるチェックポイントのためのチェックポイント情報の論理−物理マッピングに示される物理アドレスとの情報を含むことを備え、バージョン情報を更新することは、ターゲット論理アドレスのためのバージョン情報の現チェックポイントを示すことを有することを含むことができる。
チェックポイント情報が維持される複数のチェックポイントの1つを有する選択チェックポイントの現データを復元する復元コマンドを受信することと、
論理−物理マッピングの論理アドレスiごとに
論理アドレスiのためのバージョン情報が選択チェックポイントより大きいときの現バージョンチェックポイントに応答して、
物理アドレスが選択チェックポイントと現バージョンチェックポイントとの間のチェックポイントのためのチェックポイント情報に参照されない場合に、論理アドレスiのための論理−物理マッピングに示される物理アドレスを解放し、
論理アドレスiのための論理−物理マッピングの物理アドレスを論理アドレスiのための選択チェックポイントのためのチェックポイント情報に示される物理アドレスに更新することと
を実行することを
実行すること
を備えることを含むことができる。
現チェックポイントより前の要求チェックポイントでのターゲット論理アドレスのための現チェックポイントの間にデータを読み取る要求を受信することと、
要求チェックポイントのためのチェックポイント情報がターゲット論理アドレスのための物理アドレスを提供する場合、要求チェックポイントのためのチェックポイント情報のターゲット論理アドレスのために提供される物理アドレスからのデータを戻すことと、
要求チェックポイントのためのチェックポイント情報がターゲット論理アドレスのための物理アドレスを提供しない場合、物理アドレスマッピングからのデータを論理−物理マッピングのターゲット論理アドレスに戻すことと
を備えることを含むことができる。
動作は、
ストレージデバイスにアクセスするために使用される論理アドレスごとに示す論理−物理マッピングを、論理−物理マッピングに提供される物理アドレスとは異なるストレージデバイスの物理アドレスにて、論理アドレスのためのデータの前バージョンが存在するかどうかを示す論理アドレスおよびバージョン情報のための現データを有するストレージデバイスにおける物理アドレスを提供することと、
ターゲット論理アドレスに向けられる書き込みを受信することと、
ターゲット論理アドレスのためのデータの前バージョンが存在しないことを示す論理−物理マッピングに応答して、
・ターゲット物理アドレスと、チェックポイント情報の論理−物理マッピングに示される物理アドレスとに関する情報を含め、
・データの前バージョンが存在することを示すターゲット論理アドレスのためのバージョン情報を更新し、
・ターゲット論理アドレスのための現データを有する物理アドレスとは異なるストレージデバイスの位置のターゲット物理アドレスに書き込みのためのデータを書き込み、および
ターゲット物理アドレスを示すターゲット論理アドレスのための論理−物理マッピングを更新すること
を実行することと
を含む。
ターゲット論理アドレスのためのデータの前バージョンが存在することを示す論理−物理マッピングに応答して、
・ストレージデバイスのターゲット物理アドレスへの書き込みのためのデータを書き込み、
・チェックポイント情報を更新しないでターゲット物理アドレスを示すターゲット論理アドレスのための論理−物理マッピングを更新すること
を実行させることを備えること
を含むことができる。
ホストシステムからのチェックポイントコマンドを処理することに応答して、
・チェックポイント情報を消去し、
・論理アドレスのためのデータの前バージョンがないことを示す論理−物理マッピングの論理アドレスの各々のためにバージョン情報を設定すること
を実行させることを備えること
を含むことができる。
ホストシステムからの復元要求を処理することに応答して、論理−物理マッピングの論理アドレスごとに、
データの前バージョンが存在することを示す論理アドレスのためのバージョン情報に応答して、
・論理アドレスのためのチェックポイント情報に示される物理アドレスに対する論理−物理マッピングの論理アドレスのために物理アドレスを設定し、
・データの前バージョンが存在しないことを示すバージョン情報を設定すること
を実行させることを
実行することを備えること
を含むことができる。
現チェックポイントを示さないターゲット論理アドレスのためのバージョン情報に応答して、ターゲット論理アドレスと、ターゲット論理アドレスのためのバージョン情報に示されるチェックポイントのためのチェックポイント情報の論理−物理マッピングに示される物理アドレスとに関する情報を含めることを備え、バージョン情報を更新することは、ターゲット論理アドレスのためのバージョン情報の現チェックポイントを示すことを有する、ことを備える
ことを含むことができる。
チェックポイント情報が維持される複数のチェックポイントの1つを有する選択チェックポイントの現データを復元する復元コマンドを受信することと、
論理−物理マッピングの論理アドレスiごとに
論理アドレスiのためのバージョン情報が選択チェックポイントより大きいときの現バージョンチェックポイントに応答して、
物理アドレスが選択チェックポイントと現バージョンチェックポイントとの間のチェックポイントのためのチェックポイント情報に参照されない場合に、論理アドレスiのための論理−物理マッピングに示される物理アドレスを解放することを実行することと、
論理アドレスiのための論理−物理マッピングの物理アドレスを論理アドレスiのための選択チェックポイントのためのチェックポイント情報に示される物理アドレスに更新することと
実行することと
を備えることを含むことができる。
ストレージデバイスにアクセスするために使用される論理アドレスごとに示す論理−物理マッピングを、論理−物理マッピングに提供される物理アドレスとは異なるストレージデバイスの物理アドレスにて、論理アドレスのためのデータの前バージョンが存在するかどうかを示す論理アドレスおよびバージョン情報のための現データを有するストレージデバイスにおける物理アドレスを提供する工程と、
ターゲット論理アドレスに向けられる書き込みを受信する工程と、
ターゲット論理アドレスのためのデータの前バージョンが存在しないことを示す論理−物理マッピングに応答して、
・ターゲット物理アドレスと、チェックポイント情報の論理−物理マッピングに示される物理アドレスとに関する情報を含め、
データの前バージョンが存在することを示すターゲット論理アドレスのためのバージョン情報を更新し、
ターゲット論理アドレスのための現データを有する物理アドレスとは異なるストレージデバイスの位置のターゲット物理アドレスに書き込みのためのデータを書き込み、
ターゲット物理アドレスを示すターゲット論理アドレスのための論理−物理マッピングを更新すること
を実行させる工程と
を含む。
書き込みのためのデータをストレージデバイスのターゲット物理アドレスに書き込み、
チェックポイント情報を更新しないでターゲット物理アドレスを示すターゲット論理アドレスのための論理−物理マッピングを更新すること
を実行させる工程を含むことができる。
チェックポイント情報を消去し、
論理アドレスのためのデータの前バージョンがないことを示す論理−物理マッピングの論理アドレスの各々のためにバージョン情報を設定すること
を実行させる工程を含むことができる。
データの前バージョンが存在することを示す論理アドレスのためのバージョン情報に応答して、
論理アドレスのためのチェックポイント情報に示される物理アドレスに対する論理−物理マッピングの論理アドレスのために物理アドレスを設定し、
データの前バージョンが存在しないことを示すバージョン情報を設定すること
を実行させることを
実行する工程を含むことができる。
現チェックポイントを示さないターゲット論理アドレスのためのバージョン情報に応答して、ターゲット論理アドレス情報と、ターゲット論理アドレスのためのバージョン情報に示されるチェックポイントのためのチェックポイント情報の論理−物理マッピングに示される物理アドレスに関する情報を含める工程をさらに含み、バージョン情報を更新する工程は、ターゲット論理アドレスのためのバージョン情報の現チェックポイントを示すことを有することを含むことができる。
論理−物理マッピングの論理アドレスiごとに
論理アドレスiのためのバージョン情報が選択チェックポイントより大きいときの現バージョンチェックポイントに応答して、
・物理アドレスが選択チェックポイントと現バージョンチェックポイントとの間のチェックポイントのためのチェックポイント情報に参照されない場合に、論理アドレスiのための論理−物理マッピングに示される物理アドレスを解放し、
論理アドレスiのための論理−物理マッピングの物理アドレスを論理アドレスiのための選択チェックポイントのためのチェックポイント情報に示される物理アドレスに更新すること
を実行させる工程
を実行することと
を含むことができる。
書き込みのためのデータをストレージデバイスのターゲット物理アドレスに書き込むこと、および
チェックポイント情報を更新しないでターゲット物理アドレスを示すターゲット論理アドレスのための論理−物理マッピングを更新すること
を実行させること;および/または
ホストシステムからのチェックポイントコマンドを処理することに応答して、
チェックポイント情報を消去すること、および
論理アドレスのためのデータの前バージョンがないことを示す論理−物理マッピングの論理アドレスの各々のためにバージョン情報を設定すること
を実行させることを含むことができる;および/または
チェックポイントコマンドによって確立されるチェックポイントのためのセキュリティキーを維持することを含み、ストレージデバイスはチェックポイントに関連する受信コマンドを認証すべくキーを使用する;および/または
ホストシステムからの復元要求を処理することに応答して、論理−物理マッピングの論理アドレスごとに、
データの前バージョンが存在することを示す論理アドレスのためのバージョン情報に応答して、
論理アドレスのためのチェックポイント情報に示される物理アドレスに対する論理−物理マッピングの論理アドレスのために物理アドレスを設定すること、および
データの前バージョンが存在しないことを示すバージョン情報を設定すること
を実行させることを
実行することを含む;および/または
ホストシステムからの差分要求を処理することに応答して、そのバージョン情報が論理アドレスのためのデータが最後のチェックポイント以後に変わったことを示す各論理アドレスに関する情報を戻すこと
をさらに含む;および/または
論理−物理マッピングおよびチェックポイント情報をストレージデバイスに保存することと、
ストレージデバイスの初期化の間に、チェックポイントが存在することを決定すべくトークンを処理することと、
トークンを処理することに応答して、初期化に続いて使用する論理−物理マッピングと、チェックポイント情報とを初期化することとを含む;および/または
現チェックポイントを示さないターゲット論理アドレスのためのバージョン情報に応答して、ターゲット論理アドレスと、ターゲット論理アドレスのためのバージョン情報に示されるチェックポイントのためのチェックポイント情報の論理−物理マッピングに示される物理アドレスとに関する情報を含むことを備え、バージョン情報を更新することは、ターゲット論理アドレスのためのバージョン情報の現チェックポイントを示すことを有する;および/または
チェックポイント情報が維持される複数のチェックポイントの1つを有する選択チェックポイントの現データを復元する復元コマンドを受信することと、
論理−物理マッピングの論理アドレスiごとに
論理アドレスiのためのバージョン情報が選択チェックポイントより大きいときの現バージョンチェックポイントに応答して、
物理アドレスが選択チェックポイントと現バージョンチェックポイントとの間のチェックポイントのためのチェックポイント情報に参照されない場合に、論理アドレスiのための論理−物理マッピングに示される物理アドレスを解放すること、および
論理アドレスiのための論理−物理マッピングの物理アドレスを論理アドレスiのための選択チェックポイントのためのチェックポイント情報に示される物理アドレスに更新すること
を実行させること
を実行することとを含む;および/または
現チェックポイントよりも前の要求チェックポイントでのターゲット論理アドレスのための現チェックポイントの間にデータを読み取る要求を受信することと、
要求チェックポイントのためのチェックポイント情報がターゲット論理アドレスのための物理アドレスを提供する場合、要求チェックポイントのためのチェックポイント情報のターゲット論理アドレスのために提供される物理アドレスからのデータを戻すことと、
要求チェックポイントのためのチェックポイント情報がターゲット論理アドレスのための物理アドレスを提供しない場合、物理アドレスマッピングからのデータを論理−物理マッピングのターゲット論理アドレスに戻すことと
を含むことを有する;および/または
実行される場合、ストレージデバイスに対して動作を実行させるコンピュータプログラム命令を有するコンピュータ可読記憶媒体であって、動作は、
ストレージデバイスにアクセスするために使用される論理アドレスごとに示す論理−物理マッピングを、論理−物理マッピングに提供される物理アドレスとは異なるストレージデバイスの物理アドレスにて、論理アドレスのためのデータの前バージョンが存在するかどうかを示す論理アドレスおよびバージョン情報のための現データを有するストレージデバイスにおける物理アドレスを提供することと、
ターゲット論理アドレスに向けられるホストからの書き込みを受信することと、
ターゲット論理アドレスのためのデータの前バージョンが存在しないことを示す論理−物理マッピングに応答して、
ターゲット物理アドレスと、チェックポイント情報の論理−物理マッピングに示される物理アドレスとに関する情報を含むこと、
データの前バージョンが存在することを示すターゲット論理アドレスのためのバージョン情報を更新すること、
ターゲット論理アドレスのための現データを有する物理アドレスとは異なるストレージデバイスの位置のターゲット物理アドレスに書き込みのためのデータを書き込むこと、および
ターゲット物理アドレスを示すターゲット論理アドレスのための論理−物理マッピングを更新すること
を実行させること
とを含む。
チェックポイント情報が維持される複数のチェックポイントの1つを有する選択チェックポイントの現データを復元する復元コマンドを受信することと、
論理−物理マッピングの論理アドレスiごとに
論理アドレスiのためのバージョン情報が選択チェックポイントより大きいときの現バージョンチェックポイントに応答して、
物理アドレスが選択チェックポイントと現バージョンチェックポイントとの間のチェックポイントのためのチェックポイント情報に参照されない場合に、論理アドレスiのための論理−物理マッピングに示される物理アドレスを解放すること、および
論理アドレスiのための論理−物理マッピングの物理アドレスを論理アドレスiのための選択チェックポイントのためのチェックポイント情報に示される物理アドレスに更新すること
を実行させること
を実行することを含むことを有することができる。
ターゲット論理アドレスに向けられるホストからの書き込みを受信する手段と、
ターゲット論理アドレスのためのデータの前バージョンが存在しないことを示す論理−物理マッピングに応答して、ターゲット物理アドレスと、チェックポイント情報の論理−物理マッピングに示される物理アドレスとに関する情報を含む手段と、
ターゲット論理アドレスのためのデータの前バージョンが存在しないことを示す論理−物理マッピングに応答して、データの前バージョンが存在することを示すターゲット論理アドレスのためのバージョン情報を更新する手段と、
ターゲット論理アドレスのための現データを有する物理アドレスとは異なるストレージデバイスの位置のターゲット物理アドレスに書き込みのためのデータを書き込む手段と、
ターゲット物理アドレスを示すターゲット論理アドレスのための論理−物理マッピングを更新する手段と
を備える。
論理−物理マッピングの論理アドレスiごとに
論理アドレスiのためのバージョン情報が選択チェックポイントより大きいときの現バージョンチェックポイントに応答して、
物理アドレスが選択チェックポイントと現バージョンチェックポイントとの間のチェックポイントのためのチェックポイント情報に参照されない場合に、論理アドレスiのための論理−物理マッピングに示される物理アドレスを解放すること、および
論理アドレスiのための論理−物理マッピングの物理アドレスを論理アドレスiのための選択チェックポイントのためのチェックポイント情報に示される物理アドレスに更新すること
を実行させる手段
を実行する手段と
を含むことができる。
Claims (25)
- 実行される場合、ストレージデバイスに対して動作を実行されるコンピュータプログラム命令を有するコンピュータ可読記憶媒体であって、前記動作は、
前記ストレージデバイスにアクセスするために使用される論理アドレスごとに示す論理−物理マッピングを、前記論理−物理マッピングに提供される物理アドレスとは異なる前記ストレージデバイスの物理アドレスにて、前記論理アドレスのためのデータの前バージョンが存在するかどうかを示す前記論理アドレスおよびバージョン情報のための現データを有する前記ストレージデバイスにおける前記物理アドレスを提供することと、
ターゲット論理アドレスに向けられる書き込みを受信することと、
前記ターゲット論理アドレスのための前記データの前バージョンが存在しないことを示す前記論理−物理マッピングに応答して、
・ターゲット物理アドレスと、チェックポイント情報の前記論理−物理マッピングに示される前記物理アドレスとに関する情報を含め、
・データの前バージョンが存在することを示す前記ターゲット論理アドレスのための前記バージョン情報を更新し、
・前記ターゲット論理アドレスのための前記現データを有する前記物理アドレスとは異なる前記ストレージデバイスの位置のターゲット物理アドレスに前記書き込みのためのデータを書き込み、
・前記ターゲット物理アドレスを示す前記ターゲット論理アドレスのための前記論理−物理マッピングを更新する
を実行させると
を備えるコンピュータ可読記憶媒体。 - 前記動作はさらに、
前記ターゲット論理アドレスのための前記データの前バージョンが存在することを示す前記論理−物理マッピングに応答して、
・前記書き込みのためのデータを前記ストレージデバイスのターゲット物理アドレスに書き込、
・前記チェックポイント情報を更新しないで前記ターゲット物理アドレスを示す前記ターゲット論理アドレスのための前記論理−物理マッピングを更新すること
を実行する手順
を備える、請求項1に記載のコンピュータ可読記憶媒体。 - 前記コンピュータ可読記憶媒体は、前記ストレージデバイスに実装され、ホストシステムは、データインターフェースを通じて前記ストレージデバイスのデータにアクセスし、前記動作はさらに、
前記ホストシステムからのチェックポイントコマンドを処理することに応答して、
・前記チェックポイント情報を消去し、
・前記論理アドレスのためのデータの前バージョンがないことを示す前記論理−物理マッピングの前記論理アドレスの各々のためにバージョン情報を設定することを
実行すること
を備える、請求項1または2に記載のコンピュータ可読記憶媒体。 - 前記コンピュータ可読記憶媒体は、前記ストレージデバイスに実装され、ホストシステムは、データインターフェースを通じて前記ストレージデバイスのデータにアクセスし、前記動作はさらに、さらにチェックポイントコマンドに応答して、
前記チェックポイントコマンドによって確立されるチェックポイントのためのセキュリティキーを維持することを備え、
前記ストレージデバイスは前記チェックポイントに関連する受信コマンドを認証すべく前記セキュリティキーを使用する、
請求項1から3のいずれか一項に記載のコンピュータ可読記憶媒体。 - 前記コンピュータ可読記憶媒体は、前記ストレージデバイスに実装され、ホストシステムは、データインターフェースを通じて前記ストレージデバイスのデータにアクセスし、前記動作はさらに、
前記ホストシステムからの復元要求を処理することに応答して、前記論理−物理マッピングの論理アドレスごとに、
前記データの前バージョンが存在することを示す前記論理アドレスのための前記バージョン情報に応答して、
・前記論理アドレスのための前記チェックポイント情報に示される前記物理アドレスに対する前記論理−物理マッピングの前記論理アドレスのために前記物理アドレスを設定し、
・前記データの前バージョンが存在しないことを示す前記バージョン情報を設定する
ことを
備え、前記実行させること
を備える、請求項1から4のいずれか一項に記載のコンピュータ可読記憶媒体。 - 前記コンピュータ可読記憶媒体は、前記ストレージデバイスに実装され、ホストシステムは、データインターフェースを通じて前記ストレージデバイスのデータにアクセスし、前記動作はさらに、
前記ホストシステムからの差分要求を処理することに応答して、そのバージョン情報が前記論理アドレスのための前記データが最後のチェックポイント以後に変わったことを示す各論理アドレスに関する情報を戻すこと
をさらに備える、請求項1から5のいずれか一項に記載のコンピュータ可読記憶媒体。 - 前記動作はさらに、
前記ストレージデバイスへのチェックポイントを示すトークンを保存することと、
前記論理−物理マッピングおよび前記チェックポイント情報を前記ストレージデバイスに保存することと、
前記ストレージデバイスの初期化の間に、前記チェックポイントが存在することを決定すべく前記トークンを処理することと、
前記トークンを処理することに応答して、前記初期化に続いて使用する前記論理−物理マッピングと、前記チェックポイント情報とを初期化することと
を備える、請求項1から6のいずれか一項に記載のコンピュータ可読記憶媒体。 - 前記動作はさらに、
デフラグメンテーション動作を開始することに応答して、デフラグメンテーションのための候補である前記論理−物理マッピングの物理アドレスのために、前記論理−物理マッピングおよび前記チェックポイント情報のマッピングに含まれない選択物理アドレスを再利用すること
を備える、請求項1から7のいずれか一項に記載のコンピュータ可読記憶媒体。 - 前記書き込みは、複数のチェックポイントの現チェックポイントの間に受信され、前記動作はさらに、
前記現チェックポイントを示さない前記ターゲット論理アドレスのための前記バージョン情報に応答して、前記ターゲット論理アドレスと、前記ターゲット論理アドレスのための前記バージョン情報に示される前記現チェックポイントのための前記チェックポイント情報の前記論理−物理マッピングに示される前記物理アドレスとに関する情報を含めることを備え、前記バージョン情報を前記更新することは、前記ターゲット論理アドレスのための前記バージョン情報の前記現チェックポイントを示すことを有する、
請求項1から8のいずれか一項に記載のコンピュータ可読記憶媒体。 - 前記コンピュータ可読記憶媒体は、前記ストレージデバイスに実装され、ホストシステムは、ストレージデバイスのデータにアクセスし、前記動作はさらに、
チェックポイント情報が維持される複数のチェックポイントの1つを有する選択チェックポイントの現データを復元する復元コマンドを受信することと、
前記論理−物理マッピングの論理アドレスiごとに
前記論理アドレスiのための前記バージョン情報が前記選択チェックポイントより大きいときの現バージョンチェックポイントに応答して、
・前記物理アドレスが前記選択チェックポイントと前記現バージョンチェックポイントとの間のチェックポイントのためのチェックポイント情報に参照されない場合に、前記論理アドレスiのための前記論理−物理マッピングに示される前記物理アドレスを解放し、
・前記論理アドレスiのための前記論理−物理マッピングの前記物理アドレスを前記論理アドレスiのための前記選択チェックポイントのための前記チェックポイント情報に示される前記物理アドレスに更新するを実行することと
を
備える、
請求項1から9のいずれか一項に記載のコンピュータ可読記憶媒体。 - 前記動作はさらに、
現チェックポイントより前の要求チェックポイントでのターゲット論理アドレスのための現チェックポイントの間にデータを読み取る要求を受信することと、
前記要求チェックポイントのための前記チェックポイント情報が前記ターゲット論理アドレスのための物理アドレスを提供する場合、前記要求チェックポイントのための前記チェックポイント情報の前記ターゲット論理アドレスのために提供される前記物理アドレスからのデータを戻すことと、
前記要求チェックポイントのための前記チェックポイント情報が前記ターゲット論理アドレスのための物理アドレスを提供しない場合、物理アドレスマッピングからのデータを前記論理−物理マッピングの前記ターゲット論理アドレスに戻すことと
を備える、請求項1から10のいずれか一項に記載のコンピュータ可読記憶媒体。 - 実行される場合、ストレージデバイスに対して動作を実行させるコンピュータプログラム命令を有するコンピュータ可読記憶媒体を備えるストレージデバイスであって、
前記動作は、
前記ストレージデバイスにアクセスするために使用される論理アドレスごとに示す論理−物理マッピングを、前記論理−物理マッピングに提供される物理アドレスとは異なる前記ストレージデバイスの物理アドレスにて、前記論理アドレスのためのデータの前バージョンが存在するかどうかを示す前記論理アドレスおよびバージョン情報のための現データを有する前記ストレージデバイスにおける前記物理アドレスを提供することと、
ターゲット論理アドレスに向けられる書き込みを受信することと、
前記ターゲット論理アドレスのための前記データの前バージョンが存在しないことを示す前記論理−物理マッピングに応答して、
・ターゲット物理アドレスと、チェックポイント情報の前記論理−物理マッピングに示される前記物理アドレスとに関する情報を含め、
・データの前バージョンが存在することを示す前記ターゲット論理アドレスのための前記バージョン情報を更新し、
・前記ターゲット論理アドレスのための前記現データを有する前記物理アドレスとは異なる前記ストレージデバイスの位置のターゲット物理アドレスに前記書き込みのためのデータを書き込み、
・前記ターゲット物理アドレスを示す前記ターゲット論理アドレスのための前記論理−物理マッピングを更新すること
を実行することと
を備えるストレージデバイス。 - 前記動作はさらに、
前記ターゲット論理アドレスのための前記データの前バージョンが存在することを示す前記論理−物理マッピングに応答して、
・前記ストレージデバイスのターゲット物理アドレスへの前記書き込みのためのデータを書き込み、
・前記チェックポイント情報を更新しないで前記ターゲット物理アドレスを示す前記ターゲット論理アドレスのための前記論理−物理マッピングを更新することと
を実行すること
を備える、請求項12に記載のストレージデバイス。 - ホストシステムは、データインターフェースを通じて前記ストレージデバイスのデータにアクセスし、前記動作はさらに、
前記ホストシステムからのチェックポイントコマンドを処理することに応答して、
・前記チェックポイント情報を消去し、
・前記論理アドレスのためのデータの前バージョンがないことを示す前記論理−物理マッピングの前記論理アドレスの各々のためにバージョン情報を設定すること
を実行すること
を備える、請求項12または13に記載のストレージデバイス。 - ホストシステムは、データインターフェースを通じて前記ストレージデバイスのデータにアクセスし、前記動作はさらに、
前記ホストシステムからの復元要求を処理することに応答して、前記論理−物理マッピングの論理アドレスごとに、
前記データの前バージョンが存在することを示す前記論理アドレスのための前記バージョン情報に応答して、
・前記論理アドレスのための前記チェックポイント情報に示される前記物理アドレスに対する前記論理−物理マッピングの前記論理アドレスのために前記物理アドレスを設定し、
・前記データの前バージョンが存在しないことを示す前記バージョン情報を設定すること
を実行させることを
実行すること
を備える、請求項12から14のいずれか一項に記載のストレージデバイス。 - 前記書き込みが、複数のチェックポイントの現チェックポイントの間に受信され、前記動作はさらに、
前記現チェックポイントを示さない前記ターゲット論理アドレスのための前記バージョン情報に応答して、前記ターゲット論理アドレスと、前記ターゲット論理アドレスのための前記バージョン情報に示される前記現チェックポイントのための前記チェックポイント情報の前記論理−物理マッピングに示される前記物理アドレスとに関する情報を含めることを備え、前記バージョン情報を更新することは、前記ターゲット論理アドレスのための前記バージョン情報の前記現チェックポイントを示すことを有する、
請求項12から15のいずれか一項に記載のストレージデバイス。 - ホストシステムは、前記ストレージデバイスのデータにアクセスし、前記動作はさらに、
チェックポイント情報が維持される複数のチェックポイントの1つを有する選択チェックポイントの現データを復元する復元コマンドを受信することと、
前記論理−物理マッピングの論理アドレスiごとに
前記論理アドレスiのための前記バージョン情報が前記選択チェックポイントより大きいときの現バージョンチェックポイントに応答して、
・前記物理アドレスが前記選択チェックポイントと前記現バージョンチェックポイントとの間のチェックポイントのためのチェックポイント情報に参照されない場合に、前記論理アドレスiのための前記論理−物理マッピングに示される前記物理アドレスを解放することを実行すること
を実行することと、
前記論理アドレスiのための前記論理−物理マッピングの前記物理アドレスを前記論理アドレスiのための前記選択チェックポイントのための前記チェックポイント情報に示される前記物理アドレスに更新することと
を備える、請求項12から16のいずれか一項に記載のストレージデバイス。 - ストレージデバイスへのアクセスを管理するための方法であって、
前記ストレージデバイスにアクセスするために使用される論理アドレスごとに示す論理−物理マッピングを、前記論理−物理マッピングに提供される物理アドレスとは異なる前記ストレージデバイスの物理アドレスにて、前記論理アドレスのためのデータの前バージョンが存在するかどうかを示す前記論理アドレスおよびバージョン情報のための現データを有する前記ストレージデバイスにおける前記物理アドレスを提供する段階と、
ターゲット論理アドレスに向けられる書き込みを受信する段階と、
前記ターゲット論理アドレスのための前記データの前バージョンが存在しないことを示す前記論理−物理マッピングに応答して、
・ターゲット物理アドレスと、チェックポイント情報の前記論理−物理マッピングに示される前記物理アドレスとに関する情報を含め、
・データの前バージョンが存在することを示す前記ターゲット論理アドレスのための前記バージョン情報を更新し、
・前記ターゲット論理アドレスのための前記現データを有する前記物理アドレスとは異なる前記ストレージデバイスの位置のターゲット物理アドレスに前記書き込みのためのデータを書き込み、
・前記ターゲット物理アドレスを示す前記ターゲット論理アドレスのための前記論理−物理マッピングを更新すること
を実行する段階と
を備える方法。 - 前記ターゲット論理アドレスのための前記データの前バージョンが存在することを示す前記論理−物理マッピングに応答して、
・前記書き込みのためのデータを前記ストレージデバイスのターゲット物理アドレスに書き込み、
・チェックポイント情報を更新しないで前記ターゲット物理アドレスを示す前記ターゲット論理アドレスのための前記論理−物理マッピングを更新すること
を実行する段階
をさらに備える、請求項18に記載の方法。 - ホストシステムからのチェックポイントコマンドを処理することに応答して、
前記チェックポイント情報を消去し、
前記論理アドレスのためのデータの前バージョンがないことを示す前記論理−物理マッピングの前記論理アドレスの各々のために前記バージョン情報を設定すること
を実行する段階
をさらに備える、請求項18または19に記載の方法。 - ホストシステムからの復元要求を処理することに応答して、前記論理−物理マッピングの論理アドレスごとに、
前記データの前バージョンが存在することを示す前記論理アドレスのための前記バージョン情報に応答して、
・前記論理アドレスのための前記チェックポイント情報に示される前記物理アドレスに対する前記論理−物理マッピングの前記論理アドレスのために前記物理アドレスを設定し、
・前記データの前バージョンが存在しないことを示す前記バージョン情報を設定すること
を実行すること
を実行する段階をさらに備える、請求項18から20のいずれか一項に記載の方法。 - 前記書き込みは、複数のチェックポイントの現チェックポイントの間に受信され、
前記現チェックポイントを示さない前記ターゲット論理アドレスのための前記バージョン情報に応答して、前記ターゲット論理アドレスと、前記ターゲット論理アドレスのための前記バージョン情報に示されるチェックポイントのための前記チェックポイント情報の前記論理−物理マッピングに示される前記物理アドレスとに関する情報を含める段階をさらに備え、前記バージョン情報を更新する段階は、前記ターゲット論理アドレスのための前記バージョン情報の前記現チェックポイントを示すことを有する、
請求項18から21のいずれか一項に記載の方法。 - チェックポイント情報が維持される複数のチェックポイントの1つを有する選択チェックポイントの現データを復元する復元コマンドを受信する段階と、
前記論理−物理マッピングの論理アドレスiごとに
前記論理アドレスiのための前記バージョン情報が前記選択チェックポイントより大きいときの現バージョンチェックポイントに応答して、
・前記物理アドレスが前記選択チェックポイントと前記現バージョンチェックポイントとの間のチェックポイントのためのチェックポイント情報に参照されない場合に、前記論理アドレスiのための前記論理−物理マッピングに示される前記物理アドレスを解放することを実行すること
を実行する段階と、
前記論理アドレスiのための前記論理−物理マッピングの前記物理アドレスを前記論理アドレスiのための前記選択チェックポイントのための前記チェックポイント情報に示される前記物理アドレスに更新する段階と
をさらに備える、請求項18から22のいずれか一項に記載の方法。 - ストレージデバイスにアクセスするために使用される論理アドレスごとに示す論理−物理マッピングを、前記論理−物理マッピングに提供される物理アドレスとは異なる前記ストレージデバイスの物理アドレスにて、前記論理アドレスのためのデータの前バージョンが存在するかどうかを示す前記論理アドレスおよびバージョン情報のための現データを有する前記ストレージデバイスにおける前記物理アドレスを提供する手段と、
ターゲット論理アドレスに向けられるホストからの書き込みを受信する手段と、
前記ターゲット論理アドレスのための前記データの前バージョンが存在しないことを示す前記論理−物理マッピングに応答して、ターゲット物理アドレスと、チェックポイント情報の前記論理−物理マッピングに示される前記物理アドレスとに関する情報を含める手段と、
前記ターゲット論理アドレスのための前記データの前バージョンが存在しないことを示す前記論理−物理マッピングに応答して、データの前バージョンが存在することを示す前記ターゲット論理アドレスのための前記バージョン情報を更新する手段と、
前記ターゲット論理アドレスのための前記現データを有する前記物理アドレスとは異なる前記ストレージデバイスの位置のターゲット物理アドレスに前記書き込みのためのデータを書き込む手段と、
前記ターゲット物理アドレスを示す前記ターゲット論理アドレスのための前記論理−物理マッピングを更新する手段と
を備える装置。 - チェックポイント情報が維持される複数のチェックポイントの1つを有する選択チェックポイントの現データを復元する復元コマンドを受信する手段と、
前記論理−物理マッピングの論理アドレスiごとに
前記論理アドレスiのための前記バージョン情報が前記選択チェックポイントより大きいときの現バージョンチェックポイントに応答して、
・前記物理アドレスが前記選択チェックポイントと前記現バージョンチェックポイントとの間のチェックポイントのためのチェックポイント情報に参照されない場合に、前記論理アドレスiのための前記論理−物理マッピングに示される前記物理アドレスを解放し、
・前記論理アドレスiのための前記論理−物理マッピングの前記物理アドレスを前記論理アドレスiのための前記選択チェックポイントのための前記チェックポイント情報に示される前記物理アドレスに更新すること
を実行すること
を実行する手段と
をさらに備える、請求項24に記載の装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/672,020 US9671971B2 (en) | 2015-03-27 | 2015-03-27 | Managing prior versions of data for logical addresses in a storage device |
US14/672,020 | 2015-03-27 | ||
PCT/US2016/019961 WO2016160217A1 (en) | 2015-03-27 | 2016-02-26 | Managing prior versions of data for logical addresses in a storage device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018511853A true JP2018511853A (ja) | 2018-04-26 |
JP6848146B2 JP6848146B2 (ja) | 2021-03-24 |
Family
ID=56975417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017541978A Active JP6848146B2 (ja) | 2015-03-27 | 2016-02-26 | ストレージデバイスにおける論理アドレスのためのデータの前バージョンの管理 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9671971B2 (ja) |
EP (1) | EP3274833A4 (ja) |
JP (1) | JP6848146B2 (ja) |
KR (1) | KR102590470B1 (ja) |
CN (1) | CN107408022B (ja) |
WO (1) | WO2016160217A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022040156A (ja) * | 2021-01-06 | 2022-03-10 | バイドゥ ユーエスエイ エルエルシー | 仮想化環境でのチェックポイント認証による仮想マシン移行の方法 |
Families Citing this family (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2533342A (en) * | 2014-12-17 | 2016-06-22 | Ibm | Checkpointing module and method for storing checkpoints |
US10162526B2 (en) | 2015-10-20 | 2018-12-25 | Micron Technology, Inc. | Logical address history management in memory device |
US10325108B2 (en) * | 2016-12-30 | 2019-06-18 | Intel Corporation | Method and apparatus for range based checkpoints in a storage device |
US20190102262A1 (en) * | 2017-09-29 | 2019-04-04 | Intel Corporation | Automated continuous checkpointing |
US10685097B2 (en) * | 2017-12-29 | 2020-06-16 | Intel Corporation | Application based checkpointing control for storage device |
KR102527132B1 (ko) * | 2018-01-19 | 2023-05-02 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
US10621084B2 (en) * | 2018-03-05 | 2020-04-14 | International Business Machines Corporation | Efficient garbage collection in the presence of block dependencies |
US11099980B2 (en) | 2018-05-09 | 2021-08-24 | International Business Machines Corporation | Host aware update write |
US11379155B2 (en) | 2018-05-24 | 2022-07-05 | Alibaba Group Holding Limited | System and method for flash storage management using multiple open page stripes |
US11200300B2 (en) * | 2018-06-20 | 2021-12-14 | Microsoft Technology Licensing, Llc | Secure sharing of license data in computing systems |
CN111902804B (zh) | 2018-06-25 | 2024-03-01 | 阿里巴巴集团控股有限公司 | 用于管理存储设备的资源并量化i/o请求成本的系统和方法 |
US10754785B2 (en) | 2018-06-28 | 2020-08-25 | Intel Corporation | Checkpointing for DRAM-less SSD |
US11327929B2 (en) | 2018-09-17 | 2022-05-10 | Alibaba Group Holding Limited | Method and system for reduced data movement compression using in-storage computing and a customized file system |
WO2020132849A1 (zh) | 2018-12-25 | 2020-07-02 | 华为技术有限公司 | 分布式存储系统中数据存储方法、装置及计算机程序产品 |
US11061735B2 (en) | 2019-01-02 | 2021-07-13 | Alibaba Group Holding Limited | System and method for offloading computation to storage nodes in distributed system |
US10860223B1 (en) | 2019-07-18 | 2020-12-08 | Alibaba Group Holding Limited | Method and system for enhancing a distributed storage system by decoupling computation and network tasks |
US11617282B2 (en) | 2019-10-01 | 2023-03-28 | Alibaba Group Holding Limited | System and method for reshaping power budget of cabinet to facilitate improved deployment density of servers |
US11126561B2 (en) * | 2019-10-01 | 2021-09-21 | Alibaba Group Holding Limited | Method and system for organizing NAND blocks and placing data to facilitate high-throughput for random writes in a solid state drive |
US11568077B2 (en) * | 2019-12-26 | 2023-01-31 | Micron Technology, Inc. | Memory device data security based on content-addressable memory architecture |
US11449455B2 (en) | 2020-01-15 | 2022-09-20 | Alibaba Group Holding Limited | Method and system for facilitating a high-capacity object storage system with configuration agility and mixed deployment flexibility |
US11379447B2 (en) | 2020-02-06 | 2022-07-05 | Alibaba Group Holding Limited | Method and system for enhancing IOPS of a hard disk drive system based on storing metadata in host volatile memory and data in non-volatile memory using a shared controller |
US11449386B2 (en) | 2020-03-20 | 2022-09-20 | Alibaba Group Holding Limited | Method and system for optimizing persistent memory on data retention, endurance, and performance for host memory |
US11392436B2 (en) * | 2020-04-01 | 2022-07-19 | Western Digital Technologies, Inc. | Advanced file recovery method for flash memory |
US11385833B2 (en) | 2020-04-20 | 2022-07-12 | Alibaba Group Holding Limited | Method and system for facilitating a light-weight garbage collection with a reduced utilization of resources |
US11301173B2 (en) | 2020-04-20 | 2022-04-12 | Alibaba Group Holding Limited | Method and system for facilitating evaluation of data access frequency and allocation of storage device resources |
US11281575B2 (en) | 2020-05-11 | 2022-03-22 | Alibaba Group Holding Limited | Method and system for facilitating data placement and control of physical addresses with multi-queue I/O blocks |
US11494115B2 (en) | 2020-05-13 | 2022-11-08 | Alibaba Group Holding Limited | System method for facilitating memory media as file storage device based on real-time hashing by performing integrity check with a cyclical redundancy check (CRC) |
US11461262B2 (en) | 2020-05-13 | 2022-10-04 | Alibaba Group Holding Limited | Method and system for facilitating a converged computation and storage node in a distributed storage system |
US11507499B2 (en) | 2020-05-19 | 2022-11-22 | Alibaba Group Holding Limited | System and method for facilitating mitigation of read/write amplification in data compression |
US11556277B2 (en) | 2020-05-19 | 2023-01-17 | Alibaba Group Holding Limited | System and method for facilitating improved performance in ordering key-value storage with input/output stack simplification |
US11263132B2 (en) | 2020-06-11 | 2022-03-01 | Alibaba Group Holding Limited | Method and system for facilitating log-structure data organization |
US11354200B2 (en) | 2020-06-17 | 2022-06-07 | Alibaba Group Holding Limited | Method and system for facilitating data recovery and version rollback in a storage device |
US11422931B2 (en) | 2020-06-17 | 2022-08-23 | Alibaba Group Holding Limited | Method and system for facilitating a physically isolated storage unit for multi-tenancy virtualization |
US11354233B2 (en) | 2020-07-27 | 2022-06-07 | Alibaba Group Holding Limited | Method and system for facilitating fast crash recovery in a storage device |
US11372774B2 (en) | 2020-08-24 | 2022-06-28 | Alibaba Group Holding Limited | Method and system for a solid state drive with on-chip memory integration |
KR20220037184A (ko) * | 2020-09-17 | 2022-03-24 | 삼성전자주식회사 | 스토리지 장치, 스토리지 시스템 및 스토리지 시스템의 동작 방법 |
US11487465B2 (en) | 2020-12-11 | 2022-11-01 | Alibaba Group Holding Limited | Method and system for a local storage engine collaborating with a solid state drive controller |
US11734115B2 (en) | 2020-12-28 | 2023-08-22 | Alibaba Group Holding Limited | Method and system for facilitating write latency reduction in a queue depth of one scenario |
US11416365B2 (en) | 2020-12-30 | 2022-08-16 | Alibaba Group Holding Limited | Method and system for open NAND block detection and correction in an open-channel SSD |
US11520695B2 (en) * | 2021-03-02 | 2022-12-06 | Western Digital Technologies, Inc. | Storage system and method for automatic defragmentation of memory |
US11726699B2 (en) | 2021-03-30 | 2023-08-15 | Alibaba Singapore Holding Private Limited | Method and system for facilitating multi-stream sequential read performance improvement with reduced read amplification |
US11461173B1 (en) | 2021-04-21 | 2022-10-04 | Alibaba Singapore Holding Private Limited | Method and system for facilitating efficient data compression based on error correction code and reorganization of data placement |
WO2022232969A1 (en) * | 2021-05-05 | 2022-11-10 | Micron Technology, Inc. | Data organization for logical to physical table compression |
US11476874B1 (en) | 2021-05-14 | 2022-10-18 | Alibaba Singapore Holding Private Limited | Method and system for facilitating a storage server with hybrid memory for journaling and data storage |
US11809736B2 (en) * | 2021-12-21 | 2023-11-07 | Western Digital Technologies, Inc. | Storage system and method for quantifying storage fragmentation and predicting performance drop |
US11809747B2 (en) | 2021-12-21 | 2023-11-07 | Western Digital Technologies, Inc. | Storage system and method for optimizing write-amplification factor, endurance, and latency during a defragmentation operation |
US11847343B2 (en) | 2021-12-22 | 2023-12-19 | Western Digital Technologies, Inc. | Storage system and method for non-blocking coherent re-writes |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008204460A (ja) * | 2007-02-16 | 2008-09-04 | Seagate Technology Llc | ディスク・パーティションのほぼ瞬時のバックアップおよび復元 |
JP2013541743A (ja) * | 2011-02-02 | 2013-11-14 | 株式会社日立製作所 | ストレージシステムおよびそのデータ制御方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6766428B2 (en) * | 2001-04-06 | 2004-07-20 | Sun Microsystems, Inc. | Method and apparatus for storing prior versions of modified values to facilitate reliable execution |
US7363444B2 (en) | 2005-01-10 | 2008-04-22 | Hewlett-Packard Development Company, L.P. | Method for taking snapshots of data |
US8452929B2 (en) * | 2005-04-21 | 2013-05-28 | Violin Memory Inc. | Method and system for storage of data in non-volatile media |
US7516267B2 (en) * | 2005-11-03 | 2009-04-07 | Intel Corporation | Recovering from a non-volatile memory failure |
CN100546250C (zh) * | 2006-08-07 | 2009-09-30 | 华为技术有限公司 | 一种集群内检查点的管理方法 |
US8195912B2 (en) * | 2007-12-06 | 2012-06-05 | Fusion-io, Inc | Apparatus, system, and method for efficient mapping of virtual and physical addresses |
US7925925B2 (en) | 2008-12-30 | 2011-04-12 | Intel Corporation | Delta checkpoints for a non-volatile memory indirection table |
US8473700B2 (en) | 2010-03-29 | 2013-06-25 | International Business Machines Corporation | Providing versioning in a storage device |
US8935458B2 (en) | 2011-01-05 | 2015-01-13 | Intel Corporation | Drive assisted system checkpointing via system restore points |
US9678863B2 (en) | 2012-06-12 | 2017-06-13 | Sandisk Technologies, Llc | Hybrid checkpointed memory |
US10318495B2 (en) * | 2012-09-24 | 2019-06-11 | Sandisk Technologies Llc | Snapshots for a non-volatile device |
CN103049349B (zh) | 2012-11-29 | 2016-02-24 | 记忆科技(深圳)有限公司 | 基于分层存储的快照方法及系统 |
CN104035729B (zh) * | 2014-05-22 | 2017-02-15 | 中国科学院计算技术研究所 | 一种日志映射的块设备精简配置方法 |
-
2015
- 2015-03-27 US US14/672,020 patent/US9671971B2/en active Active
-
2016
- 2016-02-26 EP EP16773682.6A patent/EP3274833A4/en not_active Ceased
- 2016-02-26 CN CN201680019144.9A patent/CN107408022B/zh active Active
- 2016-02-26 KR KR1020177023533A patent/KR102590470B1/ko active IP Right Grant
- 2016-02-26 WO PCT/US2016/019961 patent/WO2016160217A1/en active Application Filing
- 2016-02-26 JP JP2017541978A patent/JP6848146B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008204460A (ja) * | 2007-02-16 | 2008-09-04 | Seagate Technology Llc | ディスク・パーティションのほぼ瞬時のバックアップおよび復元 |
JP2013541743A (ja) * | 2011-02-02 | 2013-11-14 | 株式会社日立製作所 | ストレージシステムおよびそのデータ制御方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022040156A (ja) * | 2021-01-06 | 2022-03-10 | バイドゥ ユーエスエイ エルエルシー | 仮想化環境でのチェックポイント認証による仮想マシン移行の方法 |
JP7331080B2 (ja) | 2021-01-06 | 2023-08-22 | バイドゥ ユーエスエイ エルエルシー | 仮想化環境でのチェックポイント認証による仮想マシン移行の方法 |
Also Published As
Publication number | Publication date |
---|---|
EP3274833A4 (en) | 2018-11-07 |
KR20170129702A (ko) | 2017-11-27 |
WO2016160217A1 (en) | 2016-10-06 |
CN107408022B (zh) | 2021-10-26 |
EP3274833A1 (en) | 2018-01-31 |
CN107408022A (zh) | 2017-11-28 |
US9671971B2 (en) | 2017-06-06 |
US20160283160A1 (en) | 2016-09-29 |
JP6848146B2 (ja) | 2021-03-24 |
KR102590470B1 (ko) | 2023-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6848146B2 (ja) | ストレージデバイスにおける論理アドレスのためのデータの前バージョンの管理 | |
US10325108B2 (en) | Method and apparatus for range based checkpoints in a storage device | |
EP2992439B1 (en) | Selective backup of program data to non-volatile memory | |
US11657022B2 (en) | Host and storage system for securely deleting files and operating method of the host | |
TWI512492B (zh) | 用於橫跨平台代理者之非依電性隨機存取記憶體的存取控制之方法、裝置及系統 | |
KR102276738B1 (ko) | 저장 디바이스에서 데이터를 보호하기 위한 카운터들 및 테이블의 이용 | |
US10331457B2 (en) | Byte-addressable non-volatile read-write main memory partitioned into regions including metadata region | |
US8751782B2 (en) | Secure local boot using third party data store (3PDS) based ISO image | |
US20130275479A1 (en) | Systems and methods for providing dynamic file system awareness on storage devices | |
US11301338B2 (en) | Recovery on virtual machines with existing snapshots | |
US11314453B2 (en) | Memory system managing map data based on risk of malware—infection of host, and operating method thereof | |
US10108339B2 (en) | Reduction of intermingling of input and output operations in solid state drives | |
KR102213665B1 (ko) | 인증 프로그램을 갖는 메모리 카드, 그것을 포함하는 스토리지 시스템, 및 그것의 동작 방법 | |
US10761834B2 (en) | SSD firmware download dual boot | |
US20240037233A1 (en) | Ransomware and malicious software protection in ssd/ufs by nvme instructions log analysis based on machine-learning | |
US20230152987A1 (en) | Storage device and operation method thereof | |
EP4155893A1 (en) | Storage controller and storage system comprising the same | |
Garcés-Erice et al. | Secure lazy provisioning of virtual desktops to a portable storage device | |
EP3314390B1 (en) | Returning coherent data in response to a failure of a storage device when a single input/output request spans two storage devices | |
KR20230071695A (ko) | 스토리지 장치 및 그것의 동작 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171013 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190221 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190927 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20191029 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200129 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20200811 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201207 |
|
C60 | Trial request (containing other claim documents, opposition documents) |
Free format text: JAPANESE INTERMEDIATE CODE: C60 Effective date: 20201207 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20201215 |
|
C21 | Notice of transfer of a case for reconsideration by examiners before appeal proceedings |
Free format text: JAPANESE INTERMEDIATE CODE: C21 Effective date: 20201222 |
|
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: 20210202 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210205 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6848146 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |