JP6884165B2 - 複数のストレージノードを含むストレージシステム - Google Patents
複数のストレージノードを含むストレージシステム Download PDFInfo
- Publication number
- JP6884165B2 JP6884165B2 JP2019033920A JP2019033920A JP6884165B2 JP 6884165 B2 JP6884165 B2 JP 6884165B2 JP 2019033920 A JP2019033920 A JP 2019033920A JP 2019033920 A JP2019033920 A JP 2019033920A JP 6884165 B2 JP6884165 B2 JP 6884165B2
- Authority
- JP
- Japan
- Prior art keywords
- controller
- write data
- storage system
- ctl
- host
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- 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/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- 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/0893—Caches characterised by their organisation or structure
- G06F12/0895—Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array
-
- 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
-
- 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/0613—Improving I/O performance in relation to throughput
-
- 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/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [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/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/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/28—Using a specific disk cache architecture
- G06F2212/283—Plural cache memories
- G06F2212/284—Plural cache memories being distributed
-
- 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/30—Providing cache or TLB in specific location of a processing system
- G06F2212/305—Providing cache or TLB in specific location of a processing system being part of a memory device, e.g. cache DRAM
-
- 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/312—In storage controller
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
I/O要求種別がライト要求の場合(1104:Yes)、担当CTL0107は、PDEV管理テーブル0401とLDEV管理テーブル0402を参照し、当該I/OのLDEVに関する情報、及び当該LDEVを構成するPDEVの情報を取得する(1105)。担当CTL0107は、セグメント確保CTL決定処理を呼び出し、ライト処理に必要なキャッシュセグメントを確保するCTL0107を決定する(1106)。なお、セグメント確保CTL決定処理1106の詳細は、後述する。
I/O要求種別がライト要求でない場合(1104:No)、担当CTL0107は、I/O要求に基づき処理を実行した(1110)後、処理を終了する。当該処理は、本実施例の影響を受けないため、詳細な説明を省略する。
アクセスパタンがシーケンシャルである場合(1201:Yes)、担当CTL0107は、ステップ1105で取得したLDEV情報を用いて、ストレージ間冗長化のLDEVに対するライトであるか否かを判定する(1202)。ストレージ間冗長化のLDEVに対するライトデータは、リモートストレージシステム0103に接続されているCTL0107によって、リモートストレージシステム0103に転送される。ストレージ間冗長化のLDEVに対するライトの場合(1202:Yes)、担当CTL0107は、ステップ1203に進む(B)。一方、ストレージ間冗長化のLDEVに対するライトでない場合(1202:No)、担当CTL0107は、ステップ1205に進む(C)。
ストレージ間冗長化のLDEVに対するライトの場合(1202:Yes)、担当CTL0107は、当該LDEVがストレージ間冗長化をしているストレージコントローラ(リモート)0103が接続されているCTLのCTL#を取得し(1203)、ステップ1204に進む(E)。なお、取得方法は、あらかじめストレージシステム同士の接続状態を管理するテーブルを作成しておき、これを参照してもよいし、ストレージシステム(メイン)0102を構成する全てのCTL0107に問い合わせてもよい。
ストレージ間冗長化のLDEVに対するライトでない場合(1202:No)、担当CTL0107は、当該LDEVへのライトについて、担当CTL0107でホスト0104からライトされたデータを参照する処理(例えば、スナップショットなどライトに起因する処理)が存在するか否かを判定する(1205)。担当CTL0107でデータを参照する処理が存在する場合(1205:Yes)、担当CTL0107は、ステップ1206へ進む(D)。一方、担当CTL0107でデータを参照する処理が存在しない場合(1205:No)、担当CTL0107は、ステップ1207へ進む(F)。
担当CTL0107でデータを参照する処理が存在する場合(1205:Yes)、担当CTL0107は、担当CTL自身のCTL#を取得し(1206)、ステップ1204へ進む(E)。
担当CTL0107は、ステップ1203、またはステップ1206で取得したCTL#を引数とし、CTL#指定のセグメント確保CTL決定処理1106を呼び出し、指定したCTL#でセグメントを確保したうえで、CTL間のデータ複写回数が最小となるように、ライト処理に必要なセグメントを確保し(1204)、処理を終了する。なお、CTL#指定のセグメント確保処理1204の詳細は、後述する。
担当CTL0107でデータを参照する処理が存在しない場合(1205:No)、担当CTL0107は、CTL間データ複写回数最小セグメント確保CTL決定処理を呼び出し、CTL間のデータ複写回数が最小となるように、ライト処理に必要なセグメントを確保し(1207)、処理を終了する。なお、CTL間データ複写回数最小セグメント確保CTL決定処理1207の詳細は、後述する。
アクセスパタンがシーケンシャルでない場合(1201:No)、担当CTL0107は、キャッシュセグメントを「CTLの指定なしで確保」することに決定し、結果を返却する(1208)。
指定のCTLと担当CTLが一致する場合(1302:Yes)、担当CTL0107は、担当CTL0107にライト先のPDEVが接続されているか否かを判定する(1303)。担当CTL0107にライト先のPDEVが接続されている場合(1303:Yes)、担当CTL0107は、ステップ1304に進む(B)。一方、担当CTLにライト先のPDEVが接続されていない場合(1303:No)、担当CTL0107は、ステップ1306に進む(D)。
担当CTL0107にライト先のPDEVが接続されている場合(1303:Yes)、担当CTL0107は、担当CTL0107にホスト0104が接続されているか否かを判定する(1304)。担当CTLにホスト0104が接続されている場合(1304:Yes)、担当CTL0107は、ステップ1305に進む(C)。一方、担当CTL0107にホスト0104が接続されていない場合(1304:No)、担当CTL0107は、ステップ1307に進む(E)。
担当CTLにホスト0104が接続されている場合(1304:Yes)、担当CTL0107は、キャッシュセグメントの副面を「担当CTL以外で確保」することに決定し(1305)、結果を返却し、処理を終了する。
担当CTLにライト先のPDEVが接続されていない場合(1303:No)、担当CTL0107は、担当CTL0107にホスト0104が非接続であるか否かを判定する(1306)。担当CTLにホスト0104が非接続である場合(1306:Yes)、担当CTL0107は、ステップ1307に進む(E)。一方、担当CTL0107にホスト0104が非接続でない(接続されている)場合(1306:No)、担当CTL0107は、ステップ1308に進む(F)。
(E)
担当CTLにホスト0104が接続されている場合(1306:No)、担当CTL0107は、キャッシュセグメントの副面を「PDEV接続CTLで確保」することに決定し(1308)、結果を返却し、処理を終了する。
指定のCTLと担当CTL0107が一致しない場合(1302:No)、担当CTL0107は、キャッシュセグメントの副面を「指定CTLで確保」することに決定し(1309)、結果を返却し、処理を終了する。
担当CTL0107にライト先のPDEVが接続されている場合(1401:Yes)、担当CTL0107は、ホスト接続CTLにライト先のPDEVが接続されているか否かを判定する(1402)。ホスト接続CTLにライト先のPDEVが接続されている場合(1402:Yes)、担当CTL0107は、ステップ1403に進む(B)。一方、ホスト接続CTLにライト先のPDEVが接続されていない場合(1402:No)、担当CTL0107は、ステップ1407に進む(E)。
ホスト接続CTLにライト先のPDEVが接続されている場合(1402:Yes)、担当CTLは、担当CTL0107にホスト0104が接続されているか否かを判定する(1403)。担当CTL0107にホスト0104が接続されている場合(1403:Yes)、担当CTL0107は、ステップ1404に進む(C)。一方、担当CTL0107にホスト0104が接続されていない場合(1403:No)、担当CTL0107は、ステップ1407に進む(E)。
担当CTL0107にホスト0104が接続されている場合(1403:Yes)、担当CTL0107は、キャッシュセグメントの正面を「担当CTLで確保」することに決定する(1404)。担当CTL0107は、キャッシュセグメントの副面を「担当CTL以外で確保」することに決定し(1405)、結果を返却し、処理を終了する。
担当CTL0107にライト先のPDEVが接続されていない場合(1401:No)、担当CTL0107は、ホスト接続CTLにライト先のPDEVが接続されているか否かを判定する(1406)。ホスト接続CTLにライト先のPDEVが接続されている場合(1406:Yes)、担当CTL0107は、ステップ1407に進む(E)。一方、ホスト接続CTLにライト先のPDEVが接続されていない場合(1406:No)、担当CTL0107は、ステップ1409に進む(F)。
ホスト接続CTLにライト先のPDEVが接続されている場合(1406:Yes)、担当CTL0107は、キャッシュセグメントの正面を「担当CTLで確保」することに決定する(1407)。担当CTL0107は、キャッシュセグメントの副面を「ホスト接続CTLで確保」することに決定し(1408)、結果を返却し、処理を終了する。
ホスト接続CTLにライト先のPDEVが接続されていない場合(1406:No)、担当CTL0107は、キャッシュセグメントの正面を「ホスト接続CTLで確保」することに決定する(1409)。担当CTL0107は、キャッシュセグメントの副面を「PDEV接続CTLで確保」することに決定し(1410)、結果を返却し、処理を終了する。
キャッシュセグメントがCTL指定されている場合(1501:Yes)、担当CTL0107は、指定されたCTLにてキャッシュセグメントの正面と副面を確保し、担当CTL0107は、ステップ1504に進む(C)。
キャッシュセグメントがCTL指定されていない場合(1501:No)、担当CTL0107は、CTLごとのキャッシュセグメント使用量を算出し、CTL間で使用量が偏らないように正面と副面を選択した異なるCTLにそれぞれ確保(例えば、最も使用量の少ないCTLから順に正面と副面を確保)し、処理1504に進む(C)。これにより、キャッシュヒット率を上げることができる。なお、キャッシュセグメントを確保するCTLは、必ずしもCTLごとのキャッシュセグメント使用量に基づいて決定する必要はなく、例えば、前回に確保したCTLを記憶しておき、ラウンドロビンで正面と副面を確保するCTLを決定してもよい。
担当CTL0107は、ホスト0104が接続されたCTLにおいて正面又は副面が確保されているか否かを判定する(1504)。ホスト0104が接続されたCTLにおいて正面又は副面が確保されている場合(1504:Yes)、担当CTL0107は、ステップ1506に進む(E)。一方、ホスト0104が接続されたCTLにおいて正面又は副面が確保されていない場合(1504:No)、担当CTL0107は、ステップ1505に進む(D)。
ホスト0104が接続されたCTLにおいて正面又は副面が確保されていない場合(1504:No)、担当CTL0107は、ホスト0104が接続されたCTLにおいてバッファセグメントを確保し(1505)、担当CTL0107は、ステップ1506に進む(E)。
ホスト0104が接続されたCTLにおいて正面又は副面が確保されている場合(1504:Yes)、担当CTL0107は、ライト先のPDEVが接続されたCTLにおいて正面又は副面が確保されているか否かを判定する(1506)。ライト先のPDEVが接続されたCTLにおいて正面又は副面が確保されている場合(1506:Yes)、処理を終了する。
ホスト0104に接続されているCTL0107に確保したセグメントがキャッシュである場合(1602:Yes)、担当CTL0107は、ホスト0104から転送されたI/Oデータを当該キャッシュセグメントに格納する(1603)。担当CTL0107は、ステップ1603でデータを格納したキャッシュセグメントでない方のキャッシュセグメントへ、当該I/Oデータを複写し(1604)、担当CTL0107は、ステップ1607に進む(C)。
ホスト0104に接続されているCTLに確保したセグメントがバッファセグメントである場合(1602:No)、担当CTL0107は、ホスト0104から転送されたI/Oデータを当該バッファセグメントに格納する(1605)。担当CTL0107は、キャッシュセグメントの正面と副面の両方に、当該I/Oデータを複写し(1606)、担当CTL0107は、ステップ1607に進む(C)。
担当CTL0107は、ストレージ冗長化のLDEVに対するライトである否かを判定する(1607)。ストレージ冗長化のLDEVに対するライトである場合(1607:Yes)、担当CTL0107は、ステップ1608に進む(D)。一方、ストレージ冗長化のLDEVに対するライトでない場合(1607:No)、担当CTL0107は、ステップ1609に進む(E)。
ストレージ冗長化のLDEVに対するライトである場合(1607:Yes)、担当CTL0107は、リモートストレージシステム0103に接続されているCTL0107より、当該I/Oデータを転送する(1608)。
ストレージ冗長化のLDEVに対するライトでない場合(1607:No)、該当CTLは0107、ホスト0104にライトの完了を応答する(1609)。担当CTL0107は、担当CTL0107で固有の処理を実行する(1610)。例えば、スナップショットに関する処理であり、RAIDグループを構成している場合、担当CTL0107は、パリティの生成を実施する。
他に確保したバッファセグメントが存在する場合(1611:Yes)、担当CTL0107は、ホスト0104から転送されたI/Oデータを当該バッファセグメントに格納し(1612)し、担当CTL0107は、ステップ1613に進む(E)。
担当CTL0107は、ライト先のPDEVにホスト0104から転送されたI/Oデータを転送し(1613)、処理を終了する。
Claims (11)
- ネットワークを介して通信する複数のストレージノードを含むストレージシステムであ
って、
前記複数のストレージノードのそれぞれは、1以上のコントローラを含み、
前記コントローラにおける少なくとも1つのコントローラは、
ホストからライトデータを受信するコントローラと、前記ライトデータを処理するコントローラとに基づいて、前記ライトデータを格納するキャッシュサブ領域を確保する少なくとも二つのコントローラを指定し、
指定したコントローラにおいて、キャッシュサブ領域を確保し、
各コントローラが属するストレージノードの、前記ライトデータを格納する記憶デバイスへの接続の有無に基づいて、前記二つのコントローラを指定する
ストレージシステム。 - 請求項1に記載のストレージシステムであって、
前記ホストから前記ライトデータを受信するコントローラと、前記ライトデータを処理するコントローラとは、別のコントローラであり、
前記少なくとも1つのコントローラは、前記ホストから前記ライトデータを受信するコントローラと、前記ライトデータを処理するコントローラとを、前記キャッシュサブ領域を確保するコントローラに指定する
ストレージシステム。 - 請求項2に記載のストレージシステムであって、
前記指定した二つのコントローラのうち、前記ライトデータを格納する記憶デバイスに接続されたコントローラは、前記ライトデータを格納する記憶デバイスに接続されたコントローラの前記キャッシュサブ領域に記憶された前記ライトデータを、前記記憶デバイスに格納する
ストレージシステム。 - 請求項3に記載のストレージシステムであって、
前記指定した二つのコントローラのいずれもが、前記記憶デバイスに接続されていない場合、前記指定した二つのコントローラのうちいずれかが、前記記憶デバイスに接続された他のコントローラのバッファ領域に前記ライトデータを転送し、
前記他のコントローラが、前記バッファ領域に格納された前記ライトデータを、前記記憶デバイスに格納する
ストレージシステム。 - 請求項1に記載のストレージシステムであって、
前記ホストから前記ライトデータを受信するコントローラと、前記ライトデータを処理するコントローラとは、同じコントローラであり、
前記少なくとも1つのコントローラは、前記同じコントローラと、他の1つのコントローラとを、前記キャッシュサブ領域を確保するコントローラに指定し、
前記指定した二つのコントローラのうち少なくとも1つは、前記記憶デバイスに接続されている
ストレージシステム。 - 請求項1に記載のストレージシステムであって、
前記ホストから前記ライトデータを受信するコントローラと、前記ライトデータを格納する記憶デバイスに接続された他のコントローラとを、前記キャッシュサブ領域を確保するコントローラに指定する
ストレージシステム。 - 請求項1に記載のストレージシステムであって、
前記少なくとも1つのコントローラは、前記ホストから前記ライトデータを受信するコントローラと、前記ライトデータを格納する記憶デバイスに接続された他のコントローラとを、前記キャッシュサブ領域を確保するコントローラに指定する
ストレージシステム。 - 請求項1に記載のストレージシステムであって、
前記記憶デバイスは、前記ストレージノードの内に設けられた記憶媒体、またはリモートストレージシステムである
ストレージシステム。 - ネットワークを介して通信する複数のストレージノードを含むストレージシステムであ
って、
前記複数のストレージノードのそれぞれは、1以上のコントローラを含み、
前記コントローラにおける少なくとも1つのコントローラは、
ホストからライトデータを受信するコントローラと、前記ライトデータを処理するコントローラとに基づいて、前記ライトデータを格納するキャッシュサブ領域を確保する少なくとも二つのコントローラを指定し、
指定したコントローラにおいて、キャッシュサブ領域を確保し、
前記ホストからのライト要求のアクセスパタンがシーケンシャルである場合に、前記ホストから前記ライトデータを受信するコントローラと、前記ライトデータを処理するコントローラとに基づいて、前記コントローラの指定を行い、
前記ホストからのライト要求のアクセスパタンがランダムである場合に、キャッシュ利用効率に基づいて、前記コントローラの指定を行う
ストレージシステム。 - ネットワークを介して通信する複数のストレージノードを含むストレージシステムの制御方法であって、
前記複数のストレージノードのそれぞれは、1以上のコントローラを含み、
前記制御方法は、
ホストからライトデータを受信するコントローラと、前記ライトデータを処理するコントローラとに基づいて、前記ライトデータを格納するキャッシュサブ領域を確保する少なくとも二つのコントローラを指定し、
指定したコントローラにおいて、キャッシュサブ領域を確保し、
各コントローラが属するストレージノードの、前記ライトデータを格納する記憶デバイスへの接続の有無に基づいて、前記二つのコントローラを指定する
制御方法。 - ネットワークを介して通信する複数のストレージノードを含むストレージシステムの制御方法であって、
前記複数のストレージノードのそれぞれは、1以上のコントローラを含み、
前記制御方法は、
ホストからライトデータを受信するコントローラと、前記ライトデータを処理するコントローラとに基づいて、前記ライトデータを格納するキャッシュサブ領域を確保する少なくとも二つのコントローラを指定し、
指定したコントローラにおいて、キャッシュサブ領域を確保し、
前記ホストからのライト要求のアクセスパタンがシーケンシャルである場合に、前記ホストから前記ライトデータを受信するコントローラと、前記ライトデータを処理するコントローラとに基づいて、前記コントローラの指定を行い、
前記ホストからのライト要求のアクセスパタンがランダムである場合に、キャッシュ利用効率に基づいて、前記コントローラの指定を行う
制御方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019033920A JP6884165B2 (ja) | 2019-02-27 | 2019-02-27 | 複数のストレージノードを含むストレージシステム |
US16/551,778 US11347432B2 (en) | 2019-02-27 | 2019-08-27 | Storage system including storage nodes to determine cache allocations to implement cache control |
US17/731,626 US11755249B2 (en) | 2019-02-27 | 2022-04-28 | Storage system including storage nodes to determine cache allocations to implement cache control |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019033920A JP6884165B2 (ja) | 2019-02-27 | 2019-02-27 | 複数のストレージノードを含むストレージシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020140325A JP2020140325A (ja) | 2020-09-03 |
JP6884165B2 true JP6884165B2 (ja) | 2021-06-09 |
Family
ID=72142886
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019033920A Active JP6884165B2 (ja) | 2019-02-27 | 2019-02-27 | 複数のストレージノードを含むストレージシステム |
Country Status (2)
Country | Link |
---|---|
US (2) | US11347432B2 (ja) |
JP (1) | JP6884165B2 (ja) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6798599B2 (en) * | 2001-01-29 | 2004-09-28 | Seagate Technology Llc | Disc storage system employing non-volatile magnetoresistive random access memory |
CN104735119B (zh) * | 2013-12-23 | 2018-05-04 | 伊姆西公司 | 用于数据拷贝避免的方法和装置 |
DE102014213490C5 (de) | 2014-07-10 | 2020-06-18 | Continental Automotive Gmbh | Kühlvorrichtung, Verfahren zur Herstellung einer Kühlvorrichtung und Leistungsschaltung |
JP6294569B2 (ja) * | 2015-06-19 | 2018-03-14 | 株式会社日立製作所 | ストレージシステム及びキャッシュ制御方法 |
US9712617B2 (en) * | 2015-07-06 | 2017-07-18 | Infinidat Ltd. | Flow control in remote replication |
US10558383B2 (en) | 2015-10-08 | 2020-02-11 | Hitachi, Ltd. | Storage system |
JP2018010557A (ja) * | 2016-07-15 | 2018-01-18 | 富士通株式会社 | ストレージシステムおよび管理装置 |
-
2019
- 2019-02-27 JP JP2019033920A patent/JP6884165B2/ja active Active
- 2019-08-27 US US16/551,778 patent/US11347432B2/en active Active
-
2022
- 2022-04-28 US US17/731,626 patent/US11755249B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2020140325A (ja) | 2020-09-03 |
US20220253250A1 (en) | 2022-08-11 |
US11755249B2 (en) | 2023-09-12 |
US11347432B2 (en) | 2022-05-31 |
US20200272359A1 (en) | 2020-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6009095B2 (ja) | ストレージシステム及び記憶制御方法 | |
US7975115B2 (en) | Method and apparatus for separating snapshot preserved and write data | |
US8375167B2 (en) | Storage system, control apparatus and method of controlling control apparatus | |
US8635427B2 (en) | Data storage control on storage devices | |
JP4890033B2 (ja) | 記憶装置システム及び記憶制御方法 | |
WO2017216887A1 (ja) | 情報処理システム | |
JP4375435B2 (ja) | 予知型データ移行を行う階層ストレージシステム | |
JP4684864B2 (ja) | 記憶装置システム及び記憶制御方法 | |
JP4961319B2 (ja) | 仮想ボリュームにおける仮想領域に動的に実領域を割り当てるストレージシステム | |
WO2016147281A1 (ja) | 分散型ストレージシステム及び分散型ストレージシステムの制御方法 | |
US8650381B2 (en) | Storage system using real data storage area dynamic allocation method | |
US10191685B2 (en) | Storage system, storage device, and data transfer method | |
WO2018029820A1 (ja) | 計算機システム | |
JP2009043030A (ja) | ストレージシステム | |
JP2008269469A (ja) | ストレージシステム及びその管理方法 | |
JP6294569B2 (ja) | ストレージシステム及びキャッシュ制御方法 | |
US9875059B2 (en) | Storage system | |
WO2018158808A1 (ja) | 情報システム、管理プログラム及び情報システムのプログラム交換方法 | |
US20110191551A1 (en) | Storage apparatus and storage management method | |
US20210103400A1 (en) | Storage system and data migration method | |
JP6884165B2 (ja) | 複数のストレージノードを含むストレージシステム | |
JP5355603B2 (ja) | ディスクアレイ装置及び論理ボリュームアクセス方法 | |
WO2018055686A1 (ja) | 情報処理システム | |
JPWO2019003416A1 (ja) | ストレージシステム及び記憶制御方法 | |
JP6606235B1 (ja) | ストレージシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200124 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200124 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20201225 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210105 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210219 |
|
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: 20210420 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210511 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6884165 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |