JP2016219013A - データを格納するための方法およびデータを格納するための一時的でないコンピュータ読取可能媒体 - Google Patents
データを格納するための方法およびデータを格納するための一時的でないコンピュータ読取可能媒体 Download PDFInfo
- Publication number
- JP2016219013A JP2016219013A JP2016099400A JP2016099400A JP2016219013A JP 2016219013 A JP2016219013 A JP 2016219013A JP 2016099400 A JP2016099400 A JP 2016099400A JP 2016099400 A JP2016099400 A JP 2016099400A JP 2016219013 A JP2016219013 A JP 2016219013A
- Authority
- JP
- Japan
- Prior art keywords
- page
- solid state
- physical address
- toc
- state memory
- 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
- 238000000034 method Methods 0.000 title claims abstract description 58
- 230000015654 memory Effects 0.000 claims abstract description 296
- 239000007787 solid Substances 0.000 claims abstract description 110
- 230000004044 response Effects 0.000 claims description 3
- 230000000977 initiatory effect Effects 0.000 claims 2
- 239000004744 fabric Substances 0.000 abstract description 64
- 230000002085 persistent effect Effects 0.000 abstract description 11
- 230000005540 biological transmission Effects 0.000 abstract description 4
- 238000005516 engineering process Methods 0.000 description 239
- 230000008569 process Effects 0.000 description 23
- 238000004891 communication Methods 0.000 description 12
- 230000007246 mechanism Effects 0.000 description 10
- 230000001186 cumulative effect Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 238000013507 mapping Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000002345 optical interference microscopy Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000002093 peripheral effect Effects 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/16—Protection against loss of memory contents
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5628—Programming or writing circuits; Data input circuits
-
- 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/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0727—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
-
- 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/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
-
- 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/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0793—Remedial or corrective actions
-
- 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/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- 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/0644—Management of space entities, e.g. partitions, extents, pools
-
- 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/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or 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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- 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
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- 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/1016—Performance improvement
-
- 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/1032—Reliability improvement, data loss prevention, degraded operation etc
-
- 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/15—Use in a specific computing environment
- G06F2212/154—Networked environment
-
- 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/7207—Details relating to flash memory management management of metadata or control data
Abstract
【解決手段】クライアントは、制御モジュールにおけるプロセッサの送信キューに書込コマンドを書き込む。書込コマンドは、プロセッサのSQに到達する前に、少なくともクライアントスイッチおよびスイッチファブリックを通過する。クライアントはSQテールドアベルレジスタに新しいSQテールを書き込む。クライアントは、そのSQにおいて処理するべき新しいコマンドが存在するとプロセッサに通知する。プロセッサはSQから書込コマンドを取得する。プロセッサは、ユーザデータを書き込むべき物理アドレスを決定する。物理アドレスはソリッドステートメモリモジュールにおける位置に対応する。プロセッサは、ユーザデータのコピーを書き込むべき2つの物理アドレスを選択する。
【選択図】図6A
Description
この出願は、2015年5月19日に出願された米国仮特許出願連続番号第62/163,782号の優先権を主張する。米国仮特許出願連続番号第62/163,782号は、ここでその全文が参照により援用される。
システムが永続ストレージにデータを書き込みかつ永続ストレージからデータを読み出し得るスピードはしばしば、システムの全体の性能の重大なファクタである。永続ストレージからデータを読み出すとともに永続ストレージにデータを書き込む従来のアプローチは、システムカーネルにおける複数のレイヤーによる処理およびハードウェアにおける複数のエンティティによる処理を必要とする。結果として、永続ストレージからデータを読み出すことおよび永続ストレージにデータを書き込むことによって、システムに有意なレイテンシーが導入され、その結果、システムの全体の性能が低減する。
ここで、当該技術の特定の実施形態が添付の図面を参照して詳細に記載される。当該技術の実施形態の以下の詳細な説明において、当該技術のより完全な理解を提供するために多くの特定の詳細が記載される。しかしながら、当該技術がこれらの特定の詳細がなくても実施されてもよいことは当業者には明らかであろう。他の例では、説明を不必要に複雑にすることを回避するよう周知の機構は詳細に記載されない。
Claims (20)
- データを格納するための方法であって、
ボールテッドメモリにおけるオープンデータページにフラグを書き込むことを含み、前記オープンデータページは第1のテーブルオブコンテンツ(TOC)ビットおよび第1の物理アドレスを含み、前記方法はさらに、
前記ボールテッドメモリにおけるオープンTOCページに、前記フラグについてのテーブルオブコンテンツエントリ(TE)を書き込むことを含み、前記オープンTOCページは第2のTOCビットおよび第2の物理アドレスを含み、前記方法はさらに、
前記オープンデータページが一杯であるという第1の判定を行うことと、
前記第1の判定に基づいて、ソリッドステートメモリモジュールにおけるページに前記フラグを書き込むこととを含み、前記ページは前記第1の物理アドレスに関連付けられており、
前記ソリッドステートメモリモジュールおよび前記ボールテッドメモリはストレージモジュールに位置する、方法。 - 前記オープンTOCページに前記TEを書き込む前に前記オープンデータページに第1のタグを書き込むことをさらに含み、前記オープンTOCページにおける第2のタグは前記第2のTOCビットおよび前記第2の物理アドレスを含む、請求項1に記載の方法。
- 前記第1の物理アドレスおよび前記第2の物理アドレスは、前記ソリッドステートメモリモジュールにおける同じブロックに位置し、関連付けられる、請求項1に記載の方法。
- 前記オープンTOCページが一杯であるという第2の判定を行うことと、
前記第2の判定に基づいて、前記第2の物理アドレスを第3の物理アドレスに置換することと、
前記ソリッドステートメモリモジュールにおいて第2のページに前記TEを書き込むこととをさらに含み、前記第2のページは前記第3の物理アドレスに関連付けられる、請求項1に記載の方法。 - 前記第1の物理アドレスおよび前記第3の物理アドレスは、前記ソリッドステートメモリモジュールにおける同じブロックに位置し、関連付けられる、請求項4に記載の方法。
- 前記ソリッドステートメモリモジュールはフラッシュメモリである、請求項1に記載の方法。
- データを格納するための方法であって、
ボールテッドメモリにおけるオープンデータページにフラグを書き込むことを含み、前記オープンデータページは第1のテーブルオブコンテンツ(TOC)ビットおよび第1の物理アドレスを含み、前記方法はさらに、
前記ボールテッドメモリにおけるオープンTOCページに、前記フラグについての第1のテーブルオブコンテンツエントリ(TE)を書き込むことを含み、前記オープンTOCページは、第2のTOCビット、第2の物理アドレス、および第2のTEを含み、前記方法はさらに、
前記ボールテッドメモリが位置するストレージモジュールについて電源障害のイベント通知を受け取ることを含み、
前記イベント通知に応答して、
前記ストレージモジュールにおけるソリッドステートメモリモジュールにおける、前記第1の物理アドレスに関連付けられないページに前記フラグを書き込むことと、
前記ソリッドステートメモリモジュールにおける、前記第2の物理アドレスに関連付けられない第2のページに前記第1のTEおよび前記第2のTEを書き込むこととを含む、方法。 - 前記ストレージモジュールの電源をオンした後、
前記ソリッドステートメモリモジュールから制御モジュールのメモリへ前記ページおよび前記第2のページのコンテンツをロードすることと、
前記メモリにおける前記第1のTEを識別することと、
前記第2の物理アドレスおよび前記第1のTEの少なくとも一部に基づき第3の物理アドレスを決定することと、
前記第3の物理アドレスを使用して、前記フラグが前記メモリに位置することを判定することと、
前記ソリッドステートメモリモジュールおよび別のソリッドステートメモリモジュールからなる群から選択されたものにおいて、第4の物理アドレスへの前記フラグの書込を開始することとをさらに含む、請求項7に記載の方法。 - 前記ストレージモジュールの電源をオンした後、
前記ソリッドステートメモリモジュールから制御モジュールのメモリへ前記ページおよび前記第2のページのコンテンツをロードすることと、
前記メモリにおける前記第2のTEを識別することと、
前記第2の物理アドレスおよび前記第2のTEの少なくとも一部に基づき第3の物理アドレスを決定することと、
前記第3の物理アドレスを使用して、前記第3の物理アドレスに関連付けられる第2のフラグが前記メモリに位置していないと判定することと、
前記ソリッドステートメモリモジュールおよび別のソリッドステートメモリモジュールからなる群から選択されるものにおいて、別の位置に前記第2のフラグを再配置するようガーベッジコレクション動作を開始することとをさらに含む、請求項7に記載の方法。 - 前記ページおよび前記第2のページは前記ソリッドステートメモリモジュールの留保部分に関連付けられ、前記第2のフラグは前記ソリッドステートメモリモジュールにおける第3のページに格納され、前記第3のページは前記ソリッドステートメモリモジュールの非留保部分に関連付けられる、請求項9に記載の方法。
- 前記ソリッドステートメモリモジュールはフラッシュメモリであり、前記留保部分はシングルレベルセル(SLC: single-level cell)モードで動作しており、前記非留保部分はマルチレベルセル(MLC: multi-level cell)モードで動作している、請求項10に記載の方法。
- 前記ページおよび前記第2のページは、前記ソリッドステートメモリモジュールの留保部分に関連付けられる、請求項7に記載の方法。
- 前記ソリッドステートメモリモジュールはフラッシュメモリであり、前記留保部分はシングルレベルセル(SLC: single-level cell)モードで動作している、請求項7に記載の方法。
- 前記ページおよび前記第2のページは、前記ソリッドステートメモリモジュールの最下位ビット(LSB)ページである、請求項7に記載の方法。
- コンピュータ読取可能プログラムコードを含むデータを格納するための一時的でないコンピュータ読取可能媒体であって、前記コンピュータ読取可能プログラムコードは、
ボールテッドメモリにおけるオープンデータページにフラグを書き込むことを行うためのものであり、前記オープンデータページは第1のテーブルオブコンテンツ(TOC)ビットおよび第1の物理アドレスを含み、前記コンピュータ読取可能プログラムコードはさらに、
前記ボールテッドメモリにおけるオープンTOCページに、前記フラグについての第1のテーブルオブコンテンツエントリ(TE)を書き込むことを行うためのものであり、前記オープンTOCページは第2のTOCビット、第2の物理アドレス、および第2のTEを含み、前記コンピュータ読取可能プログラムコードはさらに、
前記ボールテッドメモリが位置するストレージモジュールについて電源障害のイベント通知を受け取ることを行うためのものであり、
前記イベント通知に応答して、
前記ストレージモジュールにおけるソリッドステートメモリモジュールにおける、前記第1の物理アドレスに関連付けられないページに前記フラグを書き込むことと、
前記ソリッドステートメモリモジュールにおける、前記第2の物理アドレスに関連付けられない第2のページに前記第1のTEおよび前記第2のTEを書き込むこととを行うためのものである、一時的でないコンピュータ読取可能媒体。 - 前記ストレージモジュールの電源をオンした後、
前記ソリッドステートメモリモジュールから制御モジュールのメモリへ前記ページおよび前記第2のページのコンテンツをロードすることと、
前記メモリにおける前記第1のTEを識別することと、
前記第2の物理アドレスおよび前記第1のTEの少なくとも一部に基づき第3の物理アドレスを決定することと、
前記第3の物理アドレスを使用して、前記フラグがメモリに位置することを判定することと、
前記ソリッドステートメモリモジュールおよび別のソリッドステートメモリモジュールからなる群から選択されたものにおいて、第4の物理アドレスへの前記フラグの書込を開始することとを行うためのコンピュータ読取可能プログラムコードをさらに含む、請求項15に記載の一時的でないコンピュータ読取可能媒体。 - 前記ストレージモジュールの電源をオンした後、
前記ソリッドステートメモリモジュールから制御モジュールのメモリへ前記ページおよび前記第2のページのコンテンツをロードすることと、
前記メモリにおける前記第2のTEを識別することと、
前記第2の物理アドレスおよび前記第2のTEの少なくとも一部に基づき第3の物理アドレスを決定することと、
前記第3の物理アドレスを使用して、前記第3の物理アドレスに関連付けられる第2のフラグが前記メモリに位置していないと判定することと、
前記ソリッドステートメモリモジュールおよび別のソリッドステートメモリモジュールからなる群から選択されるものにおいて、別の位置に前記第2のフラグを再配置するようガーベッジコレクション動作を開始することとを行うためのコンピュータ読取可能プログラムコードをさらに含む、請求項15に記載の一時的でないコンピュータ読取可能媒体。 - 前記ページおよび前記第2のページは前記ソリッドステートメモリモジュールの留保部分に関連付けられ、前記第2のフラグは前記ソリッドステートメモリモジュールにおける第3のページに格納され、前記第3のページは前記ソリッドステートメモリモジュールの非留保部分に関連付けられる、請求項17に記載の一時的でないコンピュータ読取可能媒体。
- 前記ソリッドステートメモリモジュールはフラッシュメモリであり、前記留保部分はシングルレベルセル(SLC: single-level cell)モードで動作しており、前記非留保部分はマルチレベルセル(MLC: multi-level cell)モードで動作している、請求項18に記載の一時的でないコンピュータ読取可能媒体。
- 前記ページおよび前記第2のページは、前記ソリッドステートメモリモジュールの最下位ビット(LSB)ページである、請求項15に記載の一時的でないコンピュータ読取可能媒体。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562163782P | 2015-05-19 | 2015-05-19 | |
US62/163,782 | 2015-05-19 | ||
US14/754,838 US9911487B2 (en) | 2015-05-19 | 2015-06-30 | Method and system for storing and recovering data from flash memory |
US14/754,838 | 2015-06-30 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018106914A Division JP6872513B2 (ja) | 2015-05-19 | 2018-06-04 | データを格納するための方法およびデータを格納するための一時的でないコンピュータ読取可能記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016219013A true JP2016219013A (ja) | 2016-12-22 |
JP6506723B2 JP6506723B2 (ja) | 2019-04-24 |
Family
ID=56026725
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016099400A Active JP6506723B2 (ja) | 2015-05-19 | 2016-05-18 | データを格納するための方法およびデータを格納するための一時的でないコンピュータ読取可能記録媒体 |
JP2018106914A Active JP6872513B2 (ja) | 2015-05-19 | 2018-06-04 | データを格納するための方法およびデータを格納するための一時的でないコンピュータ読取可能記録媒体 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018106914A Active JP6872513B2 (ja) | 2015-05-19 | 2018-06-04 | データを格納するための方法およびデータを格納するための一時的でないコンピュータ読取可能記録媒体 |
Country Status (4)
Country | Link |
---|---|
US (2) | US9911487B2 (ja) |
EP (1) | EP3096221B1 (ja) |
JP (2) | JP6506723B2 (ja) |
CN (1) | CN106168925B (ja) |
Families Citing this family (75)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105446653B (zh) | 2014-08-27 | 2018-12-14 | 阿里巴巴集团控股有限公司 | 一种数据合并方法和设备 |
US10063422B1 (en) * | 2015-12-29 | 2018-08-28 | Amazon Technologies, Inc. | Controlled bandwidth expansion in compressed disaggregated storage systems |
US9921756B2 (en) * | 2015-12-29 | 2018-03-20 | EMC IP Holding Company LLC | Method and system for synchronizing an index of data blocks stored in a storage system using a shared storage module |
KR20180064198A (ko) * | 2016-12-05 | 2018-06-14 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
CN108228082B (zh) * | 2016-12-21 | 2021-04-02 | 伊姆西Ip控股有限责任公司 | 存储系统和用于存储控制的方法 |
CN111897751A (zh) * | 2017-01-26 | 2020-11-06 | 华为技术有限公司 | 一种数据传输的方法、装置、设备和系统 |
CN107168647B (zh) * | 2017-04-17 | 2020-10-23 | 武汉永力科技股份有限公司 | Flash数据读写方法及系统 |
US10359954B2 (en) | 2017-05-31 | 2019-07-23 | Alibaba Group Holding Limited | Method and system for implementing byte-alterable write cache |
US10884926B2 (en) | 2017-06-16 | 2021-01-05 | Alibaba Group Holding Limited | Method and system for distributed storage using client-side global persistent cache |
US10303241B2 (en) | 2017-06-19 | 2019-05-28 | Alibaba Group Holding Limited | System and method for fine-grained power control management in a high capacity computer cluster |
US10678443B2 (en) | 2017-07-06 | 2020-06-09 | Alibaba Group Holding Limited | Method and system for high-density converged storage via memory bus |
US10564856B2 (en) | 2017-07-06 | 2020-02-18 | Alibaba Group Holding Limited | Method and system for mitigating write amplification in a phase change memory-based storage device |
US10303601B2 (en) | 2017-08-11 | 2019-05-28 | Alibaba Group Holding Limited | Method and system for rearranging a write operation in a shingled magnetic recording device |
US10423508B2 (en) | 2017-08-11 | 2019-09-24 | Alibaba Group Holding Limited | Method and system for a high-priority read based on an in-place suspend/resume write |
US20190073132A1 (en) * | 2017-09-05 | 2019-03-07 | Alibaba Group Holding Limited | Method and system for active persistent storage via a memory bus |
US10642522B2 (en) | 2017-09-15 | 2020-05-05 | Alibaba Group Holding Limited | Method and system for in-line deduplication in a storage drive based on a non-collision hash |
US10496829B2 (en) | 2017-09-15 | 2019-12-03 | Alibaba Group Holding Limited | Method and system for data destruction in a phase change memory-based storage device |
US10503409B2 (en) | 2017-09-27 | 2019-12-10 | Alibaba Group Holding Limited | Low-latency lightweight distributed storage system |
US10789011B2 (en) | 2017-09-27 | 2020-09-29 | Alibaba Group Holding Limited | Performance enhancement of a storage device using an integrated controller-buffer |
US10860334B2 (en) | 2017-10-25 | 2020-12-08 | Alibaba Group Holding Limited | System and method for centralized boot storage in an access switch shared by multiple servers |
US10445190B2 (en) | 2017-11-08 | 2019-10-15 | Alibaba Group Holding Limited | Method and system for enhancing backup efficiency by bypassing encoding and decoding |
US10877898B2 (en) | 2017-11-16 | 2020-12-29 | Alibaba Group Holding Limited | Method and system for enhancing flash translation layer mapping flexibility for performance and lifespan improvements |
US10891239B2 (en) | 2018-02-07 | 2021-01-12 | Alibaba Group Holding Limited | Method and system for operating NAND flash physical space to extend memory capacity |
US10496548B2 (en) | 2018-02-07 | 2019-12-03 | Alibaba Group Holding Limited | Method and system for user-space storage I/O stack with user-space flash translation layer |
US10831404B2 (en) | 2018-02-08 | 2020-11-10 | Alibaba Group Holding Limited | Method and system for facilitating high-capacity shared memory using DIMM from retired servers |
US10402112B1 (en) | 2018-02-14 | 2019-09-03 | Alibaba Group Holding Limited | Method and system for chunk-wide data organization and placement with real-time calculation |
JP7181447B2 (ja) * | 2018-03-30 | 2022-12-01 | 株式会社ソシオネクスト | 情報処理システム、情報処理方法及び半導体装置 |
WO2019222958A1 (en) | 2018-05-24 | 2019-11-28 | Alibaba Group Holding Limited | System and method for flash storage management using multiple open page stripes |
US11816043B2 (en) | 2018-06-25 | 2023-11-14 | Alibaba Group Holding Limited | System and method for managing resources of a storage device and quantifying the cost of I/O requests |
US10921992B2 (en) | 2018-06-25 | 2021-02-16 | Alibaba Group Holding Limited | Method and system for data placement in a hard disk drive based on access frequency for improved IOPS and utilization efficiency |
US10871921B2 (en) | 2018-07-30 | 2020-12-22 | Alibaba Group Holding Limited | Method and system for facilitating atomicity assurance on metadata and data bundled storage |
US10747673B2 (en) | 2018-08-02 | 2020-08-18 | Alibaba Group Holding Limited | System and method for facilitating cluster-level cache and memory space |
US10996886B2 (en) | 2018-08-02 | 2021-05-04 | Alibaba Group Holding Limited | Method and system for facilitating atomicity and latency assurance on variable sized I/O |
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 |
US10852948B2 (en) | 2018-10-19 | 2020-12-01 | Alibaba Group Holding | System and method for data organization in shingled magnetic recording drive |
US10795586B2 (en) | 2018-11-19 | 2020-10-06 | Alibaba Group Holding Limited | System and method for optimization of global data placement to mitigate wear-out of write cache and NAND flash |
CN109582235B (zh) * | 2018-11-27 | 2021-12-21 | 杭州宏杉科技股份有限公司 | 管理元数据存储方法及装置 |
US10769018B2 (en) | 2018-12-04 | 2020-09-08 | Alibaba Group Holding Limited | System and method for handling uncorrectable data errors in high-capacity storage |
US10977122B2 (en) | 2018-12-31 | 2021-04-13 | Alibaba Group Holding Limited | System and method for facilitating differentiated error correction in high-density flash devices |
US10884654B2 (en) | 2018-12-31 | 2021-01-05 | Alibaba Group Holding Limited | System and method for quality of service assurance of multi-stream scenarios in a hard disk drive |
US11061735B2 (en) | 2019-01-02 | 2021-07-13 | Alibaba Group Holding Limited | System and method for offloading computation to storage nodes in distributed system |
US11132291B2 (en) | 2019-01-04 | 2021-09-28 | Alibaba Group Holding Limited | System and method of FPGA-executed flash translation layer in multiple solid state drives |
US11200337B2 (en) | 2019-02-11 | 2021-12-14 | Alibaba Group Holding Limited | System and method for user data isolation |
US10922234B2 (en) | 2019-04-11 | 2021-02-16 | Alibaba Group Holding Limited | Method and system for online recovery of logical-to-physical mapping table affected by noise sources in a solid state drive |
US10908960B2 (en) | 2019-04-16 | 2021-02-02 | Alibaba Group Holding Limited | Resource allocation based on comprehensive I/O monitoring in a distributed storage system |
US11169873B2 (en) | 2019-05-21 | 2021-11-09 | Alibaba Group Holding Limited | Method and system for extending lifespan and enhancing throughput in a high-density solid state drive |
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 |
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 |
US11042307B1 (en) | 2020-01-13 | 2021-06-22 | Alibaba Group Holding Limited | System and method for facilitating improved utilization of NAND flash based on page-wise operation |
US10983930B1 (en) | 2020-01-14 | 2021-04-20 | EMC IP Holding Company LLC | Efficient non-transparent bridge (NTB) based data transport |
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 |
US10923156B1 (en) | 2020-02-19 | 2021-02-16 | Alibaba Group Holding Limited | Method and system for facilitating low-cost high-throughput storage for accessing large-size I/O blocks in a hard disk drive |
US10872622B1 (en) | 2020-02-19 | 2020-12-22 | Alibaba Group Holding Limited | Method and system for deploying mixed storage products on a uniform storage infrastructure |
US11150986B2 (en) | 2020-02-26 | 2021-10-19 | Alibaba Group Holding Limited | Efficient compaction on log-structured distributed file system using erasure coding for resource consumption reduction |
US11144250B2 (en) | 2020-03-13 | 2021-10-12 | Alibaba Group Holding Limited | Method and system for facilitating a persistent memory-centric system |
US11200114B2 (en) | 2020-03-17 | 2021-12-14 | Alibaba Group Holding Limited | System and method for facilitating elastic error correction code in 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 |
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 |
US11218165B2 (en) | 2020-05-15 | 2022-01-04 | Alibaba Group Holding Limited | Memory-mapped two-dimensional error correction code for multi-bit error tolerance in DRAM |
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 |
CN112231139A (zh) * | 2020-09-11 | 2021-01-15 | 莱芜职业技术学院 | 一种计算机内存数据保护方法 |
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 |
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 |
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 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110093650A1 (en) * | 2009-10-16 | 2011-04-21 | Samsung Electronics Co., Ltd. | Nonvolatile memory system and related method of preserving stored data during power interruption |
US8370567B1 (en) * | 2012-03-23 | 2013-02-05 | DSSD, Inc. | Storage system with self describing data |
JP2013065308A (ja) * | 2011-09-16 | 2013-04-11 | Apple Inc | 不揮発性メモリを有するシステムの非正常シャットダウンの取り扱い |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7421552B2 (en) | 2006-03-17 | 2008-09-02 | Emc Corporation | Techniques for managing data within a data storage system utilizing a flash-based memory vault |
US8909864B2 (en) * | 2011-09-30 | 2014-12-09 | Hewlett-Packard Development Company, L.P. | Multicast write commands |
US8301832B1 (en) * | 2012-03-23 | 2012-10-30 | DSSD, Inc. | Storage system with guaranteed read latency |
US8601206B1 (en) | 2013-03-14 | 2013-12-03 | DSSD, Inc. | Method and system for object-based transactions in a storage system |
-
2015
- 2015-06-30 US US14/754,838 patent/US9911487B2/en active Active
-
2016
- 2016-03-31 CN CN201610200629.XA patent/CN106168925B/zh active Active
- 2016-05-18 JP JP2016099400A patent/JP6506723B2/ja active Active
- 2016-05-19 EP EP16170491.1A patent/EP3096221B1/en active Active
-
2018
- 2018-01-19 US US15/875,685 patent/US10229734B1/en active Active
- 2018-06-04 JP JP2018106914A patent/JP6872513B2/ja active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110093650A1 (en) * | 2009-10-16 | 2011-04-21 | Samsung Electronics Co., Ltd. | Nonvolatile memory system and related method of preserving stored data during power interruption |
US8819336B2 (en) * | 2009-10-16 | 2014-08-26 | Samsung Electronics Co., Ltd. | Nonvolatile memory system and related method of preserving stored data during power interruption |
JP2013065308A (ja) * | 2011-09-16 | 2013-04-11 | Apple Inc | 不揮発性メモリを有するシステムの非正常シャットダウンの取り扱い |
US8370567B1 (en) * | 2012-03-23 | 2013-02-05 | DSSD, Inc. | Storage system with self describing data |
WO2013142673A1 (en) * | 2012-03-23 | 2013-09-26 | DSSD, Inc. | System and methods for storing data using table of contents entries |
JP2015515678A (ja) * | 2012-03-23 | 2015-05-28 | ディ・エス・エス・ディ・インコーポレイテッドDssd, Inc. | テーブル・オブ・コンテンツエントリを使用してデータを格納するためのシステムおよび方法 |
Also Published As
Publication number | Publication date |
---|---|
JP6506723B2 (ja) | 2019-04-24 |
US9911487B2 (en) | 2018-03-06 |
CN106168925A (zh) | 2016-11-30 |
EP3096221A1 (en) | 2016-11-23 |
US20160343429A1 (en) | 2016-11-24 |
EP3096221B1 (en) | 2019-12-18 |
JP6872513B2 (ja) | 2021-05-19 |
JP2018156679A (ja) | 2018-10-04 |
US10229734B1 (en) | 2019-03-12 |
CN106168925B (zh) | 2020-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6872513B2 (ja) | データを格納するための方法およびデータを格納するための一時的でないコンピュータ読取可能記録媒体 | |
JP6385995B2 (ja) | テーブル・オブ・コンテンツエントリを使用してデータを格納するためのシステムおよび方法 | |
US11704069B2 (en) | Memory system and method of controlling nonvolatile memory | |
JP6005835B2 (ja) | マルチキャストdmaおよび統合されたアドレス空間を有するストレージシステム | |
US11074015B2 (en) | Memory system and method for controlling nonvolatile memory by a host | |
US10929067B2 (en) | Nonvolatile memory system and method for controlling write and read operations in the nonvolatile memory by a host | |
US20210064291A1 (en) | Memory system and method of controlling nonvolatile memory | |
US8392428B1 (en) | Method and system for hash fragment representation | |
US11675544B2 (en) | Memory system for controlling nonvolatile memory including a plurality of nonvolatile memory dies each including a plurality of physical blocks | |
JP2023010765A (ja) | メモリシステム | |
US11262943B2 (en) | Memory system and method for controlling nonvolatile memory with a host memory buffer | |
EP4303734A1 (en) | Systems, methods, and devices for using a reclaim unit based on a reference update in a storage device | |
CN117369715A (zh) | 基于存储设备中的引用更新使用回收单元的系统、方法和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170421 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170530 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170828 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20180206 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190329 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6506723 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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |