JP2018152127A - 注釈付きアトミック書き込み操作を行う方法および装置 - Google Patents
注釈付きアトミック書き込み操作を行う方法および装置 Download PDFInfo
- Publication number
- JP2018152127A JP2018152127A JP2018108745A JP2018108745A JP2018152127A JP 2018152127 A JP2018152127 A JP 2018152127A JP 2018108745 A JP2018108745 A JP 2018108745A JP 2018108745 A JP2018108745 A JP 2018108745A JP 2018152127 A JP2018152127 A JP 2018152127A
- Authority
- JP
- Japan
- Prior art keywords
- storage
- data
- metadata
- application
- atomic
- 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
Images
Classifications
-
- 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
- G06F11/1451—Management of the data involved in backup or backup restore by selection of backup contents
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- 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/1474—Saving, restoring, recovering or retrying in transactions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/113—Details of archiving
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1824—Distributed file systems implemented using Network-attached Storage [NAS] architecture
-
- 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/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/0683—Plurality of storage devices
-
- 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/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
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)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Retry When Errors Occur (AREA)
Abstract
Description
以下の項目は、本出願時の特許請求の範囲に記載の要素である。
(項目1)
一組のデータのアトミック書き込み操作を行う要求を受信する工程と、
前記要求に応答して、複数の格納ユニットのうちの少なくとも1つの格納ユニット内の専用位置にメタデータを格納することを含み前記複数の格納ユニット全体にわたって前記一組のデータを書き込む工程とを含む方法であって、
前記メタデータは書き込みが終了したかどうかを判断するために使用可能である、方法。
(項目2)
前記要求は、前記複数の格納ユニットのアドレス範囲が割り当てられたアプリケーションから受信され、専用位置は前記アドレス範囲外に存在する、項目1に記載の方法。
(項目3)
前記複数の格納ユニットに対して行われた書き込み操作へ少なくとも1つのシーケンス番号を割り当てる工程をさらに含む、項目1に記載の方法であって、
前記シーケンス番号は、前記書き込み操作が発生した順番を示し、
前記メタデータは、前記一組のデータが書き込まれるアドレス範囲と、前記一組のデータの書き込みに対応するシーケンス番号とを規定する、方法。
(項目4)
前記アトミック書き込み操作をロールバックする工程をさらに含む、項目3に記載の方法であって、前記ロールバック工程は、前記規定アドレス範囲へ書き込まれたデータを無効にする工程を含む、方法。
(項目5)
前記書き込む工程は、前記一組のデータが書き込まれた前記複数の格納ユニットのそれぞれにシーケンス番号のそれぞれのインスタンスを格納する工程を含み、
前記メタデータは前記シーケンス番号の別のインスタンスを含み、
前記方法はさらに、前記書き込む工程が終了したかどうかを前記シーケンス番号の前記インスタンスが一致したことを検証することにより判断する工程を含む、項目1に記載の方法。
(項目6)
前記複数の格納ユニットのそれぞれからメタデータを読み出す工程と、前記アトミック書き込み操作が失敗したということを前記メタデータを読み出すことに基づき判断する工程とをさらに含む項目1に記載の方法。
(項目7)
前記書き込みが正常に終了しなかったということをアプリケーションへ指示する工程であって、前記一組のデータが正常に書き込まれなかった1つまたは複数の論理ブロックアドレスを識別する工程を含む、指示する工程と、
前記アトミック書き込み操作をロールバックする要求を前記アプリケーションから受信する工程とをさらに含む項目1に記載の方法。
(項目8)
前記格納されたメタデータは、前記要求を提供したアプリケーションにより提供されるメタデータを含む、項目1に記載の方法。
(項目9)
前記メタデータを格納する工程は、
前記複数の格納装置のうちの第1の格納装置内の専用位置に前記メタデータの第1のインスタンスを格納する工程と、
前記複数の格納装置のうちの第2の格納装置内の専用位置に前記メタデータの第2のインスタンスを格納する工程とを含み、
前記第1および第2のインスタンスは冗長である、項目1に記載の方法。
(項目10)
一組のデータの一群の格納操作であって、前記一組のデータと無関係なメタデータを格納することを含む一群の格納操作を複数の格納装置に対して行うように構成されたベクトル格納モジュールであって、前記メタデータは前記一群の格納操作を示す、ベクトル格納モジュールと、
前記格納されたメタデータに基づき前記一群の格納操作をロールバックするように構成されたロールバックモジュールとを含む装置。
(項目11)
前記ベクトル格納モジュールは、格納ブロック内の前記メタデータを前記複数の格納装置のうちの少なくとも1つに格納するように構成され、
前記格納ブロックは、前記一組のデータに関連するアプリケーションによりアクセス不能なアドレスを有する、項目10に記載の装置。
(項目12)
前記ベクトル格納モジュールは前記一群の格納操作が正常に行われたかどうかを示すように構成され、
前記ロールバックモジュールは、要求を受信することに応答して前記ロールバックを行うように構成される、項目10に記載の装置。
(項目13)
前記要求は部分的ロールバックを行う要求であり、
前記ロールバックモジュールは、前記要求に応答して前記一群の格納操作のすべてではなく前記一群の格納操作のサブセットをロールバックするように構成される、項目12に記載の装置。
(項目14)
前記ロールバックモジュールは前記複数の格納装置へ1つまたは複数のTRIM命令を発行することにより前記一群の格納操作をロールバックするように構成される、項目10に記載の装置。
(項目15)
前記ベクトル格納モジュールは前記一組のデータの一部の格納操作を行うように構成され、
前記格納操作はパケットヘッダを有するパケット内へ前記一部をカプセル化することを含み、
前記パケットヘッダは前記格納操作が正常に行われたかどうかを判断するために使用可能な1つまたは複数のビットを含み、
前記1つまたは複数のビットは前記格納されたメタデータと異なる、項目10に記載の装置。
(項目16)
一群の格納装置に関連するアドレス範囲へ一組のデータのアトミック書き込みを試みるように構成され、かつ、前記アドレス範囲外のアドレスを有する格納ブロック内にメタデータを格納するように構成された格納モジュールであって、前記メタデータは前記一組のデータを書き込むことを指示する、格納モジュールと、
前記アトミック書き込みが正常に終了したかどうかを前記メタデータに基づき判断するように構成されたエラー検出モジュールとを含む装置。
(項目17)
前記格納モジュールは、前記アトミック書き込みが試みられた順番を示すシーケンス番号のそれぞれのインスタンスと共に、前記一組のデータのそれぞれの一部を前記一群の格納装置内の各格納装置へ書き込むように構成され、
前記エラー検出モジュールは、前記アトミック書き込みが正常に終了したかどうかを、前記シーケンス番号の前記インスタンスと前記メタデータ内の前記シーケンス番号のインスタンスとを比較することにより判断するように構成される、項目16に記載の装置。
(項目18)
前記格納モジュールは、複数のアプリケーションのそれぞれのアプリケーションのそれぞれの格納ブロックを維持するように構成され、各格納ブロックは、前記アプリケーションの直近のアトミック書き込みに対応するメタデータを含む、項目16に記載の装置。
(項目19)
前記格納モジュールはアプリケーションの複数の格納ブロックを維持するように構成され、前記複数の格納ブロックは、前記アプリケーションの複数の直近のアトミック書き込みに対応するメタデータを含む、項目16に記載の装置。
(項目20)
前記アドレス範囲はスパースアドレス空間の論理ブロックアドレス範囲であり、外部アドレスは前記論理ブロックアドレス範囲に隣接しない論理ブロックアドレスである、項目16に記載の装置。
(項目21)
ログ構造を使用してデータを格納する第1の手段であって、複数の格納ブロックを含む、第1の手段と、
前記複数の格納ブロックのサブセットへデータをアトミック的に書き込み、前記サブセット内に存在しない格納ブロックへメタデータを書き込む第2の手段であって、前記メタデータは前記データの書き込みをロールバックするために使用可能である、第2の手段とを含む装置。
(項目22)
アトミック書き込み操作の要求を発行するアプリケーションであって、前記アトミック書き込み操作は、一組のデータを複数の格納ユニット全体にわたって書き込む工程と、前記複数の格納ユニットのうちの少なくとも1つの格納ユニット内の専用位置にメタデータを書き込む工程とを含み、
前記アプリケーションは前記アトミック書き込み操作が終了したかどうかを前記メタデータを読み出す試みに基づき判断する、アプリケーションを含む装置。
Claims (22)
- 一組のデータのアトミック書き込み操作を行う要求を受信する工程と、
前記要求に応答して、複数の格納ユニットのうちの少なくとも1つの格納ユニット内の専用位置にメタデータを格納することを含み前記複数の格納ユニット全体にわたって前記一組のデータを書き込む工程とを含む方法であって、
前記メタデータは書き込みが終了したかどうかを判断するために使用可能である、方法。 - 前記要求は、前記複数の格納ユニットのアドレス範囲が割り当てられたアプリケーションから受信され、専用位置は前記アドレス範囲外に存在する、請求項1に記載の方法。
- 前記複数の格納ユニットに対して行われた書き込み操作へ少なくとも1つのシーケンス番号を割り当てる工程をさらに含む、請求項1に記載の方法であって、
前記シーケンス番号は、前記書き込み操作が発生した順番を示し、
前記メタデータは、前記一組のデータが書き込まれるアドレス範囲と、前記一組のデータの書き込みに対応するシーケンス番号とを規定する、方法。 - 前記アトミック書き込み操作をロールバックする工程をさらに含む、請求項3に記載の方法であって、前記ロールバック工程は、前記規定アドレス範囲へ書き込まれたデータを無効にする工程を含む、方法。
- 前記書き込む工程は、前記一組のデータが書き込まれた前記複数の格納ユニットのそれぞれにシーケンス番号のそれぞれのインスタンスを格納する工程を含み、
前記メタデータは前記シーケンス番号の別のインスタンスを含み、
前記方法はさらに、前記書き込む工程が終了したかどうかを前記シーケンス番号の前記インスタンスが一致したことを検証することにより判断する工程を含む、請求項1に記載の方法。 - 前記複数の格納ユニットのそれぞれからメタデータを読み出す工程と、前記アトミック書き込み操作が失敗したということを前記メタデータを読み出すことに基づき判断する工程とをさらに含む請求項1に記載の方法。
- 前記書き込みが正常に終了しなかったということをアプリケーションへ指示する工程であって、前記一組のデータが正常に書き込まれなかった1つまたは複数の論理ブロックアドレスを識別する工程を含む、指示する工程と、
前記アトミック書き込み操作をロールバックする要求を前記アプリケーションから受信する工程とをさらに含む請求項1に記載の方法。 - 前記格納されたメタデータは、前記要求を提供したアプリケーションにより提供されるメタデータを含む、請求項1に記載の方法。
- 前記メタデータを格納する工程は、
前記複数の格納装置のうちの第1の格納装置内の専用位置に前記メタデータの第1のインスタンスを格納する工程と、
前記複数の格納装置のうちの第2の格納装置内の専用位置に前記メタデータの第2のインスタンスを格納する工程とを含み、
前記第1および第2のインスタンスは冗長である、請求項1に記載の方法。 - 一組のデータの一群の格納操作であって、前記一組のデータと無関係なメタデータを格納することを含む一群の格納操作を複数の格納装置に対して行うように構成されたベクトル格納モジュールであって、前記メタデータは前記一群の格納操作を示す、ベクトル格納モジュールと、
前記格納されたメタデータに基づき前記一群の格納操作をロールバックするように構成されたロールバックモジュールとを含む装置。 - 前記ベクトル格納モジュールは、格納ブロック内の前記メタデータを前記複数の格納装置のうちの少なくとも1つに格納するように構成され、
前記格納ブロックは、前記一組のデータに関連するアプリケーションによりアクセス不能なアドレスを有する、請求項10に記載の装置。 - 前記ベクトル格納モジュールは前記一群の格納操作が正常に行われたかどうかを示すように構成され、
前記ロールバックモジュールは、要求を受信することに応答して前記ロールバックを行うように構成される、請求項10に記載の装置。 - 前記要求は部分的ロールバックを行う要求であり、
前記ロールバックモジュールは、前記要求に応答して前記一群の格納操作のすべてではなく前記一群の格納操作のサブセットをロールバックするように構成される、請求項12に記載の装置。 - 前記ロールバックモジュールは前記複数の格納装置へ1つまたは複数のTRIM命令を発行することにより前記一群の格納操作をロールバックするように構成される、請求項10に記載の装置。
- 前記ベクトル格納モジュールは前記一組のデータの一部の格納操作を行うように構成され、
前記格納操作はパケットヘッダを有するパケット内へ前記一部をカプセル化することを含み、
前記パケットヘッダは前記格納操作が正常に行われたかどうかを判断するために使用可能な1つまたは複数のビットを含み、
前記1つまたは複数のビットは前記格納されたメタデータと異なる、請求項10に記載の装置。 - 一群の格納装置に関連するアドレス範囲へ一組のデータのアトミック書き込みを試みるように構成され、かつ、前記アドレス範囲外のアドレスを有する格納ブロック内にメタデータを格納するように構成された格納モジュールであって、前記メタデータは前記一組のデータを書き込むことを指示する、格納モジュールと、
前記アトミック書き込みが正常に終了したかどうかを前記メタデータに基づき判断するように構成されたエラー検出モジュールとを含む装置。 - 前記格納モジュールは、前記アトミック書き込みが試みられた順番を示すシーケンス番号のそれぞれのインスタンスと共に、前記一組のデータのそれぞれの一部を前記一群の格納装置内の各格納装置へ書き込むように構成され、
前記エラー検出モジュールは、前記アトミック書き込みが正常に終了したかどうかを、前記シーケンス番号の前記インスタンスと前記メタデータ内の前記シーケンス番号のインスタンスとを比較することにより判断するように構成される、請求項16に記載の装置。 - 前記格納モジュールは、複数のアプリケーションのそれぞれのアプリケーションのそれぞれの格納ブロックを維持するように構成され、各格納ブロックは、前記アプリケーションの直近のアトミック書き込みに対応するメタデータを含む、請求項16に記載の装置。
- 前記格納モジュールはアプリケーションの複数の格納ブロックを維持するように構成され、前記複数の格納ブロックは、前記アプリケーションの複数の直近のアトミック書き込みに対応するメタデータを含む、請求項16に記載の装置。
- 前記アドレス範囲はスパースアドレス空間の論理ブロックアドレス範囲であり、外部アドレスは前記論理ブロックアドレス範囲に隣接しない論理ブロックアドレスである、請求項16に記載の装置。
- ログ構造を使用してデータを格納する第1の手段であって、複数の格納ブロックを含む、第1の手段と、
前記複数の格納ブロックのサブセットへデータをアトミック的に書き込み、前記サブセット内に存在しない格納ブロックへメタデータを書き込む第2の手段であって、前記メタデータは前記データの書き込みをロールバックするために使用可能である、第2の手段とを含む装置。 - アトミック書き込み操作の要求を発行するアプリケーションであって、前記アトミック書き込み操作は、一組のデータを複数の格納ユニット全体にわたって書き込む工程と、前記複数の格納ユニットのうちの少なくとも1つの格納ユニット内の専用位置にメタデータを書き込む工程とを含み、
前記アプリケーションは前記アトミック書き込み操作が終了したかどうかを前記メタデータを読み出す試みに基づき判断する、アプリケーションを含む装置。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361865565P | 2013-08-13 | 2013-08-13 | |
US61/865,565 | 2013-08-13 | ||
US14/230,844 | 2014-03-31 | ||
US14/230,844 US10223208B2 (en) | 2013-08-13 | 2014-03-31 | Annotated atomic write |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016534813A Division JP2016535896A (ja) | 2013-08-13 | 2014-08-13 | 注釈付きアトミック書き込み操作を行う方法および装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018152127A true JP2018152127A (ja) | 2018-09-27 |
JP6556911B2 JP6556911B2 (ja) | 2019-08-07 |
Family
ID=52467719
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016534813A Pending JP2016535896A (ja) | 2013-08-13 | 2014-08-13 | 注釈付きアトミック書き込み操作を行う方法および装置 |
JP2018108745A Active JP6556911B2 (ja) | 2013-08-13 | 2018-06-06 | 注釈付きアトミック書き込み操作を行う方法および装置 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016534813A Pending JP2016535896A (ja) | 2013-08-13 | 2014-08-13 | 注釈付きアトミック書き込み操作を行う方法および装置 |
Country Status (7)
Country | Link |
---|---|
US (1) | US10223208B2 (ja) |
JP (2) | JP2016535896A (ja) |
KR (1) | KR101769448B1 (ja) |
CN (1) | CN105659204B (ja) |
DE (1) | DE112014003349T5 (ja) |
TW (1) | TWI630622B (ja) |
WO (1) | WO2015023744A1 (ja) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10223208B2 (en) | 2013-08-13 | 2019-03-05 | Sandisk Technologies Llc | Annotated atomic write |
US9880926B1 (en) * | 2013-08-20 | 2018-01-30 | Seagate Technology Llc | Log structured reserved zone for a data storage device |
US9632927B2 (en) | 2014-09-25 | 2017-04-25 | International Business Machines Corporation | Reducing write amplification in solid-state drives by separating allocation of relocate writes from user writes |
KR102263046B1 (ko) * | 2014-10-29 | 2021-06-09 | 삼성전자주식회사 | 메모리 장치, 메모리 시스템, 상기 메모리 장치의 동작 방법 및 상기 메모리 시스템의 동작 방법 |
US10078582B2 (en) | 2014-12-10 | 2018-09-18 | International Business Machines Corporation | Non-volatile memory system having an increased effective number of supported heat levels |
US9779021B2 (en) | 2014-12-19 | 2017-10-03 | International Business Machines Corporation | Non-volatile memory controller cache architecture with support for separation of data streams |
US10101938B2 (en) * | 2014-12-30 | 2018-10-16 | International Business Machines Corporation | Data storage system selectively employing multiple data compression techniques |
US9690503B2 (en) | 2015-06-26 | 2017-06-27 | Intel Corporation | Returning coherent data in response to a failure of a storage device when a single input/output request spans two storage devices |
US9886208B2 (en) | 2015-09-25 | 2018-02-06 | International Business Machines Corporation | Adaptive assignment of open logical erase blocks to data streams |
JP2017107318A (ja) | 2015-12-08 | 2017-06-15 | 株式会社東芝 | メモリシステム、情報処理装置および処理方法 |
KR102570367B1 (ko) * | 2016-04-21 | 2023-08-28 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 컨트롤러를 포함하는 스토리지 장치를 액세스하는 액세스 방법 |
KR20180046405A (ko) * | 2016-10-27 | 2018-05-09 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
CN108475254A (zh) * | 2016-12-16 | 2018-08-31 | 华为技术有限公司 | 对象复制方法、装置及对象存储设备 |
CN109213425B (zh) * | 2017-06-30 | 2023-10-31 | 北京忆恒创源科技股份有限公司 | 利用分布式缓存在固态存储设备中处理原子命令 |
CN107783861B (zh) * | 2017-07-31 | 2020-11-24 | 平安科技(深圳)有限公司 | 交易回滚方法、装置、存储介质和计算机设备 |
GB2572578B (en) * | 2018-04-04 | 2020-09-16 | Advanced Risc Mach Ltd | Cache annotations to indicate specultative side-channel condition |
CN108664218A (zh) * | 2018-04-23 | 2018-10-16 | 浙江大华技术股份有限公司 | 一种基于数据特征的ssd存储方法、装置及系统 |
GB2576330B (en) * | 2018-08-14 | 2020-08-19 | Advanced Risc Mach Ltd | Barrier-free atomic transfer of multiword data |
US11636069B2 (en) * | 2020-07-24 | 2023-04-25 | Capital Thought Holdings L.L.C. | Data storage system and method |
US11468017B2 (en) * | 2020-07-24 | 2022-10-11 | Capital Thought Holdings L.L.C. | Data storage system and method |
KR20220020143A (ko) * | 2020-08-11 | 2022-02-18 | 삼성전자주식회사 | 오버라이트 처리를 수행하는 스토리지 시스템, 스토리지 시스템을 제어하는 호스트 시스템 및 스토리지 시스템의 동작 방법 |
US11704038B2 (en) * | 2021-04-12 | 2023-07-18 | EMC IP Holding Company LLC | Processing out of order writes in a log structured file system for improved garbage collection |
US11467970B1 (en) | 2021-08-03 | 2022-10-11 | Kioxia Corporation | Metadata management in non-volatile memory devices using in-memory journal |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6502174B1 (en) * | 1999-03-03 | 2002-12-31 | International Business Machines Corporation | Method and system for managing meta data |
US6553511B1 (en) | 2000-05-17 | 2003-04-22 | Lsi Logic Corporation | Mass storage data integrity-assuring technique utilizing sequence and revision number metadata |
US8856467B2 (en) * | 2004-11-18 | 2014-10-07 | International Business Machines Corporation | Management of metadata in a storage subsystem |
US7636946B2 (en) * | 2005-08-31 | 2009-12-22 | Microsoft Corporation | Unwanted file modification and transactions |
US8151082B2 (en) | 2007-12-06 | 2012-04-03 | Fusion-Io, Inc. | Apparatus, system, and method for converting a storage request into an append data storage command |
US7873878B2 (en) * | 2007-09-24 | 2011-01-18 | International Business Machines Corporation | Data integrity validation in storage systems |
US20090292885A1 (en) * | 2008-05-22 | 2009-11-26 | Fujitsu Limited | Method and apparatus for providing atomic access to memory |
US8200922B2 (en) | 2008-12-17 | 2012-06-12 | Netapp, Inc. | Storage system snapshot assisted by SSD technology |
CN102405460B (zh) | 2009-02-11 | 2016-05-04 | 艾梵尼达有限公司 | 虚拟存储系统及其运行方法 |
WO2012016089A2 (en) | 2010-07-28 | 2012-02-02 | Fusion-Io, Inc. | Apparatus, system, and method for conditional and atomic storage operations |
US8725934B2 (en) * | 2011-12-22 | 2014-05-13 | Fusion-Io, Inc. | Methods and appratuses for atomic storage operations |
US9423920B2 (en) * | 2010-12-22 | 2016-08-23 | Sap Se | System and method for modifying user interface elements |
US8966191B2 (en) * | 2011-03-18 | 2015-02-24 | Fusion-Io, Inc. | Logical interface for contextual storage |
US9274937B2 (en) | 2011-12-22 | 2016-03-01 | Longitude Enterprise Flash S.A.R.L. | Systems, methods, and interfaces for vector input/output operations |
CN104303162B (zh) | 2012-01-12 | 2018-03-27 | 桑迪士克科技有限责任公司 | 用于管理缓存接纳的系统和方法 |
WO2014046650A1 (en) * | 2012-09-19 | 2014-03-27 | Bluearc Uk Limited | System and method for managing deduplication using checkpoints in a file storage system |
US9164888B2 (en) * | 2012-12-10 | 2015-10-20 | Google Inc. | Using a logical to physical map for direct user space communication with a data storage device |
US20140358868A1 (en) * | 2013-06-04 | 2014-12-04 | International Business Machines Corporation | Life cycle management of metadata |
KR20150030786A (ko) | 2013-08-05 | 2015-03-23 | 엘에스산전 주식회사 | 태양광 pcs 제어 시스템 |
US10223208B2 (en) | 2013-08-13 | 2019-03-05 | Sandisk Technologies Llc | Annotated atomic write |
US10466922B2 (en) * | 2015-12-07 | 2019-11-05 | Netapp, Inc. | Accelerating concurrent access to a file in a memory-based file system |
US11157407B2 (en) * | 2016-12-15 | 2021-10-26 | Optimum Semiconductor Technologies Inc. | Implementing atomic primitives using cache line locking |
-
2014
- 2014-03-31 US US14/230,844 patent/US10223208B2/en active Active
- 2014-08-13 WO PCT/US2014/050882 patent/WO2015023744A1/en active Application Filing
- 2014-08-13 TW TW103127828A patent/TWI630622B/zh not_active IP Right Cessation
- 2014-08-13 KR KR1020167005673A patent/KR101769448B1/ko active IP Right Grant
- 2014-08-13 DE DE112014003349.9T patent/DE112014003349T5/de active Pending
- 2014-08-13 CN CN201480045366.9A patent/CN105659204B/zh active Active
- 2014-08-13 JP JP2016534813A patent/JP2016535896A/ja active Pending
-
2018
- 2018-06-06 JP JP2018108745A patent/JP6556911B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
KR101769448B1 (ko) | 2017-08-18 |
TWI630622B (zh) | 2018-07-21 |
CN105659204A (zh) | 2016-06-08 |
DE112014003349T5 (de) | 2016-04-07 |
TW201517052A (zh) | 2015-05-01 |
WO2015023744A1 (en) | 2015-02-19 |
JP2016535896A (ja) | 2016-11-17 |
JP6556911B2 (ja) | 2019-08-07 |
US10223208B2 (en) | 2019-03-05 |
KR20160038053A (ko) | 2016-04-06 |
US20150052395A1 (en) | 2015-02-19 |
CN105659204B (zh) | 2019-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6556911B2 (ja) | 注釈付きアトミック書き込み操作を行う方法および装置 | |
US10834224B2 (en) | Transaction log acceleration | |
US10318324B2 (en) | Virtualization support for storage devices | |
US9342256B2 (en) | Epoch based storage management for a storage device | |
US10102075B2 (en) | Systems and methods for storage collision management | |
US10176190B2 (en) | Data integrity and loss resistance in high performance and high capacity storage deduplication | |
US9767017B2 (en) | Memory device with volatile and non-volatile media | |
US10019320B2 (en) | Systems and methods for distributed atomic storage operations | |
US10817421B2 (en) | Persistent data structures | |
US9842128B2 (en) | Systems and methods for atomic storage operations | |
US10817502B2 (en) | Persistent memory management | |
US9489297B2 (en) | Pregroomer for storage array | |
US9798673B2 (en) | Paging enablement of storage translation metadata | |
WO2015020811A1 (en) | Persistent data structures | |
US10114576B2 (en) | Storage device metadata synchronization | |
US9990150B2 (en) | Method to provide transactional semantics for updates to data structures stored in a non-volatile memory | |
Son et al. | SSD-assisted backup and recovery for database systems | |
Wei et al. | Extending SSD lifetime with persistent in-memory metadata management |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180706 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180706 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190528 |
|
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: 20190611 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190710 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6556911 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |