JP6731553B2 - 分散ストレージシステム及び分散ストレージ制御方法 - Google Patents
分散ストレージシステム及び分散ストレージ制御方法 Download PDFInfo
- Publication number
- JP6731553B2 JP6731553B2 JP2019530302A JP2019530302A JP6731553B2 JP 6731553 B2 JP6731553 B2 JP 6731553B2 JP 2019530302 A JP2019530302 A JP 2019530302A JP 2019530302 A JP2019530302 A JP 2019530302A JP 6731553 B2 JP6731553 B2 JP 6731553B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- nodes
- transfer
- cache
- strips
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 25
- 238000012546 transfer Methods 0.000 claims description 195
- 238000012545 processing Methods 0.000 claims description 32
- 230000004044 response Effects 0.000 claims description 27
- 230000015654 memory Effects 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 18
- 238000004364 calculation method Methods 0.000 claims description 3
- 239000003795 chemical substances by application Substances 0.000 description 6
- 238000004891 communication Methods 0.000 description 3
- 238000002789 length control Methods 0.000 description 3
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 239000000872 buffer Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
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/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0873—Mapping of cache memory to specific storage devices or parts thereof
-
- 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/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- 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
- G06F2212/1024—Latency reduction
-
- 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/26—Using a specific storage system architecture
- G06F2212/261—Storage comprising a plurality of storage devices
- G06F2212/262—Storage comprising a plurality of storage devices configured as RAID
-
- 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/26—Using a specific storage system architecture
- G06F2212/263—Network storage, e.g. SAN or NAS
-
- 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/31—Providing disk cache in a specific location of a storage system
- G06F2212/313—In storage device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
Description
・「冗長構成領域」とは、冗長構成グループが提供する論理記憶領域である。
・「ノード領域」とは、複数のノードの各々が提供する論理記憶領域である。複数のノードがそれぞれ提供する複数のノード領域が、冗長構成領域を構成する。
・「ストリップ」とは、ノード領域の一部である。ストリップは、ユーザデータセット又はパリティを格納する。ユーザデータセットが格納されるストリップを「ユーザストリップ」と言うことができ、パリティが格納されるストリップを「パリティストリップ」と言うことができる。なお、「ユーザデータセット」は、ライト要求に従うユーザデータ(ライト対象データ)の少なくとも一部としてのユーザデータユニットの一部である。「ユーザデータユニット」は、ストライプに対応した全ユーザデータセットの集合である。「パリティ」は、ユーザデータユニットに基づき生成されるデータセットである。「データセット」とは、1つのストリップに格納されるデータであり、以下の説明では、ユーザデータセット又はパリティである。つまり、データセットとは、ストリップ単位のデータである。
・「ストライプ」とは、冗長構成領域における2以上のノード領域にそれぞれ存在する2以上のストリップ(例えば同一論理アドレスの2以上のストリップ)で構成された記憶領域である。
(A)当該第2ノードのノード領域における2以上のストリップ(すなわち、2以上のストライプのうち、当該第2ノードに対応した2以上のストリップ)がそれぞれライト先となる2以上の転送対象データセットがあることをノード管理情報を基に特定した場合、当該2以上の転送対象データセットにそれぞれ対応した2以上のノード内位置をノード管理情報を基に特定し、
(B)特定した2以上のノード内位置にそれぞれ存在する2以上の転送対象データセットを転送対象とした1つの転送用コマンドを当該第2ノードに送信する。
・「キャッシュストリップ」は、ストリップに対応した記憶領域であってCM(キャッシュメモリ)上の記憶領域である。なお、キャッシュストリップもストリップも一定サイズでよい。
・「キャッシュストライプ」は、ストライプに対応した記憶領域であってCM上の記憶領域である。キャッシュストライプは、そのキャッシュストライプに対応するストライプを構成する2以上のストリップにそれぞれ対応した2以上のキャッシュストリップで構成されている。キャッシュストリップ内のデータセット(ユーザデータセット又はパリティ)が、そのキャッシュストリップに対応したストリップを有するノード領域に書き込まれる。
・「キャッシュノード領域」は、ノード領域に対応した記憶領域であってCM上の記憶領域である。キャッシュノード領域は、そのキャッシュノード領域に対応するノード領域を構成する2以上のストリップにそれぞれ対応した2以上のキャッシュストリップで構成されている。
・「VOL」は、論理ボリュームの略であり、ホストに提供される論理的な記憶領域である。VOLは、実体的なVOL(RVOL)であってもよいし、仮想的なVOL(VVOL)であってもよい。「RVOL」は、そのRVOLを提供するストレージシステムが有する物理的な記憶資源(例えば、1以上のPDEV)に基づくVOLでよい。「VVOL」は、複数の仮想領域(仮想的な記憶領域)で構成されており容量仮想化技術(典型的にはThin Provisioning)に従うVOLでよい。
・ストライプ毎に、いずれかのノード101が担当ノードとなる。ノード101は、ライト要求に対応したライト先ストライプの担当ノードが自ノードであれば、ライト対象のユーザデータをCM51に書き、当該ストライプについて、転送対象データセットを他ノードに転送する。ノード101は、ライト要求に対応したライト先ストライプの担当ノードが自ノードでなければ、担当ノード(他ノード)に、そのライト要求を転送する。
・各ノード101が、自ノードについて、ライト要求に従うデータセットが書き込まれる第1のCM部分と、受信した転送用コマンドに従うデータセットが書き込まれる第2のCM部分とを持ち、それらのCM部分のうちより新しいデータセットを格納している方を、自ノードのノード領域におけるストリップへの書込み対象として採用する。
・キャッシュプログラム0は、ノード管理ビットマップ102を参照し、ノード0〜3の各々について、転送対象キャッシュストリップを特定する。以下、ノード1を例に取る。
・キャッシュプログラム0は、ノード1について、特定した全ての転送対象キャッシュストリップを含む連続したキャッシュストリップをロックできるか否かの判断であるロック判断を行う。
・ロック判断の結果が真の場合、キャッシュプログラム0は、連続したキャッシュストリップをロックする。ロックされたキャッシュストリップ内のデータセットがホストライト処理において更新されることがない。
・データ転送プログラム0が、ノード領域0に対する全転送対象データセットのライトコマンドを生成する(S715)。ライトコマンドでは、ストリップアドレス群(ノード領域0内のストリップのアドレス)が指定される。データ転送プログラム0が、そのライトコマンドの送信をバックエンドプログラム0に指示する。その指示に応答して、バックエンドプログラム0が、ノード領域0に対するライトコマンドを送信する(S716)。バックエンドプログラム0が、応答をデータ転送プログラム0に返す(S718)。
・データ転送プログラム0が、ノード1に対する全転送対象データセットの転送用コマンドを生成する(S715)。転送用コマンドでは、上記ストリップアドレス群(ノード領域1内のストリップのアドレス)が指定される。データ転送プログラム0が、転送用コマンドをノード1に転送する(S717)。ノード1(例えばコントローラ1)が、その転送用コマンドに応答して、その転送用コマンドに従う転送対象データセットを、S711でロックしたキャッシュストリップに書き込んで、応答をデータ転送プログラム0に返す(S719)。ノード1において、コントローラ1が、転送対象データセットを、キャッシュストリップからノード領域1のストリップに書き込む。
・ロック対象のキャッシュストリップのうちの少なくとも1つが既にロックされている。
・ロック対象のキャッシュストリップをロックすると、ロック割合(CMの容量に対する、ロックされているキャッシュストリップの全容量の割合)が閾値を超える。
・最大転送長を指定した設定指示をCLIプログラム0がホスト201から受けたこと。
・最大転送長を指定した設定指示をGUIプログラム0がホスト201から受けたこと。
・保守プログラム434が、RESTサーバプログラム0経由で外部プログラムから最大転送長を指定した設定指示を受けたこと。
・最大転送長を指定した設定指示をコントロールマスタ0が管理システム203から受けたこと。
・ノード0について目標とされるI/O処理性能(単位時間当たりに入出力されるデータの量)。例えば、I/O処理性能が比較的高い場合、最大転送長は比較的小さい。非同期転送処理がホストI/O処理の性能に与える影響を小さくするためである。なお、「I/O処理性能」とは、I/O要求(本実施形態ではホストから受信したI/O要求)の処理の性能である。「I/O」は、ライトであってもよいし、リードであってもよいし、ライト及びリードの両方であってもよい。
・ノード0に搭載されるインターフェース部のネットワーク帯域。例えば、ネットワーク帯域が比較的小さい程、最大転送長は比較的小さい。インターフェース部という物理的なハードウェアの性能を超えた転送はできないからである。
・ホストライト処理の多重度。例えば、多重度が比較的大きい場合、最大転送長は比較的小さい。多重度が大きいと非同期転送処理に使用可能なリソース量が圧迫されるからである。
・冗長構成領域53を構成するノード数。例えば、ノード数が比較的大きい場合、最大転送長は比較的小さい。ノード数が大きいと、サブビットマップの数が増え、以って、ノード管理ビットマップのサイズが大きくなる傾向にあるからである。
・変更後の最大転送長を指定した変更指示をCLIプログラム0がホスト201から受けたこと。
・変更後の最大転送長を指定した変更指示をGUIプログラム0がホスト201から受けたこと。
・保守プログラム434が、RESTサーバプログラム0経由で外部プログラムから変更後の最大転送長を指定した変更指示を受けたこと。
・保守プログラム434が、ノード0の負荷(例えば、計算リソース(ハードウェア)の負荷、又は、1以上の外部プログラムの稼働状況)が1以上の閾値のうちのいずれかの閾値以上となった又はいずれかの閾値未満となったことを検出した。
・変更後の最大転送長を指定した変更指示をコントロールマスタ0が管理システム203から受けたこと。
・前回のS804の判断から一定時間が経った。
・現在時刻が所定の時刻になった。
・ノード0の計算リソース(ハードウェア)の性能値。例えば、コントローラ0(例えば保守プログラム0)が、ノード0の計算リソースの性能値(例えば、CM0の空き容量)に基づいて帯域の限界値を予測し(或いは、当該帯域の限界値の予測値を管理システム203のような外部から受けて)、限界値の予測値を基に、最大転送長を変更する。
・1以上の外部プログラムの稼働状況。例えば、1又は複数の外部プログラム(例えば或る外部プログラム)が新たに稼働又は停止する場合、コントローラ0(例えば、RESTサーバプログラム0)が、その1又は複数の外部プログラムの新たな稼動又は停止の通知をその1又は複数の外部プログラムの少なくとも1つから受ける、又は、コントローラ0(例えば、保守プログラム0)が、1又は複数の外部プログラムの新たな稼動又は停止の通知を管理システム203から受ける。その通知を受けたコントローラ0(例えば、RESTサーバプログラム0又は保守プログラム0)が、1又は複数の外部プログラムが新たに稼働するならば最大転送長を比較的小さくし、1又は複数の外部プログラムが新たに停止するならば最大転送長を比較的大きくする。
Claims (14)
- 複数のノードを有し、
前記複数のノードの各々は、1以上のストリップで構成された論理的な記憶領域であるノード領域を有し、
前記複数のノードは、2以上の前記ノード領域から冗長構成領域を構成し、
前記冗長構成領域は、前記2以上のノード領域がそれぞれ有する2以上のストリップから構成されるストライプを含む分散ストレージシステムにおいて前記ノード間でのライト対象データの転送を行うコンピュータプログラムであって、
前記コンピュータプログラムは前記複数のノードのうちのいずれかのノードである第1ノードで実行され、
前記第1ノードが、
前記複数のノードそれぞれの前記ノード領域にライトされるデータセットを記憶するキャッシュメモリと、
前記複数のノードのうち前記第1ノード以外の複数の第2ノードそれぞれの前記ノード領域におけるストリップがライト先となる、前記キャッシュメモリに記憶されたデータセットである転送対象データセットの前記第1ノードでの有無を管理するノード管理情報と、を保持し、
前記コンピュータプログラムが、前記第1ノードに、
(A)当該1つの前記第2ノードのノード領域における2以上のストリップがそれぞれライト先となる2以上の転送対象データセットがあることを前記ノード管理情報を基に特定した場合、当該2以上の転送対象データセットのキャッシュストリップを前記ノード管理情報を基に特定し、
(B)前記特定した前記キャッシュストリップに対応する2以上のノード内位置にそれぞれ存在する2以上の転送対象データセットを転送対象とした1つの転送用コマンドを当該第2ノードに送信する、
を実行させることで1つの転送用コマンドで2以上のライト対象データを当該第2ノードに送信するコンピュータプログラム。 - 前記第1ノードに、前記各第2ノードについて、(B)において、
(b1)前記2以上の転送対象データセットをそれぞれ格納する2以上のキャッシュストリップを含む、当該第2ノードに対応した複数のキャッシュストリップをロックし、
(b2)前記ロックした複数のキャッシュストリップにおける前記2以上の転送対象データセットの前記転送用コマンドを当該第2ノードに送信する、
を実行させる請求項1記載のコンピュータプログラム。 - 前記第1ノードに、ログストラクチャード方式で、前記第1ノードにおける前記キャッシュメモリにデータセットを書き込ませるようになっており、
(b1)において、ロック対象の前記複数のキャッシュストリップは、連続した前記2以上のキャッシュストリップである、
請求項2記載のコンピュータプログラム。 - 前記第1ノードに、ログストラクチャード方式で、前記第1ノードにおける前記キャッシュメモリにデータセットを書き込ませるようになっており、
(b1)において、ロック対象の前記複数のキャッシュストリップは、連続しており、非連続の前記2以上のキャッシュストリップを含む、
請求項2記載のコンピュータプログラム。 - 前記ノード管理情報が、ノード毎のサブノード管理情報を含み、
前記サブノード管理情報が管理する各ノード内位置は、当該情報に対応したノードに対応したキャッシュストリップであって、転送対象データセットのライト先ストリップに対応したキャッシュストリップであり、
各ノードについて、前記第1ノードがロック可能なキャッシュストリップの最大数は、当該ノードに対応したサブノード管理情報のサイズに依存し、
各ノードについて、サブノード管理情報のサイズは、前記第1ノードが転送可能なデータセットの総量である最大転送長に依存する、
請求項2記載のコンピュータプログラム。 - 前記第1ノードにおいて、前記複数のノードの少なくとも1つについて、前記最大転送長は、下記のうちの少なくとも1つに基づく、
(p1)当該ノードについて目標とされるI/O処理性能、
(p2)当該ノードのネットワーク帯域、
(p3)I/O処理の多重度、及び、
(p4)前記冗長構成領域を構成する複数のノード領域を提供するノードの数、
請求項5記載のコンピュータプログラム。 - (p1)が採用される場合、I/O処理性能が比較的高い場合、最大転送長は比較的小さい、
(p2)が採用される場合、ネットワーク帯域が比較的小さい場合、最大転送長は比較的小さい、
(p3)が採用される場合、I/O処理の多重度が比較的大きい場合、最大転送長は比較的小さい、
(p4)が採用される場合、ノード数が比較的大きい場合、最大転送長は比較的小さい、
請求項6記載のコンピュータプログラム。 - 前記第1ノードの稼働後、前記第1ノードにおいて、前記複数のノードの少なくとも1つについて、前記最大転送長を、前記第1ノードに、下記のうちの少なくとも1つに基づいて変更させる、
(q1)前記第1ノードの計算リソースの性能値、及び、
(q2)前記第1ノードで実行されるプログラムであって前記コンピュータプログラム以外のいずれか1以上のプログラムである1以上の外部プログラムの稼働状況、
請求項5記載のコンピュータプログラム。 - (q1)が採用されている場合、前記第1ノードの計算リソースの性能値に基づく帯域限界値の予測値を基に、最大転送長を変更し、
(q2)が採用されている場合、1又は複数の外部プログラムが新たに稼働することに応じて、最大転送長を比較的小さくし、1又は複数の外部プログラムが新たに停止することに応じて、最大転送長を比較的大きくする、
を、前記第1ノードに実行させる請求項6記載のコンピュータプログラム。 - 前記第1ノードに、前記各第2ノードについて、(B)において、
(b3)前記転送対象データセットの数に従うストリップ数と同数のキャッシュストリップを当該第2ノードのキャッシュメモリからロックすることの要求であるロック要求を、前記第2ノードに送信し、
(b1)及び(b3)の完了後に、(b2)を実行する、
を実行させる請求項1記載のコンピュータプログラム。 - 前記ノード管理情報が、ノード毎のサブノード管理情報を含み、
各ノードについて、サブノード管理情報のサイズは、前記第1ノードが転送可能なデータセットの総量である最大転送長に依存する、
請求項1記載のコンピュータプログラム。 - 複数のノードを有し、
前記複数のノードの各々は、1以上のストリップで構成された論理的な記憶領域であるノード領域を有し、
前記複数のノードは、2以上の前記ノード領域から冗長構成領域を構成し、
前記冗長構成領域は、前記2以上のノード領域がそれぞれ有する2以上のストリップから構成されるストライプを含み、前記ノード間でのライト対象データの転送を行う分散ストレージシステムにおいて、
前記複数のノードのうちのいずれかのノードである第1ノードが、
前記複数のノードの各々の前記ノード領域にライトされるデータセットを記憶するキャッシュメモリと、
前記複数のノードのうち前記第1ノード以外の複数の第2ノードそれぞれの前記ノード領域におけるストリップがライト先となる、前記キャッシュメモリに記憶されたデータセットである転送対象データセットの前記第1ノードでの有無を管理するノード管理情報と、を保持し、
前記第1ノードは、
(A)1つの前記第2ノードのノード領域における2以上のストリップがそれぞれライト先となる2以上の転送対象データセットがあることを前記ノード管理情報を基に特定した場合、当該2以上の転送対象データセットのキャッシュストリップを前記ノード管理情報を基に特定し、
(B)前記特定した前記キャッシュストリップに対応する2以上のノード内位置にそれぞれ存在する2以上の転送対象データセットを転送対象とした1つの転送用コマンドを当該第2ノードに送信する、
ことで1つの転送用コマンドで2以上のライト対象データを当該第2ノードに送信する分散ストレージシステム。 - 複数のノードを有し、
前記複数のノードの各々は、1以上のストリップで構成された論理的な記憶領域であるノード領域を有し、
前記複数のノードは、2以上の前記ノード領域から冗長構成領域を構成し、
前記冗長構成領域は、前記2以上のノード領域がそれぞれ有する2以上のストリップから構成されるストライプを含み、前記ノード間でのライト対象データの転送を行う分散ストレージシステムの制御方法において、
前記複数のノードのうちのいずれかのノードである第1ノードが、
前記複数のノードの各々の前記ノード領域にライトされるデータセットを記憶するキャッシュメモリと、
前記複数のノードのうち前記第1ノード以外の複数の第2ノードそれぞれの前記ノード領域におけるストリップがライト先となる、前記キャッシュメモリに記憶されたデータセットである転送対象データセットの前記第1ノードでの有無を管理するノード管理情報と、を保持し、
前記第1ノードに、
(A)1つの前記第2ノードのノード領域における2以上のストリップがそれぞれライト先となる2以上の転送対象データセットがあることを前記ノード管理情報を基に特定した場合、当該2以上の転送対象データセットのキャッシュストリップを前記ノード管理情報を基に特定させ、
(B)前記特定した前記キャッシュストリップに対応する2以上のノード内位置にそれぞれ存在する2以上の転送対象データセットを転送対象とした1つの転送用コマンドを当該第2ノードに送信させる、
ことで1つの転送用コマンドで2以上のライト対象データを当該第2ノードに送信する分散ストレージ制御方法。 - 請求項1に記載のコンピュータプログラムであって、
前記第1ノードの前記キャッシュメモリは、
複数の前記キャッシュストリップを含むキャッシュストリップ列を複数有し、
それぞれの前記キャッシュストリップ列には、互いに異なる前記ノードへの転送対象データセットを記憶し、
1つの前記キャッシュストリップ列に含まれる複数の前記転送対象データセットを、前記1つの転送用コマンドで、前記キャッシュストリップ列に対応する前記ノード(単数)に転送するコンピュータプログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2017/026205 WO2019016911A1 (ja) | 2017-07-20 | 2017-07-20 | 分散ストレージシステム及び分散ストレージ制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2019016911A1 JPWO2019016911A1 (ja) | 2019-12-12 |
JP6731553B2 true JP6731553B2 (ja) | 2020-07-29 |
Family
ID=65016616
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019530302A Active JP6731553B2 (ja) | 2017-07-20 | 2017-07-20 | 分散ストレージシステム及び分散ストレージ制御方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10657062B2 (ja) |
JP (1) | JP6731553B2 (ja) |
WO (1) | WO2019016911A1 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI767997B (zh) | 2017-03-23 | 2022-06-21 | 日商索尼半導體解決方案公司 | 通信裝置、通信方法、程式及通信系統 |
WO2019118356A1 (en) * | 2017-12-11 | 2019-06-20 | Fungible, Inc. | Durable block storage in data center access nodes with inline erasure coding |
US10990478B2 (en) | 2019-02-01 | 2021-04-27 | Fungible, Inc. | Flexible reliability coding for storage on a network |
US10761931B2 (en) | 2018-10-24 | 2020-09-01 | Fungible, Inc. | Inline reliability coding for storage on a network |
US11630729B2 (en) | 2020-04-27 | 2023-04-18 | Fungible, Inc. | Reliability coding with reduced network traffic |
CN113590041B (zh) * | 2021-07-29 | 2024-05-17 | 杭州宏杉科技股份有限公司 | 一种数据保护存储方法、装置及设备 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6772245B1 (en) * | 2000-03-29 | 2004-08-03 | Intel Corporation | Method and apparatus for optimizing data transfer rates between a transmitting agent and a receiving agent |
US20020194427A1 (en) * | 2001-06-18 | 2002-12-19 | Ebrahim Hashemi | System and method for storing data and redundancy information in independent slices of a storage device |
JP3702231B2 (ja) * | 2002-01-31 | 2005-10-05 | 株式会社東芝 | ディスクアレイ装置及び同装置における動的記憶容量拡張方法 |
US7200715B2 (en) | 2002-03-21 | 2007-04-03 | Network Appliance, Inc. | Method for writing contiguous arrays of stripes in a RAID storage system using mapped block writes |
JP4440803B2 (ja) * | 2005-03-03 | 2010-03-24 | 富士通株式会社 | 記憶装置、その制御方法及びプログラム |
US8386741B2 (en) * | 2010-08-31 | 2013-02-26 | International Business Machines Corporation | Method and apparatus for optimizing data allocation |
US9075720B2 (en) * | 2010-10-04 | 2015-07-07 | International Business Machines Corporation | Locking a cache line for write operations on a bus |
US9136005B2 (en) | 2010-11-16 | 2015-09-15 | Samsung Electronics Co., Ltd. | Erasing methods of three-dimensional nonvolatile memory devices with cell strings and dummy word lines |
US8935484B2 (en) * | 2011-03-31 | 2015-01-13 | Hewlett-Packard Development Company, L.P. | Write-absorbing buffer for non-volatile memory |
JP2013134690A (ja) * | 2011-12-27 | 2013-07-08 | Toshiba Corp | 情報処理装置およびキャッシュ制御方法 |
US10402374B2 (en) * | 2013-08-26 | 2019-09-03 | Vmware, Inc. | Log-structured storage device format |
US9170928B1 (en) * | 2013-12-31 | 2015-10-27 | Symantec Corporation | I/O scheduling and load balancing across the multiple nodes of a clustered environment |
US9501418B2 (en) * | 2014-06-26 | 2016-11-22 | HGST Netherlands B.V. | Invalidation data area for cache |
US9524107B2 (en) * | 2014-07-30 | 2016-12-20 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Host-based device drivers for enhancing operations in redundant array of independent disks systems |
US10554749B2 (en) | 2014-12-12 | 2020-02-04 | International Business Machines Corporation | Clientless software defined grid |
KR101548689B1 (ko) * | 2014-12-26 | 2015-09-01 | 성균관대학교산학협력단 | 파일 시스템에서의 부분 가비지 컬렉션 방법 및 장치 |
JP6476959B2 (ja) * | 2015-02-13 | 2019-03-06 | 富士通株式会社 | ストレージ制御装置、ストレージシステム、および制御プログラム |
JP2016192170A (ja) * | 2015-03-31 | 2016-11-10 | 富士通株式会社 | ストレージ制御装置、ストレージシステムおよびストレージ制御プログラム |
US10235288B2 (en) * | 2015-10-02 | 2019-03-19 | Netapp, Inc. | Cache flushing and interrupted write handling in storage systems |
-
2017
- 2017-07-20 JP JP2019530302A patent/JP6731553B2/ja active Active
- 2017-07-20 WO PCT/JP2017/026205 patent/WO2019016911A1/ja active Application Filing
- 2017-11-24 US US15/821,997 patent/US10657062B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US10657062B2 (en) | 2020-05-19 |
JPWO2019016911A1 (ja) | 2019-12-12 |
WO2019016911A1 (ja) | 2019-01-24 |
US20190026034A1 (en) | 2019-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6731553B2 (ja) | 分散ストレージシステム及び分散ストレージ制御方法 | |
US10852959B2 (en) | Data storage system, process and computer program for such data storage system for reducing read and write amplifications | |
JP6600698B2 (ja) | 計算機システム | |
US9785349B2 (en) | Efficient free-space management of multi-target peer-to-peer remote copy (PPRC) modified sectors bitmap in bind segments | |
US9792061B2 (en) | Efficient cache management of multi-target peer-to-peer remote copy (PPRC) modified sectors bitmap | |
CN110300960B (zh) | 信息系统、管理程序和信息系统的程序更换方法 | |
US10394484B2 (en) | Storage system | |
US10846234B2 (en) | Storage control system and storage control method | |
US10884924B2 (en) | Storage system and data writing control method | |
JP6025973B2 (ja) | 計算機システム及び計算機システムのボリューム管理方法 | |
US11321208B2 (en) | Distributed storage system and distributed storage control method | |
US9298397B2 (en) | Nonvolatile storage thresholding for ultra-SSD, SSD, and HDD drive intermix | |
US20170097795A1 (en) | Storage system | |
US9785553B2 (en) | Asynchronous cleanup after a peer-to-peer remote copy (PPRC) terminate relationship operation | |
US9535610B2 (en) | Optimizing peer-to-peer remote copy (PPRC) transfers for partial write operations using a modified sectors bitmap | |
WO2018055686A1 (ja) | 情報処理システム | |
JP7113698B2 (ja) | 情報システム | |
US20160357479A1 (en) | Storage control apparatus | |
US20240220378A1 (en) | Information processing system and information processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190807 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190807 |
|
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: 20200616 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200706 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6731553 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |