JPWO2008114441A1 - ストレージ管理プログラム、ストレージ管理方法およびストレージ管理装置 - Google Patents

ストレージ管理プログラム、ストレージ管理方法およびストレージ管理装置 Download PDF

Info

Publication number
JPWO2008114441A1
JPWO2008114441A1 JP2009505040A JP2009505040A JPWO2008114441A1 JP WO2008114441 A1 JPWO2008114441 A1 JP WO2008114441A1 JP 2009505040 A JP2009505040 A JP 2009505040A JP 2009505040 A JP2009505040 A JP 2009505040A JP WO2008114441 A1 JPWO2008114441 A1 JP WO2008114441A1
Authority
JP
Japan
Prior art keywords
storage
data
distributed data
distributed
storage node
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.)
Granted
Application number
JP2009505040A
Other languages
English (en)
Other versions
JP5158074B2 (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 JPWO2008114441A1 publication Critical patent/JPWO2008114441A1/ja
Application granted granted Critical
Publication of JP5158074B2 publication Critical patent/JP5158074B2/ja
Expired - Fee Related 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/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/2061Error 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 combined with de-clustering of data
    • 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/2064Error 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 while ensuring consistency

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)

Abstract

データの消失を容易に防止することができる。属性収集手段(2)により、ストレージノード(6a)〜(6d)の属性が収集される。グループ作成手段(4)により、属性収集手段(2)によって収集されたストレージノード(6a)〜(6d)の属性に基づいて、ストレージノード(6a)〜(6d)が属する少なくとも2つのグループが作成される。データ割り当て手段(5)により、グループ作成手段(4)によって作成された各グループ内において、分散データと同一の冗長分散データが存在しないように、分散データおよび冗長分散データが各グループに割り当てられる。

Description

本発明はストレージ管理プログラム、ストレージ管理方法およびストレージ管理装置に関し、特に、分散データおよび冗長分散データの分散管理を行う際に用いるストレージ管理プログラム、ストレージ管理方法およびストレージ管理装置に関する。
様々な場所で大量に発生するデータを蓄積するとともに、その運用管理を行うため、複数のストレージを備え、これらのストレージにデータを分散して(多重化して)格納するストレージシステムが用いられている。近年、利用範囲の拡大や情報量の増大が続いており、記憶容量の大容量化とともに、安定したサービスの提供や信頼性、セキュリティへの対応が求められている。そのため、データ消失確率や、障害時の性能低下の度合いに応じて、分散して障害回復処理を行うストレージシステムが知られている(例えば、特許文献1参照)。
このようなストレージシステムの一例として、ストレージシステム自体の判断でデータの複製や移動等を行うオーガニックストレージが知られている。一般的なオーガニックストレージは、論理ボリュームを構成し、ユーザからのアクセスは、その論理ボリュームに対して行われる。論理ボリューム自体は、複数のセグメントで構成され、セグメントは2つのスライスで構成される。スライスはストレージノードが持つディスクを一定の大きさで分割したものであり、セグメントは異なるストレージノードに属するスライスで構成される。セグメントを構成するスライスはプライマリスライスとセカンダリスライスとに区別される。
特開平7−261945号公報
しかしながら、プライマリスライスとセカンダリスライスの割当においては個々のストレージノードの属性(使用年数、稼働時間、使用環境等)が考慮されることは少ない。例えば、ストレージノードの使用年数が異なる場合でも新旧のノードが同じように扱われ、古いストレージノード同士でデータ二重化を行ってしまう可能性もある。一般的に古いストレージノード程、故障率が上昇し、古いストレージノードでデータの二重化を行うと両方のノードが同時期に壊れることによるデータロストの可能性が高くなってしまう。
本発明はこのような点に鑑みてなされたものであり、データの消失を容易に防止することができるストレージ管理プログラム、ストレージ管理方法およびストレージ管理装置を提供することを目的とする。
本発明では上記問題を解決するために、図1に示すような処理をコンピュータに実行させるためのストレージ管理プログラムが提供される。
本発明に係るストレージ管理プログラムは、データを分散した分散データおよびデータと同一内容の冗長データを分散した冗長分散データの分散管理を行うために設けられ、それぞれネットワーク経由で接続された複数のストレージノード、を備える分散ストレージシステムのストレージノードにストレージ装置を管理させるためのプログラムである。
このストレージ管理プログラムを実行するコンピュータ1は、以下の機能を有する。
属性収集手段2は、ストレージノード6a〜6dの属性を収集する。ストレージノードの属性には配下のストレージ装置の属性を含んでも良い。
グループ作成手段4は、属性収集手段2により収集されたストレージノード6a〜6dの属性に基づいて、ストレージノード6a〜6dが属する少なくとも2つのグループを作成する。
データ割り当て手段5は、グループ作成手段4により作成された各グループ内において、分散データと同一の冗長分散データが存在しないように、分散データおよび冗長分散データを各グループに割り当てる。
このようなストレージ管理プログラムによれば、属性収集手段2により、ストレージノード6a〜6dの属性が収集される。グループ作成手段4により、属性収集手段2によって収集されたストレージノード6a〜6dの属性に基づいて、ストレージノード6a〜6dが属する少なくとも2つのグループが作成される。
データ割り当て手段5により、グループ作成手段4によって作成された各グループ内において、分散データと同一の冗長分散データが存在しないように、分散データおよび冗長分散データが各グループに割り当てられる。
本発明によれば、グループ作成手段が、ストレージノードを属性によってグループ分けし、データ割り当て手段が、そのグループ間で同一の分散データおよび冗長分散データが存在しないようにデータ分けするようにしたので、同一グループのデータが複数壊れた場合においても他のグループにおいてデータを復元することができるため、データの消失を容易に防止することができる。
本発明の上記および他の目的、特徴および利点は本発明の例として好ましい実施の形態を表す添付の図面と関連した以下の説明により明らかになるであろう。
本発明の概要を示す図である。 本実施の形態の分散ストレージシステム構成例を示す図である。 本実施の形態に用いるストレージノードのハードウェア構成例を示す図である。 論理ボリュームのデータ構造を示す図である。 分散ストレージシステムの各装置の機能を示すブロック図である。 コントロールノードの機能を示すブロック図である。 スライス管理情報のデータ構造例を示す図である。 スライス管理情報群記憶部のデータ構造例を示す図である。 グループがない状態で論理ボリュームを行った後にグループ分けを行った場合にグループ分けどおりのデータ配置にするための分散データの移動処理を示すフローチャートである。 分散データの移動処理の具体例を説明する図である。 グループに分けた後でストレージノードに論理ボリュームを新規に割り当てる様子を示す図である。
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
まず、本発明の概要について説明し、その後、実施の形態を説明する。
図1は、本発明の概要を示す図である。
分散ストレージシステムは、コンピュータ1と、ストレージノード6a〜6dと、ストレージ装置3a〜3dを有している。
コンピュータ1には、ストレージノード6a〜6dが接続されている。
コンピュータ1は、ストレージノード6a〜6dに、ストレージ装置3a〜3dを管理させるためのコンピュータである。
ストレージノード6a〜6dは、データを分散した分散データおよびデータと同一内容の冗長データを分散した冗長分散データの分散管理を行うために設けられており、それぞれがネットワーク経由で接続されている。このストレージノード6a〜6dには、それぞれ冗長データおよび冗長分散データが格納されるストレージ装置3a〜3dが接続されている。
コンピュータ1は、属性収集手段2と、グループ作成手段4と、データ割り当て手段5とを有している。
属性収集手段2は、ストレージノード6a〜6dの属性を収集する。この属性には、例えばそれぞれのストレージノードが管理するストレージ装置3a〜3dに関する属性も含まれる。属性としては、特に限定されないが、例えば製造年月日、稼働時分、設置環境、周囲温度等が挙げられる。
グループ作成手段4は、属性収集手段2により収集されたストレージノード6a〜6dの属性に基づいて、ストレージノード6a〜6dが属する少なくとも2つのグループを作成する。
データ割り当て手段5は、グループ作成手段4により作成された各グループ内において、分散データと同一の冗長分散データが存在しないように、分散データおよび冗長分散データを各グループに割り当てる。
このようなストレージ管理プログラムによれば、属性収集手段2により、ストレージノード6a〜6dの属性が収集される。グループ作成手段4により、属性収集手段2によって収集されたストレージノード6a〜6dの属性に基づいて、ストレージノード6a〜6dが属する少なくとも2つのグループが作成される。
データ割り当て手段5により、グループ作成手段4によって作成された各グループ内において、分散データと同一の冗長分散データが存在しないように、分散データおよび冗長分散データが各グループに割り当てられる。
以下、本発明の実施の形態を説明する。
図2は、本実施の形態の分散ストレージシステム構成例を示す図である。本実施の形態では、ネットワーク20を介して、複数のストレージノード100,200,300,400、コントロールノード500、およびアクセスノード600が接続されている。ストレージノード100,200,300,400それぞれには、ストレージ装置110,210,310,410が接続されている。
ストレージ装置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のディスク管理サービスを提供する。
ストレージノード100,200,300,400は、例えば、IA(Intel Architecture)と呼ばれるアーキテクチャのコンピュータである。ストレージノード100,200,300,400は、接続されたストレージ装置110,210,310,410に格納された分散データを管理している。
また、ストレージノード100,200,300,400は、冗長性を有する分散データ(冗長分散データ)を管理している。同一の分散データは、異なるストレージノードで管理されている。
さらに、ストレージノード100,200,300,400は、二重化した分散データの整合性をチェックする二重化保全処理を行う。なお、ストレージノード100,200,300,400は個々の判断に基づいてデータ二重化保全処理を行ってもよいし、外部からの指示によりデータ二重化保全処理を行ってもよい。本実施の形態では、コントロールノード500からの指示により二重化保全処理を行うものとする。以下、このデータ二重化保全処理をパトロールと呼ぶ。
パトロールでは、二重化したそれぞれの分散データを保持するストレージノード同士が互いに通信し合い、冗長性のある分散データの整合性がチェックされる。その際、あるストレージノードで管理されている分散データの不具合が検出されれば、他のストレージノードの対応する分散データ(冗長分散データ)を用いてデータの復旧が行われる。
コントロールノード500は、ストレージノード100,200,300,400とハートビート通信を行い、ストレージノード100,200,300,400を管理する。例えば、コントロールノード500は、所定のタイミングで、各ストレージノード100,200,300,400に対してパトロールの指示を出力する。
アクセスノード600には、ネットワーク20を介して複数の端末装置21,22,23が接続されている。
アクセスノード600は、受け取ったデータを決められた単位に分割して分散データを作成し、書き込み要求をストレージノード100,200,300,400に送る。書き込み要求を受け取ったストレージノード100,200,300,400では、自身のスライス管理情報から、データ二重化を行うべき相手のストレージノード100,200,300,400を判断して、そのストレージノードに書き込み要求を送る。書き込み要求を受け取ったストレージノードは、自身に接続されたストレージ装置に分散データの書き込みをスケジューリングし、書き込み要求を送ったストレージノードに応答を返す。応答を受け取ったストレージノードは、同じように分散データの書き込みをスケジューリングし、アクセスノード600に応答を返す。
また、アクセスノード600は、ストレージノード100,200,300,400それぞれが管理している分散データの格納場所を認識しており、端末装置21,22,23からの要求に応答して、ストレージノード100,200,300,400へデータアクセスを行う。
図3は、本実施の形態に用いるストレージノードのハードウェア構成例を示す図である。ストレージノード100は、CPU(Central Processing Unit)101によって装置全体が制御されている。CPU101には、バス107を介してRAM(Random Access Memory)102、HDDインタフェース103、グラフィック処理装置104、入力インタフェース105、および通信インタフェース106が接続されている。
RAM102には、CPU101に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM102には、CPU101による処理に必要な各種データが格納される。
HDDインタフェース103には、ストレージ装置110が接続されている。HDDインタフェース103は、ストレージ装置110に内蔵されたRAIDコントローラ115と通信し、ストレージ装置110に対する分散データの入出力を行う。ストレージ装置110内のRAIDコントローラ115は、RAID0〜5の機能を有し、複数のHDD111〜114をまとめて1台のハードディスクとして管理する。
グラフィック処理装置104には、モニタ11が接続されている。グラフィック処理装置104は、CPU101からの命令に従って、画像をモニタ11の画面に表示させる。入力インタフェース105には、キーボード12とマウス13とが接続されている。入力インタフェース105は、キーボード12やマウス13から送られてくる信号を、バス107を介してCPU101に送信する。
通信インタフェース106は、ネットワーク10に接続されている。通信インタフェース106は、ネットワーク10を介して、他のコンピュータとの間でデータの送受信を行う。
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。なお、図3には、ストレージノード100とストレージ装置110との構成のみを示したが、他のストレージノード200,300,400や他のストレージ装置210,310,410も同様のハードウェア構成で実現できる。
さらに、コントロールノード500、アクセスノード600、および端末装置21〜23も、ストレージノード100とストレージ装置110との組合せと同様のハードウェア構成で実現できる。ただし、コントロールノード500、アクセスノード600、および端末装置21〜23については、ストレージ装置110のようなRAIDシステムではなく、単体のHDDがHDDコントローラに接続されていてもよい。
図2に示すように、複数のストレージノード100,200,300,400がネットワーク10に接続され、それぞれのストレージノード100,200,300,400は他のストレージノードとの間で通信を行う。この分散ストレージシステムは、端末装置21〜23に対して、仮想的なボリューム(以下、論理ボリュームと呼ぶ)として機能する。
図4は、論理ボリュームのデータ構造を示す図である。
論理ボリューム700には、「LVOL−A」という識別子(論理ボリューム識別子)が付与されている。また、ネットワーク経由で接続された4台のストレージノード100,200,300,400には、個々のストレージノードの識別のためにそれぞれ「SN−A」、「SN−B」、「SN−C」、「SN−D」というノード識別子が付与されている。
各ストレージノード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に分けられている。
なお、論理ボリューム700は、セグメント710,720,730,740という単位で構成される。セグメント710,720,730,740の記憶容量は、ストレージ装置110,210,310,410における管理単位であるスライスの記憶容量と同じである。例えば、スライスの記憶容量が1ギガバイトとするとセグメントの記憶容量も1ギガバイトである。論理ボリューム700の記憶容量はセグメント1つ当たりの記憶容量の整数倍である。セグメントの記憶容量が1ギガバイトならば、論理ボリューム700の記憶容量は4ギガバイトといったものになる。
セグメント710,720,730,740は、それぞれプライマリスライス711,721,731,741とセカンダリスライス712,722,732,742との組から構成される。同じセグメントに属するスライスは別々のストレージノードに属する。個々のスライスを管理する領域には論理ボリューム識別子やセグメント情報や同じセグメントを構成するスライス情報の他にフラグがあり、そのフラグにはプライマリあるいはセカンダリ等を表す値が格納される。
図4の例では、スライスの識別子を、「P」または「S」のアルファベットと数字との組合せで示している。「P」はプライマリスライスであることを示している。「S」はセカンダリスライスであることを示している。アルファベットに続く数字は、何番目のセグメントに属するのかを表している。例えば、1番目のセグメント710のプライマリスライスが「P1」で示され、セカンダリスライスが「S1」で示される。
このような構造の論理ボリューム700の各プライマリスライスおよびセカンダリスライスが、ストレージ装置110,210,310,410内のいずれかのスライスに対応付けられる。例えば、セグメント710のプライマリスライス711は、ストレージ装置410のスライス424に対応付けられ、セカンダリスライス712は、ストレージ装置210のスライス222に対応付けられている。
そして、ストレージ装置110,210,310,410では、自己のスライスに対応するプライマリスライスまたはセカンダリスライスの分散データを格納する。
図5は、分散ストレージシステムの各装置の機能を示すブロック図である。
アクセスノード600は、論理ボリュームアクセス制御部610を有している。論理ボリュームアクセス制御部610は、端末装置21,22,23からの論理ボリューム700内のデータを指定したアクセス要求に応じて、対応する分散データを管理するストレージノードに対してデータアクセスを行う。具体的には、論理ボリュームアクセス制御部610は、論理ボリューム700の各セグメントのプライマリスライスまたはセカンダリスライスと、ストレージ装置110,210,310,410内のスライスとの対応関係を記憶している。そして、論理ボリュームアクセス制御部610は、端末装置21,22,23からセグメント内のデータアクセスの要求を受け取ると、該当するセグメントのプライマリスライスに対応するスライスを有するストレージ装置に対してデータアクセスを行う。
図6は、コントロールノードの機能を示すブロック図である。
コントロールノード500は、論理ボリューム管理部510とスライス管理情報群記憶部520と、属性収集部530と、グループ作成部540とを有している。
論理ボリューム管理部510は、ストレージノード100,200,300,400が有するストレージ装置110,210,310,410内のスライスを管理する。例えば、論理ボリューム管理部510は、システム起動時に、ストレージノード100,200,300,400に対してスライス管理情報取得要求を送信する。そして、論理ボリューム管理部510は、スライス管理情報取得要求に対して返信されたスライス管理情報を、スライス管理情報群記憶部520に格納する。
また、論理ボリューム管理部510は、論理ボリューム700におけるセグメントごとに、パトロールを実行するタイミングを管理する。パトロールは、所定の時間間隔で実行したり、あらかじめスケジュールされた時刻に実行したりする。また、分散ストレージシステムの負荷状況を監視し、負荷が少ない時間にパトロールを実行することもできる。論理ボリューム管理部510は、パトロールの実行時間になると、実行対象のセグメントのプライマリスライスを管理するストレージノードに対して、パトロール実行指示を送信する。
さらに、論理ボリューム管理部510は、スライス管理情報および作成されたグループ(後述)に基づいて、分散データの移動(スライスの配置換え)を行う機能を有している。
スライス管理情報群記憶部520は、ストレージノード100,200,300,400から収集されたスライス管理情報を記憶する記憶装置である。例えば、コントロールノード500内のRAMの記憶領域の一部がスライス管理情報群記憶部520として使用される。
属性収集部530は、ストレージノード100,200,300,400それぞれの属性を収集する。属性収集部530は、ハートビート通信路でストレージノード100,200,300,400に属性の照会を行うことで属性を収集する。
収集される属性としては特に限定されないが、前述したものに加え、例えばストレージノード100,200,300,400のハードウェアベンダー、OSのバージョン等が挙げられる。また、ストレージ装置110,210,310,410の情報としては、例えばS.M.A.R.T(Self-Monitoring, Analysis and Reporting Technology)で得られる情報(通電時間、セクタ再割当回数等)等が挙げられる。
グループ作成部540は、属性収集部530が収集した属性を用いてストレージノード100,200,300,400のグループ分けを行う。このグループ分けについては後に詳述する。
再び図5に戻って説明する。
ストレージノード100は、データアクセス部130、データ管理部140、スライス管理情報記憶部150および属性管理部160を有している。
データアクセス部130は、アクセスノード600からの要求に応答して、ストレージ装置110内の分散データにアクセスする。具体的には、データアクセス部130は、アクセスノード600からデータのリード要求を受け取った場合、リード要求で指定された分散データをストレージ装置110から取得し、アクセスノード600に送信する。また、データアクセス部130は、アクセスノード600からデータのライト要求を受け取った場合、ライト要求に含まれる分散データをデータ二重化を行うために他のストレージノードへ送り出して正常のレスポンスを受け取った後、ストレージ装置110内に格納する。
データ管理部140は、ストレージ装置110内の分散データを管理する。具体的には、データ管理部140はコントロールノード500からの指示に従って、ストレージ装置110内の分散データのパトロールを行う。パトロールを行う場合、データ管理部140は、チェック対象のプライマリスライスに対応するセカンダリスライスを管理する他のストレージノードに対して、チェック要求メッセージを送信する。また、データ管理部140は、他のストレージノードからチェック要求メッセージを受け取ると、指定されたスライス内の分散データのパトロールを行う。
さらに、データ管理部140は、論理ボリューム管理部510からのスライス管理情報取得要求に応答して、スライス管理情報記憶部150に記憶されたスライス管理情報を論理ボリューム管理部510に対して送信する。
スライス管理情報記憶部150は、スライス管理情報を記憶する記憶装置である。例えば、RAM102内の記憶領域の一部がスライス管理情報記憶部150として使用される。なお、スライス管理情報記憶部150に格納されるスライス管理情報は、システム停止時にはストレージ装置110内に格納され、システム起動時にスライス管理情報記憶部150に読み込まれる。
属性管理部160は、前述した属性を格納しており、属性収集部530から属性の照会があると、格納されている属性をハートビートに搭載する。
他のストレージノード200,300,400は、ストレージノード100と同様の機能を有している。すなわち、ストレージノード200は、データアクセス部230、データ管理部240、スライス管理情報記憶部250、および属性管理部260を有している。ストレージノード300は、データアクセス部330、データ管理部340、およびスライス管理情報記憶部350、および属性管理部360を有している。ストレージノード400は、データアクセス部430、データ管理部440、スライス管理情報記憶部450、および属性管理部460を有している。ストレージノード200,300,400内の各要素は、ストレージノード100内の同名の要素と同じ機能を有している。
図7は、スライス管理情報のデータ構造例を示す図である。
スライス管理情報記憶部150に格納されたスライス管理情報151の構成要素は、左側の要素から順に以下の通りである。
・スライス番号
・開始ブロック位置(該当スライスの先頭に当たるブロックの番号)
・ブロック数(スライス内のブロック数)
・フラグ(プライマリ/セカンダリ)
・論理ボリューム識別子
・セグメント番号
・論理ボリューム開始ブロック位置
・論理ボリューム内でのブロック数
・ペアを組むストレージノード識別子
・ペアを組むスライス番号
図7で示したスライス管理情報151は、図4で示した論理ボリューム700を構成している。例えば、ノード識別子「SN−A」のスライス管理情報151におけるスライス番号「4」のスライスは「LVOL−A」のセグメント番号「4」のプライマリスライスであり、ペアを組んでいるのは「SN−D」のセグメント番号「1」のスライスである、ということを意味する。また、プライマリスライスにもセカンダリスライス対応づけられていないにもスライスについては、そのフラグが「F」(フリー)になっており、論理ボリューム識別子以降は、空欄になっている。
同様のスライス管理情報が、他のストレージノード200,300,400のスライス管理情報記憶部250,350,450にも格納されている。そして、コントロールノード500が、システム起動時に各ストレージノード100,200,300,400からスライス管理情報を収集し、スライス管理情報群記憶部520に格納する。
図8は、スライス管理情報群記憶部のデータ構造例を示す図である。
スライス管理情報群記憶部520には、収集したスライス管理情報151,251,351,451が格納されている。スライス管理情報151はストレージノード100(ノード識別子を「SN−A」とする)から取得したものである。スライス管理情報251はストレージノード200(ノード識別子を「SN−B」とする)から取得したものである。スライス管理情報351はストレージノード300(ノード識別子を「SN−C」とする)から取得したものである。スライス管理情報451はストレージノード400(ノード識別子を「SN−D」とする)から取得したものである。
次に、グループ作成部540の機能について詳しく説明する。
グループ作成部540は、収集した属性が離散値の場合は、以下に示す「方法1」にて2つの大グループを作成し、収集した属性が連続値の場合は、以下に示す「方法2」および「方法3」にて2つの大グループを作成する。
<方法1>
グループ作成部540は、離散値毎にストレージノード100,200,300,400をまとめ、小グループを作成する。ここで小グループとは、3つ以上のグループをいう。
次に、グループ作成部540は、小グループを組み合わせて2つの大グループを作成する。ここで、2つの大グループにしたときに、ストレージ装置数の差が最も少ない組み合わせを採用する。
例えば、グループ分けに用いる属性をOSのバージョンとし、OS−Aのストレージノードが3台、OS−Bのストレージノードが4台、OS−Cのストレージノードが1台だったときは、各バージョンをそれぞれグループとする3つの小グループを作成する。そして、3台のOS−Aのストレージノードと1台のOS−Cのストレージノードとで1つの大グループを構成し、4台のOS−Bのストレージノードで1つの大グループを構成する。
<方法2>
グループ作成部540は、連続値をキーにして、ストレージノード100,200,300,400を整列させる。そして、整列させたストレージノード100,200,300,400の数が等しくなるところを境界としてグループ分けする。
例えば、6つのストレージノードが存在し、得られた属性が経過年数である場合において、6つのストレージノードの連続値を小さい順に整列したとき、連続値が、1.0/1.1/2.0/2.0/2.1/2.3であるとする。このとき、最初の3つの属性値を備えるストレージノードで1つの大グループを構成し、残りの3つの属性値を備えるストレージノードで1つの大グループを構成する。
<方法3>
グループ作成部540は、属性値をキーにして、ストレージノード100,200,300,400を整列させる。そして、整列させたストレージノード100,200,300,400を2つのグループに分けて、各グループの属性の分散をとり、その2つの分散の和が一番小さくなるものでグループ分けをする。ただし、1つの大グループは、2つ以上のストレージノードで構成されるものとする。
例えば、6つのストレージノードが存在し、得られた属性が経過年数である場合において、6つのストレージノードの連続値を小さい順に整列したとき、1.0/1.1/2.0/2.0/2.1/2.3であるとする。上記のステップで分散値を計算するグループ分けと、そのときの和は、以下の通りになる。
(1.0/1.1)+(2.0/2.0/2.1/2.3)=0.005+0.02=0.025
(1.0/1.1/2.0)+(2.0/2.1/2.3)=0.303+0.023=0.326
(1.0/1.1/2.0/2.0)+(2.1/2.3)=0.303+0.02=0.323
この場合、0.025が一番小さな値となるため、1,2番目で構成されるストレージノードを1つの大グループとし、3,4,5,6番目のストレージノードで構成されるグループを1つの大グループとする。
上記方法1〜方法3のようにグループ分けすることで、一方のグループを構成するストレージ装置が同時に故障するリスクを分散させることができ、安全性、信頼性を向上させることができる。
次に、論理ボリューム管理部510が行う分散データの移動処理について説明する。
図9は、グループがない状態で論理ボリュームを行った後にグループ分けを行った場合にグループ分けどおりのデータ配置にするための分散データの移動処理を示すフローチャートである。
まず、グループA(一方のグループ)内でのみのスライスで構成される1つのセグメントを検索する(ステップS1)。
セグメントを発見できなかった場合(ステップS2のNo)、ステップS6に移行する。一方、セグメントを発見した場合(ステップS2のYes)、グループB(他方のグループ)から1つの空スライスを検索する(ステップS3)。
空スライスを発見できなかった場合(ステップS4のNo)、ステップS6に移行する。一方、空スライスを発見した場合(ステップS4のYes)、移動処理を行う(ステップS5)。具体的には、グループBで発見した空スライスに、グループAで発見したセグメントを構成するスライスから分散データをコピーする。そして、コピー元となったグループAのスライスを破棄し、コピー先となったグループBのスライスを、セグメントを構成するスライスとする。
次に、グループB内でのみのスライスで構成される1つのセグメントを検索する(ステップS6)。
セグメントを発見できなかった場合(ステップS7のNo)、ステップS11に移行する。一方、セグメントを発見した場合(ステップS7のYes)、グループBから1つの空スライスを検索する(ステップS8)。
空スライスを発見できなかった場合(ステップS9のNo)、ステップS11に移行する。一方、空スライスを発見した場合(ステップS9のYes)、移動処理を行う(ステップS10)。具体的には、グループAで発見した空スライスに、グループBで発見したセグメントを構成するスライスから分散データをコピーする。そして、コピー元となったグループBのスライスを破棄し、コピー先となったグループAのスライスを、セグメントを構成するスライスとする。
次に、データコピーが行われ(ステップS5またはステップS10にて述べた処理のうち少なくともいずれか一方が実行され)たかどうかを判断する(ステップS11)。
データコピーが行われていれば(ステップS11のYes)、さらに別のデータ移動が行えるかどうかを調べるため、ステップS1に移行し、上述の動作を継続して行う。
一方、データコピーが行われていなければ(ステップS11のNo)、グループ内に両方のスライスがあるセグメントが無くなったかデータ移動が行えなくなったと判断して、処理を終了する。
このように、分散データの移動処理では、一度に1つの分散データを移動する。移動対象の分散データが複数存在する場合には、この処理が複数回繰り返される。
なお、分散データの移動処理の結果は、各ストレージノード100,200,300,400のデータ管理部140とアクセスノード600の論理ボリュームアクセス制御部610とに通知される。
次に、分散データの移動処理について具体例を用いて説明する。
図10は、分散データの移動処理の具体例を説明する図である。
図10(a)に示す例では、まず、スライス224のプライマリスライスP4の分散データをスライス423に移動し、スライス423をプライマリスライスP4とする。
次に、スライス425のプライマリスライスP2の分散データをスライス224に移動し、スライス224をプライマリスライスP2とする。
次に、スライス125のプライマリスライスP6の分散データをスライス425に移動し、スライス425をプライマリスライスP6とする。これにより、図10(b)に示すように、グループAおよびグループBそれぞれにおいて、分散データと冗長分散データとが同一グループ内に存在しないように、分散データおよび冗長分散データとが割り当てられる。
次に、分散ストレージシステムの初期設定の例として、ストレージ装置110,210,310,410の代わりに、データが格納されていないストレージ装置1110,1210,1310,1410をストレージノード100〜400に接続してシステムの運用を行う場合について説明する。
この場合についてもまず、グループ分けを行う。グループ分けについては前述した方法と同様にして行うことができるため、以下、論理ボリューム管理部510の論理ボリュームの新規割当方法について説明する。
図11は、グループに分けた後でストレージノードに論理ボリュームを新規に割り当てる様子を示す図である。
図11では、グループC、Dの2つのグループが作成されている。ストレージノードは省略するが、グループCはストレージ装置1110,1210で構成されており、グループDはストレージ装置1310,1410で構成されている。
ストレージ装置1110,1210,1310,1410を配下に置くストレージノードには、個々のストレージノードの識別のためにそれぞれ「SN−E」、「SN−F」、「SN−G」、「SN−H」というノード識別子が付与されている。
まず、論理ボリューム管理部510は、用意されたプライマリスライスP11〜P16をグループに関係なく、空スライスのあるストレージ装置1110〜1410に割り当てる。
図11(a)では、ストレージ装置1110のスライス1121、1123にそれぞれプライマリスライスP11、P15を割り当て、ストレージ装置1210のスライス1223にプライマリスライスP12を割り当て、ストレージ装置1310のスライス1323にプライマリスライスP13を割り当て、ストレージ装置1410のスライス1423、1425それぞれにプライマリスライスP14、P16を割り当てている。
そして、プライマリスライスが属するグループとは別のグループのストレージ装置の空スライスにセカンダリスライスを割り当てる。
グループCには、プライマリスライスP11、P12、P15が割り当てられているため、グループDにセカンダリスライスS11、S12、S15を割り当てる。図11(b)では、ストレージ装置1310のスライス1322、1325にそれぞれセカンダリスライスS11、S12を割り当て、ストレージ装置1410のスライス1421にセカンダリスライスS15を割り当てる。一方、グループDには、プライマリスライスP13、P14、P16が割り当てられているため、グループCにセカンダリスライスS13,S14,S16を割り当てる。図11(b)では、ストレージ装置1110のスライス1124にセカンダリスライスS14を割り当て、ストレージ装置1210のスライス1222、1224にそれぞれセカンダリスライスS13、S16を割り当てる。
また、上述した方法の他に、コントロールノード500は、プライマリスライスP11〜P16をグループCのストレージ装置1110、1210のみに割り当て、セカンダリスライスS11〜S16をグループDのストレージ装置1310、1410のみに割り当てるようにしてもよい。
このようにグループ分けすることで、一方のグループを構成するストレージ装置が同時に故障した場合においても、他方のグループを構成するストレージ装置からデータを取り出すことができるため、安全性、信頼性を向上させることができる。
以上述べたように、本実施の形態の分散ストレージシステムによれば、論理ボリューム管理部510が、ストレージ装置110〜410を属性によって2つにグループ分けし、そのグループ間でセグメントを構成するようにしたので、同じグループのストレージ装置が全て壊れても、データの消滅を容易に防止することができる。
また、システム(ストレージノード)の運用中にグループ分けの解除、再構成も容易である。
また、システム(ストレージノード)の運用中に新たなストレージ装置が加わった場合も容易にグループを再構成することができる。
以上、本発明のストレージ管理プログラム、ストレージ管理方法およびストレージ管理装置を、図示の実施の形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物や工程が付加されていてもよい。
また、本発明は、前述した実施の形態のうちの、任意の2以上の構成(特徴)を組み合わせたものであってもよい。
また、本発明は、グループが運用される前に運用されていた(グループの概念を有していない)システムにおいても容易に適用することができる。
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、コントロールノード500が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等が挙げられる。磁気記録装置としては、例えば、ハードディスク装置(HDD)、フレキシブルディスク(FD)、磁気テープ等が挙げられる。光ディスクとしては、例えば、DVD(Digital Versatile Disc)、DVD−RAM(Random Access Memory)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)等が挙げられる。光磁気記録媒体としては、例えば、MO(Magneto-Optical disk)等が挙げられる。
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CD−ROM等の可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
ストレージ管理プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
上記については単に本発明の原理を示すものである。さらに、多数の変形、変更が当業者にとって可能であり、本発明は上記に示し、説明した正確な構成および応用例に限定されるものではなく、対応するすべての変形例および均等物は、添付の請求項およびその均等物による本発明の範囲とみなされる。
符号の説明
1 コンピュータ
2 属性収集手段
3a〜3d,110,210,310,410,1110,1210,1310,1410 ストレージ装置
4 グループ作成手段
5 データ割り当て手段
6a〜6d,100,200,300,400 ストレージノード
21,22,23 端末装置
130,230,330,430 データアクセス部
140,240,340,440 データ管理部
150,250,350,450 スライス管理情報記憶部
151,251,351,451 スライス管理情報
160,260,360,460 属性管理部
500 コントロールノード
510 論理ボリューム管理部
520 スライス管理情報群記憶部
530 属性収集部
540 グループ作成部
600 アクセスノード
610 論理ボリュームアクセス制御部
700 論理ボリューム
710,720,730,740 セグメント
711,721,731,741 プライマリスライス
712,722,732,742 セカンダリスライス

Claims (18)

  1. データを分散した分散データおよび前記データと同一内容の冗長データを分散した冗長分散データの分散管理を行うために設けられ、それぞれネットワーク経由で接続された複数のストレージノード、を備える分散ストレージシステムの前記ストレージノードにストレージノードを管理させるためのストレージ管理プログラムにおいて、
    コンピュータを、
    前記ストレージノードの属性を収集する属性収集手段、
    前記属性収集手段により収集された前記ストレージノードの属性に基づいて、前記ストレージノードが属する少なくとも2つのグループを作成するグループ作成手段、
    前記グループ作成手段により作成された前記各グループ内において、前記分散データと同一の前記冗長分散データが存在しないように、前記分散データおよび前記冗長分散データを前記各グループに割り当てるデータ割り当て手段、
    として機能させることを特徴とするストレージ管理プログラム。
  2. 前記属性収集手段は、前記ストレージノードが管理する前記ストレージノードの属性を収集することを特徴とする請求の範囲第1項記載のストレージ管理プログラム。
  3. 前記データ割り当て手段は、空の前記データの記憶領域の存在する前記ストレージノードに前記分散データを割り当て、
    前記分散データを割り当てた前記ストレージノードが属するグループとは別のグループの空の前記データの記憶領域の存在する前記ストレージノードに、割り当てた前記分散データと同一の前記冗長分散データを割り当てることを特徴とする請求の範囲第1項記載のストレージ管理プログラム。
  4. 前記データ割り当て手段は、前記ストレージノードに格納された前記分散データの位置情報と前記冗長分散データの位置情報とを記憶する管理情報に基づいて、割り当てを行うことを特徴とする請求の範囲第1項記載のストレージ管理プログラム。
  5. 前記コンピュータを、さらに、全ての前記ストレージノードの前記管理情報を記憶する管理情報記憶手段、として機能させ、前記データ割り当て手段は、前記管理情報記憶手段から前記分散データの位置情報および前記冗長分散データの位置情報を取得することを特徴とする請求の範囲第4項記載のストレージ管理プログラム。
  6. 前記属性収集手段は、ハートビート行う通信路を介して前記属性を収集することを特徴とする請求の範囲第1項記載のストレージ管理プログラム。
  7. データを分散した分散データおよび前記データと同一内容の冗長データを分散した冗長分散データの分散管理を行うために設けられ、それぞれネットワーク経由で接続された複数のストレージノード、を備える分散ストレージシステムの前記ストレージノードにストレージノードを管理させるためのストレージ管理方法において、
    属性収集手段が、前記ストレージノードの属性を収集し、
    グループ作成手段が、前記属性収集手段により収集された前記ストレージノードの属性に基づいて、前記ストレージノードが属する少なくとも2つのグループを作成し、
    データ割り当て手段が、前記グループ作成手段により作成された前記各グループ内において、前記分散データと同一の前記冗長分散データが存在しないように、前記分散データおよび前記冗長分散データを前記各グループに割り当てる、
    ことを特徴とするストレージ管理方法。
  8. 前記属性収集手段は、前記ストレージノードが管理する前記ストレージノードの属性を収集することを特徴とする請求の範囲第7項記載のストレージ管理方法。
  9. 前記データ割り当て手段は、空の前記データの記憶領域の存在する前記ストレージノードに前記分散データを割り当て、
    前記分散データを割り当てた前記ストレージノードが属するグループとは別のグループの空の前記データの記憶領域の存在する前記ストレージノードに、割り当てた前記分散データと同一の前記冗長分散データを割り当てることを特徴とする請求の範囲第7項記載のストレージ管理方法。
  10. 前記データ割り当て手段は、前記ストレージノードに格納された前記分散データの位置情報と前記冗長分散データの位置情報とを記憶する管理情報に基づいて、割り当てを行うことを特徴とする請求の範囲第7項記載のストレージ管理方法。
  11. 前記コンピュータを、さらに、全ての前記ストレージノードの前記管理情報を記憶する管理情報記憶手段、として機能させ、前記データ割り当て手段は、前記管理情報記憶手段から前記分散データの位置情報および前記冗長分散データの位置情報を取得することを特徴とする請求の範囲第10項記載のストレージ管理方法。
  12. 前記属性収集手段は、ハートビート行う通信路を介して前記属性を収集することを特徴とする請求の範囲第7項記載のストレージ管理方法。
  13. データを分散した分散データおよび前記データと同一内容の冗長データを分散した冗長分散データの分散管理を行うために設けられ、それぞれネットワーク経由で接続された複数のストレージノード、を備える分散ストレージシステムの前記ストレージノードにストレージノードを管理させるためのストレージ管理装置において、
    前記ストレージノードの属性を収集する属性収集手段と、
    前記属性収集手段により収集された前記ストレージノードの属性に基づいて、前記ストレージノードが属する少なくとも2つのグループを作成するグループ作成手段と、
    前記グループ作成手段により作成された前記各グループ内において、前記分散データと同一の前記冗長分散データが存在しないように、前記分散データおよび前記冗長分散データを前記各グループに割り当てるデータ割り当て手段と、
    を有することを特徴とするストレージ管理装置。
  14. 前記属性収集手段は、前記ストレージノードが管理する前記ストレージ装置の属性を収集することを特徴とする請求の範囲第13項記載のストレージ管理装置。
  15. 前記データ割り当て手段は、空の前記データの記憶領域の存在する前記ストレージノードに前記分散データを割り当て、
    前記分散データを割り当てた前記ストレージノードが属するグループとは別のグループの空の前記データの記憶領域の存在する前記ストレージノードに、割り当てた前記分散データと同一の前記冗長分散データを割り当てることを特徴とする請求の範囲第13項記載のストレージ管理装置。
  16. 前記データ割り当て手段は、前記ストレージノードに格納された前記分散データの位置情報と前記冗長分散データの位置情報とを記憶する管理情報に基づいて、割り当てを行うことを特徴とする請求の範囲第13項記載のストレージ管理装置。
  17. 前記コンピュータを、さらに、全ての前記ストレージノードの前記管理情報を記憶する管理情報記憶手段、として機能させ、前記データ割り当て手段は、前記管理情報記憶手段から前記分散データの位置情報および前記冗長分散データの位置情報を取得することを特徴とする請求の範囲第16項記載のストレージ管理装置。
  18. 前記属性収集手段は、ハートビート行う通信路を介して前記属性を収集することを特徴とする請求の範囲第13項記載のストレージ管理装置。
JP2009505040A 2007-03-20 2007-03-20 ストレージ管理プログラム、ストレージ管理方法、ストレージ管理装置およびストレージシステム Expired - Fee Related JP5158074B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2007/055740 WO2008114441A1 (ja) 2007-03-20 2007-03-20 ストレージ管理プログラム、ストレージ管理方法およびストレージ管理装置

Publications (2)

Publication Number Publication Date
JPWO2008114441A1 true JPWO2008114441A1 (ja) 2010-07-01
JP5158074B2 JP5158074B2 (ja) 2013-03-06

Family

ID=39765562

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009505040A Expired - Fee Related JP5158074B2 (ja) 2007-03-20 2007-03-20 ストレージ管理プログラム、ストレージ管理方法、ストレージ管理装置およびストレージシステム

Country Status (3)

Country Link
US (1) US8429369B2 (ja)
JP (1) JP5158074B2 (ja)
WO (1) WO2008114441A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015149076A (ja) * 2015-03-04 2015-08-20 株式会社日立製作所 管理装置、管理システム、およびデータ管理方法

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5228988B2 (ja) * 2009-02-23 2013-07-03 富士通株式会社 割当制御プログラム及び割当制御装置
US8464133B2 (en) * 2009-10-30 2013-06-11 Cleversafe, Inc. Media content distribution in a social network utilizing dispersed storage
FR2961924A1 (fr) * 2010-06-29 2011-12-30 France Telecom Gestion du lieu de stockage de donnees dans un systeme de stockage distribue
JP5614182B2 (ja) * 2010-09-02 2014-10-29 富士通株式会社 データ割振り装置、データ割振り方法及びデータ割振りプログラム
JP5637791B2 (ja) * 2010-09-30 2014-12-10 株式会社日立製作所 計算機システム及びそのデータ処理方法
US9229823B2 (en) * 2011-08-17 2016-01-05 International Business Machines Corporation Storage and retrieval of dispersed storage network access information
US9785491B2 (en) * 2011-10-04 2017-10-10 International Business Machines Corporation Processing a certificate signing request in a dispersed storage network
JP5900096B2 (ja) 2012-03-28 2016-04-06 富士通株式会社 レプリケーションシステム、レプリケーションプログラム及びレプリケーション構成の再構築方法
US9069835B2 (en) * 2012-05-21 2015-06-30 Google Inc. Organizing data in a distributed storage system
US9774676B2 (en) 2012-05-21 2017-09-26 Google Inc. Storing and moving data in a distributed storage system
US9298576B2 (en) 2012-06-04 2016-03-29 Google Inc. Collecting processor usage statistics
US9195611B2 (en) 2012-06-04 2015-11-24 Google Inc. Efficiently updating and deleting data in a data storage system
US9449006B2 (en) 2012-06-04 2016-09-20 Google Inc. Method and system for deleting obsolete files from a file system
US9659038B2 (en) 2012-06-04 2017-05-23 Google Inc. Efficient snapshot read of a database in a distributed storage system
WO2013184712A2 (en) 2012-06-04 2013-12-12 Google Inc. Systems and methods of increasing database access concurrency using granular timestamps
US9230000B1 (en) 2012-06-04 2016-01-05 Google Inc. Pipelining Paxos state machines
JP6256461B2 (ja) 2013-02-15 2018-01-10 日本電気株式会社 情報処理装置
JP6089884B2 (ja) 2013-03-29 2017-03-08 富士通株式会社 情報処理システム,情報処理装置,情報処理装置の制御プログラム,及び情報処理システムの制御方法
US10459892B2 (en) 2014-04-23 2019-10-29 Qumulo, Inc. Filesystem hierarchical aggregate metrics
JP5963274B2 (ja) * 2014-05-16 2016-08-03 Necフィールディング株式会社 コンピュータ、バックアップシステム、バックアップ方法、および、プログラム
JP6567683B2 (ja) * 2015-10-16 2019-08-28 国立大学法人東北大学 情報処理システム、情報処理装置、情報処理方法、及び、プログラム
US10977124B2 (en) * 2016-01-07 2021-04-13 Hitachi, Ltd. Distributed storage system, data storage method, and software program
JP6905611B2 (ja) * 2017-11-30 2021-07-21 株式会社日立製作所 記憶システム及びその制御方法
US11360936B2 (en) 2018-06-08 2022-06-14 Qumulo, Inc. Managing per object snapshot coverage in filesystems
US10795796B1 (en) 2020-01-24 2020-10-06 Qumulo, Inc. Predictive performance analysis for file systems
US11151001B2 (en) 2020-01-28 2021-10-19 Qumulo, Inc. Recovery checkpoints for distributed file systems
US11775481B2 (en) 2020-09-30 2023-10-03 Qumulo, Inc. User interfaces for managing distributed file systems
US11157458B1 (en) 2021-01-28 2021-10-26 Qumulo, Inc. Replicating files in distributed file systems using object-based data storage
US11461241B2 (en) 2021-03-03 2022-10-04 Qumulo, Inc. Storage tier management for file systems
US11567660B2 (en) 2021-03-16 2023-01-31 Qumulo, Inc. Managing cloud storage for distributed file systems
US11132126B1 (en) 2021-03-16 2021-09-28 Qumulo, Inc. Backup services for distributed file systems in cloud computing environments
KR102645033B1 (ko) * 2021-04-30 2024-03-07 계명대학교 산학협력단 데이터 분산 저장 방법 및 상기 방법을 수행하는 컴퓨팅 장치
US11669255B2 (en) 2021-06-30 2023-06-06 Qumulo, Inc. Distributed resource caching by reallocation of storage caching using tokens and agents with non-depleted cache allocations
US11354273B1 (en) * 2021-11-18 2022-06-07 Qumulo, Inc. Managing usable storage space in distributed file systems
US11599508B1 (en) 2022-01-31 2023-03-07 Qumulo, Inc. Integrating distributed file systems with object stores
US11960510B2 (en) * 2022-04-19 2024-04-16 Dell Products L.P. Data movement from data storage clusters
US11722150B1 (en) 2022-09-28 2023-08-08 Qumulo, Inc. Error resistant write-ahead log
US11729269B1 (en) 2022-10-26 2023-08-15 Qumulo, Inc. Bandwidth management in distributed file systems
US11966592B1 (en) 2022-11-29 2024-04-23 Qumulo, Inc. In-place erasure code transcoding for distributed file systems
US11921677B1 (en) 2023-11-07 2024-03-05 Qumulo, Inc. Sharing namespaces across file system clusters
US11934660B1 (en) 2023-11-07 2024-03-19 Qumulo, Inc. Tiered data storage with ephemeral and persistent tiers

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003316633A (ja) * 2002-04-23 2003-11-07 Hitachi Ltd ファイル転送方法およびシステム
JP2004126716A (ja) * 2002-09-30 2004-04-22 Fujitsu Ltd 広域分散ストレージシステムを利用したデータ格納方法、その方法をコンピュータに実現させるプログラム、記録媒体、及び広域分散ストレージシステムにおける制御装置
JP2004519754A (ja) * 2000-09-06 2004-07-02 ユニシス コーポレイシヨン データの整合性を保証するための方法および装置
JP2006099748A (ja) * 2004-08-30 2006-04-13 Hitachi Ltd ストレージシステム及びデータ再配置制御装置。
JP2006309318A (ja) * 2005-04-26 2006-11-09 Hitachi Ltd ストレージ管理システム、ストレージ管理サーバ、データ再配置制御方法およびデータ再配置制御プログラム
JP2007018407A (ja) * 2005-07-11 2007-01-25 Hitachi Ltd データ複製システム

Family Cites Families (6)

* 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 ディスクアレイ
JP2003076592A (ja) * 2001-09-04 2003-03-14 Hitachi Ltd データ格納システム
JP2005062928A (ja) * 2003-08-11 2005-03-10 Hitachi Ltd 複数のサイトにリモートコピーを行うシステム
JP4519563B2 (ja) * 2004-08-04 2010-08-04 株式会社日立製作所 記憶システム及びデータ処理システム
JP4383321B2 (ja) * 2004-11-09 2009-12-16 富士通株式会社 記憶制御装置および外部記憶装置
US7769975B2 (en) * 2004-11-15 2010-08-03 International Business Machines Corporation Method for configuring volumes in a storage system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004519754A (ja) * 2000-09-06 2004-07-02 ユニシス コーポレイシヨン データの整合性を保証するための方法および装置
JP2003316633A (ja) * 2002-04-23 2003-11-07 Hitachi Ltd ファイル転送方法およびシステム
JP2004126716A (ja) * 2002-09-30 2004-04-22 Fujitsu Ltd 広域分散ストレージシステムを利用したデータ格納方法、その方法をコンピュータに実現させるプログラム、記録媒体、及び広域分散ストレージシステムにおける制御装置
JP2006099748A (ja) * 2004-08-30 2006-04-13 Hitachi Ltd ストレージシステム及びデータ再配置制御装置。
JP2006309318A (ja) * 2005-04-26 2006-11-09 Hitachi Ltd ストレージ管理システム、ストレージ管理サーバ、データ再配置制御方法およびデータ再配置制御プログラム
JP2007018407A (ja) * 2005-07-11 2007-01-25 Hitachi Ltd データ複製システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015149076A (ja) * 2015-03-04 2015-08-20 株式会社日立製作所 管理装置、管理システム、およびデータ管理方法

Also Published As

Publication number Publication date
US20090327642A1 (en) 2009-12-31
US8429369B2 (en) 2013-04-23
WO2008114441A1 (ja) 2008-09-25
JP5158074B2 (ja) 2013-03-06

Similar Documents

Publication Publication Date Title
JP5158074B2 (ja) ストレージ管理プログラム、ストレージ管理方法、ストレージ管理装置およびストレージシステム
JP5124551B2 (ja) ボリューム割り当てを管理する計算機システム及びボリューム割り当て管理方法
US8271761B2 (en) Storage system and management method thereof
JP5412882B2 (ja) 論理ボリューム構成情報提供プログラム、論理ボリューム構成情報提供方法、および論理ボリューム構成情報提供装置
JP5099128B2 (ja) ストレージ管理プログラム、ストレージ管理装置およびストレージ管理方法
JP5381336B2 (ja) 管理プログラム、管理装置および管理方法
JP4963892B2 (ja) 仮想ストレージシステムの構成要素となることが可能なストレージシステムの制御装置
JP4519179B2 (ja) 論理ボリューム管理プログラム、論理ボリューム管理装置、論理ボリューム管理方法、および分散ストレージシステム
US8386707B2 (en) Virtual disk management program, storage device management program, multinode storage system, and virtual disk managing method
US8484413B2 (en) Recording medium storing control program for decentralized data, storage management program, control node, and disk node
US20090150629A1 (en) Storage management device, storage system control device, storage medium storing storage management program, and storage system
US20120124285A1 (en) Virtual disk drive system and method with cloud-based storage media
US8032784B2 (en) Duplication combination management program, duplication combination management apparatus, and duplication combination management method
CN103946846A (zh) 使用虚拟驱动作为用于raid组的热备用
JP2009151519A (ja) ストレージ管理装置、ストレージ管理プログラムおよびストレージシステム
JP5104855B2 (ja) 負荷分散プログラム、負荷分散方法、及びストレージ管理装置
US7849264B2 (en) Storage area management method for a storage system
US7676644B2 (en) Data processing system, storage apparatus and management console
JP5425117B2 (ja) 計算機システム、及びその管理方法、並びにプログラム
JP5924117B2 (ja) コンピュータ、データ格納方法、データ格納プログラム及び情報処理システム
JP5640618B2 (ja) 管理プログラム、管理装置、および管理方法
JPWO2008126169A1 (ja) ストレージ管理プログラム、ストレージ管理方法およびストレージ管理装置
JPWO2018087823A1 (ja) コンテナ型仮想コンピュータ管理装置、方法、及びコンピュータプログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110614

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110815

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120327

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120528

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121126

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20151221

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees