JP6949801B2 - ストレージシステム及びストレージシステムにおけるデータ配置方法 - Google Patents
ストレージシステム及びストレージシステムにおけるデータ配置方法 Download PDFInfo
- Publication number
- JP6949801B2 JP6949801B2 JP2018196235A JP2018196235A JP6949801B2 JP 6949801 B2 JP6949801 B2 JP 6949801B2 JP 2018196235 A JP2018196235 A JP 2018196235A JP 2018196235 A JP2018196235 A JP 2018196235A JP 6949801 B2 JP6949801 B2 JP 6949801B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- node
- component
- chunk
- neck
- 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/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/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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2058—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using more than 2 mirrored copies
-
- 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/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2094—Redundant storage or storage space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3034—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a storage system, e.g. DASD based or network based
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3055—Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3442—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for planning or managing the needed capacity
-
- 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
- G06F3/065—Replication mechanisms
-
- 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/0653—Monitoring 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/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
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3447—Performance evaluation by modeling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/81—Threshold
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)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Detection And Correction Of Errors (AREA)
Description
図1は、実施例1の計算機システムの構成例を示す図である。図1は、実施例1の計算機システム1におけるプロテクションドメイン(Protection Domain:以下「PD」と略記する場合がある)と、サイト(Site)と、フォルトセット(Fault Set:以下「FS」と略記する場合がある)と、ノード(Node)との関連を示す。プロテクションドメイン、サイト、フォルトセット、ノード、及び後述するノード内の記憶ドライブ(Drive)のそれぞれは、コンポーネントと呼ばれる。
図2は、実施例1のFSのハードウェア構成例を示す図である。FS40は、図2に示すように、複数のノード100と、ネットワークスイッチ170と、電源180とを有する。FS40内のノード100は、ネットワークスイッチ170や電源180等を共有するため、これらの障害が発生した場合にはFS40単位で障害が発生する。
図3は、実施例1のメモリ内の制御情報格納領域に格納されるテーブル例を示す図である。メモリ140内の制御情報格納領域141には、物理チャンク管理テーブル1001と、論理チャンク管理テーブル1002と、チャンクグループ管理テーブル1003と、ドライブ管理テーブル1004と、ノード管理テーブル1005と、Fault Set管理テーブル1006とが格納される。また制御情報格納領域141には、Storage-Pool管理テーブル1007と、VVOL(Virtual Volume:仮想ボリューム)管理テーブル1008と、Pool-Page管理テーブル1009と、割当数管理テーブル1010と、MAN(Max Allocated Number)管理テーブル1011と、障害耐性管理テーブル1012とが格納されている。これらのテーブルの詳細は後述する。
図4は、実施例1のメモリ内の制御プログラム格納領域に格納されるプログラム例を示す図である。メモリ140内の制御プログラム格納領域141には、使用容量監視プログラム1101と、Storage-Pool容量増加プログラム1102と、障害耐性算出プログラム1103と、I/O処理プログラム1104とが格納されている。
図5は、実施例1の記憶ドライブのデータ構成例を示す図である。記憶ドライブ160は、その物理領域が、複数の物理チャンク202に分割されている。物理チャンク202は、物理領域の管理単位であり、それぞれの容量が例えば数十GiBである。物理チャンク202は、データ用とパリティ用に分かれていてもよいし、1つの物理チャンク202にデータ及びパリティが混在していてもよい。
図6は、実施例1のチャンクグループの構成例を示す図である。図6に示すように、チャンクグループ300(300a、300b1、300b2を総称して300とする)は、複数の物理チャンク202から構成される。チャンクグループ300は冗長性を有するデータセットの一例であり、物理チャンク202はデータセットを構成する各データ単位の一例である。
図7は、実施例1のチャンクグループ内のストライプの構成例を示す図である。上述のように、チャンクグループ300は、複数の物理チャンク202で構成される。図7は、同一チャンクグループ300に属する物理チャンク202を抽出したものであり、1つのチャンクグループ300を構成する各物理チャンク202は、1以上のノード100、1以上の記憶ドライブ160にバラバラに配置されている。
図8は、実施例1の計算機システム1の論理構成例を示す図である。論理チャンク500は、データ領域及びパリティ領域から構成される物理チャンク202からデータ領域のみを抽出したものである。論理チャンク500は、Storage-Pool501に提供される。そのため、Storage-Pool501の容量は、物理チャンク202のパリティ部分を除く容量と同一容量、即ちユーザが割り当て可能な容量となる。ただし、障害時の冗長度の回復用に使用するスペア領域等をStorage-Pool501の容量とは個別に管理するために、一部の物理チャンク202をStorage-Pool501に割り当てずに保持しておく構成であってもよいし、Storage-Pool501の容量枯渇時に柔軟に容量を増加させるために、一部の論理チャンク500をStorage-Pool501に割り当てずに保持しておく構成であってもよい。なおStorage-Pool501は、プロテクションドメイン毎に1つ以上設けられる。
図9は、実施例1の物理チャンク管理テーブルの構成例を示す図である。物理チャンク管理テーブル1001は、記憶ドライブ160(Drive#カラム2000)と物理チャンク202(Pchunk#カラム2001)とチャンクグループ300(ChunkGroup#カラム2002)との関連を示すテーブルである。
図10は、実施例1の論理チャンク管理テーブルの構成例を示す図である。論理チャンク管理テーブル1002は、論理チャンク500(Lchunk#カラム500)と物理チャンク202(Pchunk#カラム202)との関連を示すテーブルである。
図11は、実施例1のチャンクグループ管理テーブルの構成例を示す図である。チャンクグループ管理テーブル1003は、ChunkGroup#カラム2020にIDが格納されるチャンクグループ300の構成及び状態を示すテーブルである。ProtectionTypeカラム2021は、当該ChunkGroupの保護方式を示す。Pchunk#カラム2022a(Pchunk#1)、Pchunk#カラム2022b(Pchunk#2)、Pchunk#カラム2022c(Pchunk#3)、Pchunk#カラム2022d(Pchunk#4)、Pchunk#カラム2022e(Pchunk#5)にはそれぞれ、チャンクグループ300を構成する各物理チャンク202のIDが格納される。本実施例では、チャンクグループ300を構成する物理チャンク202の数は、最大5つである。
図12は、実施例1のドライブ管理テーブルの構成例を示す図である。ドライブ管理テーブル1004は、記憶ドライブ160を構成するDriveとNodeの関連、構成、及び状態を示すテーブルである。Typeカラム2032には、Node#カラム2030及びDrive#カラム2031に格納されているIDのノード100の記憶ドライブ160のドライブ種別(SSD、SAS−HDD、SATA−HDD等)が格納されている。
図13は、実施例1のノード管理テーブルの構成例を示す図である。ノード管理テーブル1005は、Fault SetとNodeの関連を示すテーブルである。Size(Block)カラム2042には、当該Fault Set#カラム2040及びNode#カラム2041に格納されているIDのFS40のノード100内の全ての記憶ドライブ160の合計記憶容量が格納されている。Size(Block)カラム2042に格納される情報は、当該Fault Set#カラム2040及びNode#カラム2041に格納されているIDのFS40のノード100内の全ての記憶ドライブ160の合計記憶容量の使用率(使用中容量)である。
図14は、実施例1のFault Set管理テーブルの構成例を示す図である。Fault Set管理テーブル1006は、Protection DomainとSiteとFault Setとの関連を、各IDを対応付けて示すテーブルである。一般的にFS(Fault Set)40(例えばラック等)は計算機システム1の管理外であるため、状態管理は行わない(ラック障害時はラック内全ノードの障害として扱う)が、計算機システム1の管理下にある場合は状態管理を行ってもよい。
図15は、実施例1のStorage-Pool管理テーブルの構成例を示す図である。Storage-Pool管理テーブル1007は、Storage-Pool501のサイズ(Size(Block))と使用率(Usage)と割り当てられた論理チャンク500(Allocated Lchunk)との関係を示すテーブルである。
図16は、VVOL管理テーブルの構成例を示す図である。VVOL管理テーブル1008は、VVOL502の構成情報と、VVOL502に割り当てられたVVOL-Page504、及びVVOL-Page504とPool-Page503の関係を示すテーブルである。VVOL-Page504とPool-Page503の各サイズは計算機システム1で固定値であるが、オーバープロビジョニングされてもよい。
図17は、実施例1のPool-Page管理テーブルの構成例を示す図である。Pool-Page管理テーブル1009は、Pool-Page503の構成を管理するテーブルである。Pool-Page#カラム2080には、Pool-Page503のIDが格納される。Storage-Pool内開始LBAカラム2081には、Storage-Pool501内での当該Pool-Page503の開始LBAが格納される。Lchunk#カラム2082には、当該Pool-Page503に割り当てられている論理チャンク500のIDが格納される。Lchunk内開始LBAカラム2083には、Storage-Pool内開始LBAで示されるStorage-Pool501内の領域が対応する論理チャンク500内の領域を、論理チャンク500内での開始LBAで示す情報が格納される。
データのWrite処理フローは、次のようになる。先ずホスト10は、VVOL#、VVOL内LBAを指定してWriteコマンドを発行する。次にCPU130は、当該VVOL502内領域に対応するVVOL-Page504を算出する。次にCPU130は、当該VVOL-Page504に対応するPool-Page503を算出する。次にCPU130は、当該Pool-Page503に対応する論理チャンク500の領域を算出する。次にCPU130は、当該論理チャンク500の領域に対応する物理チャンク202の領域を算出する。次にCPU130は、当該物理チャンク202の領域に対応する記憶ドライブ160内の領域を算出する。次にCPU130は、当該記憶ドライブ160内の領域に対して要求データを書き込む(Write)。データのReadも、Writeと同様である。
図18は、実施例1の割当数管理テーブルの構成例を示す図である。割当数管理テーブル1010は、Site、Fault Set、Node、及びDriveそれぞれに割り当てられた物理チャンク202の割当数を管理する各テーブルがツリー状に展開されたテーブルである。図18の例では、割当数管理テーブル1010は、ツリー上に展開されるテーブル2090−a0、テーブル2090−b0、テーブル2090−c0、テーブル2090−c1、テーブル2090−d0、及びテーブル2090−d1を含む。図18の例では、一部の図示を省略している。
図19は、実施例1のMAN管理テーブルの構成例を示す図である。MAN管理テーブル1011は、各コンポーネント(Site、Fault Set、Node、Drive)のMANを管理している。MAN管理テーブル1011は、チャンクグループ300の新規作成時(物理チャンク202の割当先選択時)にのみ使用し、対象チャンクグループ作成後は破棄してもよいため、不揮発化領域への格納は必須ではない。
図20は、実施例1の障害耐性管理テーブルの構成例を示す図である。障害耐性管理テーブル1012は、各コンポーネント(Site、Fault Set、Node、Drive)の現在の障害耐性をユーザに提示するために管理しているテーブルである。
図21は、実施例1のStorage-Pool容量増加処理の例を示すフローチャートである。以下では、チャンクグループ300を作成する契機で、当該チャンクグループに対応する論理チャンク500を全て作成し、Storage-Pool501への論理チャンク500の追加は任意の契機で実行可能であることを前提とする。各ノード100において、I/O処理プログラム1104のI/O処理の実行と共に、Storage-Pool501の使用率が上がっていく。Storage-Pool容量増加プログラム1102は、I/O処理の都度、あるいは一定周期に使用容量監視プログラム1101によりStorage-Pool501の使用率の閾値超過が検出されたことを契機として各ノード100のCPU130により実行される。
図22は、実施例1のチャンクグループ新規作成処理の例を示すフローチャートである。図22は、図21のステップS3004の詳細を示すサブルーチンである。チャンクグループ新規作成処理は、チャンクグループ300を新規作成する際に、当該チャンクグループ300を構成する規定数の物理チャンク202を選択する処理である。チャンクグループ新規作成処理で示すMAN(Maximum Allocatable Number:最大割当可能数)は、例えばMAN(Node)=2なら、1つのチャンクグループ300あたり、同一Nodeに2個までの物理チャンク202を割り当て可能である。
(1)ネック部位が設定されておらず、かつ障害状態でないSiteの中で、空き容量が最も多いSiteを選択する。
(2)選択されたSite内に存在し、かつネック部位が設定されておらず、かつ障害状態でないFault Setの中で、空き容量が最も多いFault Setを選択する。
(3)選択されたFault Set内に存在し、かつネック部位が設定されておらず、かつ障害状態でないNodeの中で、空き容量が最も多いNodeを選択する。
(4)選択されたNode内に存在し、かつネック部位が設定されておらず、かつ障害状態でないDriveの中で、空き容量が最も多いDriveを選択する。
図23は、実施例1の割当数変更時ネック部位更新処理の例を示すフローチャートである。図23は、図22のステップS3106の詳細を示すサブルーチンである。割当数変更時ネック部位更新処理では、物理チャンク202を、新規作成するチャンクグループ300の一構成要素としてある領域に割り当てた場合に発生する、当該割り当てにより自コンポーネントに対してネック化するコンポーネント要素を更新する。
図24は、実施例1の割当数変更時他コンポーネントネック部位更新処理の例を示すフローチャートである。図24は、図23のステップS3206の詳細を示すサブルーチンである。
図25は、実施例1のMAN更新処理の例を示すフローチャートである。図25は、図21のステップS3107の詳細を示すサブルーチンである。MAN更新処理は、現在の割当状態及びMANでは割り当てができない場合、MANを増やすことで対応する処理である。
図26は、実施例1のMAN更新時ネック部位更新処理の例を示すフローチャートである。図26は、図22のステップS3108の詳細を示すサブルーチンである。MAN更新時ネック部位更新処理は、MANを更新することにより、ネック部位が更新される(ネックが外れる又は別コンポーネントのネック変更される)コンポーネント要素があるはずなので、これをチェックし更新する処理である。
図27〜図42は、実施例1の物理チャンクの割り当て処理に伴う割当数管理テーブル及びMAN管理テーブルの状態遷移例を説明するための図である。以下、図27〜図42を参照して、図22に示すチャンクグループ新規作成処理により、Site#0において物理チャンクがドライブに割り当てられる度に、割当数管理テーブル1010(図18参照)及びMAN管理テーブル1011(図19参照)がどのように変化するかを説明する。
(1)同一コンポーネント内の最大割当数を最小化する。即ちコンポーネント間でできるだけ均等に物理チャンクを割り当てる。
(2)割当数が一定数を超える場合は、なるべく下位コンポーネントの割当数が少なくなるように配置する。
図43は、実施例2のシステム内構成台数変更時のリバランス処理概念図である。図44の上図は、増設前の3D1Pのチャンクグループ300の割り当て済みの物理チャンク202の配置を、黒く塗りつぶして表している。
図44は、実施例2のメモリ内の制御プログラム格納領域に格納されるプログラム例を示す図である。メモリ140内の制御プログラム格納領域141には、実施例2では、実施例1と比較して、更に増設後リバランス処理プログラム1105と、減設前リバランス処理プログラム1106とが格納されている。
図45は、増設後チャンクリバランス処理の例を示すフローチャートである。増設後チャンクリバランス処理は、管理サーバ20からのユーザ指示に基づくシステム(NodeやDevice等)の増設後に起動され、物理チャンク202の再配置を行う。
図46は、実施例2の減設時チャンクリバランス処理の例を示すフローチャートである。減設時チャンクリバランス処理は、管理サーバ20からのユーザ指示に基づくシステム(NodeやDevice等)の減設前に起動され、減設対象コンポーネントからデータを退避し、減設(物理的な抜去)が可能な状態にする。
Claims (8)
- データのI/O処理の要求を処理する複数のノードを有するストレージシステムであって、
前記ノードは、
記憶ドライブと、
前記記憶ドライブに対して前記I/O処理を行うプロセッサと、を有し、
前記プロセッサは、
異なる前記記憶ドライブに格納されるデータを組みにしてデータセットとしたデータ冗長構成を構成し、
前記ストレージシステムを管理する管理部は、
前記ノード及び前記記憶ドライブを少なくとも含むコンポーネントの情報であるコンポーネント情報と、前記データ冗長構成にかかるデータ冗長構成情報と、を用いて、各コンポーネントの障害に対する障害耐性情報を算出する障害耐性算出を行い、
前記算出した障害耐性情報にかかる前記データ冗長構成を適用してデータ配置を決定し、
各前記データ冗長構成についての前記障害耐性情報は、複数のコンポーネント種別ごとに、障害が起きても稼働継続できるコンポーネント数を含んでおり、
前記複数のコンポーネント種別ごとの障害が起きても稼働継続できるコンポーネント数が所定の基準を満たすデータ冗長構成を適用したコンポーネント構成及びデータ配置を決定する
ことを特徴とするストレージシステム。 - 前記管理部は、前記障害耐性算出では、前記データ冗長構成情報に基づいて、各データの配置を設定し、各コンポーネントに障害が起きた場合の稼働継続性に基づいて、前記障害耐性情報を算出する
ことを特徴とする請求項1に記載のストレージシステム。 - 前記コンポーネントには、電源又はネットワークを含み、前記障害耐性情報には、前記電源又はネットワークに障害が発生した場合の稼働継続性を含む
ことを特徴とする請求項1に記載のストレージシステム。 - 前記コンポーネントには、サイトを含み、前記障害耐性情報には、前記サイトに障害が発生した場合の稼働継続性を含む
ことを特徴とする請求項1に記載のストレージシステム。 - 前記障害耐性情報には、前記データ配置のネックとなっているネック部位の情報が含まれる
ことを特徴とする請求項1に記載のストレージシステム。 - 前記管理部は、前記障害耐性情報に基づいて、前記データ冗長構成及び前記データ配置を決定する
ことを特徴とする請求項1に記載のストレージシステム。 - 前記障害耐性情報を出力し、前記データ冗長構成及び前記データ配置の選択をユーザから受け付ける
ことを特徴とする請求項1に記載のストレージシステム。 - データのI/O処理の要求を処理する複数のノードを有するストレージシステムにおけるデータ配置方法であって、
前記ノードは、
記憶ドライブと、
前記記憶ドライブに対して前記I/O処理を行うプロセッサと、を有し、
前記プロセッサは、
異なる前記記憶ドライブに格納されるデータを組みにしてデータセットとしたデータ冗長構成を構成し、
前記ストレージシステムを管理する管理部が、
前記ノード及び前記記憶ドライブを少なくとも含むコンポーネントの情報であるコンポーネント情報と、前記データ冗長構成にかかるデータ冗長構成情報と、を用いて、各コンポーネントの障害に対する障害耐性情報を算出する障害耐性算出を行い、
前記算出した障害耐性情報にかかる前記データ冗長構成を適用してデータ配置を決定し、
各前記データ冗長構成についての前記障害耐性情報は、複数のコンポーネント種別ごとに、障害が起きても稼働継続できるコンポーネント数を含んでおり、
前記複数のコンポーネント種別ごとの障害が起きても稼働継続できるコンポーネント数が所定の基準を満たすデータ冗長構成を適用したコンポーネント構成及びデータ配置を決定する
ことを特徴とするストレージシステムにおけるデータ配置方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018196235A JP6949801B2 (ja) | 2018-10-17 | 2018-10-17 | ストレージシステム及びストレージシステムにおけるデータ配置方法 |
US16/563,522 US10705737B2 (en) | 2018-10-17 | 2019-09-06 | Storage system and data arrangement method of storage system |
US16/918,632 US11301137B2 (en) | 2018-10-17 | 2020-07-01 | Storage system and data arrangement method of storage system |
JP2021154123A JP7140898B2 (ja) | 2018-10-17 | 2021-09-22 | ストレージシステム及びストレージシステムにおけるデータ配置方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018196235A JP6949801B2 (ja) | 2018-10-17 | 2018-10-17 | ストレージシステム及びストレージシステムにおけるデータ配置方法 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021154123A Division JP7140898B2 (ja) | 2018-10-17 | 2021-09-22 | ストレージシステム及びストレージシステムにおけるデータ配置方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020064473A JP2020064473A (ja) | 2020-04-23 |
JP6949801B2 true JP6949801B2 (ja) | 2021-10-13 |
Family
ID=70280538
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018196235A Active JP6949801B2 (ja) | 2018-10-17 | 2018-10-17 | ストレージシステム及びストレージシステムにおけるデータ配置方法 |
JP2021154123A Active JP7140898B2 (ja) | 2018-10-17 | 2021-09-22 | ストレージシステム及びストレージシステムにおけるデータ配置方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021154123A Active JP7140898B2 (ja) | 2018-10-17 | 2021-09-22 | ストレージシステム及びストレージシステムにおけるデータ配置方法 |
Country Status (2)
Country | Link |
---|---|
US (2) | US10705737B2 (ja) |
JP (2) | JP6949801B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109491616B (zh) * | 2018-11-14 | 2022-05-24 | 三星(中国)半导体有限公司 | 数据的存储方法和设备 |
CN115210287B (zh) | 2020-03-31 | 2024-07-02 | 纳美仕有限公司 | 环氧胺加成物、固化催化剂、树脂组合物、密封材料、粘结剂、及固化物 |
JP2022033515A (ja) * | 2020-08-17 | 2022-03-02 | 株式会社日立製作所 | 記憶システム及び記憶制御方法 |
US20220129601A1 (en) * | 2020-10-26 | 2022-04-28 | Oracle International Corporation | Techniques for generating a configuration for electrically isolating fault domains in a data center |
WO2022201221A1 (ja) | 2021-03-22 | 2022-09-29 | 日本電信電話株式会社 | 通信システム、通信方法、サーバ、クライアント端末、および、プログラム |
JP2024000105A (ja) | 2022-06-20 | 2024-01-05 | 株式会社日立製作所 | 計算機システム、及び冗長化要素構成方法 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6826711B2 (en) * | 2000-02-18 | 2004-11-30 | Avamar Technologies, Inc. | System and method for data protection with multidimensional parity |
US7529834B1 (en) * | 2000-06-02 | 2009-05-05 | Hewlett-Packard Development Company, L.P. | Method and system for cooperatively backing up data on computers in a network |
US20030041097A1 (en) * | 2001-07-11 | 2003-02-27 | Alexander Tormasov | Distributed transactional network storage system |
JP4259800B2 (ja) * | 2002-01-31 | 2009-04-30 | 三菱電機株式会社 | データ格納装置、データ管理方法及びプログラム |
JP2005326935A (ja) * | 2004-05-12 | 2005-11-24 | Hitachi Ltd | 仮想化ストレージを備える計算機システムの管理サーバおよび障害回避復旧方法 |
US7774642B1 (en) * | 2005-02-17 | 2010-08-10 | Oracle America, Inc. | Fault zones for interconnect fabrics |
US7593323B2 (en) * | 2005-08-17 | 2009-09-22 | Honeywell International Inc. | Apparatus and methods for managing nodes on a fault tolerant network |
US7788544B2 (en) * | 2006-05-03 | 2010-08-31 | Computer Associates Think, Inc. | Autonomous system state tolerance adjustment for autonomous management systems |
US7958433B1 (en) * | 2006-11-30 | 2011-06-07 | Marvell International Ltd. | Methods and systems for storing data in memory using zoning |
WO2008136074A1 (ja) * | 2007-04-20 | 2008-11-13 | Fujitsu Limited | 2重化組み合わせ管理プログラム、2重化組み合わせ管理装置、および2重化組み合わせ管理方法 |
EP2672387B1 (en) * | 2012-06-04 | 2018-08-01 | Amplidata NV | A distributed object storage system |
US8874494B1 (en) * | 2012-09-28 | 2014-10-28 | Emc Corporation | Dynamic selection of spare storage element types in array |
WO2016051512A1 (ja) * | 2014-09-30 | 2016-04-07 | 株式会社日立製作所 | 分散型ストレージシステム |
JP2016130962A (ja) * | 2015-01-14 | 2016-07-21 | 富士通株式会社 | データ退避制御方法、データ退避制御プログラム、及びデータ退避制御装置 |
JP6499038B2 (ja) * | 2015-08-04 | 2019-04-10 | 株式会社東芝 | ストレージ管理装置、方法、及びストレージシステム |
US10474551B2 (en) * | 2017-06-30 | 2019-11-12 | Wipro Limited | Method and system for recovering data from storage systems |
US10339016B2 (en) * | 2017-08-10 | 2019-07-02 | Rubrik, Inc. | Chunk allocation |
-
2018
- 2018-10-17 JP JP2018196235A patent/JP6949801B2/ja active Active
-
2019
- 2019-09-06 US US16/563,522 patent/US10705737B2/en active Active
-
2020
- 2020-07-01 US US16/918,632 patent/US11301137B2/en active Active
-
2021
- 2021-09-22 JP JP2021154123A patent/JP7140898B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP7140898B2 (ja) | 2022-09-21 |
JP2020064473A (ja) | 2020-04-23 |
JP2022003556A (ja) | 2022-01-11 |
US20200333954A1 (en) | 2020-10-22 |
US11301137B2 (en) | 2022-04-12 |
US10705737B2 (en) | 2020-07-07 |
US20200125258A1 (en) | 2020-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6949801B2 (ja) | ストレージシステム及びストレージシステムにおけるデータ配置方法 | |
JP6560759B2 (ja) | ストレージシステム | |
US8650360B2 (en) | Storage system | |
JP5048760B2 (ja) | Raid管理、再割振り、およびリストライピングのためのシステムおよび方法 | |
US7620843B2 (en) | Rebuilding a storage system | |
JP6221564B2 (ja) | ストレージ制御装置、制御方法および制御プログラム | |
JPH09231016A (ja) | Raid記憶サブシステムにおけるデ−タのスナップショットコピ−作成方法とその装置 | |
CN113176858B (zh) | 数据处理方法、存储系统及存储设备 | |
CN105657066A (zh) | 用于存储系统的负载再均衡方法及装置 | |
JP2020101949A (ja) | ストレージシステム及びストレージシステム制御方法 | |
JP2006285808A (ja) | ストレージシステム | |
JP2007328468A (ja) | ストレージシステム及びストレージシステムのボリューム管理方法 | |
JP2018508073A (ja) | データ除去、割り当て、及び再構築 | |
JPWO2018138813A1 (ja) | 計算機システム | |
JP6653370B2 (ja) | ストレージシステム | |
KR20210022121A (ko) | 구성 가능한 인프라스트럭처에서 스토리지 디바이스 고장 허용을 유지하기 위한 방법 및 시스템 | |
US8943359B2 (en) | Common hot spare for multiple RAID groups | |
CN113448502B (zh) | 分布式存储系统和存储控制方法 | |
JP2020047215A (ja) | ストレージシステム及びストレージ制御方法 | |
JP2017174250A (ja) | 制御装置、ストレージ装置、制御方法及びプログラム | |
US11544005B2 (en) | Storage system and processing method | |
JP2013214184A (ja) | ミラーリングシステム、ノード、ミラーリング方法、及びプログラム | |
JP7131324B2 (ja) | ストレージアクセス制御装置、ストレージアクセス制御方法、及び、ストレージアクセス制御プログラム | |
JP6605762B2 (ja) | 記憶ドライブの故障により消失したデータを復元する装置 | |
JP6555290B2 (ja) | ストレージ装置、ストレージ管理方法及びストレージ管理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200203 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20201126 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20201208 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20210205 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210329 |
|
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: 20210824 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210922 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6949801 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |