JP5131271B2 - 組み合わせ決定プログラム、組み合わせ決定装置、および組み合わせ決定方法 - Google Patents

組み合わせ決定プログラム、組み合わせ決定装置、および組み合わせ決定方法 Download PDF

Info

Publication number
JP5131271B2
JP5131271B2 JP2009512809A JP2009512809A JP5131271B2 JP 5131271 B2 JP5131271 B2 JP 5131271B2 JP 2009512809 A JP2009512809 A JP 2009512809A JP 2009512809 A JP2009512809 A JP 2009512809A JP 5131271 B2 JP5131271 B2 JP 5131271B2
Authority
JP
Japan
Prior art keywords
failure occurrence
storage
simultaneous failure
manufacturing date
storage devices
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
Application number
JP2009512809A
Other languages
English (en)
Other versions
JPWO2008136074A1 (ja
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2008136074A1 publication Critical patent/JPWO2008136074A1/ja
Application granted granted Critical
Publication of JP5131271B2 publication Critical patent/JP5131271B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2056Error 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/2069Management of state, configuration or failover
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/008Reliability or availability analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2056Error 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/2071Error 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 a plurality of controllers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • General Factory Administration (AREA)

Description

本発明はデータを2重化するストレージ装置の組を決定するための2重化組み合わせ管理プログラム、2重化組み合わせ管理装置、および2重化組み合わせ管理方法に関し、特に同一タイプのストレージ装置を用いてデータの2重化を行うための2重化組み合わせ管理プログラム、2重化組み合わせ管理装置、および2重化組み合わせ管理方法に関する。
高い信頼性を要求されるストレージシステムでは、ミラーリングが行われることがある。ミラーリングは、複数のハードディスク装置にデータを2重化して書き込む技術である。ミラーリングを行うことで、一方のディスク装置が故障しても、他方のディスク装置からデータを読み出すことができる。これによりデータロスト(データを復旧出来なくなること)を防止できる。
ところが、データを2重化していても、2重化した2台のハードディスク装置が同時に故障した場合、データがロストしてしまう。なお、2台のハードディスク装置がそれぞれ異なる原因で同時に故障することは稀である。すなわち、2台のハードディスク装置が同時に故障する場合は、2台のハードディスク装置を製造したときの製造上の問題が原因であることが多い。
そこで、磁気記憶装置と半導体記憶装置とでミラーリングのペアを作り、データを冗長化することが考えられている。異なるタイプの記憶装置を用いてデータを冗長化させることで、同一原因による同時障害を防止できる(たとえば、特許文献1参照)。
特開2006−260008号公報
ところで、異なるタイプのストレージ装置でミラーリングを行うと、データのアクセス速度を性能の悪い方のストレージ装置に合わせることとなり、データのアクセス効率が低下する。たとえば、磁気式のハードディスク装置と半導体記憶装置とによるミラーリングを行った場合、半導体記憶装置の方が高速にデータのアクセスが可能であっても、ハードディスク装置に対するデータのアクセスが完了するまで、データアクセスを完了させることができない。すなわち、半導体記憶装置のデータアクセス性能が発揮されておらず、装置の能力が有効に活用されていないこととなる。
各ストレージ装置の能力を有効に活用してミラーリングを行うには、同等の性能を有する2台の記憶装置でミラーリングのペアを作ることが基本である。そのため、一般のミラーリング機能を有するRAID(Redundant Array of Independent Disks)システムでは、同じ企業が製造した同じモデルのハードディスク装置を複数台搭載している。同じモデルのハードディスク装置であれば、データのアクセス性能も同一であり、装置の性能を十分に発揮させることができる。
しかし、ハードディスク装置のような工業製品は、工場のある特定のロットで製造された装置に同じ障害が発生することがある。このような障害を、一般的にロット障害と呼んでいる。このようなロット障害は、ハードディスク装置に限らず、半導体記憶装置などのその他のストレージ装置全般に存在する。工場における特定のロットの製品にロット障害が発生する場合、そのロットのストレージ装置でミラーリングを行うと、2台が同時に故障する確率が非常に高くなってしまう。
本発明はこのような点に鑑みてなされたものであり、ミラーリングを行う2台のストレージ装置のロット障害による同時故障の可能性を低減することができる組み合わせ決定プログラム、組み合わせ決定装置、および組み合わせ決定方法を提供することを目的とする。
本発明では上記課題を解決するために、図1に示すような1、2重化組み合わせ管理装置1としてコンピュータを機能させるための2重化組み合わせ管理プログラム、および2重化組み合わせ管理装置1と同様の処理をコンピュータに行わせるための2重化管理方法が提供される。本発明に係る2重化組み合わせ管理装置1は、データを2重化するストレージ装置の組を決定するために、以下の機能を有する。
同時故障発生度記憶手段1aは、同時故障発生度を記憶する。製造日情報収集手段1bは、複数のストレージ装置2〜5からストレージ装置2〜5の製造日に応じた数値が設定された製造日情報を取得する。同時故障発生度計算手段1cは、製造日情報収集手段1bが取得した製造日情報に基づいて、2台のストレージ装置の組ごとの製造日情報の数値の差を計算し、製造日情報の差が大きいほど値が小さくなる同時故障発生度を算出し、ストレージ装置の組に対応付けて同時故障発生度を同時故障発生度記憶手段1aに格納する。組み合わせパターン作成手段1dは、複数のストレージ装置を2台ずつの組とした組み合わせパターンを複数生成する。同時故障発生度合算手段1eは、組み合わせパターン作成手段1dで生成された複数の組み合わせパターンそれぞれについて、ストレージ装置の組に対応する同時故障発生度を同時故障発生度記憶手段1aから取得し、取得した同時故障発生度の総和を算出する。2重化組み合わせパターン決定手段1fは、同時故障発生度合算手段1eで求められた同時故障発生度の総和が最も小さい組み合わせパターンを、2重化組み合わせパターン1gに決定する。ミラーリング指示手段1hは、複数のストレージ装置を用いてミラーリングを実施するミラーリング手段1iに対して、2重化組み合わせパターン決定手段1fで決定された2重化組み合わせパターン1gに示される2台ずつのストレージ装置の組によるミラーリングの指示を送信する。
このような2重化組み合わせ管理装置1によれば、製造日情報収集手段1bにより、ストレージ装置2〜5の製造日情報が取得される。次に、同時故障発生度計算手段1cにより、製造日情報の差が大きいほど値が小さくなる同時故障発生度が算出される。さらに、組み合わせパターン作成手段1dにより、複数のストレージ装置を2台ずつの組とした組み合わせパターンが複数生成される。組み合わせパターンが作成されると、同時故障発生度合算手段1eにより、複数の組み合わせパターンそれぞれについて、ストレージ装置の組に対応する同時故障発生度の総和が算出される。同時故障発生度の総和が算出されると、2重化組み合わせパターン決定手段1fにより、同時故障発生度の総和が最も小さい組み合わせパターンが、2重化組み合わせパターン1gに決定される。そして、ミラーリング指示手段1hにより、複数の前記ストレージ装置を用いてミラーリングを実施するミラーリング手段1iに対して、2重化組み合わせパターン決定手段1fで決定された2重化組み合わせパターン1gに示される2台ずつのストレージ装置の組によるミラーリングの指示が送信される。
本発明では、ストレージ装置の組について製造日情報の差が大きいほど値が小さくなる同時故障発生度を算出し、ストレージ装置の組み合わせパターンのうち同時故障発生度の総和が最も小さい組み合わせパターンでミラーリングを実行させるようにした。そのため、製造日の離れたストレージ装置の組によるミラーリングが行われ、ミラーリングを行う2台のストレージ装置のロット障害による同時故障の可能性が低減する。
本発明の上記および他の目的、特徴および利点は本発明の例として好ましい実施の形態を表す添付の図面と関連した以下の説明により明らかになるであろう。
発明の概要を示す図である。 本実施の形態の分散ストレージシステム構成例を示す図である。 本実施の形態に用いる制御ノードのハードウェア構成例を示す図である。 論理ボリュームのデータ構造を示す図である。 分散ストレージシステムの各装置の機能を示すブロック図である。 論理ボリューム管理部の内部機能を示すブロック図である。 論理ボリューム作成処理の手順を示す図である。 同時故障発生度表作成処理の手順を示すフローチャートである。 同時故障発生度計算処理の手順を示すフローチャートである。 同時故障発生度表のデータ構造例を示す図である。 スライス割り当て処理の手順を示すフローチャートである。 セカンダリスライスの再配置処理を示すフローチャートである。 スライスの配置パターンに応じた同時故障発生度の総和を説明する図である。 メタデータ記憶部のデータ構造例を示す図である。 スライス管理情報のデータ構造例を示す図である。 論理ボリューム情報のデータ構造例を示す図である。 第2の実施の形態におけるスライス割り当て処理の手順を示すフローチャートである。
以下、本発明の実施の形態を図面を参照して説明する。
図1は、発明の概要を示す図である。2重化組み合わせ管理装置1は、データを2重化するストレージ装置の組を決定するために、同時故障発生度記憶手段1a、製造日情報収集手段1b、同時故障発生度計算手段1c、組み合わせパターン作成手段1d、同時故障発生度合算手段1e、2重化組み合わせパターン決定手段1f、ミラーリング指示手段1h、およびミラーリング手段1iを有している。
同時故障発生度記憶手段1aは、同時故障発生度を記憶する。同時故障発生度は、2台のストレージ装置の組に関して、2台のストレージ装置が同時に故障する可能性を示す数値である。同時故障発生度の値が大きい程、2台のストレージ装置が同時に故障する可能性が高いことを示す。
製造日情報収集手段1bは、複数のストレージ装置2〜5からストレージ装置2〜5の製造日に応じた数値が設定された製造日情報を取得する。たとえば、製造日情報収集手段1bは、2重化組み合わせパターン決定指示の操作入力が行われ時に、製造日情報を取得する。なお、製造日情報は、少なくとも製造日の差を判断するための基準となる情報であればよい。たとえば、ストレージ装置2〜5の正確な製造日が取得できるのであれば、その製造日が製造日情報として取得される。
また、正確な製造日が取得できない場合、製造日の差を判断するための他の情報を製造日情報とすることができる。たとえば、ストレージ装置2〜5に対して製造番号がシリアルに昇順で付与されていれば、その製造番号から製造日の差をある程度予測可能となる。1日の製造台数が1万台であれば、製造番号で1万の差を、製造日で1日の差に換算できる。そこで、正確な製造日が取得できない場合、製造番号を製造日情報として取得してもよい。
同時故障発生度計算手段1cは、製造日情報収集手段1bが取得した製造日情報に基づいて、2台のストレージ装置の組ごとの製造日情報の数値の差を計算する。さらに、同時故障発生度計算手段1cは、製造日情報の差が大きいほど値が小さくなる同時故障発生度を算出する。たとえば、同時故障発生度計算手段1cは、所定の定数を底とし、製造日情報の数値の差を指数としたときの所定の定数のべき乗の逆数を同時故障発生度とする。そして、同時故障発生度計算手段1cは、ストレージ装置の組に対応付けて同時故障発生度を同時故障発生度記憶手段1aに格納する。
組み合わせパターン作成手段1dは、複数のストレージ装置を2台ずつの組とした組み合わせパターンを複数生成する。
同時故障発生度合算手段1eは、組み合わせパターン作成手段1dで生成された複数の組み合わせパターンそれぞれについて、ストレージ装置の組に対応する同時故障発生度を同時故障発生度記憶手段1aから取得する。そして、同時故障発生度合算手段1eは、取得した同時故障発生度の総和を算出する。
2重化組み合わせパターン決定手段1fは、同時故障発生度合算手段1eで求められた同時故障発生度の総和が最も小さい組み合わせパターンを、2重化組み合わせパターン1gに決定する。
ミラーリング指示手段1hは、複数のストレージ装置を用いてミラーリングを実施するミラーリング手段1iに対して、2重化組み合わせパターン決定手段1fで決定された2重化組み合わせパターン1gに示される2台ずつのストレージ装置の組によるミラーリングの指示を送信する。
ミラーリング手段1iは、2重化組み合わせパターン1gに示されるストレージ装置の組によるミラーリングを行う。なお、図1では、2重化組み合わせ管理装置1内にミラーリング手段1iが設けられているが、ミラーリング手段1iは、ネットワークを介して接続された他のコンピュータ内に設けられていてもよい。
このような2重化組み合わせ管理装置1によれば、製造日情報収集手段1bにより、ストレージ装置2〜5の製造日情報が取得される。たとえば、図1の例では、ストレージ装置2の製造日は2007年4月1日であり、ストレージ装置3の製造日は2007年4月2日であり、ストレージ装置4の製造日は2007年4月3日であり、ストレージ装置5の製造日は2007年4月4日である。
次に、同時故障発生度計算手段1cにより、ストレージ装置の組ごとに、製造日情報の差が大きいほど値が小さくなる同時故障発生度が算出される。たとえば、製造日の差(単位は日)を指数とした2のべき乗の逆数を同時故障発生度とすると、各ストレージ装置の組の同時故障発生度は、図1に示した通りとなる。すなわち、名称「A」のストレージ装置2と名称「B」のストレージ装置3との組に対する同時故障発生度は「0.5」、名称「A」のストレージ装置2と名称「C」のストレージ装置4との組に対する同時故障発生度は「0.25」、名称「A」のストレージ装置2と名称「D」のストレージ装置5との組に対する同時故障発生度は「0.125」、名称「B」のストレージ装置3と名称「C」のストレージ装置4との組に対する同時故障発生度は「0.5」、名称「B」のストレージ装置3と名称「D」のストレージ装置5との組に対する同時故障発生度は「0.25」、名称「C」のストレージ装置4と名称「D」のストレージ装置5との組に対する同時故障発生度は「0.5」である。
ストレージ装置の組に対する同時故障発生度が求められると、組み合わせパターン作成手段1dにより、複数のストレージ装置を2台ずつの組とした組み合わせパターンが複数生成される。たとえば、組み合わせパターン作成手段1dは、同時故障発生度記憶手段1aを参照して生成可能なストレージ装置の組を認識し、重複せずに生成可能なストレージ装置の組による組み合わせパターンを作成する。図1の例では3つも組み合わせパターンが生成できる。1つ目の組み合わせパターンは、名称「A」のストレージ装置2と名称「B」のストレージ装置3との組、および名称「C」のストレージ装置4と名称「D」のストレージ装置5との組で構成される。2つ目の組み合わせパターンは、名称「A」のストレージ装置2と名称「C」のストレージ装置4との組、および名称「B」のストレージ装置3と名称「D」のストレージ装置5との組で構成される。3つ目の組み合わせパターンは、名称「A」のストレージ装置2と名称「D」のストレージ装置5との組、および名称「B」のストレージ装置3と名称「C」のストレージ装置4との組で構成される。
組み合わせパターンが作成されると、同時故障発生度合算手段1eにより、複数の組み合わせパターンそれぞれについて、ストレージ装置の組に対応する同時故障発生度の総和が算出される。たとえば、図1の例では、1つ目の組み合わせパターンにおける同時故障発生度の総和は「1」である。2つ目の組み合わせパターンにおける同時故障発生度の総和は「0.5」である。3つ目の組み合わせパターンにおける同時故障発生度の総和は「0.625」である。
同時故障発生度の総和が算出されると、2重化組み合わせパターン決定手段1fにより、同時故障発生度の総和が最も小さい組み合わせパターンが、2重化組み合わせパターン1gに決定される。図1の例では、2つ目の組み合わせパターンの同時故障発生度の総和が最も小さい。従って、名称「A」のストレージ装置2と名称「C」のストレージ装置4との組、および名称「B」のストレージ装置3と名称「D」のストレージ装置5との組で構成される2つ目の組み合わせパターンが、2重化組み合わせパターン1gに決定される。
そして、ミラーリング指示手段1hにより、複数の前記ストレージ装置を用いてミラーリングを実施するミラーリング手段1iに対して、2重化組み合わせパターン決定手段1fで決定された2重化組み合わせパターン1gに示される2台ずつのストレージ装置の組によるミラーリングの指示が送信される。その後、ミラーリング手段1iによって、2重化組み合わせパターン1gに応じた組み合わせでミラーリング技術を採用した各ストレージ装置2〜5へのデータアクセスが行われる。
このようにして、できるだけ製造日が離れたストレージ装置同士を使ったデータの2重化が可能となる。その結果、2重化されたデータを有する複数のストレージ装置が同時に故障する確率を下げることができる。
すなわち、製造日が離れている程、別ロットで製造された可能性が高い。しかも、製造日が大きく異なっていれば、使用されている部品についても、製造ロットが異なる可能性が高くなる。別ロットで製造されたストレージ装置であれば、ロット障害によって同時に故障する可能性が低くなる。その結果、ミラーリングを行うストレージシステムにおける信頼性を向上させることができる。
ところで、図1の例では、1つのミラーリング手段1iが複数のストレージ装置2〜5を制御してミラーリングを行うシステムを示しているが、ネットワークで接続された複数のコンピュータ間で連携してミラーリングを行うこともできる。その場合、ミラーリング手段は、各コンピュータに実装されることとなる。
そこで、複数のコンピュータでミラーリングを行う分散ストレージステムに本発明を適用した場合の例を用いて、本発明の実施の形態を具体的に説明する。
[第1の実施の形態]
図2は、本実施の形態の分散ストレージシステム構成例を示す図である。本実施の形態では、スイッチ10を介して、複数のストレージノード100,200,300,400、制御ノード500、アクセスノード600、および管理ノード700が接続されている。ストレージノード100,200,300,400それぞれには、ストレージ装置110,210,310,410が接続されている。この分散ストレージシステムは、端末装置21〜23に対して、仮想的なボリューム(以下、論理ボリュームと呼ぶ)として機能する。
ストレージ装置110には、複数のハードディスク装置(HDD)111,112,113,114が実装されている。ストレージ装置210には、複数のHDD211,212,213,214が実装されている。ストレージ装置310には、複数のHDD311,312,313,314が実装されている。ストレージ装置410には、複数のHDD411,412,413,414が実装されている。各ストレージ装置110,210,310,410は、内蔵するHDDを用いたRAIDシステムである。本実施の形態では、各ストレージ装置110,210,310,410のRAID5のディスク管理サービスを提供する。
なお、各HDDは、管理情報が格納された半導体の記憶媒体(たとえば、ROM)を有している。その記憶媒体には、HDDの製造日が記憶されている。なお、ストレージ装置110,210,310,410が、RAIDシステムとして工場で製造されている場合、1つのストレージ装置には、ほぼ同時期に製造されたHDDが組み込まれる。そこで、本実施の形態では、1つのストレージ装置に格納されている複数のHDDの製造日は同一(あるいは数日の違いしかない)であるものとする。
ストレージノード100,200,300,400は、たとえば、IA(Intel Architecture)と呼ばれるアーキテクチャのコンピュータである。ストレージノード100,200,300,400は、接続されたストレージ装置110,210,310,410に格納されたデータを管理し、管理しているデータをスイッチ10経由で端末装置21,22,23に提供する。また、ストレージノード100,200,300,400は、冗長性を有するデータを管理している。すなわち、同一のデータが、少なくとも2つのストレージノードで管理されている。
制御ノード500は、ストレージノード100,200,300,400を制御する。たとえば、制御ノード500は、ストレージノード100,200,300,400上に作成する論理ボリュームを定義する。論理ボリュームは、異なるストレージノードに作成されたプライマリスライスとセカンダリスライスとによってミラーリングされる。プライマリスライスとセカンダリスライスとは、それぞれ異なるストレージノード内の記憶領域の一部に割り当てられている。制御ノード500は、論理ボリュームの定義内容をアクセスノード600やストレージノード100,200,300,400に通知することで、論理ボリューム上のアドレスを指定したストレージノード100,200,300,400へのアクセスを可能としている。
また、制御ノード500は、管理ノード700からの指示に応じて、スライスの再配置を行う。このとき、制御ノード500は、プライマリスライスが配置された各ストレージノードのHDDの製造日と、プライマリスライスが配置された各ストレージノードのHDDの製造日とができるだけ離れるようにする。
アクセスノード600には、ネットワーク20を介して複数の端末装置21,22,23が接続されている。アクセスノード600は、ストレージノード100,200,300,400それぞれが管理しているデータの格納場所を認識しており、端末装置21,22,23からの要求に応答して、ストレージノード100,200,300,400へのデータアクセスを行う。
管理ノード700は、システム全体を管理するためのコンピュータである。たとえば、管理ノード700は、管理者からの操作入力に応答して、制御ノード500に対してスライス再配置の指示を送信する。
図3は、本実施の形態に用いる制御ノードのハードウェア構成例を示す図である。制御ノード500は、CPU(Central Processing Unit)501によって装置全体が制御されている。CPU501には、バス507を介してRAM(Random Access Memory)502、ハードディスクドライブ(HDD:Hard Disk Drive)503、グラフィック処理装置504、入力インタフェース505、および通信インタフェース506が接続されている。
RAM502には、CPU501に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM502には、CPU501による処理に必要な各種データが格納される。HDD503には、OSやアプリケーションプログラムが格納される。
グラフィック処理装置504には、モニタ11が接続されている。グラフィック処理装置504は、CPU501からの命令に従って、画像をモニタ11の画面に表示させる。入力インタフェース505には、キーボード12とマウス13とが接続されている。入力インタフェース505は、キーボード12やマウス13から送られてくる信号を、バス507を介してCPU501に送信する。
通信インタフェース506は、スイッチ10に接続されている。通信インタフェース506は、スイッチ10を介して、他のコンピュータとの間でデータの送受信を行う。
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。なお、図3には制御ノードのハードウェア構成例を示したが、ストレージノード100,200,300,400、アクセスノード600、管理ノード700、および端末装置21,22,23も同様のハードウェア構成で実現できる。
次に、論理ボリュームのデータ構造について説明する。
図4は、論理ボリュームのデータ構造を示す図である。論理ボリューム800には、「LVOL−A」という識別子(論理ボリューム識別子)が付与されている。また、スイッチ10経由で接続された4台のストレージノード100,200,300,400には、個々のストレージノードの識別のためにそれぞれ「SN−A」、「SN−B」、「SN−C」、「SN−D」というノード識別子が付与されている。各ストレージノード100,200,300,400のノード識別子によって、それぞれのストレージノード100,200,300,400が有するストレージ装置110,210,310,410が識別される。
各ストレージノード100,200,300,400が有するストレージ装置110,210,310,410それぞれにおいてRAID5の論理ディスクが構成されている。この論理ディスクは5つのスライスに分割され個々のストレージノード内で管理されている。
図4の例では、ストレージ装置110内の記憶領域は、5つのスライス121〜125に分けられている。ストレージ装置210内の記憶領域は、5つのスライス221〜225に分けられている。ストレージ装置310内の記憶領域は、5つのスライス321〜325に分けられている。ストレージ装置410内の記憶領域は、5つのスライス421〜425に分けられている。
なお、論理ボリューム800は、セグメント810,820,830,840という単位で構成される。セグメント810,820,830,840の記憶容量は、ストレージ装置110,210,310,410における管理単位であるスライスの記憶容量と同じである。たとえば、スライスの記憶容量が1ギガバイトとするとセグメントの記憶容量も1ギガバイトである。論理ボリューム800の記憶容量はセグメント1つ当たりの記憶容量の整数倍である。セグメントの記憶容量が1ギガバイトならば、論理ボリューム800の記憶容量は、たとえば4ギガバイトといったものになる。
セグメント810,820,830,840は、それぞれプライマリスライス811,821,831,841とセカンダリスライス812,822,832,842との組から構成される。同じセグメントに属するスライスは別々のストレージノードに属する。個々のスライスを管理する領域には論理ボリューム識別子やセグメント情報や同じセグメントを構成するスライス情報の他にフラグがあり、そのフラグにはプライマリあるいはセカンダリなどを表す値が格納される。
図4の例では、スライスの識別子を、「P」または「S」のアルファベットと数字との組合せで示している。「P」はプライマリスライスであることを示している。「S」はセカンダリスライスであることを示している。アルファベットに続く数字は、何番目のセグメントに属するのかを表している。たとえば、1番目のセグメント810のプライマリスライスが「P1」で示され、セカンダリスライスが「S1」で示される。
このような構造の論理ボリューム800の各プライマリスライスおよびセカンダリスライスが、ストレージ装置110,210,310,410内のいずれかのスライスに対応付けられる。たとえば、セグメント810のプライマリスライス811は、ストレージ装置410のスライス424に対応付けられ、セカンダリスライス812は、ストレージ装置210のスライス222に対応付けられている。
そして、各ストレージ装置110,210,310,410では、自己のスライスに対応するプライマリスライスまたはセカンダリスライスのデータを記憶する。
図5は、分散ストレージシステムの各装置の機能を示すブロック図である。アクセスノード600は、論理ボリュームアクセス制御部610と論理ボリューム情報記憶部620とを有している。
論理ボリュームアクセス制御部610は、端末装置21,22,23からの論理ボリューム800内のデータを指定したアクセス要求に応じて、対応するデータを管理するストレージノードに対してデータアクセスを行う。アクセス要求は論理ボリュームにおけるセグメント番号とセグメント内のブロック番号で指定される。そこで、論理ボリュームアクセス制御部610は、論理ボリューム情報記憶部620に格納された論理ボリュームを参照して、アクセス要求で指定されたセグメントに対応するスライス(通常動作時であればプライマリスライス)を有するストレージノードを判断する。また、論理ボリュームアクセス制御部610は、論理ボリュームのセグメントへのスライスの割り当てが変更された場合などに制御ノード500から論理ボリューム情報が送られると、その論理ボリューム情報を受信する。そして、論理ボリュームアクセス制御部610は、受信した論理ボリューム情報を、論理ボリューム情報記憶部620に格納する。
論理ボリューム情報記憶部620は、論理ボリューム800の各セグメントのプライマリスライスまたはセカンダリスライスと、ストレージ装置110,210,310,410内のスライスとの対応関係を示す論理ボリューム情報を記憶する。たとえば、アクセスノード600内のHDDの一部の記憶領域が、論理ボリューム情報記憶部620として使用される。
制御ノード500は、論理ボリューム管理部510とメタデータ記憶部520とを有している。
論理ボリューム管理部510は、ストレージノード100,200,300,400が有するストレージ装置110,210,310,410内のスライスを管理する。たとえば、論理ボリューム管理部510は、システム構築時に、論理ボリュームを構成する各セグメントに対してスライスを割り当てる。具体的には、その際、論理ボリューム管理部510は、2重化されたセグメントを構成するプライマリスライスとセカンダリスライスとが配置されるHDDの製造日ができるだけ離れるように、割り当てるべきスライスを決定する。論理ボリューム管理部510は、セグメントに割り当てるスライスが決定されると、メタデータ記憶部520内のメタデータを更新する。また、論理ボリューム管理部510は、各ストレージノード100,200,300,400に対して、それぞれに応じたスライス管理情報を送信する。さらに、論理ボリューム管理部510は、論理ボリュームの各セグメントと、そのセグメントを構成するプライマリスライスとセカンダリスライスそれぞれが配置されたストレージノードとの対応関係を示す論理ボリューム情報を送信する。
また、論理ボリューム管理部510は、システム起動時に、ストレージノード100,200,300,400に対してスライス管理情報取得要求を送信する。そして、論理ボリューム管理部510は、スライス管理情報取得要求に対して返信されたスライス管理情報からメタデータを構成し、メタデータ記憶部520に格納する。
また、論理ボリューム管理部510は、管理ノード700からの要求に応じて、スライスの再配置を行う。その際、論理ボリューム管理部510は、プライマリスライスとセカンダリスライスとが配置されるHDDの製造日ができるだけ離れるように、スライスの配置先となるストレージノードを決定する。論理ボリューム管理部510は、スライスの再配置先が決定されると、ストレージノード100,200,300,400を制御して、スライス内のデータを再配置先の記憶領域にコピーする。コピーが完了すると、論理ボリューム管理部510は、メタデータ記憶部520内のメタデータを更新する。また、論理ボリューム管理部510は、新たなメタデータを各ストレージノード100,200,300,400に送信する。さらに、論理ボリューム管理部510は、論理ボリューム情報を送信する。
メタデータ記憶部520は、ストレージノード100,200,300,400から収集されたスライス管理情報によって構成されるメタデータを記憶する記憶装置である。たとえば、制御ノード500内のRAMの記憶領域の一部がメタデータ記憶部520として使用される。
ストレージノード100は、データアクセス部130、データ管理部140、およびスライス管理情報記憶部150を有している。また、ストレージノード100に接続されたストレージ装置110には、製造日記憶部115が設けられている。製造日記憶部115は、ストレージ装置110に格納されたHDD111〜114が製造された日付を記憶する記憶装置である。たとえば、ストレージ装置110内のコントローラに実装されたROMの記憶領域の一部が製造日記憶部115として使用される。また、任意の1台のHDD内のROMに記憶されているそのHDDの製造日を、ストレージ装置110の製造日とすることもできる。
データアクセス部130は、アクセスノード600からの要求に応答して、ストレージ装置110内のデータにアクセスする。具体的には、データアクセス部130は、アクセスノード600からデータのリード要求を受け取った場合、リード要求で指定されたデータをストレージ装置110から取得し、アクセスノード600に送信する。また、データアクセス部130は、アクセスノード600からデータのライト要求を受け取った場合、ライト要求に含まれるデータをストレージ装置110内に格納する。
データ管理部140は、ストレージ装置110内のデータを管理する。具体的には、データ管理部140は、制御ノード500からディスクの製造日の取得要求を受け取ると、いずれかのHDD内の半導体の記録媒体からそのHDDの製造日を取得する。なお、ストレージ装置内にHDDとは別に製造日の情報がROMなどの記録媒体で記録されている場合、ストレージ装置に登録されている製造日を取得してもよい。
スライス管理情報記憶部150は、スライス管理情報を記憶する記憶装置である。たとえば、ストレージノード100のRAM内の記憶領域の一部がスライス管理情報記憶部150として使用される。なお、スライス管理情報記憶部150に格納されるスライス管理情報は、システム停止時にはストレージ装置110内に格納され、システム起動時にスライス管理情報記憶部150に読み込まれる。
他のストレージノード200,300,400は、ストレージノード100と同様の機能を有している。すなわち、ストレージノード200は、データアクセス部230、データ管理部240、およびスライス管理情報記憶部250を有している。ストレージノード300は、データアクセス部330、データ管理部340、およびスライス管理情報記憶部350を有している。ストレージノード400は、データアクセス部430、データ管理部440、およびスライス管理情報記憶部450を有している。ストレージノード200,300,400内の各要素は、ストレージノード100内の同名の要素と同じ機能を有している。
また、ストレージノード200,300,400に接続された各ストレージ装置110,210,310,410も、ストレージ装置110と同様に製造日記憶部215,315,415,を有している。
以上のような構成の分散ストレージシステムにおいて、同時故障発生度が低いHDD間でデータの2重化が行われる。以下、同時故障発生度が低くなるようなスライスの割り当て処理について説明する。
図6は、論理ボリューム管理部の内部機能を示すブロック図である。論理ボリューム管理部510は、同時故障発生度表作成部511、同時故障発生度表記憶部512、スライス割り当て部513、データ再配置管理部514、およびメタデータ管理部515を有している。
同時故障発生度表作成部511は、論理ボリューム内の各セグメントへのスライスの割り当てを行う際に同時故障発生度表を作成する。同時故障発生度表は、2つのストレージノードの組み合わせに対して、それぞれのストレージノード内のHDDが同時に故障する度合いを数値化して登録したものである。
同時故障発生度表記憶部512は、同時故障発生度表を記憶するための記憶領域である。たとえば、RAM502内の一部の記憶領域が、同時故障発生度表記憶部512として使用される。
スライス割り当て部513は、同時故障発生度表を参照して、論理ボリューム内の各セグメントへのスライスの割り当てを行う。
データ再配置管理部514は、スライス割り当て部513によって決定された各セグメントへのスライスの割り当て結果に基づいて、各ストレージノード100,200,300,400が管理するデータの再配置を行う。
メタデータ管理部515は、システム起動時に各ストレージノード100,200,300,400からスライス管理情報を収集する。そして、メタデータ管理部515は、収集したスライス管理情報をまとめてメタデータとし、そのメタデータをメタデータ記憶部520に格納する。また、メタデータ管理部515は、スライスの再割り当てが行われた場合、再割り当て結果に基づいて、各ストレージノード100,200,300,400のスライス管理情報を生成し、対応するストレージノード100,200,300,400に送信する。さらに、メタデータ管理部515は、スライスの再割り当て結果に基づいてメタデータ記憶部520内のメタデータを更新する。そして、メタデータ管理部515は、更新後のメタデータをアクセスノード600に送信する。
図7は、論理ボリューム作成処理の手順を示す図である。以下、図7に示す処理をステップ番号に沿って説明する。なお、図7に示す処理は、管理ノード700から論理ボリュームの作成条件が入力されたときに実行される。論理ボリュームの作成条件には、論理ボリューム識別子、論理ボリュームを構成するセグメントの数などが含まれる。
[ステップS11]論理ボリューム管理部510内の同時故障発生度表作成部511は、同時故障発生度表作成処理を行う。この処理により、同時故障発生度表が作成され、同時故障発生度表記憶部512に格納される。この処理の詳細は後述する(図8参照)。
[ステップS12]スライス割り当て部513は、同時故障発生度表記憶部512内の同時故障発生度表に基づいて、2重化されるストレージ装置同士の同時故障発生度が低くなるように論理ボリュームの各セグメントへのスライスの割り当てを行う。割り当て結果は、メタデータ管理部515に渡される。この処理の詳細は後述する(図11参照)。
[ステップS13]メタデータ管理部515は、スライス割り当て部513で決定された各セグメントへのスライスの割り当て結果に基づいてメタデータを作成する。作成されたメタデータには、ストレージノードごとのスライス管理情報が含まれる。スライス管理情報には、対応するストレージノードが管理するスライスと、そのスライスのミラーリングの相手となるスライスとに関する情報が含まれている。
[ステップS14]メタデータ管理部515は、作成したメタデータをメタデータ記憶部520に格納する。
[ステップS15]メタデータ管理部515は、各ストレージノード100,200,300,400に対して、対応するスライス管理情報を送信する。さらに、メタデータ管理部515は、アクセスノード600に対してメタデータを送信する。
次に、同時故障発生度表作成処理の詳細について説明する。
図8は、同時故障発生度表作成処理の手順を示すフローチャートである。以下、図8に示す処理をステップ番号に沿って説明する。
[ステップS21]同時故障発生度表作成部511は、全てのストレージ装置間の同時故障発生度の算出が完了したか否かを判断する。全てのストレージ装置間の同時故障発生度が算出できた場合、処理が終了する。同時故障発生度が算出されていないストレージ装置の組がある場合、処理がステップS22に進められる。
[ステップS22]同時故障発生度表作成部511は、未処理の2つのストレージ装置の組を選択する。
[ステップS23]同時故障発生度表作成部511は、選択したストレージ装置の組に関する同時故障発生度を算出する。この処理の詳細は後述する(図9参照)。
[ステップS24]同時故障発生度表作成部511は、算出した同時故障発生度を、同時故障発生度表に記録する。その後、処理がステップS21に進められる。
次に、同時故障発生度計算処理の手順について説明する。
図9は、同時故障発生度計算処理の手順を示すフローチャートである。以下、図9に示す処理をステップ番号に沿って説明する。
[ステップS31]同時故障発生度表作成部511は、2台のストレージ装置の製造日の差を求めd(0以上の整数)とする。
[ステップS32]同時故障発生度表作成部511は、同時故障発生度pを「p=α-d」とする。ここで、αはHDDの品質情報(たとえば、MTBF(Mean Time Between Failure)などの値や1つのストレージ装置に実装されたHDD数)に合わせて決定された定数(0より大きい実数)である。
このようにして、同時故障発生度表が生成される。生成された同時故障発生度表は、同時故障発生度表記憶部512に格納される。ここで、α=2とし、識別番号「SN−1」のストレージ装置110の製造日を2007年4月1日、識別番号「SN−2」のストレージ装置210の製造日を2007年4月2日、識別番号「SN−3」のストレージ装置310の製造日を2007年4月3日、識別番号「SN−4」のストレージ装置410の製造日を2007年4月4日とする。このような場合に作成される同時故障発生度表を図10に示す。
図10は、同時故障発生度表のデータ構造例を示す図である。同時故障発生度表512aは、縦軸と横軸とのそれぞれのラベルにストレージノードのノード識別子を設定した行列形式の表である。任意の2つのストレージノードを選択したとき、そのストレージノードのノード識別子それぞれが縦軸と横軸とのラベルとなる位置に、選択されたストレージ装置の組に対する同時故障発生度が設定される。
ノード識別子「SN−A」のストレージノード100のストレージ装置110と、ノード識別子「SN−B」のストレージノード200のストレージ装置210との製造日の差dは1日である。すると、同時故障発生度p=0.5となる。また、ノード識別子「SN−A」のストレージノード100のストレージ装置110と、ノード識別子「SN−C」のストレージノード300のストレージ装置310との製造日の差dは2日である。すると、同時故障発生度p=0.25となる。また、ノード識別子「SN−A」のストレージノード100のストレージ装置110とノード識別子「SN−D」のストレージノード400のストレージ装置410との製造日の差dは3日である。すると、同時故障発生度p=0.125となる。同様にして、全てのストレージ装置の組み合わせについて同時故障発生度が算出され、同時故障発生度表512aに設定されている。
次に、スライス割り当て処理の詳細について説明する。
図11は、スライス割り当て処理の手順を示すフローチャートである。以下、図11に示す処理をステップ番号に沿って説明する。
[ステップS41]スライス割り当て部513は、スライスの仮割り当てを行う。具体的には、スライス割り当て部513は、論理ボリューム800の各セグメント810,820,830,840を構成するプライマリスライスとセカンダリスライスとに対して、ストレージ装置110,210,310,410のどのスライスを割り当てるのかを決定する。スライスの割り当てに際しては、1つのセグメントを構成するプライマリスライスとセカンダリスライスとに対して、それぞれ異なるストレージ装置のスライスが割り当てられることが必要である。
たとえば、スライス割り当て部513は、ストレージ装置110、ストレージ装置210、ストレージ装置310、ストレージ装置410の順にスライスを順に抽出して、それぞれ各セグメント810,820,830,840を構成するプライマリスライスに対して割り当てる。次に、スライス割り当て部513は、ストレージ装置210、ストレージ装置310、ストレージ装置410、ストレージ装置110の順にスライスを抽出して、それぞれ各セグメント810,820,830,840を構成するセカンダリスライスに対して割り当てる。
なお、仮割り当てが行われたスライスの配置パターン(各セグメントと、そのセグメントを構成するプライマリスライスとセカンダリスライスとのそれぞれに割り当てられたスライスを有するストレージノードのノード識別子との対応関係)は、RAM502内に一時的に記憶される。
[ステップS42]スライス割り当て部513は、セカンダリスライスの全ての配置パターンが求められたか否かを判断する。たとえば、スライス割り当て部513は、セグメントの数とストレージ装置の数とによって、配置パターンが何パターン生成可能かを計算する。そして、スライス割り当て部513は、生成した配置パターン数が、生成可能な配置パターン数に達した場合に、全ての配置パターンが求められたと判断する。全ての配置パターンが求められた場合、処理がステップS49に進められる。未生成の配置パターンがある場合、処理がステップS43に進められる。
[ステップS43]スライス割り当て部513は、セカンダリスライスの再配置を行う。再配置後の配置パターンは、以前に作成された配置パターンに加えて、RAM502内に記憶される。この処理の詳細は後述する(図12参照)。
[ステップS44]スライス割り当て部513は、セカンダリスライス再配置後の配置パターンにおいて、プライマリスライスとセカンダリスライスとが同一のストレージ装置に配置されたセグメントが存在するか否かを判断する。該当するセグメントが存在すれば、処理がステップS42に進められる。該当するセグメントが存在しなければ、処理がステップS45に進められる。
[ステップS45]スライス割り当て部513は、ステップS43で再配置後の配置パターンに基づいて、各セグメントのプライマリスライスとセカンダリスライスとが配置されたストレージ装置間の同時故障発生度を、同時故障発生度表512aから取得する。そして、各セグメントのスライス配置先の同時故障発生度の総和を求める。
[ステップS46]スライス割り当て部513は、ステップS45で算出した同時故障発生度の総和が、以前に作成した配置パターンの同時故障発生度の総和と比べたとき、最小値か否かを判断する。具体的には、以前に作成した配置パターンの同時故障発生度の総和の最小値が、RAM502に記憶されている。そこで、スライス割り当て部513は、新たに算出した同時故障発生度の総和と格納されている最小値とを比較し、新たに算出した同時故障発生度の総和の方が小さければ、新たに算出した同時故障発生度の総和が最小値であると判断する。新たに算出した同時故障発生度の総和が最小値であれば、処理がステップS47に進められる。最小値でなければ、処理がステップS42に進められる。
[ステップS47]スライス割り当て部513は、ステップS45で算出した同時故障発生度の総和を、最小値としてRAM502に記憶する。
[ステップS48]スライス割り当て部513は、現在のスライスの配置パターンを仮割り当てとする。その後、処理がステップS42に進められる。
[ステップS49]スライス割り当て部513は、全ての配置パターンが生成された後、そのときに仮割り当てとして設定されている配置パターンを、正式の配置パターンに決定する。
図12は、セカンダリスライスの再配置処理を示すフローチャートである。以下、図12に示す処理をステップ番号に沿って説明する。
[ステップS51]スライス割り当て部513は、仮割り当てされている配置パターンからランダムに2つのセカンダリスライスを選択する。なお、ステップS53から遷移してきた場合、スライス割り当て部513は、ステップS52の交換処理で得られた配置パターンからランダムに2つのセカンダリスライスを選択する。
[ステップS52]スライス割り当て部513は、選択したセカンダリスライスの配置先となるストレージ装置のスライスを交換して、新たな配置パターンとする。
[ステップS53]スライス割り当て部513は、ステップS52の交換処理により得られた配置パターンが、以前に生成されたことがあるか否かを判断する。具体的には、スライス割り当て部513は、交換処理で得られた配置パターンと、RAM502に記憶されている以前に生成した配置パターンと比較し、同一のものがあるか否かを判断する。以前に生成されたことのある配置パターンであれば、処理がステップS51に進められる。新しい配置パターンであれば、処理がステップS54に進められる。
[ステップS54]スライス割り当て部513は、交換処理によってセカンダリスライスの再配置が行われた配置パターンを、RAM502内に一時的に記憶する(既に記憶されている配置パターンに対して追加記憶)。
以上のようにして、全ての配置パターンのうち、同時故障発生度の総和が最小となる配置パターンが、スライスの割り当て結果を示すこととなる。
図13は、スライスの配置パターンに応じた同時故障発生度の総和を説明する図である。図13には、上段に仮割り当てされた配置パターンの例を示している。下段には、正式な配置パターンを示している。
仮割り当てされた配置パターンでは、セグメント810のプライマリスライス811に対して、ノード識別子「SN−A」のストレージノード100が有するストレージ装置110のスライスが割り当てられている。また、セグメント810のセカンダリスライス812に対して、ノード識別子「SN−B」のストレージノード200が有するストレージ装置210のスライスが割り当てられている。
ストレージ装置110内のHDDの製造日は2007年4月1日である。また、ストレージ装置210内のHDDの製造日は2007年4月2日である。すると、セグメント810を構成するプライマリスライス811とセカンダリスライス812との製造日の差dは、1日である。その結果、セグメント810を構成するプライマリスライス811とセカンダリスライス812とに割り当てられたストレージ装置の同時故障発生度pは、「0.5」(定数α=2の場合)である。なお、スライス割り当て部513は、同時故障発生度表512a(図10参照)を参照することで、仮割り当てられた2台のストレージノードそれぞれが有するストレージ装置間の同時故障発生度pを認識する。
同様に、セグメント820を構成するプライマリスライス821とセカンダリスライス822とに割り当てられたストレージ装置の同時故障発生度pは、「0.5」となる。セグメント830を構成するプライマリスライス831とセカンダリスライス832とに割り当てられたストレージ装置の同時故障発生度pは、「0.5」となる。セグメント840を構成するプライマリスライス841とセカンダリスライス842とに割り当てられたストレージ装置の同時故障発生度pは、「0.125」となる。すると、同時故障発生度の総和は、「1.626」となる。
このような仮割り当てされた配置パターンから、セカンダリスライスの再配置が行われ、図13の下段に示すような配置パターンとなる。たとえば、図13の例では、セグメント810のセカンダリスライス812に対して、ノード識別子「SN−C」のストレージノード300が有するストレージ装置310のスライスが割り当てられている。
ストレージ装置110内のHDDの製造日は2007年4月1日である。また、ストレージ装置210内のHDDの製造日は2007年4月3日である。すると、セグメント810を構成するプライマリスライス811とセカンダリスライス812との製造日の差dは、2日である。その結果、セグメント810を構成するプライマリスライス811とセカンダリスライス812とに割り当てられたストレージ装置の同時故障発生度pは、「0.25」(定数α=2の場合)である。
同様に、セグメント820を構成するプライマリスライス821とセカンダリスライス822とに割り当てられたストレージ装置の同時故障発生度pは、「0.25」となる。セグメント830を構成するプライマリスライス831とセカンダリスライス832とに割り当てられたストレージ装置の同時故障発生度pは、「0.25」となる。セグメント840を構成するプライマリスライス841とセカンダリスライス842とに割り当てられたストレージ装置の同時故障発生度pは、「0.25」となる。すると、同時故障発生度の総和は、1となる。
このように、セカンダリスライスの再配置を行うことで、同時故障発生度の総和がより小さい配置パターンが生成される。
このような正式の配置パターンに従ってメタデータが生成される。
図14は、メタデータ記憶部のデータ構造例を示す図である。メタデータ記憶部520には、メタデータ521が格納されている。なお、この例では、各ストレージノード100,200,300,400に送信するスライス管理情報151,251,351,451に分類した状態のメタデータ521を示している。各スライス管理情報151,251,351,451内に、送信先となるストレージノード100,200,300,400のノード識別子が示されている。
スライス管理情報151,251,351,451の構成要素は、左側の要素から順に以下の通りである。
・スライス番号
・開始ブロック位置(該当スライスの先頭に当たるブロックの番号)
・ブロック数(スライス内のブロック数)
・フラグ(プライマリ/セカンダリ)
・論理ボリューム識別子
・セグメント番号
・論理ボリューム開始ブロック位置
・論理ボリューム内でのブロック数
・ペアを組むストレージノード識別子
・ペアを組むスライス番号
これらのスライス管理情報151,251,351,451が、ストレージノード100,200,300,400に送信される。各ストレージノード100,200,300,400では、データ管理部140,240,340,440によって、スライス管理情報151,251,351,451がスライス管理情報記憶部150,250,350,450に格納される。
図15は、スライス管理情報のデータ構造例を示す図である。図15には、ノード識別子「SN−A」のストレージノード100のスライス管理情報記憶部150に格納されたスライス管理情報151の例が示されている。
図15で示したスライス管理情報151は、図4で示した論理ボリューム800を構成している。たとえば、ノード識別子「SN−A」のスライス管理情報151におけるスライス番号「1」のスライスは「LVOL−A」のセグメント番号「1」のプライマリスライスであり、ペアを組んでいるのは「SN−C」のセグメント番号「2」のスライスである、ということを意味する。同様のスライス管理情報が、他のストレージノード200,300,400のスライス管理情報記憶部250,350,450にも格納されている。
各ストレージノード100,200,300,400に配布されたスライス管理情報151,251,351,451は、システムの運用停止後もストレージノード100,200,300,400内で保持される。そして、システムの運用が再開される場合、各ストレージノード100,200,300,400に配布されたスライス管理情報151,251,351,451が制御ノード500で収集される。そして、制御ノード500のメタデータ管理部515によってメタデータ521が再構成される。
また、運用を開始する際には、制御ノード500からアクセスノード600に対して運用ボリューム情報が送信される。運用ボリューム情報は、メタデータ管理部515によってメタデータ521に基づいて作成される。アクセスノード600では、論理ボリュームアクセス制御部610が論理ボリューム情報を受信し、論理ボリューム情報記憶部620に格納する。
図16は、論理ボリューム情報のデータ構造例を示す図である。論理ボリューム情報記憶部620に格納された論理ボリューム情報621には、論理ボリュームを識別するための論理ボリューム識別子「LVOL−A」が付与されている。また、論理ボリューム情報621には、セグメント、プライマリスライス、およびセカンダリスライスの欄が設けられている。
セグメントの欄には、セグメント番号が設定される。プライマリスライスの欄には、セグメント番号で示されるセグメントに対応するプライマリスライスが割り当てられたストレージノードのノード識別子と、そのストレージノードが有するストレージ装置内のスライス番号が設定されている。セカンダリスライスの欄には、セグメント番号で示されるセグメントに対応するセカンダリスライスに割り当てられたストレージノードのノード識別子と、そのストレージノードが有するストレージ装置内のスライス番号が設定されている。
アクセスノード600の論理ボリュームアクセス制御部610は、論理ボリューム情報621を参照して、アクセス要求に応じたアクセス先のストレージノードを判断することがきる。たとえば、論理ボリューム「LVOL−A」内のセグメント「1」へのアクセス要求を受け取った場合、論理ボリュームアクセス制御部610は、論理ボリューム情報621を参照して、セグメント「1」のプライマリスライスに対して、ノード識別子「SN−A」のストレージノード100のスライス「1」が割り当てられていることが分かる。そこで、論理ボリュームアクセス制御部610は、ストレージノード100にアクセス要求を送信する。アクセス要求には、「LVOL−A」内のセグメント「1」に対するアクセスであることが示される。
すると、ストレージノード100内のデータアクセス部130は、スライス管理情報151を参照して、「LVOL−A」内のセグメント「1」に対応するスライスが、ストレージ装置110のスライス「1」であることを判断する。そして、データアクセス部130は、ストレージ装置110のスライス「1」にアクセスし、アクセス結果を論理ボリュームアクセス制御部610に返す。アクセス要求がデータのリード要求であれば、アクセス結果としてリードされたデータが返される。アクセス要求がデータのライト要求であれば、アクセス結果としてライト完了通知が返される。
なお、アクセス要求がデータのライト要求の場合、データ管理部140によってスライス管理情報151が参照され、データが書き込まれたスライスの2重化対象のスライスが判断される。そして、データ管理部140によって、2重化相手のストレージノード内のデータ管理部に対して、更新されたデータのライト要求が出される。そのライト要求に対するライト完了通知が返されることにより、データアクセス部130はデータのライト処理が完了したと判断し、アクセスノード600に対してライト完了通知を送信する。
以上のようにして、分散ストレージシステムにおいて、ストレージ装置内のHDDの製造日ができるだけ離れるように、2重化のためのストレージノードのペアを作成することができる。製造日が離れていることにより、ロット不良によって2重化したデータを記憶する双方のHDDが同時に故障する可能性を低下させることができる。
なお、図1を用いた発明の原理説明と本実施の形態とでは、原理説明ではストレージ装置の組み合わせパターンを生成しているが、本実施の形態ではスライス割り当てによる配置パターンを生成している点が異なっている。本実施の形態においても、ストレージ装置間の組み合わせパターンのうちで最も同時故障発生度の小さい組み合わせたパターンを決定するようにしてもよい。その場合、決定された組み合わせパターンにおけるストレージ装置の組を、セグメントのプライマリスライスとセカンダリスライスとに割り当てるようにする。
ただし、本実施の形態のような分散ストレージステムは、ストレージ装置を有するストレージノードをスイッチ10に接続するだけで、システムを増強できる点に大きなメリットがある。ストレージ装置を2台ずつの組として固定してしまうと、全てのデータアクセをミラーリングするには、ストレージ装置の台数が偶数でなければならなくなる。すなわち、ストレージ装置を有するストレージノード1台だけの増強が意味を成さなくなる。
そこで、本実施の形態では、スライス割り当てによる配置パターンの最適化を行うことで、同時故障の発生確率の低下を図っている。これによって、ストレージ装置の台数が奇数であっても、各ストレージ装置の資源を有効利用した上で、信頼性の高いミラーリングが可能となる。しかも、システムにストレージ装置を1台ずつ追加することで処理能力の増強を図ることができ、システムの拡張を柔軟に行うことができる。
[第2の実施の形態]
第2の実施の形態は、セカンダリスライスの再配置の際に、配置パターンの生成を所定数で終わりにするものである。すなわち、第1の実施の形態では、セカンダリスライスの再配置を行う際に、全ての配置パターンを生成していた。しかし、ストレージノード数の数や論理ボリュームのセグメント数が増えるに従って、全ての配置パターンを生成するための処理付加が増加する。そこで、第2の実施の形態では、全ての配置パターンの中から同時故障発生度の総和が最小になるものを選択するのではなく、所定数の配置パターンを生成し、その中から同時故障発生度の総和が最小になるものを選択する。
図17は、第2の実施の形態におけるスライス割り当て処理の手順を示すフローチャートである。なお、図17に示す処理のうち、ステップS63を除くステップS61,S62,S64〜S70の処理は、それぞれ図11に示した第1の実施の形態におけるスライス割り当て処理のステップS41〜S49の処理と同じである。そこで、第1の実施の形態と同じ処理については説明を省略し、ステップS63の処理について説明する。
[ステップS63]スライス割り当て部513は、生成した配置パターンが所定数に達したか否かを判断する。所定数とは、予めスライス割り当て部513に設定された数値である。生成した配置パターン数が所定数に達した場合、処理がステップS70に進められる。生成した配置パターンが所定数に達していなければ、処理がステップS64に進められる。
このようにして、配置パターンが所定数に達した時点で配置パターンの生成処理を終了させることができる。
[その他の変形例]
既にスライス配置が決定しているときに、スライスの割り当てを変更することもできる。その場合、図11または図17に示したスライス割り当て処理のフローチャートにおけるスライスの仮割り当て処理(ステップS41,S61)を削除した処理手順となる。
また、上記の説明では、各ストレージ装置に実装されるHDDの製造日が同じ日であるものとした。しかし、ストレージ装置に製造日の異なる複数のディスクが接続されている場合も有り得る。その場合、同時故障発生度は、以下の計算式で計算できる(ストレージノード単位でスライス割り当て、再配置を行う場合)。
ここでは、ストレージノード100,200それぞれのストレージ装置110,210に複数台のディスクが接続されているものとする。このときに、ストレージ装置110とストレージ装置210との同時故障発生度を以下の方法で計算する。
ストレージノード100が管理するi番目(iは、1以上ストレージ装置110内のHDD数以下の整数)のHDDと、ストレージノード200が管理するj番目(jは、1以上ストレージ装置210内のHDD数以下の整数)のHDDとの製造日の差をdij[日]とする。このとき、2台のHDDの同時故障発生度をpij=α-dijとする。
スライス割り当て部513は、iとjとの全ての組み合わせについて、同時故障発生度pijを算出する。そして、スライス割り当て部513は、算出した同時故障発生度の最大値を、ストレージ装置110とストレージ装置210との同時故障発生度とする。
また、上記の説明では、ストレージ装置110,210,310,410は、内蔵する複数のHDDによってRAIDシステムを構成しているものとしている。この場合、外部からは、ストレージ装置110,210,310,410それぞれが1つの実ボリュームと認識される。しかし、ストレージ装置110,210,310,410内のHDDをRAIDシステムとせずに、個別の実ボリュームとして使用することもできる。その場合、同時故障発生度表作成部511は、ストレージ装置110,210,310,410に内蔵された全てのHDD間の同時故障発生度を計算する。そして、同時故障発生度表作成部511は、HDDの識別番号を、縦軸と横軸のラベルに設定したマトリックス状の同時故障発生度表を作成する。
スライス割り当て部513は、スライスの割り当て処理の際に、各セグメントのプライマリスライスとセカンダリスライスとに割り当てられたスライスを有するHDDの識別番号に基づいて、同時故障発生度表からセグメント毎の同時故障発生度を取得する。そして、スライス割り当て部513は、取得した同時故障発生度の総和が最小となる配置パターン(あるいは生成した配置パターンの中で最も同時故障発生度の総和が最小となるもの)を決定し、その配置パターンに沿って、スライスの割り当てや再配置を行う。これにより、同時故障発生度を下げることができる。
さらに、上記の例では、HDDの製造日が取得できる場合を前提としている。しかし、必ずHDDやストレージ装置内に製造日が記録されているとは限らない。そこで、製造日に代えて、ストレージ装置(あるいはHDD)の分散ストレージシステムへの接続日を用いることもできる。そのためには、同時故障発生度表作成部511は、各ストレージ装置内のHDDを新たに認識する毎に、その認識した年月日を接続日として、HDDの識別番号に対応付けて記憶する。そして、同時故障発生度表作成部511は、同時故障発生度表を作成する際には、上記の例における製造日に代えて接続日を用いて同時故障発生度を計算する。
また、HDDの製品番号として製造順に連続の番号が付与されている場合、製造日に代えて、製品番号を用いることもできる。
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、ストレージノード100,200,300,400、管理ノード700、アクセスノード600が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、ハードディスク装置(HDD)、フレキシブルディスク(FD)、磁気テープなどがある。光ディスクには、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。光磁気記録媒体には、MO(Magneto-Optical disk)などがある。
プログラムを流通させる場合には、たとえば、そのプログラムが記録されたDVD、CD−ROMなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
プログラムを実行するコンピュータは、たとえば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
なお、本発明は、上述の実施の形態にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変更を加えることができる。
上記については単に本発明の原理を示すものである。さらに、多数の変形、変更が当業者にとって可能であり、本発明は上記に示し、説明した正確な構成および応用例に限定されるものではなく、対応するすべての変形例および均等物は、添付の請求項およびその均等物による本発明の範囲とみなされる。
符号の説明
1 2重化組み合わせ管理装置
1a 同時故障発生度記憶手段
1b 製造日情報収集手段
1c 同時故障発生度計算手段
1d 組み合わせパターン作成手段
1e 同時故障発生度合算手段
1f 2重化組み合わせパターン決定手段
1g 2重化組み合わせパターン
1h ミラーリング指示手段
1i ミラーリング手段
2〜5 ストレージ装置

Claims (9)

  1. データを重化して格納するストレージ装置の組を決定するための組み合わせ決定プログラムにおいて、
    複数のストレージ装置それぞれについて、ストレージ装置の製造日に応じた数値が設定された製造日情報を取得する製造日情報収集手段
    前記複数のストレージ装置を2台ずつの組とした組み合わせパターンを複数生成する組み合わせパターン作成手段、
    前記製造日情報収集手段が取得した製造日情報に基づいて、2台のストレージ装置の組ごとの製造日情報の数値の差を計算し、製造日情報の差が大きいほど値が小さくなる同時故障発生度を算出する同時故障発生度計算手段、
    前記組み合わせパターン作成手段で生成された前記複数の組み合わせパターンそれぞれについて、組み合わせパターンに含まれるストレージ装置の組それぞれの同時故障発生度の総和を算出する同時故障発生度合算手段、
    前記同時故障発生度合算手段で求められた同時故障発生度の総和が最も小さい組み合わせパターンを決定するパターン決定手段、
    ミラーリングを実施するミラーリング手段に対して、前記パターン決定手段で決定された組み合わせパターンに示されるストレージ装置の組によるミラーリングの指示を行うミラーリング指示手段、
    として、情報処理装置を機能させることを特徴とする組み合わせ決定プログラム。
  2. 前記情報処理装置を、さらに
    ストレージ装置の組と対応付けて該ストレージ装置の組の同時故障発生度を記憶する同時故障発生度記憶手段として機能させ、
    前記同時故障発生度計算手段は、算出した同時故障発生度を、前記同時故障発生度記憶手段に記憶させ、
    前記同時故障発生度合算手段は、前記同時故障発生度記憶手段から同時故障発生度を呼び出す、
    ことを特徴とする請求項1記載の組み合わせ決定プログラム。
  3. 前記製造日情報収集手段は、複数の情報処理装置が連携してミラーリングを実施する場合、製造日情報を前記複数の情報処理装置それぞれから取得し、
    前記ミラーリング指示手段は、前記複数の情報処理装置それぞれが有するミラーリング手段に対して、ミラーリングの指示を行う、
    ことを特徴とする請求項1または2記載の組み合わせ決定プログラム。
  4. 前記同時故障発生度計算手段は、所定の定数を底とし、前記製造日情報の数値の差を指数としたときの、前記所定の定数のべき乗の逆数を同時故障発生度とすることを特徴とする請求項1乃至3のいずれかに記載の組み合わせ決定プログラム。
  5. 前記製造日情報収集手段は、ストレージ装置内に複数の記憶装置が内蔵されている場合、当該複数の記憶装置のうちの任意の一台の製造日情報を、当該ストレージ装置の製造日情報とすることを特徴とする請求項1乃至4のいずれかに記載の組み合わせ決定プログラム。
  6. 前記製造日情報収集手段は、ストレージ装置内に複数の記憶装置が内蔵されている場合、当該複数の記憶装置それぞれの製造日情報を取得し、
    前記同時故障発生度計算手段は、ストレージ装置の組が有するストレージ装置それぞれから記憶装置を一台ずつ選択することで生成可能な複数の記憶装置の組それぞれに関して、記憶装置の組が有する記憶装置それぞれの製造日情報を用いて同時故障発生度を算出し、前記複数の記憶装置の組それぞれの同時故障発生度の中で、記憶装置の組が有する記憶装置が同時に故障する確率の最も大きくなる値をとる同時故障発生度を、当該ストレージ装置の組の同時故障発生度とする、
    ことを特徴とする請求項1乃至5のいずれかに記載の組み合わせ決定プログラム。
  7. データを重化して格納するストレージ装置の組を決定するための組み合わせ決定プログラムにおいて、
    複数のストレージ装置から前記複数のストレージ装置それぞれについて、ストレージ装置の製造日に応じた数値が設定された製造日情報を取得する製造日情報収集手段
    前記複数のストレージ装置を2台ずつの組とした組み合わせパターンを複数生成する組み合わせパターン作成手段、
    前記製造日情報収集手段が取得した製造日情報に基づいて、2台のストレージ装置の組ごとの製造日情報の数値の差を計算し、製造日情報の差が大きいほど値が小さくなる同時故障発生度を算出する同時故障発生度計算手段、
    前記複数のストレージ装置の記憶領域を複数のセグメントに分割した論理ボリュームを定義し、セグメント単位でミラーリングを行う際に、前記複数のセグメントそれぞれに対してミラーリングのための2台のストレージ装置を割り当てすることによって得られる配置パターンを複数生成する配置パターン作成手段、
    前記配置パターン作成手段で生成された前記複数の配置パターンそれぞれについて、配置パターンに含まれるストレージ装置の組それぞれの同時故障発生度の総和を算出する同時故障発生度合算手段、
    前記同時故障発生度合算手段で求められた同時故障発生度の総和が最も小さい配置パターンを決定するパターン決定手段、
    前記複数のストレージ装置を用いてミラーリングを実施するミラーリング手段に対して、前記パターン決定手段で決定された配置パターンに示されるセグメントそれぞれに対応するストレージ装置の組による該セグメントごとのミラーリングの指示を送信するミラーリング指示手段、
    として情報処理装置を機能させることを特徴とする組み合わせ決定プログラム。
  8. データを重化して格納するストレージ装置の組を決定するための組み合わせ決定装置において、
    複数のストレージ装置それぞれについて、ストレージ装置の製造日に応じた数値が設定された製造日情報を取得する製造日情報収集手段と、
    前記複数のストレージ装置を2台ずつの組とした組み合わせパターンを複数生成する組み合わせパターン作成手段と、
    前記製造日情報収集手段が取得した製造日情報に基づいて、2台のストレージ装置の組ごとの製造日情報の数値の差を計算し、製造日情報の差が大きいほど値が小さくなる同時故障発生度を算出する同時故障発生度計算手段と、
    前記組み合わせパターン作成手段で生成された前記複数の組み合わせパターンそれぞれについて、組み合わせパターンに含まれるストレージ装置の組それぞれの同時故障発生度の総和を算出する同時故障発生度合算手段と、
    前記同時故障発生度合算手段で求められた同時故障発生度の総和が最も小さい組み合わせパターンを決定するパターン決定手段と、
    ミラーリングを実施するミラーリング手段に対して、前記パターン決定手段で決定された組み合わせパターンに示されるストレージ装置の組によるミラーリングの指示を行うミラーリング指示手段と、
    を有することを特徴とする組み合わせ決定装置。
  9. データを重化して格納するストレージ装置の組を決定するための組み合わせ決定方法において、
    製造日情報収集手段が、複数のストレージ装置それぞれについて、ストレージ装置の製造日に応じた数値が設定された製造日情報を取得し、
    組み合わせパターン作成手段が、前記複数のストレージ装置を2台ずつの組とした組み合わせパターンを複数生成し、
    同時故障発生度計算手段が、前記製造日情報収集手段が取得した製造日情報に基づいて、2台のストレージ装置の組ごとの製造日情報の数値の差を計算し、製造日情報の差が大きいほど値が小さくなる同時故障発生度を算出し、
    同時故障発生度合算手段が、前記組み合わせパターン作成手段で生成された前記複数の組み合わせパターンそれぞれについて、組み合わせパターンに含まれるストレージ装置の組それぞれの同時故障発生度の総和を算出し、
    パターン決定手段が、前記同時故障発生度合算手段で求められた同時故障発生度の総和が最も小さい組み合わせパターンを決定し、
    ミラーリング指示手段が、ミラーリングを実施するミラーリング手段に対して、前記パターン決定手段で決定された組み合わせパターンに示されるストレージ装置の組によるミラーリングの指示を行う、
    ことを特徴とする組み合わせ決定方法。
JP2009512809A 2007-04-20 2007-04-20 組み合わせ決定プログラム、組み合わせ決定装置、および組み合わせ決定方法 Active JP5131271B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2007/058632 WO2008136074A1 (ja) 2007-04-20 2007-04-20 2重化組み合わせ管理プログラム、2重化組み合わせ管理装置、および2重化組み合わせ管理方法

Publications (2)

Publication Number Publication Date
JPWO2008136074A1 JPWO2008136074A1 (ja) 2010-07-29
JP5131271B2 true JP5131271B2 (ja) 2013-01-30

Family

ID=39943198

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009512809A Active JP5131271B2 (ja) 2007-04-20 2007-04-20 組み合わせ決定プログラム、組み合わせ決定装置、および組み合わせ決定方法

Country Status (3)

Country Link
US (1) US8032784B2 (ja)
JP (1) JP5131271B2 (ja)
WO (1) WO2008136074A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10203895B2 (en) 2015-08-04 2019-02-12 Kabushiki Kaisha Toshiba Storage management apparatus, storage system, and storage management method

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5217967B2 (ja) * 2008-11-28 2013-06-19 富士通株式会社 故障ノード切り離し処理プログラム、故障ノード切り離し方法及びストレージシステム
JP5412882B2 (ja) * 2009-03-04 2014-02-12 富士通株式会社 論理ボリューム構成情報提供プログラム、論理ボリューム構成情報提供方法、および論理ボリューム構成情報提供装置
US20110141912A1 (en) * 2009-12-10 2011-06-16 Xerox Corporation Field corrective action based on part life durations
FR2954979B1 (fr) * 2010-01-05 2012-06-01 Commissariat Energie Atomique Procede pour selectionner une ressource parmi une pluralite de ressources de traitement, de sorte que les delais probables avant defaillance des ressources evoluent de maniere sensiblement identique
JP5215434B2 (ja) * 2011-05-18 2013-06-19 株式会社東芝 複数の不揮発性メモリを備えたストレージ装置、ストレージコントローラ及び論理ディスク生成方法
JP5849491B2 (ja) 2011-07-22 2016-01-27 富士通株式会社 ディスク制御装置、ディスク装置異常検出方法、及びプログラム
JP6164042B2 (ja) * 2013-10-24 2017-07-19 富士通株式会社 中継装置、中継方法、中継プログラム、および中継システム
WO2016051512A1 (ja) 2014-09-30 2016-04-07 株式会社日立製作所 分散型ストレージシステム
US11188665B2 (en) * 2015-02-27 2021-11-30 Pure Storage, Inc. Using internal sensors to detect adverse interference and take defensive actions
US10114716B2 (en) * 2015-11-20 2018-10-30 International Business Machines Corporation Virtual failure domains for storage systems
JP6949801B2 (ja) * 2018-10-17 2021-10-13 株式会社日立製作所 ストレージシステム及びストレージシステムにおけるデータ配置方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05324579A (ja) * 1992-05-25 1993-12-07 Hitachi Ltd 分散ファイルシステム及び記憶装置
JPH09325898A (ja) * 1996-06-06 1997-12-16 Hitachi Ltd 複数ユニットから構成されるデータ処理装置
JP2004272325A (ja) * 2003-03-05 2004-09-30 Nec Software Chubu Ltd 外部記憶装置の故障予測方法およびシステム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06187101A (ja) 1992-09-09 1994-07-08 Hitachi Ltd ディスクアレイ
JP3078972B2 (ja) * 1993-11-05 2000-08-21 富士通株式会社 ディスクアレイ装置
US5822782A (en) * 1995-10-27 1998-10-13 Symbios, Inc. Methods and structure to maintain raid configuration information on disks of the array
JP3575964B2 (ja) * 1997-10-30 2004-10-13 富士通株式会社 ディスクアレイ装置
JP2002500393A (ja) 1997-12-24 2002-01-08 アヴィッド・テクノロジー・インコーポレーテッド コンピュータ・システムおよび多数の記憶装置および多数のアプリケーション間でスケーラブルにかつ信頼性高く多数の高帯域データ・ストリームを転送するプロセス
JP2000013581A (ja) * 1998-06-24 2000-01-14 Ricoh Co Ltd ファクシミリ装置
JP2000099274A (ja) * 1998-09-24 2000-04-07 Sanaka Isao バッファリングシステム
US6832289B2 (en) * 2001-10-11 2004-12-14 International Business Machines Corporation System and method for migrating data
JP2004171113A (ja) 2002-11-18 2004-06-17 Hitachi Ltd データ記録再生システムおよびデータ記録再生方法およびデータ記録再生機器
US7707060B2 (en) * 2003-08-21 2010-04-27 International Business Machines Corporation Automatic collection and dissemination of product usage information
US7191283B2 (en) * 2003-08-21 2007-03-13 International Business Machines Corporation Grouping of storage media based on parameters associated with the storage media
US20050222817A1 (en) * 2004-03-09 2005-10-06 Traceability System Architects, Inc. Computer implemented methods and systems for storing product history and/or failure data and/or analyzing causes of component and/or system failure
US7376862B2 (en) * 2004-06-24 2008-05-20 International Business Machines Corporation Multiple sourcing storage devices for ultra reliable mirrored storage subsystems
JP2006260008A (ja) 2005-03-16 2006-09-28 Nec Corp 冗長化ディスクシステム
GB0601829D0 (en) * 2006-01-31 2006-03-08 Ibm Early Detection Of Storage Device Degradation
US7669076B2 (en) * 2006-05-30 2010-02-23 Oracle International Corporation Estimating data availability on managed storage devices

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05324579A (ja) * 1992-05-25 1993-12-07 Hitachi Ltd 分散ファイルシステム及び記憶装置
JPH09325898A (ja) * 1996-06-06 1997-12-16 Hitachi Ltd 複数ユニットから構成されるデータ処理装置
JP2004272325A (ja) * 2003-03-05 2004-09-30 Nec Software Chubu Ltd 外部記憶装置の故障予測方法およびシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10203895B2 (en) 2015-08-04 2019-02-12 Kabushiki Kaisha Toshiba Storage management apparatus, storage system, and storage management method

Also Published As

Publication number Publication date
JPWO2008136074A1 (ja) 2010-07-29
WO2008136074A1 (ja) 2008-11-13
US8032784B2 (en) 2011-10-04
US20090307524A1 (en) 2009-12-10

Similar Documents

Publication Publication Date Title
JP5131271B2 (ja) 組み合わせ決定プログラム、組み合わせ決定装置、および組み合わせ決定方法
JP5158074B2 (ja) ストレージ管理プログラム、ストレージ管理方法、ストレージ管理装置およびストレージシステム
JP5099128B2 (ja) ストレージ管理プログラム、ストレージ管理装置およびストレージ管理方法
JP4671738B2 (ja) ストレージシステム及び記憶領域割当て方法
JP5381336B2 (ja) 管理プログラム、管理装置および管理方法
JP5396836B2 (ja) データ分散制御プログラム、ストレージ管理プログラム、制御ノード、およびディスクノード
US8141095B2 (en) Recording medium storing data allocation control program, data allocation control device, data allocation control method, and multi-node storage-system
US6948102B2 (en) Predictive failure analysis for storage networks
US9348724B2 (en) Method and apparatus for maintaining a workload service level on a converged platform
JP5412882B2 (ja) 論理ボリューム構成情報提供プログラム、論理ボリューム構成情報提供方法、および論理ボリューム構成情報提供装置
US7966470B2 (en) Apparatus and method for managing logical volume in distributed storage systems
US8386707B2 (en) Virtual disk management program, storage device management program, multinode storage system, and virtual disk managing method
JP2006024024A (ja) 論理ディスク管理方法及び装置
JP2007520783A (ja) データストレージシステムにおける冗長データ割り当て
JP5104855B2 (ja) 負荷分散プログラム、負荷分散方法、及びストレージ管理装置
JP4261532B2 (ja) 論理ディスク管理方法及び仮想化装置
JP5533252B2 (ja) ディスクアレイ装置及びディスクアレイ装置の制御方法
US11188258B2 (en) Distributed storage system
JPH06119125A (ja) ディスクアレイ装置
JPWO2008126169A1 (ja) ストレージ管理プログラム、ストレージ管理方法およびストレージ管理装置
JP2012079162A (ja) 管理プログラム、管理装置、および管理方法
US20080126789A1 (en) Method and Apparatus for Generating an Optimal Number of Spare Devices Within a RAID Storage System Having Multiple Storage Device Technology Classes

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110823

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111024

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120327

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120523

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: 20121009

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121022

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151116

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5131271

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150