JP2019532413A - 記憶対象のデータをフラッシュメモリベースの記憶媒体に書き込む方法及びデバイス - Google Patents

記憶対象のデータをフラッシュメモリベースの記憶媒体に書き込む方法及びデバイス Download PDF

Info

Publication number
JP2019532413A
JP2019532413A JP2019514207A JP2019514207A JP2019532413A JP 2019532413 A JP2019532413 A JP 2019532413A JP 2019514207 A JP2019514207 A JP 2019514207A JP 2019514207 A JP2019514207 A JP 2019514207A JP 2019532413 A JP2019532413 A JP 2019532413A
Authority
JP
Japan
Prior art keywords
host machine
cumulative
physical storage
data
stored
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2019514207A
Other languages
English (en)
Inventor
ハイポン チャン
ハイポン チャン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of JP2019532413A publication Critical patent/JP2019532413A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Read Only Memory (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本願は、記憶対象のデータをフラッシュメモリベースの記憶媒体に書き込む方法であって、少なくとも2つの物理記憶部に対する書き込み制御を実行する中央制御機能モジュールに適用される方法を提供する。本方法は、物理記憶部内の各々内の全てのブロックの累計消去カウントを取得すること(310)と、事前設定の書き込み条件を満足する複数の物理記憶部のうち最も小さい累計消去カウントを有する少なくとも1つの物理記憶部に記憶対象のデータを書き込むこと(320)とを含む。この技術ソリューションは、一高可用性シナリオでは、異なる物理記憶部の間の平衡がとれた消去及び書き込みを達成し、1つの物理記憶部への過剰な消去及び書き込み回数による前記物理記憶部の早期の損傷を回避し、前記物理記憶部が配置されたシステムの安定性を向上させる。

Description

本願は、コンピュータ及びネットワーク技術の分野に関し、特に、記憶対象のデータをフラッシュメモリベースの記憶媒体に書き込む方法及びデバイスに関する。
記憶媒体としてフラッシュメモリを使用し電子読み出し/書き込みを採用するSSD(ソリッドステートドライブ)は優れた読み出し/書き込み性能を有し、パーソナルコンピュータ及びサーバの主流の記憶ハードウェアになっている。SSDの記憶媒体はNANDフラッシュセルであり、その各ビットはビットの値がトランジスタを充電することで1から0に変更でき、またその値が消去によってのみ0から1にリセットできるという物理的特性を有する。消去動作はブロック単位で実行される。
NANDフラッシュセルの寿命はセル上の消去及び書き込み回数によって測定される。ブロックがこの消去及び書き込み回数に達すると、ブロックをデータ記憶に使用することは不可能になり、ブロックは不良ブロックになる。不良ブロックの数が増加するにつれて、SSDの耐用年数は急激に減少する。
したがって、FTL(フラッシュトランスレーションレベル)バランス消去及び書き込みアルゴリズム又はバランス消去及び書き込み機能を有するファイルシステムレイヤを現在の技術内で使用し、可能な限り、個々のSSDの耐用年数を延ばすように同じSSD上の全てのブロックについてバランス消去及び書き込みが達成される。その例は、FTLレイヤ動的バランシングストラテジー、FTLレイヤ静的バランシングストラテジー、JAFF2(ジャーナリングフラッシュファイルシステムバージョン2)、YAFFS(イエットアナザーフラッシュファイルシステム)及び同種のものを含む。
但し、複数の利用可能なSSDを有するシステムでは、1つ又は複数のSSDに対して1つ又は複数のその他のSSD上と比較してはるかに多くの回数の消去及び書き込みが実行されることがしばしばある。その結果、過剰に使用されたSSDは早期に損傷する。SSD上に記憶されたデータに高可用性ソリューションが適用されない場合、SSDはデータ損失を来す可能性がある。高可用性記憶ソリューションを採用するシステムでは、データ移動がさらに発生するためにシステムの安定性が弱まる可能性がある。
この点に鑑みて、本願は記憶対象のデータをフラッシュメモリベースの記憶媒体に書き込む方法であって、少なくとも2つの物理記憶部に対する書き込み制御を実行する中央制御機能モジュールに適用され、前記方法が、
前記物理記憶部の各々内の全てのブロックの累計消去カウントを取得することと、
事前設定の書き込み条件を満足する複数の物理記憶部のうち最も小さい累計消去カウントを有する少なくとも1つの物理記憶部に前記記憶対象のデータを書き込むこととを含む方法を提供する。
本願は、記憶対象のデータをフラッシュメモリベースの記憶媒体に書き込むデバイスであって、前記デバイスが少なくとも2つの物理記憶部に対する書き込み制御を実行する中央制御機能モジュールに適用され、前記デバイスが、
前記物理記憶部内の各々内の全てのブロックの累計消去カウントを取得するように構成された累計消去カウント部材と、
事前設定の書き込み条件を満足する複数の物理記憶部のうち最も小さい累計消去カウントを有する少なくとも1つの物理記憶部に前記記憶対象のデータを書き込むように構成された物理記憶部部材とを備えるデバイスをさらに提供する。
上記の技術ソリューションから、本願の実施形態で、一非高可用性シナリオでは、前記中央制御機能モジュールが、各物理記憶部内の全てのブロックの累計消去カウントに基づいて、記憶対象のデータを書き込むための事前設定の書き込み条件を満足する複数の物理記憶部から最も小さい累計消去カウントを有する物理記憶部を選択し、それによって、異なる物理記憶部の間でのバランスがとれた消去及び書き込みを達成し、1つの物理記憶部への過剰な消去及び書き込み回数による前記物理記憶部の早期の損傷を回避し、データ損失の可能性を低下させ、一高可用性シナリオでは、さらに、前記物理記憶部が配置されたシステムの安定性を向上させることが分かる。
本願のいくつかの実施形態の第1の適用例におけるホストマシンの構成の概略構造図である。 本願のいくつかの実施形態の第2の適用例におけるクラスタの構成の概略構造図である。 本願の実施形態Iの記憶対象のデータを書き込む方法のフローチャートである。 本願の実施形態IIのクラスタに記憶対象のデータを書き込む方法のフローチャートである。 本願のいくつかの実施形態のデバイスのハードウェア構造図である。 本願のいくつかの実施形態の記憶対象のデータを書き込むデバイスの論理構造図である。 本願のいくつかの実施形態のクラスタの論理構造図である。
本願の実施形態は、記憶対象のデータをフラッシュメモリベースの記憶媒体に書き込む新規の方法であって、前記方法が、各物理記憶部内の全てのブロックの累計消去カウントの統計データに基づいて、記憶対象のデータを書き込むための事前設定の書き込み条件を満足する複数の物理記憶部から最も小さい累計消去カウントを有する1つ又は複数の物理記憶部を選択し、それによって、異なる物理記憶部の耐用年数が互いに近づくように異なる物理記憶部の間でのバランスがとれた消去及び書き込みを達成し、それによって、1つの物理記憶部への早期の損傷の結果としてのデータ損失の可能性又はシステムの安定性への影響の可能性を低減し、現在の技術における問題を解決することを含む方法を提供する。
本願の実施形態では、2つ以上の物理記憶部が書き込み制御のために中央制御機能モジュールによって制御される。すなわち、前記中央制御機能モジュールはどの1つ又は複数の物理記憶部に記憶対象のデータを書き込むかを決定する。ここで、物理記憶部は他の物理記憶部から物理的に独立したエンティティであり、フラッシュメモリベースの記憶媒体を使用する。物理記憶部は独立したフラッシュメモリベースの物理記憶コンポーネント(例えば、フラッシュチップ、ハードドライブ、及び同種のもの)、少なくとも1つの独立したフラッシュメモリベースの物理記憶コンポーネントを備えるホストマシン(例えば、ディスクアレイキャビネット、パーソナルコンピュータ、サーバ)、及び同種のものであってもよい。前記中央制御機能モジュールは、ソフトウェアによって又はソフトウェアとハードウェアとの組み合わせによって実施され、物理記憶部上で稼働でき、又は前記中央制御機能モジュールによって制御される全ての物理記憶部から独立した別のホストマシン上で稼働できる。
図1は、ホストマシンが複数のハードドライブ(本適用シナリオでは物理記憶部)と共に設置され、記憶制御モジュール(本適用シナリオでは中央制御機能モジュール)がどのハードドライブにどのデータを記憶するかの決定を含めて全てのハードドライブ上の読み出し/書き込み制御を実行するためにホストマシン上で稼働する本願のいくつかの実施形態の適用シナリオの例を示す図である。
図2は、複数のホストマシン(本適用シナリオでは物理記憶部)によって形成されるクラスタ内の1つのホストマシンが主制御ノードであり、他のホストマシンが動作ノードである本願のいくつかの実施形態の適用シナリオの別の例である。クラスタのクラスタ制御モジュール(本適用シナリオでは中央制御機能モジュール)は主制御ノード上で稼働して複数のホストマシンに関するデータ記憶の割り当て及び管理を実行する。主制御ノードとして機能しているホストマシンに障害が発生した場合、別のホストマシンを主制御ノードにアップグレードしてクラスタの動作を継続することができる。
本願のいくつかの実施形態の適用分野における中央制御機能モジュールは計算及び記憶が可能な任意のデバイス、例えば、タブレットコンピュータ、PC(パーソナルコンピュータ)、ラップトップコンピュータ、及びサーバ上で稼働できる。
本願の実施形態Iでは、記憶対象のデータを書き込む方法のプロセスが図3に示されている。
ステップ310で、各物理記憶部内の全てのブロックの累計消去カウントを取得する。
ブロックはデータ記憶域内の記憶空間割り当ての最小単位である。ブロックが割り当てられると、そのブロックについて消去動作が実行され、ブロックの空間を取得するアプリケーション(又はスレッド、プロセス、及び同種のもの)はブロックを用いてデータを書き込むことができる。したがって、ブロックが割り当てられたカウントはブロックが消去された累積カウントである。
物理的に独立した記憶コンポーネント(例えば、ハードドライブ、フラッシュチップ、及び同種のもの)の場合、ブロック分割は、通常、記憶コンポーネントの起動時に実行される。ハードドライブを例にとると、大半のファイルシステムで、アドミニストレータはハードドライブを初期化する際にブロックのサイズを指定できる。ハードドライブが配置されたホストマシンの記憶制御モジュールがハードドライブ上で記憶管理を行うと仮定すると、記憶制御モジュールはハードドライブ上の全てのブロックのうちハードドライブの各ブロックを表す一意的なブロック識別子を使用し、ハードドライブの各ブロック識別子と累積消去カウントとの間の対応関係を維持することができる。あるブロックのブロック識別子の累積消去カウントはそのブロックが割り当てられるたびに1だけインクリメントされる。この適用シナリオでハードドライブが前記物理記憶部として機能する場合、全てのブロックの累積消去カウントを合計してハードドライブの累計消去カウントを取得することができる。或いは、記憶制御モジュールはハードドライブのスーパーブロック内の全てのブロックの累計消去カウントを維持することもできる。累計消去カウントは複数のブロックが割り当てられるたびに割り当てられるブロックの数だけインクリメントされる。言い換えると、累計消去カウントは1ブロックが割り当てられるたびに1だけインクリメントされる。上記の方法で、物理的に独立した記憶コンポーネントの全てのブロックの累計消去カウントを取得できる。
前記物理記憶部が少なくとも1つの独立した物理記憶コンポーネントを備えるホストマシンの場合、各ホストマシン上の記憶制御モジュールはその記憶制御モジュールによって制御される物理記憶コンポーネントの累計消去カウントを計数し、前記累計消去カウントを中央制御機能モジュールに報告することができる。報告の方法は、例えば、一適用シナリオの実施態様に従って決定できる。例えば、全てのホストマシンが1つのクラスタを形成すると仮定すると、そのクラスタのクラスタ制御モジュールはその適用シナリオにおける中央制御機能モジュールである。各ホストマシンはホストマシン上の全てのブロックの累計消去カウントを事前設定の周期でクラスタ制御モジュールにプロアクティブに報告することができる。或いは、クラスタ制御モジュールは全てのブロックの累計消去カウントについて全てのホストマシンを事前設定の周期でポーリングでき、次いでクラスタ制御モジュールは各ホストマシン上の全てのブロックの累計消去カウントを事前設定の周期で受信することができる。
ステップ320で、事前設定の書き込み条件を満足する複数の物理記憶部のうち最も小さい累計消去カウントを有する少なくとも1つの物理記憶部に記憶対象のデータを書き込む。
記憶対象のデータをN個(Nは自然数)の物理記憶部に書き込む必要があると仮定すると、現在の技術において1つ又は複数の条件を用いて、記憶対象のデータを書き込むための複数の物理記憶部がある場合にどの物理記憶部に記憶対象のデータを書き込むかが決定される。例えば、満足すべき条件は、通常、残り記憶空間が書き込まれる記憶対象のデータを収容するのに充分であるということを含む。本願のいくつかの実施形態では、事前設定の書き込み条件は上記の条件の1つ以上の許容範囲に従って生成できるが、これについて2つの実施例を用いて以下に説明する。
第1の実施例では、複数のハードドライブのうち、最大残り記憶空間を有するN個のハードドライブが記憶対象のデータを書き込むハードドライブとして使用される。次いで、本願のいくつかの実施形態では、事前設定の書き込み条件は残り記憶空間が事前設定の値又はハードドライブ容量の事前設定のパーセントより小さくないということであってもよい。
第2の実施例では、複数のホストマシンのうち、記憶対象のデータを収容するのに充分で前記複数のホストマシンにすでに記憶されているデータへの最も少ないアクセス回数を有する残り記憶空間を有するN個のホストマシンが選択される。次いで、本願のいくつかの実施形態では、事前設定の書き込み条件は残り記憶空間が記憶対象のデータを収容するのに充分でホストマシンにすでに記憶されているデータへのアクセス回数がしきい値を超えていないということであってもよい。
物理記憶部に書き込まれる記憶対象のデータはファイルを保存するときに書き込まれる記憶対象のデータであってもよく、又はファイルを移動するときに書き込まれる記憶対象のデータであってもよい。中央制御機能モジュールの場合、ファイルを保存するときに書き込まれる記憶対象のデータは、通常、新しく追加された記憶対象のデータであるが、ファイルを移動するときに書き込まれる記憶対象のデータはすでに保存されている記憶対象のデータの保守を意味する。一適用シナリオの好ましい実施態様によれば、ファイルを保存するときには記憶対象のデータのコピーが1つあればよく、又はファイルを保存するときには記憶対象のデータのコピーが2つ以上あればよく、後者の場合、各々のコピーを異なる物理記憶部にコピーすることが通常必要である。ファイル移動は2つのケースを含む。1つのケースでは、ファイルを記憶する物理記憶部が置き換えられる。すなわち、記憶されたファイルは新しい物理記憶部に書き込まれ、そのファイルを元々記憶していた物理記憶部から削除される。その適用シナリオがファイルの3つ以上のコピーを記憶する別のケースでは、ファイルの1つが損傷したか又はファイルの1つが配置された物理記憶部が故障した場合、正常に動作している物理記憶部にファイルをコピーしてシステム全体の高可用性要求事項を満足する必要がある。ファイル移動中、事前設定の書き込み条件を用いて前記ファイルのコピーをすでに記憶している物理記憶部及び/又は故障した物理記憶部を除外することができる。
したがって、ファイル記憶又はファイル移動の何れかのための記憶対象のデータの書き込みに複数の物理記憶部が必要であるという可能性がある。それゆえに、各物理記憶部について全てのブロックの累計消去カウントを取得した後で、中央制御機能モジュールは、事前設定の書き込み条件に従って、記憶対象のデータの書き込み動作の必要があるときに選択可能な複数の物理記憶部を決定し、前記複数の物理記憶部から、記憶対象のデータを書き込むための最小累計消去カウントを有するN個(Nは自然数)の物理記憶部を選択する。こうして、異なる物理記憶部の間でのバランスがとれた消去及び書き込みを達成できる。
本願の実施形態では、記憶対象のデータを書き込むときの異なる物理記憶部の間でのバランスがとれた消去及び書き込みを実行することに加えて、中央制御機能モジュールは、物理記憶部の間に消去及び書き込みの大幅な差がある場合にファイル移動をプロアクティブに実行して複数の物理記憶部の使用のバランスをとることもできる。例えば、中央制御機能モジュールは各物理記憶部の消去及び書き込みをモニタできる。2つの物理記憶部の累計消去カウントの差が事前設定の偏差範囲を超える場合、記憶対象のデータはより大きい累計消去カウントを有する物理記憶部の一方からより小さい累計消去カウントを有する物理記憶部へ移動される。
例示的な一適用シナリオでは、事前設定の偏差範囲は記憶するファイルのサイズ及びバランスがとれた消去及び書き込み要求事項などの要因に従って決定できる。一適用シナリオでは、事前設定の偏差範囲は全ての物理記憶部の累計消去カウントの平均に基づいて決定できる。例えば、平均の20%を事前設定の偏差範囲として使用できる。
したがって、本願の実施形態Iで、一非高可用性シナリオでは、前記中央制御機能モジュールが、各物理記憶部内の全てのブロックの累計消去カウントの統計データに基づいて、記憶対象のデータを書き込むための事前設定の書き込み条件を満足する複数の物理記憶部から最も小さい累計消去カウントを有する物理記憶部を選択し、それによって、異なる物理記憶部の間でのバランスがとれた消去及び書き込みを達成し、異なる物理記憶部の耐用年数が互いに近づくように1つの物理記憶部への過剰な消去及び書き込み回数による前記物理記憶部の早期の損傷を回避し、それによって、データ損失の可能性を低下させることができ、一高可用性シナリオでは、さらに、前記物理記憶部が配置されたシステムの安定性を向上させることができる。
少なくともいくつかのホストマシンが複数のホストマシンからなるクラスタ内に3つ以上のハードドライブ又はその他の独立した複数の物理記憶コンポーネントを有する場合、本願の実施形態はクラスタレベルとホストマシンレベルとにそれぞれ適用できることに留意すべきである。すなわち、異なるホストマシンの間でのバランスがとれた消去及び書き込みがクラスタレベルで達成され、1つのホストマシン上の異なるハードドライブ又はその他の複数の物理記憶コンポーネント間でのバランスがとれた消去及び書き込みがホストマシンレベルで達成される。さらに、現在の技術においてFTLバランス消去及び書き込みアルゴリズム又はバランス消去及び書き込み機能を有するファイルシステムレイヤを1つのホストマシン又はその他の複数の物理記憶コンポーネント上で使用して物理記憶コンポーネントのレベルでのバランスがとれた消去及び書き込みを達成し、それによって、クラスタシステム全体の全てのレベルでのバランスがとれた消去及び書き込みを達成し、クラスタシステム内の記憶デバイスの耐用年数を延ばし、クラスタシステムの安定性を向上させることができる。
本願の実施形態IIでは、記憶対象のデータをクラスタに書き込む方法のフローチャートが図4に示されている。この実施形態のクラスタは少なくとも2つのホストマシンを備え、前記ホストマシンはクラスタ制御モジュールによる記憶管理の対象になる。各ホストマシンは記憶媒体としてフラッシュメモリを使用する少なくとも2つのハードドライブを備え、各ホストマシン上の記憶制御モジュールはホストマシンのハードドライブ上の記憶管理を実行する。実施形態IIは2つのレベル(クラスタレベル及びホストマシンレベル)での実施形態Iの同時適用の好ましい実施態様を提供し、全てのステップの詳細な説明については実施形態Iの説明が参照できるので、ここでは繰り返さない。
ステップ410で、クラスタ制御モジュールは各ホストマシン上の全てのブロックの累計消去カウントを取得する。
ステップ420で、各ホストマシンの記憶制御モジュールは前記ホストマシン上の各ハードドライブの累計消去カウントをそれぞれ取得する。
ステップ430で、クラスタ制御装置は事前設定のホストマシン書き込み条件を満足する複数のホストマシンから最も小さいホストマシン累計消去カウントを有する少なくとも1つのホストマシンを対象ホストマシンとして選択する。
クラスタが、書き込まれる記憶対象のデータ、例えば、ファイル移動及び/又はファイル記憶中に書き込まれる記憶対象のデータを有する場合、記憶対象のデータをN個のホストマシンに書きこむ必要があると仮定すると、クラスタ制御装置は事前設定のホストマシン書き込み条件を満足する複数のホストマシンから最も小さいホストマシン累計消去カウントを有する少なくともN個のホストマシンを対象ホストマシン、すなわち、記憶対象のデータを書き込む必要があるホストマシンとして選択する。
ステップ440で、各対象ホストマシン上で、前記ホストマシンの記憶制御装置は、事前設定のハードドライブ書き込み条件を満足し最も小さいハードドライブ累計消去カウントを有する少なくとも1つのハードドライブに記憶対象のデータを書き込む。
ホストマシンが対象ホストマシンとして選択された場合、記憶対象のデータを前記ホストマシン上のM個(Mは自然数)のハードドライブに書きこむ必要があると仮定すると、前記ホストマシンの記憶制御装置は、事前設定のハードドライブ書き込み条件を満足する複数のハードドライブから最も小さいハードドライブ累計消去カウントを有するM個のホストマシンを対象ハードドライブとして選択し、前記記憶対象のデータを前記対象ハードドライブに書き込む。
クラスタ制御装置は複数のホストマシンの累計消去カウントの差をモニタできる。2つのホストマシンの累計消去カウントの差が事前設定のホストマシン偏差範囲を超える場合、クラスタ制御装置はより大きい累計消去カウントを有する2つのホストマシンの一方からより小さい累計消去カウントを有するホストマシンへ記憶対象のデータを移動する。移動された記憶対象のデータを書き込むホストマシンに関して、前記ホストマシンの記憶制御装置は事前設定のハードドライブ書き込み条件を満足し最も小さいハードドライブ累計消去カウントを有するハードドライブに前記データを書き込むことができる。
各ホストマシンの記憶制御装置は前記ホストマシン上の複数のハードドライブの累計消去カウントの差をモニタできる。ホストマシン上の2つのハードドライブの累計消去カウントの差が事前設定のハードドライブ偏差範囲を超える場合、前記ホストマシンの記憶制御装置はより大きい累計消去カウントを有する2つのハードドライブの一方からより小さい累計消去カウントを有するハードドライブへ前記記憶対象のデータを移動することができる。
したがって、実施形態Iの方法をクラスタレベル(ホストマシン間)及びホストマシンレベル(各ホストマシン上のハードドライブ間)にそれぞれ適用することによって、本願の実施形態IIはクラスタシステム全体の全ての物理記憶コンポーネントについてバランスがとれた消去及び書き込みを達成し、クラスタシステム内の記憶デバイスの耐用年数を延ばし、クラスタシステムの安定性を向上させる。
本願の一適用例では、高可用性クラスタシステムはK個(Kは3以上の自然数)のホストマシンを備え、各ホストマシンは記憶媒体としてフラッシュメモリを使用する少なくとも3つのハードドライブを備える。クラスタ内に記憶された各ファイルの1つのコピーをそれぞれ3つの異なるホストマシンに記憶しなければならない。クラスタのクラスタ制御装置はクラスタの主制御ノード(ホストマシンの1つ)上で稼働し、どの3つのホストマシンにファイルを記憶するかを制御するために使用される。記憶制御装置は各ホストマシン上で稼働し、どのハードドライブにファイルを記憶するかを制御するために使用される。
各ホストマシン上で、記憶制御装置は、各ハードドライブのスーパーブロック内に、ハードドライブの各ブロックの累積消去カウントblock_wear_countとハードドライブの全てのブロックの累計消去カウントdisk_wear_countとを維持する。ハードドライブ上のあるブロックが割り当てられると、前記ブロックのブロック識別子block_numに対応する累積消去カウントblock_wear_countが1だけインクリメントされ、ハードドライブの全てのブロックの累計消去カウントdisk_wear_countが1だけインクリメントされる。
さらに、記憶制御装置はホストマシンの全てのブロックの累計消去カウントserver_wear_countを維持し、server_wear_countはホストマシン上の全てのハードドライブのdisk_wear_countの総計に等しい。クラスタ内の各動作ノードは主制御ノードに周期的にハートビート信号を送信しなければならず、動作ノードが配置されたホストマシンのserver_wear_countを周期的なハートビート信号に乗せてクラスタ制御装置に報告できる。また、主制御ノード上の記憶制御装置は主制御ノードが配置されたホストマシンのserver_wear_countをハートビート信号と同じ周期でクラスタ制御装置に報告することができる。
クラスタに新しいファイルが書き込まれるとき、クラスタ制御装置はK個のホストマシンから事前設定のホストマシン書き込み条件を満足する複数のホストマシンを決定する。本適用例における新しいファイルを書き込むための事前設定のホストマシン書き込み条件は残り記憶容量がホストマシンの総記憶容量の15%を超えており記憶対象のデータへのアクセス数が設定されたしきい値を超えていないということである。新しいファイルを書き込むための事前設定のホストマシン書き込み条件を満足する複数のホストマシンのうち、クラスタ制御装置はserver_wear_countの最小値を有する3つのホストマシンを新しいファイルを書き込むホストマシンとして選択する。
選択された3つのホストマシン上で、各ホストマシンの記憶制御装置はホストマシンの複数のハードドライブから事前設定のハードドライブ書き込み条件を満足する複数のハードドライブを決定する。本適用例の事前設定のハードドライブ書き込み条件は残り記憶容量がハードドライブの総記憶容量の10%を超えているということである。ハードドライブ書き込み条件を満足する前記複数のハードドライブから、記憶制御装置は新しいファイルを書き込むための最も小さいdisk_wear_countを有するハードドライブを選択する。
クラスタ内のホストマシン又はホストマシン上のハードドライブが故障した場合、クラスタ制御装置はホストマシン又はハードドライブ上に記憶されたファイルをもはや使用不能とみなす。その結果、これらのファイルの記憶されたコピーは3コピーよりも少ない。ファイルを移動するための事前設定のホストマシン書き込み条件が残り記憶容量がホストマシンの総記憶容量の15%を超えており、記憶対象のデータへのアクセス回数が設定されたしきい値を超えておらず、書き込まれるファイルファイルが記憶されていないことであると仮定すると、クラスタ制御装置は、ファイルを移動するための事前設定のホストマシン書き込み条件を満足する複数のホストマシンから、最も小さいserver_wear_countを有する複数のホストマシンを移動したファイルを書き込むホストマシンとして選択する。選択された複数のホストマシン上で、記憶制御装置は、前記ハードドライブ書き込み条件を満足する複数のハードドライブから、移動したファイルを書き込むための最も小さいdisk_wear_countを有する1つのハードドライブを選択する。
クラスタ制御装置は、前記複数のホストマシンの累計消去カウントserver_wear_countの差を一定のホストマシンモニタリング周期でモニタする。クラスタ内のserver_wear_countの最大値と最小値との差が全てのserver_wear_countの平均の20%を超えた場合、最大server_wear_countを有するホストマシン上のファイルは、クラスタ内のserver_wear_countの最大値と最小値との差が全てのserver_wear_countの平均の20%以内になるまで、最小server_wear_countを有するホストマシンへ移動される。移動ファイルの選択は現在の技術を参照して実施できるので、ここでは繰り返さない。
各ホストマシン上で、記憶制御装置はホストマシン上の複数のハードドライブの累計消去カウントdisk_wear_countの差を一定のハードドライブモニタリング周期でモニタする。ホストマシン上のdisk_wear_countの最大値と最小値との差が全てのdisk_wear_countの平均の15%を超えた場合、最大disk_wear_countを有するハードドライブ上のファイルは、ホストマシン上のdisk_wear_countの最大値と最小値との差が全てのdisk_wear_countの平均の15%以内になるまで、最小disk_wear_countを有するハードドライブへ移動される。移動ファイルの選択は上記と同様に現在の技術を参照して実施できる。
上記のプロセスに対応して、本願の実施形態は記憶対象のデータを書き込むデバイスをさらに提供する。このデバイスは、ソフトウェア、ハードウェア、又はソフトウェアとハードウェアとの組み合わせによって実施できる。ソフトウェア実施態様を例にとると、論理という意味での前記デバイスは、前記デバイスが対応するコンピュータプログラム命令を実行するためにメモリに読み込んでいる装置のCPU(中央処理装置)によって形成される。ハードウェアの観点からは、CPUに加えて、図5に示すメモリ及び不揮発性メモリと、記憶対象のデータを書き込むデバイスが配置された装置とは、通常、無線信号の受信や送信を行うチップ等の他のハードウェア及び/又はネットワーク通信機能を達成するボード等の他のハードウェアをさらに備える。
図6は、本願のいくつかの実施形態の記憶対象のデータを書き込むデバイスであって、前記デバイスが少なくとも2つの物理記憶部に対する書き込み制御を実行する中央制御機能モジュールに適用され、前記デバイスが累計消去カウント部材及び物理記憶部部材を備え、前記累計消去カウント部材が各物理記憶部内の全てのブロックの累計消去カウントを取得するように構成され、前記物理記憶部部材が事前設定の書き込み条件を満足する複数の物理記憶部のうち最も小さい累計消去カウントを有する少なくとも1つの物理記憶部に前記記憶対象のデータを書き込むように構成された前記デバイスを示す。
いくつかの実施例では、前記デバイスは、2つの物理記憶部の累計消去カウントの差が事前設定の偏差範囲を超える場合、より大きい累計消去カウントを有する前記2つの物理記憶部の一方からより小さい累計消去カウントを有する物理記憶部へ前記記憶対象のデータを移動するように構成された偏差移動部材をさらに備える。
前記実施例では、前記事前設定の偏差範囲は全ての物理記憶部の累計消去カウントの平均に基づいて決定できる。
オプションとして、前記記憶対象のデータはファイル移動の際に書き込まれる記憶対象のデータ及び/又はファイル保存の際に書き込まれる記憶対象のデータを含む。
オプションとして、前記物理記憶部はホストマシンを備え、前記中央制御機能モジュールは全てのホストマシンを備えるクラスタのクラスタ制御モジュールを備え、前記累計消去カウント部材は事前設定の周期で各ホストマシンによって報告される累計消去カウントを受信するように構成されている。
オプションとして、前記物理記憶部はハードドライブを備え、前記中央制御機能モジュールはホストマシンの記憶制御モジュールを備え、前記累計消去カウント部材は各ハードドライブのスーパーブロック内に維持された累計消去カウントを読み出すように構成され、前記累計消去カウントは前記ハードドライブの各ブロックが割り当てられた後で1だけインクリメントされる。
図7は、本願のいくつかの実施形態のクラスタを示す図である。前記クラスタは少なくとも2つのホストマシンを備え、各ホストマシンは記憶媒体としてフラッシュメモリを使用する少なくとも2つのハードドライブを備える。前記クラスタは各ホストマシン上のクラスタ制御モジュールと記憶制御モジュールとを備え、前記クラスタ制御モジュールは、各ホストマシン上の全てのブロックの累計消去カウントを取得し、記憶対象のデータの書き込みが必要な場合、事前設定のホストマシン書き込み条件を満足する複数のホストマシンから最も小さいホストマシン累計消去カウントを有する少なくとも1つのホストマシンを対象ホストマシンとして選択するように構成されている。各ホストマシン上の前記記憶制御モジュールは、前記ホストマシン上の各ハードドライブの累計消去カウントを取得し、前記ホストマシンが対象ホストマシンとして選択された場合、事前設定のハードドライブ書き込み条件を満足し最も小さいハードドライブ累計消去カウントを有する少なくとも1つのハードドライブに前記記憶対象のデータを書き込むように構成されている。
オプションとして、前記クラスタ制御モジュールは、2つのホストマシンの累計消去カウントの差が事前設定のホストマシン偏差範囲を超える場合、より大きい累計消去カウントを有する前記2つのホストマシンの一方からより小さい累計消去カウントを有するホストマシンへ前記記憶対象のデータを移動するようにさらに構成されている。各ホストマシン上の前記記憶制御モジュールは、ホストマシン上の2つのハードドライブの累計消去カウントの差が事前設定のハードドライブ偏差範囲を超える場合、より大きい累計消去カウントを有する前記2つのハードドライブの一方からより小さい累計消去カウントを有するハードドライブへ前記記憶対象のデータを移動するようにさらに構成されている。
オプションとして、前記記憶対象のデータはファイル移動の際に書き込まれる記憶対象のデータを含む。
本願の好ましい実施形態のみを上述してきたが、上記実施形態は本願を限定するものではない。本願の趣旨及び原理を逸脱することなくなされたあらゆる変更、均等物との置換又は改良は本願の保護範囲に包含されるものとする。
通常の構成では、計算デバイスは1つ又は複数のプロセッサ(CPU)、入出力インタフェース、ネットワークインタフェース、及びメモリを備える。
メモリは、揮発性メモリ、ランダムアクセスメモリ(RAM)、及び/又は不揮発性メモリ、例えば、読み出し専用メモリ(ROM)又はフラッシュRAM等を含んでいてもよい。メモリはコンピュータ可読媒体の一例である。
コンピュータ可読媒体は、任意の方法又は技術によって情報記憶を実行できる永続的, 揮発性、モバイル及び非モバイル媒体を含む。情報はコンピュータ可読命令、データ構造体、プログラムモジュール又はその他のデータであってもよい。コンピュータの記憶媒体の例は、これに限定されないが、計算デバイスがアクセス可能な情報を記憶するために使用できる相変化RAM(PRAM)、スタティックRAM(SRAM)、ダイナミックRAM(DRAM)、その他のタイプのランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、電気的消去可能プログラマブル読み出し専用メモリ(EEPROM)、フラッシュメモリ又はその他のタイプのメモリ技術、コンパクトディスク読み出し専用メモリ(CD−ROM)、ディジタルバーサタイルディスク(DVD)又はその他の光メモリ、カセット、カセット及びディスクメモリ又はその他の任意の非伝送媒体を含む。本明細書の定義によれば、コンピュータ可読媒体は変調データ信号及び搬送波等の一時的媒体を含まない。
「含む」、「備える」という用語又はそれらの任意の別の変形語は非排他的な包含を含むように意図されており、したがって、一連の要素を含むプロセス、方法、商品又はデバイスはそれらの要素を含むだけでなく、具体的に列挙されていないその他の要素も含み、又は前記プロセス、方法、商品又はデバイス固有の要素をさらに含むということにさらに留意すべきである。別の制約がない場合、「1つの…を含む」という言明によって定義される要素は、上記要素を含むプロセス、方法、商品又はデバイスが追加の同一要素をさらに含むということを除外しない。
当業者であれば、本願の実施形態が方法、システム、又はコンピュータプログラムプロダクトとして提供できることを理解するはずである。したがって、本願は完全なハードウェア実施形態、完全なソフトウェア実施形態、又はソフトウェアとハードウェアとを組み合わせた実施形態として実施できる。さらに、本願は、コンピュータで使用可能なプログラムコードを内蔵した1つ又は複数のコンピュータで使用可能な記憶媒体(これに限定されないが、磁気ディスクメモリ、CD−ROM、光メモリ、及び同種のもの)上で実施されるコンピュータプログラムプロダクトの形態であってもよい。

Claims (18)

  1. 記憶対象のデータをフラッシュメモリベースの記憶媒体に書き込む方法であって、前記方法が少なくとも2つの物理記憶部に対する書き込み制御を実行する中央制御機能モジュールに適用され、前記方法が、
    前記物理記憶部の各々内の全てのブロックの累計消去カウントを取得することと、
    事前設定の書き込み条件を満足する複数の物理記憶部のうち最も小さい累計消去カウントを有する少なくとも1つの物理記憶部に前記記憶対象のデータを書き込むこととを含む方法。
  2. 2つの物理記憶部の累計消去カウントの差が事前設定の偏差範囲を超える場合、より大きい累計消去カウントを有する前記2つの物理記憶部の一方からより小さい累計消去カウントを有する物理記憶部へ記憶対象のデータを移動することをさらに含む請求項1に記載の方法。
  3. 前記事前設定の偏差範囲が前記全ての物理記憶部の累計消去カウントの平均に基づいて決定される請求項2に記載の方法。
  4. 前記記憶対象のデータがファイル移動のために書き込まれる記憶対象のデータ及び/又はファイル記憶のために書き込まれる記憶対象のデータを含む請求項1に記載の方法。
  5. 前記物理記憶部がホストマシンを備え、前記中央制御機能モジュールが全てのホストマシンを備えるクラスタのクラスタ制御モジュールを備え、
    前記物理記憶部の各々内の全てのブロックの累計消去カウントを取得する前記ことが事前設定の周期で各ホストマシンによって報告される累計消去カウントを受信することを含む請求項1から4の何れか一項に記載の方法。
  6. 前記物理記憶部がハードドライブを備え、前記中央制御機能モジュールがホストマシンの記憶制御モジュールを備え、
    前記物理記憶部の各々内の全てのブロックの累計消去カウントを取得する前記ことが各ハードドライブのスーパーブロック内に維持された累計消去カウントを読み出すことを含み、前記累計消去カウントが前記ハードドライブの各ブロックが割り当てられた後で1だけインクリメントされる請求項1から4の何れか一項に記載の方法。
  7. 記憶対象のデータを書き込むデバイスであって、前記デバイスが少なくとも2つの物理記憶部に対する書き込み制御を実行する中央制御機能モジュールに適用され、前記デバイスが、
    前記物理記憶部内の各々内の全てのブロックの累計消去カウントを取得するように構成された累計消去カウント部材と、
    事前設定の書き込み条件を満足する複数の物理記憶部のうち最も小さい累計消去カウントを有する少なくとも1つの物理記憶部に前記記憶対象のデータを書き込むように構成された物理記憶部部材とを備えるデバイス。
  8. 2つの物理記憶部の累計消去カウントの差が事前設定の偏差範囲を超える場合、より大きい累計消去カウントを有する前記2つの物理記憶部の一方からより小さい累計消去カウントを有する物理記憶部へ記憶対象のデータを移動するように構成された偏差移動部材をさらに備える請求項7に記載のデバイス。
  9. 前記事前設定の偏差範囲が前記全ての物理記憶部の累計消去カウントの平均に基づいて決定される請求項8に記載のデバイス。
  10. 前記記憶対象のデータがファイル移動のために書き込まれる記憶対象のデータ及び/又はファイル記憶のために書き込まれる記憶対象のデータを含む請求項7に記載のデバイス。
  11. 前記物理記憶部がホストマシンを備え、前記中央制御機能モジュールが全てのホストマシンを備えるクラスタのクラスタ制御モジュールを備え、
    前記累計消去カウント部材が事前設定の周期で各ホストマシンによって報告される累計消去カウントを受信するように構成された請求項7から10の何れか一項に記載のデバイス。
  12. 前記物理記憶部がハードドライブを備え、前記中央制御機能モジュールがホストマシンの記憶制御モジュールを備え、
    前記累計消去カウント部材が各ハードドライブのスーパーブロック内に維持された累計消去カウントを読み出すように構成され、前記累計消去カウントが前記ハードドライブの各ブロックが割り当てられた後で1だけインクリメントされる請求項7から10の何れか一項に記載のデバイス。
  13. 記憶対象のデータをクラスタに書き込む方法であって、前記クラスタが少なくとも2つのホストマシンを備え、各ホストマシンが記憶媒体としてフラッシュメモリを使用する少なくとも2つのハードドライブを備え、前記方法が、
    クラスタ制御モジュールが各ホストマシン上の全てのブロックの累計消去カウントを取得することと、
    各ホストマシン上の記憶制御モジュールが前記ホストマシン上の各ハードドライブの累計消去カウントを取得することと、
    前記クラスタ制御装置が事前設定のホストマシン書き込み条件を満足する複数のホストマシンから最も小さいホストマシン累計消去カウントを有するホストマシンの少なくとも1つを対象ホストマシンとして選択することと、
    各対象ホストマシン上で、前記ホストマシンの前記記憶制御装置が事前設定のハードドライブ書き込み条件を満足し最も小さいハードドライブ累計消去カウントを有する少なくとも1つのハードドライブに前記記憶対象のデータを書き込むこととを含む方法。
  14. 2つのホストマシンの累計消去カウントの差が事前設定のホストマシン偏差範囲を超える場合、前記クラスタ制御装置がより大きい累計消去カウントを有する前記2つのホストマシンの一方からより小さい累計消去カウントを有するホストマシンへ記憶対象のデータを移動することと、
    ホストマシン上の2つのハードドライブの累計消去カウントの差が事前設定のハードドライブ偏差範囲を超える場合、前記ホストマシンの記憶制御装置がより大きい累計消去カウントを有する前記2つのハードドライブの一方からより小さい累計消去カウントを有するハードドライブへ記憶対象のデータを移動することとをさらに含む請求項13に記載の方法。
  15. 前記記憶対象のデータがファイル移動のために書き込まれる記憶対象のデータを含む請求項13に記載の方法。
  16. 少なくとも2つのホストマシンを備え、各ホストマシンが記憶媒体としてフラッシュメモリを使用する少なくとも2つのハードドライブを備えるクラスタであって、前記クラスタが、
    各ホストマシン上の全てのブロックの累計消去カウントを取得し、記憶対象のデータの書き込みが必要な場合、事前設定のホストマシン書き込み条件を満足する複数のホストマシンから最も小さいホストマシン累計消去カウントを有するホストマシンの少なくとも1つを対象ホストマシンとして選択するように構成されたクラスタ制御モジュールと、
    前記ホストマシン上の各ハードドライブの累計消去カウントを取得し、前記ホストマシンが対象ホストマシンとして選択された場合、事前設定のハードドライブ書き込み条件を満足し最も小さいハードドライブ累計消去カウントを有する少なくとも1つのハードドライブに前記記憶対象のデータを書き込むように構成された各ホストマシン上の記憶制御モジュールとをさらに備えるクラスタ。
  17. 前記クラスタ制御モジュールが、2つのホストマシンの累計消去カウントの差が事前設定のホストマシン偏差範囲を超える場合、より大きい累計消去カウントを有する前記2つのホストマシンの一方からより小さい累計消去カウントを有するホストマシンへ前記記憶対象のデータを移動するようにさらに構成され、
    各ホストマシン上の前記記憶制御モジュールが、前記ホストマシン上の2つのハードドライブの累計消去カウントの差が事前設定のハードドライブ偏差範囲を超える場合、より大きい累計消去カウントを有する前記2つのハードドライブの一方からより小さい累計消去カウントを有するハードドライブへ前記記憶対象のデータを移動するようにさらに構成された請求項16に記載のクラスタ。
  18. 前記記憶対象のデータがファイル移動のために書き込まれる記憶対象のデータを含む請求項16に記載のクラスタ。
JP2019514207A 2016-09-14 2017-09-05 記憶対象のデータをフラッシュメモリベースの記憶媒体に書き込む方法及びデバイス Pending JP2019532413A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201610827195.6A CN107025066A (zh) 2016-09-14 2016-09-14 在基于闪存的存储介质中写入存储数据的方法和装置
CN201610827195.6 2016-09-14
PCT/CN2017/100570 WO2018050006A1 (zh) 2016-09-14 2017-09-05 在基于闪存的存储介质中写入存储数据的方法和装置

Publications (1)

Publication Number Publication Date
JP2019532413A true JP2019532413A (ja) 2019-11-07

Family

ID=59524718

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019514207A Pending JP2019532413A (ja) 2016-09-14 2017-09-05 記憶対象のデータをフラッシュメモリベースの記憶媒体に書き込む方法及びデバイス

Country Status (15)

Country Link
US (2) US11099744B2 (ja)
EP (1) EP3514674B1 (ja)
JP (1) JP2019532413A (ja)
KR (1) KR102275094B1 (ja)
CN (1) CN107025066A (ja)
AU (2) AU2017325886B2 (ja)
BR (1) BR112019004916A2 (ja)
CA (1) CA3036415C (ja)
MX (1) MX2019002948A (ja)
MY (1) MY188873A (ja)
PH (1) PH12019500555A1 (ja)
RU (1) RU2735407C2 (ja)
TW (1) TWI676992B (ja)
WO (1) WO2018050006A1 (ja)
ZA (1) ZA201902298B (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107025066A (zh) * 2016-09-14 2017-08-08 阿里巴巴集团控股有限公司 在基于闪存的存储介质中写入存储数据的方法和装置
KR102611566B1 (ko) * 2018-07-06 2023-12-07 삼성전자주식회사 솔리드 스테이트 드라이브 및 그의 메모리 할당 방법
KR20210039872A (ko) * 2019-10-02 2021-04-12 삼성전자주식회사 프리 블록의 할당을 관리하는 호스트 시스템, 이를 포함하는 데이터 처리 시스템 및 호스트 시스템의 동작방법
CN111143238B (zh) * 2019-12-27 2022-03-15 无锡融卡科技有限公司 基于eFlash存储芯片的数据擦写方法及系统
KR20210101973A (ko) 2020-02-11 2021-08-19 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
US11561729B2 (en) * 2020-08-19 2023-01-24 Micron Technology, Inc. Write determination counter
CN112162934A (zh) * 2020-09-29 2021-01-01 深圳市时创意电子有限公司 存储块异常磨损处理方法、装置、电子设备及存储介质
TWI821152B (zh) * 2021-02-23 2023-11-01 慧榮科技股份有限公司 儲存裝置、快閃記憶體控制器及其控制方法
TWI808384B (zh) * 2021-02-23 2023-07-11 慧榮科技股份有限公司 儲存裝置、快閃記憶體控制器及其控制方法
CN112947862B (zh) * 2021-03-10 2022-09-20 歌尔科技有限公司 设备、Flash存储器及其数据存储方法
CN113452867A (zh) * 2021-06-25 2021-09-28 珠海奔图电子有限公司 数据清除方法、主机、图像形成装置、系统及存储介质
CA3213524A1 (en) * 2022-09-27 2024-03-27 Magnet Forensics Inc. Computer sytem and method for evaluating integrity and parsing of a file system and parsing implementation
CN115374065B (zh) * 2022-10-25 2023-02-28 山东捷瑞数字科技股份有限公司 一种基于云平台日志记录监控的文件清理方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007265265A (ja) * 2006-03-29 2007-10-11 Hitachi Ltd フラッシュメモリを用いた記憶装置、その消去回数平準化方法、及び消去回数平準化プログラム
WO2008073421A2 (en) * 2006-12-11 2008-06-19 Marvell World Trade Ltd. Hybrid non-volatile solid state memory system
US20100115178A1 (en) * 2008-10-30 2010-05-06 Dell Products L.P. System and Method for Hierarchical Wear Leveling in Storage Devices
JP2012522321A (ja) * 2009-03-30 2012-09-20 オラクル・アメリカ・インコーポレイテッド データストレージシステム、およびデータアクセス要求を処理する方法
US20140089565A1 (en) * 2012-09-27 2014-03-27 Arkologic Limited Solid state device write operation management system
JP2015014963A (ja) * 2013-07-05 2015-01-22 富士通株式会社 ストレージ制御装置、制御プログラム及び制御方法

Family Cites Families (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6990667B2 (en) 2001-01-29 2006-01-24 Adaptec, Inc. Server-independent object positioning for load balancing drives and servers
US7096313B1 (en) 2002-10-28 2006-08-22 Sandisk Corporation Tracking the least frequently erased blocks in non-volatile memory systems
JP4651913B2 (ja) 2003-02-17 2011-03-16 株式会社日立製作所 記憶装置システム
US20050055495A1 (en) * 2003-09-05 2005-03-10 Nokia Corporation Memory wear leveling
KR20060133555A (ko) 2003-12-29 2006-12-26 셔우드 인포메이션 파트너스 인코포레이션 멀티플 hdd 케이스를 이용한 대량 저장 시스템 및 방법
US7411757B2 (en) 2006-07-27 2008-08-12 Hitachi Global Storage Technologies Netherlands B.V. Disk drive with nonvolatile memory having multiple modes of operation
US9153337B2 (en) 2006-12-11 2015-10-06 Marvell World Trade Ltd. Fatigue management system and method for hybrid nonvolatile solid state memory system
CN101364437A (zh) * 2007-08-07 2009-02-11 芯邦科技(深圳)有限公司 一种可使闪存损耗均衡的方法及其应用
US8621138B2 (en) * 2007-12-27 2013-12-31 Sandisk Enterprise Ip Llc Flash storage controller execute loop
US8427552B2 (en) 2008-03-03 2013-04-23 Videoiq, Inc. Extending the operational lifetime of a hard-disk drive used in video data storage applications
US8554983B2 (en) 2008-05-27 2013-10-08 Micron Technology, Inc. Devices and methods for operating a solid state drive
US9123422B2 (en) 2012-07-02 2015-09-01 Super Talent Technology, Corp. Endurance and retention flash controller with programmable binary-levels-per-cell bits identifying pages or blocks as having triple, multi, or single-level flash-memory cells
US8959280B2 (en) 2008-06-18 2015-02-17 Super Talent Technology, Corp. Super-endurance solid-state drive with endurance translation layer (ETL) and diversion of temp files for reduced flash wear
US8010738B1 (en) 2008-06-27 2011-08-30 Emc Corporation Techniques for obtaining a specified lifetime for a data storage device
JP5242264B2 (ja) 2008-07-07 2013-07-24 株式会社東芝 データ制御装置、ストレージシステムおよびプログラム
US8024442B1 (en) 2008-07-08 2011-09-20 Network Appliance, Inc. Centralized storage management for multiple heterogeneous host-side servers
CN101419842B (zh) * 2008-11-07 2012-04-04 成都市华为赛门铁克科技有限公司 硬盘的损耗均衡方法、装置及系统
US20100125696A1 (en) * 2008-11-17 2010-05-20 Prasanth Kumar Memory Controller For Controlling The Wear In A Non-volatile Memory Device And A Method Of Operation Therefor
CN101441599B (zh) * 2008-11-28 2011-11-02 成都市华为赛门铁克科技有限公司 一种固态硬盘的均衡方法和固态硬盘
US8429373B2 (en) 2009-07-15 2013-04-23 International Business Machines Corporation Method for implementing on demand configuration changes
WO2011010344A1 (ja) 2009-07-22 2011-01-27 株式会社日立製作所 複数のフラッシュパッケージを有するストレージシステム
US8402242B2 (en) 2009-07-29 2013-03-19 International Business Machines Corporation Write-erase endurance lifetime of memory storage devices
DE112010003345B4 (de) 2009-08-21 2017-07-27 International Business Machines Corporation Datenspeichersystem und Verfahren für das Betreiben eines Datenspeichersystems
US8464106B2 (en) 2009-08-24 2013-06-11 Ocz Technology Group, Inc. Computer system with backup function and method therefor
US8234520B2 (en) 2009-09-16 2012-07-31 International Business Machines Corporation Wear leveling of solid state disks based on usage information of data and parity received from a raid controller
US8621141B2 (en) * 2010-04-01 2013-12-31 Intel Corporations Method and system for wear leveling in a solid state drive
US8700842B2 (en) 2010-04-12 2014-04-15 Sandisk Enterprise Ip Llc Minimizing write operations to a flash memory-based object store
US8737141B2 (en) 2010-07-07 2014-05-27 Stec, Inc. Apparatus and method for determining an operating condition of a memory cell based on cycle information
US8621271B2 (en) 2010-08-26 2013-12-31 Cleversafe, Inc. Reprovisioning a memory device into a dispersed storage network memory
US8775720B1 (en) 2010-08-31 2014-07-08 Western Digital Technologies, Inc. Hybrid drive balancing execution times for non-volatile semiconductor memory and disk
US8825977B1 (en) 2010-09-28 2014-09-02 Western Digital Technologies, Inc. Hybrid drive writing copy of data to disk when non-volatile semiconductor memory nears end of life
WO2012060824A1 (en) 2010-11-02 2012-05-10 Hewlett-Packard Development Company, L.P. Solid-state disk (ssd) management
CN102135942B (zh) * 2010-12-31 2013-04-24 北京握奇数据系统有限公司 一种存储设备中实现损耗均衡的方法及存储设备
FR2977047B1 (fr) * 2011-06-22 2013-08-16 Starchip Procede de gestion de l'endurance de memoires non volatiles.
KR101938210B1 (ko) * 2012-04-18 2019-01-15 삼성전자주식회사 낸드 플래시 메모리, 가변 저항 메모리 및 컨트롤러를 포함하는 메모리 시스템의 동작 방법
US9443591B2 (en) 2013-01-23 2016-09-13 Seagate Technology Llc Storage device out-of-space handling
US8601347B1 (en) * 2012-06-21 2013-12-03 Hitachi, Ltd. Flash memory device and storage control method
KR20140006299A (ko) * 2012-07-03 2014-01-16 삼성전자주식회사 낸드 플래시 메모리 기반의 저장부에 데이터 기록을 제어하는 방법 및 장치
CN102880556B (zh) * 2012-09-12 2015-05-20 浙江大学 一种实现Nand Flash磨损均衡的方法及其系统
CN102981970B (zh) * 2012-11-23 2016-08-03 深圳市江波龙电子有限公司 闪存管理方法和系统
US20150143021A1 (en) 2012-12-26 2015-05-21 Unisys Corporation Equalizing wear on storage devices through file system controls
CN103116549B (zh) * 2013-01-04 2016-03-16 张亚丽 基于最大可擦除次数的闪存存储方法
US9652376B2 (en) 2013-01-28 2017-05-16 Radian Memory Systems, Inc. Cooperative flash memory control
JP6005566B2 (ja) * 2013-03-18 2016-10-12 株式会社東芝 情報処理システム、制御プログラムおよび情報処理装置
TWI515736B (zh) 2013-07-25 2016-01-01 慧榮科技股份有限公司 資料儲存裝置以及快閃記憶體控制方法
US9336129B2 (en) * 2013-10-02 2016-05-10 Sandisk Technologies Inc. System and method for bank logical data remapping
US9442662B2 (en) * 2013-10-18 2016-09-13 Sandisk Technologies Llc Device and method for managing die groups
CN104572489B (zh) * 2013-10-23 2019-12-24 深圳市腾讯计算机系统有限公司 磨损均衡方法及装置
CN104731515B (zh) * 2013-12-18 2018-02-23 华为技术有限公司 控制存储设备机群磨损均衡的方法及设备
US9619381B2 (en) 2013-12-24 2017-04-11 International Business Machines Corporation Collaborative health management in a storage system
JP5858081B2 (ja) * 2014-03-27 2016-02-10 Tdk株式会社 メモリコントローラ、メモリシステム及びメモリ制御方法
US9292210B1 (en) * 2014-08-29 2016-03-22 International Business Machines Corporation Thermally sensitive wear leveling for a flash memory device that includes a plurality of flash memory modules
US10725668B1 (en) * 2014-08-29 2020-07-28 SK Hynix Inc. Data separation during garbage collection and wear leveling
US9368218B2 (en) * 2014-10-03 2016-06-14 HGST Netherlands B.V. Fast secure erase in a flash system
CN104360957A (zh) * 2014-11-26 2015-02-18 上海爱信诺航芯电子科技有限公司 一种维持闪存损耗均衡的方法
JP6107802B2 (ja) 2014-12-15 2017-04-05 コニカミノルタ株式会社 不揮発性メモリ制御装置、不揮発性メモリ制御方法及びプログラム
WO2016174729A1 (ja) * 2015-04-28 2016-11-03 株式会社日立製作所 ストレージ装置
TWI563509B (en) * 2015-07-07 2016-12-21 Phison Electronics Corp Wear leveling method, memory storage device and memory control circuit unit
CN105159601B (zh) * 2015-08-07 2018-12-07 杭州海兴电力科技股份有限公司 一种提高Flash擦写寿命的方法
TWI601059B (zh) * 2015-11-19 2017-10-01 慧榮科技股份有限公司 資料儲存裝置與資料儲存方法
US9886324B2 (en) * 2016-01-13 2018-02-06 International Business Machines Corporation Managing asset placement using a set of wear leveling data
US10034407B2 (en) * 2016-07-22 2018-07-24 Intel Corporation Storage sled for a data center
CN107678906B (zh) * 2016-08-01 2021-01-29 杭州海康威视数字技术股份有限公司 硬盘管理方法和系统
CN107025066A (zh) * 2016-09-14 2017-08-08 阿里巴巴集团控股有限公司 在基于闪存的存储介质中写入存储数据的方法和装置
KR102704708B1 (ko) * 2018-11-09 2024-09-10 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작방법

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007265265A (ja) * 2006-03-29 2007-10-11 Hitachi Ltd フラッシュメモリを用いた記憶装置、その消去回数平準化方法、及び消去回数平準化プログラム
WO2008073421A2 (en) * 2006-12-11 2008-06-19 Marvell World Trade Ltd. Hybrid non-volatile solid state memory system
JP2010512569A (ja) * 2006-12-11 2010-04-22 マーベル ワールド トレード リミテッド ハイブリッド不揮発性固体メモリシステム
US20100115178A1 (en) * 2008-10-30 2010-05-06 Dell Products L.P. System and Method for Hierarchical Wear Leveling in Storage Devices
JP2012522321A (ja) * 2009-03-30 2012-09-20 オラクル・アメリカ・インコーポレイテッド データストレージシステム、およびデータアクセス要求を処理する方法
US20140089565A1 (en) * 2012-09-27 2014-03-27 Arkologic Limited Solid state device write operation management system
JP2015014963A (ja) * 2013-07-05 2015-01-22 富士通株式会社 ストレージ制御装置、制御プログラム及び制御方法

Also Published As

Publication number Publication date
EP3514674B1 (en) 2023-07-19
CA3036415A1 (en) 2018-03-22
EP3514674A1 (en) 2019-07-24
RU2019110993A (ru) 2020-10-15
AU2017325886B2 (en) 2020-11-19
CN107025066A (zh) 2017-08-08
CA3036415C (en) 2021-07-06
MX2019002948A (es) 2019-07-18
TWI676992B (zh) 2019-11-11
BR112019004916A2 (pt) 2019-06-04
US11099744B2 (en) 2021-08-24
EP3514674A4 (en) 2020-05-06
KR102275094B1 (ko) 2021-07-08
RU2735407C2 (ru) 2020-10-30
ZA201902298B (en) 2021-06-30
AU2017325886A1 (en) 2019-04-04
RU2019110993A3 (ja) 2020-10-15
US20190212922A1 (en) 2019-07-11
WO2018050006A1 (zh) 2018-03-22
US20210342073A1 (en) 2021-11-04
KR20190052083A (ko) 2019-05-15
PH12019500555A1 (en) 2019-11-18
MY188873A (en) 2022-01-12
US11287984B2 (en) 2022-03-29
AU2019101583A4 (en) 2020-01-23
TW201818401A (zh) 2018-05-16

Similar Documents

Publication Publication Date Title
JP2019532413A (ja) 記憶対象のデータをフラッシュメモリベースの記憶媒体に書き込む方法及びデバイス
US10915442B2 (en) Managing block arrangement of super blocks
US11288119B2 (en) Key value SSD
US10740020B2 (en) Method, device and computer program product for managing disk array
US20230013322A1 (en) Solid state drive management method and solid state drive
CN111124264A (zh) 用于重建数据的方法、设备和计算机程序产品
JP2015075940A (ja) ストレージ制御装置、およびストレージ装置の制御プログラム
US11922019B2 (en) Storage device read-disturb-based block read temperature utilization system
CN113811862A (zh) 存储驱动器的动态性能等级调整
US20230305721A1 (en) Method and apparatus for memory management in memory disaggregation environment
US9569329B2 (en) Cache control device, control method therefor, storage apparatus, and storage medium
CN113934360B (zh) 多存储设备生命周期管理系统
US20210248063A1 (en) Profile and queue-based wear leveling of memory devices
CN113811861A (zh) 存储驱动器的动态性能等级调整
US11836073B2 (en) Storage device operating data counter system
US11983431B2 (en) Read-disturb-based read temperature time-based attenuation system
US11922035B2 (en) Read-disturb-based read temperature adjustment system
US11928354B2 (en) Read-disturb-based read temperature determination system
US11868223B2 (en) Read-disturb-based read temperature information utilization system
CN113811846A (zh) 存储驱动器的动态每天写入调整

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190509

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200623

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200804

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201030

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201208

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20210126

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20210127

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20210217

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210304

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20210217

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20210921

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20210921

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20211207