JP6260401B2 - 情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラム - Google Patents

情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラム Download PDF

Info

Publication number
JP6260401B2
JP6260401B2 JP2014069110A JP2014069110A JP6260401B2 JP 6260401 B2 JP6260401 B2 JP 6260401B2 JP 2014069110 A JP2014069110 A JP 2014069110A JP 2014069110 A JP2014069110 A JP 2014069110A JP 6260401 B2 JP6260401 B2 JP 6260401B2
Authority
JP
Japan
Prior art keywords
data
information
magnetic disk
disk device
disk
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.)
Expired - Fee Related
Application number
JP2014069110A
Other languages
English (en)
Other versions
JP2015191498A (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
Priority to JP2014069110A priority Critical patent/JP6260401B2/ja
Priority to US14/636,622 priority patent/US9395930B2/en
Publication of JP2015191498A publication Critical patent/JP2015191498A/ja
Application granted granted Critical
Publication of JP6260401B2 publication Critical patent/JP6260401B2/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
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/20Driving; Starting; Stopping; Control thereof
    • G11B19/209Driving; Starting; Stopping; Control thereof in multiple disk arrays, e.g. spindle synchronisation in RAID systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラムに関する。
ディスク装置から削除するデータの情報が登録された管理表を参照してデータを上書きにより削除し、削除するデータを示す情報が管理表にない状態でアクセスが所定時間ない場合、省エネルギーモードに移行する手法が提案されている(例えば、特許文献1参照)。
ストレージシステムにおいて、省電力モード中の論理ボリュームの削除が要求された場合、要求を実行待ちのタスクに登録し、通常モードに復帰後に、登録されたタスクにしたがって論理ボリュームを削除する手法が提案されている(例えば、特許文献2参照)。
ディスク装置に掛かる負荷の状況を監視し、負荷が閾値以下の場合、ディスク装置を省電力モードに移行させる手法が提案されている(例えば、特許文献3参照)。
特開2005−107856号公報 特開2009−238159号公報 特開2002−297320号公報
例えば、省電力モードの移行によりスピンダウンした磁気ディスク装置が記憶したデータの削除は、磁気ディスク装置をスピンアップして通常モードに復帰した後、実行される。データを削除する削除要求が繰り返し発生し、スピンアップとスピンダウンとが頻繁に行われると、ディスクの劣化は進む。
本件開示の情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラムは、磁気ディスク装置に記憶されたデータの削除時にディスクのスピンアップ及びスピンダウンの頻度を下げることで、ディスクの劣化を抑制することを目的とする。
一つの観点によれば、複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置と、情報処理装置を管理する管理装置と、管理装置に接続された端末装置を有する情報処理システムにおいて、管理装置は、各磁気ディスク装置群を識別する磁気ディスク装置群識別情報と各情報処理装置を識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報と、所定の関数に基づき要求と各磁気ディスク装置群識別情報とを対応付けた要求対応表とを記憶する管理記憶部と、端末装置からの要求を、要求対応表に基づき、複数の磁気ディスク装置群のいずれかに振り分ける管理制御部とを有し、複数の情報処理装置の各々は、複数のディスク装置に格納するデータ毎にデータを識別するデータ識別情報とデータを格納するディスク装置とデータのサイズとを対応付けたデータ管理情報と、複数の磁気ディスク装置群がそれぞれ含む複数のディスク装置がモータの回転状態を維持した活性磁気ディスク装置又はモータの回転を停止させた複数の非活性磁気ディスク装置のいずれであるかを指定するディスクグループ状態情報と、管理装置を介して振り分けられた端末装置からの要求に含まれる複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、削除対象のデータのサイズとを含む削除データ管理情報とを記憶する記憶部と、管理装置を介して振り分けられた端末装置からの要求に基づき、複数のディスク装置に格納するデータのいずれかを変更する場合、削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第1閾値を超えている場合、削除データ管理情報が指定する削除対象のデータを全て削除し、削除データ管理情報に含まれる削除データ指定情報を全て消去するとともにデータ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるようにディスクグループ状態情報を更新するディスク制御部とを有する。
別の観点によれば、複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置と、情報処理装置を管理する管理装置と、管理装置に接続された端末装置を有する情報処理システムの制御方法は、管理装置が有する管理記憶部が、各磁気ディスク装置群を識別する磁気ディスク装置群識別情報と各情報処理装置を識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報と、所定の関数に基づき要求と各磁気ディスク装置群識別情報とを対応付けた要求対応表とを記憶し、管理装置が有する管理制御部が、端末装置からの要求を、要求対応表に基づき、複数の磁気ディスク装置群のいずれかに振り分け、複数の情報処理装置の各々が有する記憶部が、複数のディスク装置に格納するデータ毎にデータを識別するデータ識別情報とデータを格納するディスク装置とデータのサイズとを対応付けたデータ管理情報と、複数の磁気ディスク装置群がそれぞれ含む複数のディスク装置がモータの回転状態を維持した活性磁気ディスク装置又はモータの回転を停止させた複数の非活性磁気ディスク装置のいずれであるかを指定するディスクグループ状態情報と、管理装置を介して振り分けられた端末装置からの要求に含まれる複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、削除対象のデータのサイズとを含む削除データ管理情報とを記憶し、複数の情報処理装置の各々が有するディスク制御部が、管理装置を介して振り分けられた端末装置からの要求に基づき、複数のディスク装置に格納するデータのいずれかを変更する場合、削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第1閾値を超えている場合、削除データ管理情報が指定する削除対象のデータを全て削除し、削除データ管理情報に含まれる削除データ指定情報を全て消去するとともにデータ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるようにディスクグループ状態情報を更新する。
さらなる別の観点によれば、複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置と、情報処理装置を管理する管理装置と、管理装置に接続された端末装置を有し、管理装置が、各磁気ディスク装置群を識別する磁気ディスク装置群識別情報と各情報処理装置を識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報と、所定の関数に基づき要求と各磁気ディスク装置群識別情報とを対応付けた要求対応表とを記憶する管理記憶部と、端末装置からの要求を、要求対応表に基づき、複数の磁気ディスク装置群のいずれかに振り分ける管理制御部とを有する情報処理システムにおける情報処理装置の制御プログラムは、複数の情報処理装置の各々が有する記憶部に、複数のディスク装置に格納するデータ毎にデータを識別するデータ識別情報とデータを格納するディスク装置とデータのサイズとを対応付けたデータ管理情報と、複数の磁気ディスク装置群がそれぞれ含む複数のディスク装置がモータの回転状態を維持した活性磁気ディスク装置又はモータの回転を停止させた複数の非活性磁気ディスク装置のいずれであるかを指定するディスクグループ状態情報と、管理装置を介して振り分けられた端末装置からの要求に含まれる複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、削除対象のデータのサイズとを含む削除データ管理情報とを記憶させ、複数の情報処理装置の各々が有するディスク制御部に、管理装置を介して振り分けられた端末装置からの要求に基づき、複数のディスク装置に格納するデータのいずれかを変更する場合、削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第1閾値を超えている場合、削除データ管理情報が指定する削除対象のデータを全て削除し、削除データ管理情報に含まれる削除データ指定情報を全て消去するとともにデータ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるようにディスクグループ状態情報を更新させる。
本件開示の情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラムは、磁気ディスク装置に記憶されたデータの削除時にディスクのスピンアップ及びスピンダウンの頻度を下げることで、ディスクの劣化を抑制することができる。
情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラムの一実施形態を示す図である。 図1に示すハッシュ表の例を示す図である。 図2に示すハッシュ表により示されるハッシュ空間の例を示す図である。 図1に示すディスクプールのハッシュリングの例を示す図である。 図1に示すサーバ表の例を示す図である。 図1に示すディスクグループ表の例を示す図である。 図1に示すデータ管理表の例を示す図である。 図1に示す削除表の例を示す図である。 図1に示すフロントエンドサーバの動作の例を示す図である。 図9に示す書き込み処理及び削除処理の例を示す図である。 図9に示す読み出し処理の例を示す図である。 図10において書き込み要求を受信したストレージサーバが実行する書き込み処理の例を示す図である。 図12に示す新規書き込み処理の例を示す図である。 図10において削除要求を受信したストレージサーバが実行する削除処理の例を示す図である。 図12及び図14に示すファイルの削除処理の例を示す図である。 図15によるデータの削除処理におけるディスクグループ表に格納される情報の変化の例を示す図である。 図12及び図14に示すファイルの削除処理の別の例を示す図である。 図10において読み出し要求を受信したストレージサーバが実行する読み出し処理の例を示す図である。 情報処理システムの別の例を示す図である。 情報処理システムのさらなる別の例を示す図である。 情報処理システムのさらなる別の例を示す図である。 図21に示すハッシュ表の例を示す図である。 図21に示すディスクプールのハッシュリングの例を示す図である。
以下、図面を用いて実施形態を説明する。
図1は、情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラムの一実施形態を示す。
図1に示す実施形態の情報処理システムSYS1は、フロントエンドサーバFESV、ストレージサーバSSV(SSVa、SSVb、SSVc)、ディスクプールDP(DPa、DPb、DPc)及び端末装置TMを有する。例えば、フロントエンドサーバFESVは、ネットワークスイッチNSWを介してストレージサーバSSVa、SSVb、SSVcに接続される。例えば、フロントエンドサーバFESVが、LAN(Local Area Network)を介してストレージサーバSSVa、SSVb、SSVcに接続される場合、ネットワークスイッチNSWは、レイヤ2スイッチである。又、フロントエンドサーバFESVは、インターネット又はイントラネット等のネットワークNWを介して端末装置TMに接続される。なお、フロントエンドサーバFESVは、ネットワークスイッチNSWを介さずにストレージサーバSSVに接続されてもよく、ネットワークNWを介さずに端末装置TMに接続されてもよい。
端末装置TMは、情報処理システムSYS1をネットワークストレージシステムとして使用するアプリケーションプログラムを実行するコンピュータ装置に含まれ、あるいは、アプリケーションプログラムを使用するユーザのコンピュータに含まれる。なお、情報処理システムSYS1は、ネットワークNWを介して複数の端末装置TMに接続されてもよい。例えば、情報処理システムSYS1は、データをオブジェクトして管理するオブジェクトストレージサービス又はオブジェクトストレージにより構築されるクラウドストレージサービスに使用される。
ディスクプールDPaは、複数のディスク装置A(A0−A19)をそれぞれ含む複数の磁気ディスク装置群Ga(Ga0、Ga1、Ga2、Ga3)を有する。ディスクプールDPbは、複数のディスク装置B(B0−B19)をそれぞれ含む複数の磁気ディスク装置群Gb(Gb0、Gb1、Gb2、Gb3)を有する。ディスクプールDPcは、複数のディスク装置C(C0−C19)をそれぞれ含む複数の磁気ディスク装置群Gc(Gc0、Gc1、Gc2、Gc3)を有する。
なお、ディスクプールDPは、磁気ディスク装置群Ga、Gb、Gcに共通に設けられてもよい。又、磁気ディスク装置群Gaは、ストレージサーバSVVaに含まれてもよく、磁気ディスク装置群Gbは、ストレージサーバSVVbに含まれてもよく、磁気ディスク装置群Gcは、ストレージサーバSVVcに含まれてもよい。各磁気ディスク装置群Ga、Gb、Gcの数は、4個に限定されず、ディスク装置A、B、Cの数は、20個に限定されず、各磁気ディスク装置群Ga、Gb、Gcに含まれるディスク装置A、B、Cの数は、5個に限定されない。
例えば、図1に示す情報処理システムSYS1は、データをディスクプールDPa、DPb、DPc内のディスク装置A、B、Cのそれぞれに格納する。すなわち、情報処理システムSYS1は、ディスクプールDPa、DPb、DPcに3つのデータ(レプリカデータ)を冗長に保持する。
太い実線で示すディスク装置A4−A7、B4−B7、C4−C7は、ディスク(プラッタとも称される)を回転させるスピンドルモータの回転状態を維持したスピンアップ状態であることを示す。情報処理システムSYS1は、ディスク装置群A0−A19、B0−B19、C0−C19のそれぞれについて、データの書き込み対象であるアクティブ状態のディスク装置と、データの書き込みの非対象であるインアクティブ状態のディスク装置とに分類する。アクティブ状態のディスク装置は、スピンアップ状態であり、なおかつデータを書き込む準備が完了しているものとする。例えば、アクティブ状態のディスク装置は、ファイルシステム上にマウントが完了され、オペレーティングシステムによるファイルのアクセスが可能である。すなわち、アクティブ状態であるディスク装置A4−A7、B4−B7、C4−C7は、スピンアップ状態であり、なおかつファイルシステム上にマウントされている。細い破線で示すディスク装置A8−A19、B8−B19、C8−B19は、スピンドルモータの回転を停止したスピンダウン状態である。スピンダウン状態のディスク装置A8−A19、B8−B19、C8−B19は、ファイルシステムからアンマウントされたインアクティブ状態である。太い破線で示す磁気ディスク装置A0−A3、B0−B3、C0−C3は、所定量(図13に示す第2閾値)を超えるデータが格納され、スピンダウン状態に設定されたことを示す。
例えば、アクティブ状態のディスク装置A4−A7に所定量のデータが格納された場合、ディスク装置A4−A7はインアクティブ状態に設定され、ディスクA8−A11がアクティブ状態に設定される。ディスク装置A0−A19をアクティブ状態に設定する順序は、図6及び図17で説明する。この後、端末装置TMから送信されるデータは、ディスク装置A8−A11に格納される。アクティブ状態のディスク装置B4−B7、C4−C7も、ディスク装置A4−A7と同様に、所定量のデータが格納された場合インアクティブ状態に設定される。アクティブ状態のディスク装置A、B、Cの数を制限することで、情報処理システムSYS1の消費電力を抑制することができる。
フロントエンドサーバFESVは、端末装置TMからの要求に基づいて、ストレージサーバSSVを制御し、ストレージサーバSSV及びディスクプールDP内のディスク装置A、B、Cをネットワークストレージとして動作させる。端末装置TMからの要求は、データの書き込み要求、データの削除要求及びデータの読み出し要求を含む。
なお、ストレージサーバSSVは、ディスク装置A、B、Cに新たなデータを書き込む書き込み要求に基づき、データの書き込み処理を実行する。但し、ストレージサーバSSVは、ディスク装置A、B、Cが記憶するデータを書き替える書き込み要求に基づきデータの更新処理を実行する。更新処理では、ストレージサーバSSVは、データの削除処理とデータの書き込み処理とを実行する。また、ストレージサーバSSVは、ディスク装置A、B、Cが記憶するデータを削除する削除要求に基づき、データを直ぐに削除しない。ストレージサーバSSVは、削除するデータの量が所定量を超えたことに基づきデータの削除処理を実行する。ストレージサーバSSVが実行するデータの書き込み処理、データの更新処理及びデータの削除処理の例は、図13から図17に示される。
フロントエンドサーバFESVは、プロセッサCPU(Central Processing Unit)0と、ハッシュ表HATBL、サーバ表SVTBL及びプログラムPRG0が格納される領域を含むメモリMEM0とを有する。プログラムPGM0は、プロセッサCPU0により実行され、フロントエンドサーバFESVの機能を実現する。フロントエンドサーバFESVは、ストレージサーバSSVa、SSVb、SSVcを管理する管理装置の一例である。
例えば、ハッシュ表HATBLには、端末装置TMから送信されるデータに基づいて得られるハッシュ値とディスク装置A0−A19との対応付けを示す情報が格納される。例えば、フロントエンドサーバFESVは、端末装置TMから送信されるデータを識別する識別子(例えば、データのパス名やファイル名)をハッシュ関数に入力することでハッシュ値を得る。そして、フロントエンドサーバFESVは、得られたハッシュ値に基づいて、データが格納される磁気ディスク装置群Gaを決定する。例えば、磁気ディスク装置群Ga0、Ga1、Ga2、Ga3は、互いに異なるハッシュ空間に割り当てられる。同様に、磁気ディスク装置群Gb0、Gb1、Gb2、Gb3は、互いに異なるハッシュ空間に割り当てられ、磁気ディスク装置群Gc0、Gc1、Gc2、Gc3は、互いに異なるハッシュ空間に割り当てられる。ハッシュ表HATBLの例は、図2に示す。
例えば、サーバ表SVTBLには、磁気ディスク装置群Ga、Gb、Gcと、磁気ディスク装置群Ga、Gb、Gcを接続するストレージサーバSSVとの対応付けを示す情報が格納される。サーバ表SVTBLの例は、図5に示す。
各ストレージサーバSSVは、プロセッサCPU1と、ディスクグループ表DGTBL、データ管理表DMTBL、削除表DELTBL及びプログラムPRG1が格納される領域を含むメモリMEM1とを有する。プログラムPGM1は、プロセッサCPU1により実行され、各ストレージサーバSSVの機能を実現する。磁気ディスク装置群Ga、Gb、Gcを各々有するストレージサーバSSVは、情報処理装置の一例である。ストレージサーバSSVa、SSVb、SSVcは、互いに同一又は同様の構成を有するため、以下の図1の説明は、ストレージサーバSSVaについて示す。ストレージサーバSSVb、SSVcの説明は、符号”a”を符号”b”又は符号”c”に置き換えることで示される。
ディスクグループ表DGTBLには、磁気ディスク装置群Ga0−Ga3毎に、ディスク装置Aをアクティブ状態に設定する順序(アクティブ順)を示す情報と、現在のアクティブ状態のディスク装置Aを示す情報とが格納される。ディスクグループ表DGTBLの例は、図6に示す。
データ管理表TMTBLには、データを識別する情報と、データが格納されたディスク装置Aを示す情報と、データのサイズ示す情報とが、データ毎に格納される。データ管理表TMTBLの例は、図7に示す。
削除表DELTBLには、削除するデータを識別する情報と、削除するデータのサイズを示す情報とが格納される。ストレージサーバSSVaは、削除するデータを示す情報を、データが実際に削除されるまで削除表DELTBLに保持する。データ削除表DELTBLの例は、図8に示す。
図2は、図1に示すハッシュ表HATBLの例を示す。例えば、ハッシュ表HATBLは、ハッシュ関数により得られるハッシュ値のうち所定数のビットの値を示す情報と、ハッシュ値に対応する磁気ディスク装置群を示す情報とを格納する領域を含む。ハッシュ表HATBLは、ハッシュ関数等の所定の関数に基づいて、端末装置TMからの要求と磁気ディスク装置群Ga0−Ga3(又はGb0−Gb3、Gc0−Gc3)を識別する各磁気ディスク装置群識別情報とを対応付けた要求対応表の一例である。
例えば、上位の2ビットが”00b”(”b”は2進数を示す)のハッシュ値に対応するデータは、磁気ディスク装置群Ga0、Gb0、Gc0に記憶される。上位の2ビットが”01b”のハッシュ値に対応するデータは、磁気ディスク装置群Ga1、Gb1、Gc1に記憶される。上位の2ビットが”10b”のハッシュ値に対応するデータは、磁気ディスク装置群Ga2、Gb2、Gc2に記憶される。上位の2ビットが”11b”のハッシュ値に対応するデータは、磁気ディスク装置群Ga3、Gb3、Gc3に記憶される。このように、磁気ディスク装置群Ga、Gb、Gcは、共通のハッシュ関数が適用される。
なお、実際には、フロントエンドサーバFESVは、例えば、ハッシュ関数としてMD5(Message Digest 5)を用いて128ビットのハッシュ値を生成する。そして、フロントエンドサーバFESVは、ハッシュ値の上位6ビットに応じて、データの格納先を、ディスクプールDPa、DPb、DPcのそれぞれに含まれる64個のディスク装置A、B、Cのいずれかに決定する。しかしながら、説明を分かりやすくするため、ディスクプールDPa、DPb、DPcを区分するハッシュ値(すなわち、ハッシュ空間)の数は4個にしている。
なお、ハッシュ関数から出力されるハッシュ値は均等に分布するため、ハッシュ値に割り当てられた磁気ディスク装置群Ga、Gb、Gcのそれぞれは、均等にアクセスされる。このため、例えば、図1に示すディスクプールDPa内の磁気ディスク装置群Ga0、Ga1、Ga2、Ga3のそれぞれに格納されるデータの量は、ほぼ等しくなる。同様に、磁気ディスク装置群Gb0、Gb1、Gb2、Gb3のそれぞれに格納されるデータの量は、ほぼ等しくなり、磁気ディスク装置群Gc0、Gc1、Gc2、Gc3のそれぞれに格納されるデータの量は、ほぼ等しくなる。
図3は、図2に示すハッシュ表HATBLにより示されるハッシュ空間の例を示す。図3では、ハッシュ空間はハッシュリングとして示される。ディスクプールDPa、DPb、DPcのハッシュ空間は、互いに同一又は同様であるため、以下の図3の説明では、ディスクプールDPaのハッシュ空間について示す。ディスクプールDPb、DPcのハッシュ空間の説明は、符号”a”を符号”b”又は符号”c”に置き換えることで示される。なお、例えば、情報処理システムSYS1は、コンシステントハッシュ法を採用する。
例えば、図1に示すフロントエンドサーバFESVは、データを識別する識別子(例えば、データのパス名やファイル名)をハッシュ関数に入力して得られるハッシュ値に応じて、データを格納する磁気ディスク装置群Ga、Gb、Gcを求める。ディスクプールDPaにおけるデータの格納先は、図2に示すように、ハッシュ値の上位2ビットに応じて4個のハッシュ空間のいずれかに決定される。
図4は、図3に示すディスクプールDPaのハッシュリングの例を示す。ディスクプールDPaでは、状態ST(ST0、ST1、ST2、ST3、ST4)毎に、ハッシュ空間に割り当てられる磁気ディスク装置Aが変更される。すなわち、状態ST0−ST4のいずれか1つに対応するディスク装置Aは、アクティブ状態に設定され、他の状態STに対応するディスク装置Aはインアクティブ状態に設定される。図4は、図1に示すディスクプールDPaの状態を示し、網掛けで示す状態ST1に対応するディスク装置A4、A5、A6、A7は、アクティブ状態に設定され、他のディスク装置A0−A3、A8−A19は、インアクティブ状態に設定される。
アクティブ状態の状態ST1より内側の状態ST0に含まれる太い破線で示す磁気ディスク装置A0−A3は、図1と同様に、所定量を超えるデータが格納され、スピンダウン状態に設定されたことを示す。アクティブ状態の状態ST1より外側の状態ST2−ST4に含まれる細い破線で示すディスク装置A8−A19は、図1と同様に、スピンドルモータの回転を停止したスピンダウン状態であり、データを格納する領域を有することを示す。
なお、ディスクプールDPb、DPcにおいても、図4と同様に、状態ST0−ST4毎に、ハッシュ空間に割り当てられるディスク装置B、Cが変更される。ディスクプールDPbにおいてハッシュ空間に割り当てられる磁気ディスク装置Bは、図4のディスク装置の符号”A”を符号”B”に置き換えることにより示される。同様に、ディスクプールDPcにおいてハッシュ空間に割り当てられる磁気ディスク装置Cは、図4の磁気ディスク装置の符号”A”を符号”C”に置き換えることにより示される。
図5は、図1に示すサーバ表SVTBLの例を示す。サーバ表SVTBLには、情報処理システムSYS1に含まれる磁気ディスク装置群Ga、Gb、Gcの名称であるディスクグループ名と、磁気ディスク装置群Ga、Gb、Gcに接続されたストレージサーバSSVを識別する情報とが格納される。例えば、ストレージサーバSSVを識別する情報は、ネットワーク上でストレージサーバSSVを識別する番号であるIP(Internet Protocol)アドレスを含む。
サーバ表SVTBLに格納される情報は、各磁気ディスク装置群Ga、Gb、Gcを識別する磁気ディスク装置群識別情報とストレージサーバSVVを識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報の一例である。例えば、磁気ディスク装置群識別情報は、ディスクグループ名であり、磁気ディスク装置群識別情報は、IPアドレスである。フロントエンドサーバFESVは、サーバ表SVTBLを参照し、ハッシュ表HATBLにより特定した磁気ディスク装置群Ga、Gb、Gcを接続したストレージサーバSSVを求める。そして、フロントエンドサーバFESVは、求めたストレージサーバSSVに、端末装置TMから受信した書き込み要求、削除要求又は読み出し要求を送信する。
図6は、図1に示すディスクグループ表DGTBLの例を示す。図6は、ストレージサーバSSVaが有するディスクグループ表DGTBLの例を示す。ストレージサーバSSVb、SSVcが有するディスクグループ表DGTBLの例は、図6の符号”A”を符号”B”又は符号”C”に置き換え、符号”a”を符号”b”又は符号”c”に置き換えることで示される。
ディスクグループ表DGTBLは、ディスク装置A0−A19毎に、ディスクグループ名、アクティブ順、ディスクID(identification)、マウントポイント及びアクティブ番号を示す領域を含む。ディスクグループ名は、図5に示すサーバ表SVTBLと同様に、情報処理システムSYS1に含まれる磁気ディスク装置群Gaの名称である。アクティブ順は、磁気ディスク装置群Ga0−Ga3毎に割り振られ、ディスク装置Aをアクティブ状態に設定する順序を示す。例えば、アクティブ順は、図4に示す状態STの番号に対応する。
ディスクIDは、各ディスク装置A0−A19を識別する情報である。マウントポイントは、各ディスク装置A0−A19をファイルシステム上にマウントするディレクトリを示す。アクティブ番号は、アクティブ状態に設定中のディスク装置Aを磁気ディスク装置群Ga毎に示し、磁気ディスク装置群Ga0−Ga3毎に割り振られる。アクティブ番号は、アクティブ順の領域に格納された数字で示される。図6は、図1に示すディスク装置A4−A7がアクティブ状態に設定された場合(図4の状態ST1)のディスクグループ表DGTBLを示し、アクティブ状態の領域は、”1”に設定される。
ディスクグループ表DGTBLに格納される情報は、複数の磁気ディスク装置群Ga0−Ga3内のディスク装置A0−A19のそれぞれをスピンアップ状態に維持するか、スピンダウン状態に維持するかを指定するディスクグループ状態情報の一例である。スピンアップ状態は、ディスクをスピンアップし、各ディスク装置AがストレージサーバSSVaにマウントした状態である。スピンダウン状態は、各ディスク装置AがストレージサーバSSVaからアンマウントし、ディスクをスピンダウンした状態である。スピンアップ状態のディスク装置Aは、モータの回転状態を維持した活性磁気ディスク装置の一例である。スピンダウン状態のディスク装置Aは、モータの回転を停止させた非活性磁気ディスク装置の一例である。ディスクグループ表DGTBLに格納されるアクティブ順を示す情報は、スピンダウン状態のディスク装置Aをスピンアップ状態に設定する順序を指定する順序情報の一例である。
図7は、図1に示すデータ管理表DMTBLの例を示す。図7は、ストレージサーバSSVaが有するデータ管理表DMTBLの例を示す。ストレージサーバSSVb、SSVcが有するデータ管理表DMTBLの例は、図7の格納ディスクIDの領域の符号”A”を符号”B”又は符号”C”に置き換えることで示される。
データ管理表DMTBLは、ディスク装置Aに格納されたデータ毎に、データのパスを示す情報と、データが格納されたディスク装置Aを示す情報(格納ディスクID)と、データのサイズを示す情報とを格納する領域を含む。例えば、データのパスは、情報処理システムSYS1がHTTP(Hyper Text Transfer Protocol)で使用されるパスであり、端末装置TMから送信される”PUT”、”DELETE”等のメソッドに含まれるパスである。
ストレージサーバSSVaは、ディスク装置Aのいずれかにデータを格納する毎に、格納したデータの情報をデータ管理表DMTBLに追加する。ストレージサーバSSVaは、ディスク装置Aのいずれかからデータを削除する毎に、削除したデータの情報をデータ管理表DMTBLから削除する。ストレージサーバSSVaは、ディスク装置Aからデータを読み出す場合、データ管理表DMTBLに参照し、データが格納されたディスク装置Aと、データのサイズを認識する。
データ管理表DMTBLに格納される情報は、複数のディスク装置A0−A19に格納するデータ毎にデータを識別するデータ識別情報とデータのサイズとを対応付けたデータ管理情報の一例である。データのパスは、データ識別情報の一例である。
図8は、図1に示す削除表DELTBLの例を示す。図8は、ストレージサーバSSVaが有する削除表DELTBLの例を示す。ストレージサーバSSVb、SSVcが有する削除表DELTBLの例は、図8の符号”A”を符号”B”又は符号”C”に置き換えることで示される。
削除表DELTBLは、ディスク装置A毎に、削除要求を受けたデータのパスを示す情報と、削除要求を受けたデータのサイズを示す情報とを格納する領域を含む。ストレージサーバSSVaは、削除要求を受けたデータがインアクティブ状態のディスク装置Aに保持されている場合、削除要求を受けたデータを示す情報を削除表DELTBLに格納する。又、書き込み要求を受けたデータが、インアクティブ状態のディスク装置Aに保持されている場合(すなわち、データの更新時)、ストレージサーバSSVaは、書き込み要求を受けたデータを示す情報を削除表DELTBLに格納する。
なお、書き込み要求を受けたデータが、インアクティブ状態のディスク装置Aのいずれかに保持されている場合、ストレージサーバSSVaは、アクティブ状態のディスク装置Aにデータを格納する。又、削除要求を受けたデータがアクティブ状態のディスク装置Aに格納されている場合、ストレージサーバSSVaは、データをディスク装置Aから削除する。この場合、削除表DELTBLの内容は変更されない。
ストレージサーバSSVaは、ディスク装置A毎に、削除表DELTBLに格納された削除要求を受けたデータのサイズの合計値が所定量(図12及び図14に示す第1閾値)を超えたか否かを判定する。削除要求を受けたデータのサイズの合計値が所定量を超えた場合、ストレージサーバSSVaは、削除表DELTBLにおいて、該当するディスク装置Aに対応する領域に格納された情報が示す全てのデータを削除する。そして、ストレージサーバSSVaは、削除したデータの情報を削除表DELTBLから削除する。
削除表DELTBLに格納される情報は、端末装置TMからの要求に含まれる複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、削除対象のデータのサイズとを含む削除データ管理情報の一例である。ここで、端末装置TMからの要求は、フロントエンドサーバFESVを介してストレージサーバSSVa、SSVb、SSVcに振り分けられる。削除表DELTBLに格納されるデータのパスは、削除データ指定情報の一例である。
図9は、図1に示すフロントエンドサーバFESVの動作の例を示す。図9に示す動作は、フロントエンドサーバFESVのプロセッサCPU0がプログラムPGM0を実行することで実現される。すなわち、図9は、情報処理システムSYS1の制御方法及びフロントエンドサーバFESVの制御プログラムの例を示す。
まず、ステップS10において、プロセッサCPU0は、端末装置TMからの要求を受信する。例えば、端末装置TMは、要求をPUTメソッド、DELETEメソッド又はGETメソッドでフロントエンドサーバFESVに送信する。すなわち、端末装置TMは、HTTPを用いたAPI(Application Program Interface)において、メソッドを”PUT”、”DELETE”又は”GET”とする。そして、端末装置TMは、URI(Uniform Resource Identifier)によりデータを記憶するリソースを指定する。例えば、フロントエンドサーバFESVのIPアドレスが”192.168.1.100”であるとき、端末装置TMは、PUTメソッドとして”http://192.168.1.100/foo/bar/buz.jpg”を送信する。ここで、”foo”、”bar”、”buz”は、メタ構文変数を示し、”/foo/bar/buz.jpg”はデータのパスを示す。送信するデータは、HTTPのタグの一種であるbodyに格納される。
次に、ステップS12において、プロセッサCPU0は、要求が書き込み要求を示す場合、処理をステップS100に移行し、要求が書き込み要求を示さない場合、処理をステップS14に移行する。ステップS14において、プロセッサCPU0は、要求が削除要求を示す場合、処理をステップS200に移行し、要求が削除要求を示さない場合、処理をステップS16に移行する。ステップS16において、プロセッサCPU0は、要求が読み出し要求を示す場合、処理をステップS300に移行し、要求が読み出し要求を示さない場合、処理を終了する。なお、プロセッサCPU0は、ステップS12、S14、S16の判定を、並列に実行してもよい。
ステップS100において、プロセッサCPU0は、書き込み要求に基づきストレージサーバSVVa、SSVb、SSVcを制御し、データをディスク装置A、B、Cに格納する書き込み処理を実行する。プロセッサCPU0が実行する書き込み処理の例は、図10に示す。
ステップS200において、プロセッサCPU0は、削除要求に基づきストレージサーバSVVa、SSVb、SSVcを制御し、データをディスク装置A、B、Cから削除する削除処理を実行する。プロセッサCPU0が実行する削除処理の例は、図10に示す。
ステップS300において、プロセッサCPU0は、読み出し要求に基づきストレージサーバSVVa、SSVb、SSVcを制御し、データをディスク装置A、B、Cから読み出す読み出し処理を実行する。プロセッサCPU0が実行する読み出し処理の例は、図11に示す。
図10は、図9に示す書き込み処理及び削除処理の例を示す。
書き込み処理では、端末装置TMからの書き込み要求を受信したプロセッサCPU0は、ステップS102において、データのパス(例えば、URI中の”/foo/bar/buz.jpg”)をハッシュ関数に入力し、ハッシュ値を求める。例えば、ハッシュ値は、MD5を用いて128ビットが生成される。
次に、ステップS104において、プロセッサCPU0は、図2に示すハッシュ表HATBLを用いて、求めたハッシュ値からデータを格納する磁気ディスク装置群Ga、Gb、Gcを決定する。この実施形態では、3つのレプリカデータが3つのディスク装置A、B、Cに冗長に格納されるため、プロセッサCPU0は、データを格納する3つの磁気ディスク装置群Ga、Gb、Gcを決定する。なお、1つのデータが1つのディスク装置に格納され、他のディスク装置に格納されない場合、プロセッサCPU0は、データを格納する1つの磁気ディスク装置群を決定する。この場合、例えば、磁気ディスク装置群Ga、Gb、Gcは、互いに異なるハッシュ空間に割り当てられる。
次に、ステップS106において、プロセッサCPU0は、図5に示すサーバ表SVTBLを検索し、ステップS104で求めた磁気ディスク装置群Ga、Gb、Gcに対応するIPアドレスを求める。すなわち、プロセッサCPU0は、磁気ディスク装置群Ga、Gb、Gcからデータを書き込む書き込み対象のストレージサーバSSVa、SSVb、SSVcを決定する。この例では、ストレージサーバSSVa、SSVb、SSVcのそれそれが磁気ディスク装置群Ga、Gb、Gcにデータを格納するため、全てのストレージサーバSSVa、SSVb、SSVcが書き込み対象に決定される。
次に、ステップS108において、プロセッサCPU0は、書き込み対象に決定されたストレージサーバSVVa、SSVb、SSVcのそれぞれに書き込み要求を送信する。例えば、書き込み要求は、書き込みデータと、書き込みデータを格納する磁気ディスク装置群Ga、Gb、Gcを示す情報とフルビットのハッシュ値とを含む。書き込み要求を受信した各ストレージサーバSSVa、SSVb、SSVcの動作の例は、図12に示す。
次に、ステップS110において、プロセッサCPU0は、ストレージサーバSSVa、SSVb、SSVcからのデータの書き込みの完了を示す書き込み完了通知の受信を待つ。全てのストレージサーバSSVa、SSVb、SSVcから書き込み完了通知を受けた場合、ステップS112において、プロセッサCPU0は、データの書き込みが完了したことを示す通知を端末装置TMに送信し、データの書き込み処理を終了する。すなわち、プロセッサCPU0は、書き込み完了通知に対応する応答処理を実行する。
一方、削除処理では、端末装置TMからの削除要求を受信したプロセッサCPU0は、ステップS202において、データのパスをハッシュ関数に入力し、ハッシュ値を求める。次に、ステップS204において、プロセッサCPU0は、図2に示すハッシュ表HATBLを用いて、求めたハッシュ値からデータを削除する磁気ディスク装置群Ga、Gb、Gcを決定する。書き込み処理と同様に、1つのデータが1つのディスク装置に格納され、他のディスク装置に格納されない場合、プロセッサCPU0は、データを格納する1つの磁気ディスク装置群を決定する。
次に、ステップS206において、プロセッサCPU0は、図5に示すサーバ表SVTBLを検索し、ステップS204で求めた磁気ディスク装置群Ga、Gb、Gcに対応するIPアドレスを求める。すなわち、プロセッサCPU0は、磁気ディスク装置群Ga、Gb、Gcからデータを削除する削除対象のストレージサーバSSVa、SSVb、SSVcを決定する。
次に、ステップS208において、プロセッサCPU0は、削除対象に決定されたストレージサーバSVVa、SSVb、SSVcのそれぞれに削除要求を送信する。例えば、削除要求は、データを削除する磁気ディスク装置群Ga、Gb、Gcを示す情報とフルビットのハッシュ値とを含む。削除要求を受信したストレージサーバSSVa、SSVb、SSVcの動作の例は、図14に示す。
次に、ステップS210において、プロセッサCPU0は、ストレージサーバSSVa、SSVb、SSVcからのデータの削除の完了を示す削除完了通知の受信を待つ。全てのストレージサーバSSVa、SSVb、SSVcから削除完了通知を受けた場合、ステップS212において、プロセッサCPU0は、データの削除が完了したことを示す通知を端末装置TMに送信し、データの削除処理を終了する。すなわち、プロセッサCPU0は、削除完了通知に対応する応答処理を実行する。なお、図14で説明するように、削除処理は、データをディスク装置から実際に削除する場合と、削除表DELTBL及びデータ管理表DMTBLを利用してデータをディスク装置から削除したとみなす場合とがある。
図11は、図9に示す読み出し処理の例を示す。
読み出し処理では、端末装置TMからの読み出し要求を受信したプロセッサCPU0は、ステップS302において、データのパスをハッシュ関数に入力し、ハッシュ値を求める。
次に、ステップS304において、プロセッサCPU0は、図2に示すハッシュ表HATBLを用いて、求めたハッシュ値からデータを読み出す磁気ディスク装置群Ga、Gb、Gcの1つを決定する。なお、書き込み処理と同様に、求めたハッシュ値からデータを読み出す3つの磁気ディスク装置群Ga、Gb、Gcを決定してもよい。この場合、プロセッサCPU0は、3つの磁気ディスク装置群Ga、Gb、Gcから読み出される3つのデータから正しいデータを判定する。又、1つのデータが1つのディスク装置に格納される場合、プロセッサCPU0は、データを読み出す1つの磁気ディスク装置群を決定する。
次に、ステップS306において、プロセッサCPU0は、図5に示すサーバ表SVTBLを検索し、ステップS304で求めた磁気ディスク装置群Ga、Gb、Gcの1つに対応するIPアドレスを求める。すなわち、プロセッサCPU0は、磁気ディスク装置群Ga、Gb、Gcの1つからデータを読み出す読み出し対象のストレージサーバSSVa、SSVb、SSVcの1つを決定する。
次に、ステップS308において、プロセッサCPU0は、読み出し対象に決定されたストレージサーバSVVa、SSVb、SSVcの1つに読み出し要求を送信する。例えば、読み出し要求は、データを読み出す磁気ディスク装置群Ga(又は、Gb、Gc)の情報とフルビットのハッシュ値とを含む。読み出し要求を受信したストレージサーバSSVの動作の例は、図18に示す。
次に、ステップS310において、プロセッサCPU0は、ストレージサーバSSVa、SSVb、SSVcのいずれかからのデータの読み出しの完了を示す読み出し完了通知の受信を待つ。読み出し完了通知は、ディスク装置から読み出されたデータを含む。ストレージサーバSSVa、SSVb、SSVcのいずれかから読み出し完了通知を受けた場合、ステップS312において、プロセッサCPU0は、読み出したデータを端末装置TMに送信し、データの読み出し処理を終了する。すなわち、プロセッサCPU0は、読み出し完了通知に対応する応答処理を実行する。
図12は、図10において書き込み要求を受信したストレージサーバSSVが実行する書き込み処理の例を示す。図12に示す処理は、書き込み要求を受信したストレージサーバSVVの各々のプロセッサCPU1がプログラムPGM1を実行することで実現される。すなわち、図12は、情報処理システムSYS1の制御方法及びストレージサーバSVVの制御プログラムの例を示す。
まず、ステップS402において、プロセッサCPU1は、図7に示すデータ管理表DMTBLを参照する。なお、ステップS402において、書き込み要求に含まれるデータのパスがデータ管理表DMTBLに存在する場合、プロセッサCPU1は、例えば、データ管理表DMTBLにおける書き込み要求に含まれるデータのパスを含むエントリを読み出す。書き込み要求に含まれるデータのパスを含むエントリは、データが格納されているディスク装置の情報(格納ディスクID)を含む。
次に、ステップS404において、プロセッサCPU1は、書き込み要求に含まれるデータのパスがデータ管理表DMTBLに存在するか否かを判定する。データのパスが存在する場合、データの更新をするために、処理はステップS406に移行される。データのパスが存在しない場合、データを新規に書き込むために、処理はステップS500に移行される。
ステップS406において、プロセッサCPU1は、ディスクグループ表DGTBLを参照し、データを格納したディスク装置である対象ディスク装置がアクティブ状態か否かを判定する。ディスク装置がアクティブ状態の場合、データをディスク装置に直接書き込み可能なため、処理はステップS414に移行される。ディスク装置がインアクティブ状態の場合、データを更新するために、処理はステップS408に移行される。
ステップS408において、プロセッサCPU1は、書き込み要求に含まれるデータのパスを含むエントリ(データのパスとデータのサイズ)を、エントリに含まれるディスク装置に対応する削除表DELTBL(図8)に追加する。すなわち、プロセッサCPU1は、データを更新する場合、削除表DELTBLに、データのパスとデータのサイズを含む新たなエントリを格納する。
次に、ステップS410において、プロセッサCPU1は、エントリを追加した削除表DELTBLに格納されたデータサイズの領域に格納された全てのデータサイズの合計である合計データサイズを求める。すなわち、プロセッサCPU1は、削除表DELTBLに登録された削除するデータのデータ量を計算する。
次に、ステップS412において、プロセッサCPU1は、計算したデータ量が第1閾値を超えたか否かを判定する。データ量が第1閾値を超えた場合、データ量を計算した削除表DELTBLに対応するディスク装置に記憶されたデータを削除するために、処理はステップS700に移行される。例えば、第1閾値は、ディスク装置の記憶容量の10%から30%程度である。ステップS700では、プロセッサCPU1は、データの削除処理を実行する。データの削除処理の例は、図15及び図17に示される。ステップS700の処理の後、処理はステップS414に移行される。
インアクティブ状態のディスク装置に格納されたデータの書き込み要求に基づく更新は、インアクティブ状態のディスク装置に格納されたデータの削除と、アクティブ状態のディスク装置へのデータの書き込みとを含む。この実施形態では、プロセッサCPU1は、データの更新処理に含まれるデータの削除処理を、書き込み要求毎に実行しない。このため、インアクティブ状態のディスク装置をアクティブ状態に設定し、データの削除後にディスク装置を再びインアクティブ状態に設定する頻度は、更新処理毎にデータを削除する場合に比べて低い。ディスク装置のスピンアップ及びスピンダウンの頻度を下げることができるため、ディスク装置の劣化を抑制することができる。
また、ディスク装置のスピンアップ及びスピンダウンの頻度が下がるため、更新処理毎にデータを削除する場合に比べて、ディスクプールDPで消費される電力を削減することができる。さらに、データをまとめて削除することで、ストレージサーバSSVによるディスク装置のアクセス頻度を下げることができ、ディスク装置のアクセスが頻繁に発生することによるストレージサーバSSVの性能の低下を抑制することができる。
ステップS414において、プロセッサCPU1は、データを削除したエントリをデータ管理表DMTBLから削除する。例えば、更新されるデータのサイズは、ディスク装置に記憶された元のデータのサイズと異なる場合がある。このため、プロセッサCPU1は、データ管理表DMTBLに格納された元のデータの情報(エントリ)を削除し、更新するデータをディスク装置に格納するときに、更新するデータの情報(エントリ)をデータ管理表DMTBLに追加する。これにより、データ管理表DMTBLに登録されたエントリが示すデータを更新(書き替え)する場合に、更新されたデータの情報をデータ管理表DMTBLに反映させることができる。
次に、ステップS500において、プロセッサCPU1は、データの新規の書き込み処理を実行する。ステップS500では、データ管理表DMTBLに登録されていないエントリに対応するデータだけでなく、データ管理表DMTBLに登録されたエントリに対応する更新されるデータの書き込みも実行される。また、更新される元のデータがインアクティブ状態のディスク装置に格納されている場合、ステップS408により元のデータは削除したとみなされ、あるいはステップS700により元のデータは削除される。さらに、アクティブ状態のディスク装置に格納されたデータの更新は、データを上書きすることにより実行される。
この実施形態では、データを更新する場合、更新後のデータは、アクティブ状態のディスク装置内に存在する。更新されたデータが再びアクセスされる頻度は、更新されないデータが再びアクセスされる頻度よりも高いことが多い。データの更新処理により、インアクティブ状態のディスク装置に格納された元のデータを、アクティブ状態のディスク装置に移動することで、ディスク装置をスピンアップすることなく、次に発生する書き込み、削除、読み出しを実行することができる。換言すれば、スピンアップ及びスピンダウンの頻度を下げることで、ディスク装置の劣化を抑制することができ、ディスクプールDPで消費される電力を削減することができる。
データの新規の書き込み処理の例は、図13に示される。ステップS500の処理の後、処理はステップS416に移行される。
ステップS416において、プロセッサCPU1は、フロントエンドサーバFESVに書き込み処理が正常に終了したことを示す書き込み完了通知を応答する。そして、書き込み処理が終了する。
図13は、図12に示す新規書き込み処理の例を示す。図13に示す処理は、書き込み要求を受信したストレージサーバSVVのプロセッサCPU1の各々が実行する。データの書き込みは、アクティブ状態のディスク装置(例えば、図4の状態ST1)に対して実行されるため、スピンアップ及びマウントの処理を省略することができる。
まず、ステップS502において、プロセッサCPU1は、ディスクグループ表DGTBL(図6)を参照し、データを格納するディスク装置のマウントポイントを決定する。なお、図6は、ストレージサーバSSVaが有するディスクグループ表DGTBLを示すが、ストレージサーバSSVb、SSVcは、それぞれのディスクグループ表DGTBLを参照する。
次に、ステップS504において、プロセッサCPU1は、決定したマウントポイントに対してデータを含むファイルを作成し、マウントポイントにマウントされたディスク装置にデータを格納する。次に、ステップS506において、プロセッサCPU1は、格納したデータの情報(エントリ)をデータ管理表DMTBL(図7)に追加する。
次に、ステップS508において、プロセッサCPU1は、データを格納したディスク装置に記憶されるデータ量が第2閾値を超えたか否かを判定する。データ量が第2閾値を超えた場合、データを格納したディスク装置が満杯になったと判断され、処理はステップS510に移行される。例えば、第2閾値は、ディスク装置の記憶容量の80%から90%程度である。
ステップS510において、プロセッサCPU1は、満杯になったと判断したディスク装置をアンマウントし、スピンダウンする。すなわち、満杯になったと判断したディスク装置は、スピンアップ状態からスピンダウン状態に変更される。満杯になったディスク装置をスピンダウン状態に設定することで、スピンアップ状態を維持する場合に比べて情報処理システムSYS1の消費電力を削減することができる。
次に、ステップS512において、プロセッサCPU1は、ディスクグループ表DGTBL(図6)において、スピンダウンしたディスク装置が属する磁気ディスク装置群Gaのアクティブ順の領域に格納された数値にしたがい、アクティブ番号を更新する。例えば、図6において、アクティブ番号が”1”から”2”に更新され、図4に示すハッシュリングにおいて、スピンダウンしたディスク装置が属する磁気ディスク装置群Gaは、状態ST1から状態ST2に変更される。
次に、ステップS514において、プロセッサCPU1は、更新されたディスクグループ表DGTBLのアクティブ番号が示すディスク装置をスピンアップし、ディスクグループ表DGTBLに格納されたマウントポイントにディスク装置をマウントする。すなわち、新たなディスク装置がスピンダウン状態からスピンアップ状態に設定される。この後、プロセッサCPU1は、新たにスピンアップ状態に設定されたディスク装置にデータを格納する。
図14は、図10において削除要求を受信したストレージサーバSSVが実行する削除処理の例を示す。図14に示す処理は、削除要求を受信したストレージサーバSVVの各々のプロセッサCPU1がプログラムPGM1を実行することで実現される。すなわち、図14は、情報処理システムSYS1の制御方法及びストレージサーバSVVの制御プログラムの例を示す。
まず、ステップS602において、プロセッサCPU1は、図7に示すデータ管理表DMTBLを参照する。なお、ステップS602において、削除要求に含まれるデータのパスがデータ管理表DMTBLに存在する場合、プロセッサCPU1は、例えば、データ管理表DMTBLにおける削除要求に含まれるデータのパスを含むエントリを読み出す。削除要求に含まれるデータのパスを含むエントリは、データが格納されているディスク装置の情報(格納ディスクID)を含む。
次に、ステップS604において、プロセッサCPU1は、削除要求に含まれるデータのパスがデータ管理表DMTBLに存在するか否かを判定する。データのパスが存在する場合、データを削除するために、処理はステップS606に移行される。データのパスが存在しない場合、削除するデータがディスク装置のいずれにも記憶されていないため、処理はステップS622に移行される。
ステップS606において、プロセッサCPU1は、ディスクグループ表DGTBLを参照し、削除するデータが格納されているディスク装置である対象ディスクがアクティブ状態か否かを判定する。ディスク装置がアクティブ状態の場合、データをディスク装置から直接削除可能なため、処理はステップS608に移行される。ディスク装置がインアクティブ状態の場合、データをディスク装置から削除したものとみなす処理を実行するため、処理はステップS612に移行される。
ステップS608において、プロセッサCPU1は、データ管理表DMTBLを参照し、削除するデータを記憶するディスク装置を検索し、検索したディスク装置からデータを削除する。次に、ステップS610において、プロセッサCPU1は、削除したデータのエントリをデータ管理表DMTBLから削除する。ステップS610の処理の後、処理はステップS620に移行される。ステップS608、S610のように、削除するデータが格納されているディスク装置がアクティブ状態の場合、プロセッサCPU1は、削除表DELTBLにデータの情報を追加することなくデータを削除する。これにより、削除表DELTBLに追加される情報を、インアクティブ状態のディスク装置から削除するデータの情報に限定することができ、ステップS700によるデータの削除処理効率が低下することを抑制することができる。
一方、ステップS612において、プロセッサCPU1は、削除要求に含まれるデータのパスを含むエントリ(データのパスとデータのサイズ)を、エントリに含まれるディスク装置に対応する削除表DELTBLに追加する。すなわち、プロセッサCPU1は、削除するデータを記憶するディスク装置がインアクティブ状態の場合、削除表DELTBLに、データのパスとデータのサイズを含む新たなエントリを格納する。
ステップS614において、プロセッサCPU1は、ステップS604での判定で得られたデータのパスに基づき、削除するデータのエントリをデータ管理表DMTBLから削除する。
次に、ステップS616において、プロセッサCPU1は、エントリを追加した削除表DELTBLに格納されたデータサイズの領域に格納された全てのデータサイズの合計である合計データサイズを求める。すなわち、プロセッサCPU1は、削除表DELTBLに登録された削除するデータのデータ量を計算する。
次に、ステップS618において、プロセッサCPU1は、計算したデータ量が第1閾値を超えたか否かを判定する。データ量が第1閾値を超えた場合、データ量を計算した削除表DELTBLに対応するディスク装置に記憶されたデータを削除するために、処理はステップS700に移行される。データ量が第1閾値以下の場合、処理はステップS620に移行される。ステップS700によるデータの削除処理の例は、図15及び図17に示される。ステップS700の処理の後、処理はステップS620に移行される。
プロセッサCPU1は、インアクティブ状態のディスクに格納されたデータの削除要求を受けた場合、削除要求毎にデータの削除処理を実行しない。そして、プロセッサCPU1は、削除するデータのエントリが削除表DELTBLに所定量貯まったことに基づいて、削除表DELTBLに貯まったエントリに対応するデータをまとめて削除する。これにより、削除要求毎にデータを削除する場合に比べて、データを削除する効率を向上することができる。
また、インアクティブ状態のディスク装置をアクティブ状態に設定し、データの削除後にディスク装置を再びインアクティブ状態に設定する頻度を、削除要求毎にデータを削除する場合に比べて低くすることができる。ディスク装置のスピンアップ及びスピンダウンの頻度を下げることができるため、ディスク装置の劣化を抑制することができる。さらに、ディスク装置のスピンアップ及びスピンダウンの頻度が下がるため、更新処理毎にデータを削除する場合に比べて、ディスクプールDPで消費される電力を削減することができる。
ステップS620において、プロセッサCPU1は、削除処理が正常に終了したことを示す削除完了通知をフロントエンドサーバFESVに応答する。そして、削除処理が終了する。一方、ステップS622において、プロセッサCPU1は、削除するデータがディスク装置のいずれにも記憶されていないため、削除処理の失敗を示す削除失敗通知をフロントエンドサーバFESVに応答する。そして、削除処理が終了する。
図15は、図12及び図14に示すファイルの削除処理の例を示す。図15に示す処理は、削除要求を受信したストレージサーバSVVの各々が実行する。
まず、ステップS702において、プロセッサCPU1は、データを削除するディスク装置をスピンダウン状態からスピンアップ状態に変更する。次に、ステップS704において、プロセッサCPU1は、スピンアップしたディスク装置に対応する削除表DELTBLにエントリがあるか否かを判定する。削除表DELTBLにエントリがある場合、データを削除するために処理はステップS706に移行される。削除表DELTBLにエントリが残っていない場合、ディスク装置から全てのデータが削除されたため、処理はステップS710に移行される。
ステップS706において、プロセッサCPU1は、スピンアップしたディスク装置に対応する削除表DELTBLに格納されたエントリに含まれるデータをディスク装置から削除する。次に、ステップS708において、プロセッサCPU1は、削除したデータのエントリを削除表DELTBLから削除する。そして、ピンアップしたディスク装置に対応する削除表DELTBLからエントリがなくなるまで、ステップS706、S708の処理が繰り返される。
一方、ステップS710において、プロセッサCPU1は、データを削除したディスク装置をスピンアップ状態からスピンダウン状態に変更する。なお、図15に示すデータの削除処理は、削除表DELTBLに登録されたエントリに含まれるデータの合計が第1閾値を超えた場合に実行される。このため、ステップS704からS708の処理によりデータが削除されたディスク装置には、削除対象でない有効なデータが残っている。例えば、第1閾値が20%で、第2閾値が80%の場合、ステップS704からS708の処理によりデータが削除されたディスク装置は、記憶容量の60%の有効なデータを保持している。
データ管理表DMTBLは、削除処理が実行されたディスク装置に保持される有効なデータに対応するエントリを、削除することなく保持する。このため、削除処理の後にスピンダウン状態に設定されたディスク装置は、図13に示す第2閾値以下のデータが格納され、新たなデータを書き込み可能である。
次に、ステップS712、S714、S716、S718では、データを削除したディスク装置をデータを書き込み可能なディスク装置として割り当てる処理が実行される。
ステップS712において、プロセッサCPU1は、ディスクグループ表DGTBLを参照し、アクティブ番号が示すディスク装置を示す情報(例えば、アクティブ番号の値)を変数NOWに設定する。
次に、ステップS714において、プロセッサCPU1は、ディスクグループ表DGTBLにおいて、データを削除したディスク装置を含む磁気ディスク装置群のエントリを入れ換える処理を実行する。例えば、プロセッサCPU1は、データを削除したディスク装置のエントリを、現在アクティブ状態にあるディスク装置のエントリの次に移動する。
次に、ステップS716において、プロセッサCPU1は、ディスクグループ表DGTBLにおいて、アクティブ順の領域に格納された番号を昇順に振り直す。次に、ステップS718において、プロセッサCPU1は、変数NOWが示すディスク装置を示すディスクID(ディスクグループ表DGTBL)に対応して振り直されたアクティブ順の領域に格納された番号を新たなアクティブ番号に設定する。これにより、アクティブ状態のディスク装置は、アクティブ状態に維持され、データが削除されたディスク装置が、ディスクグループ表DGTBLにおいて、次にアクティブ状態に設定されるディスク装置に登録される。データの削除処理により空き領域が生じたディスク装置を、アクティブ状態に設定可能にすることで、データを削除した記憶領域を使用しない場合に比べて、ディスク装置を効率的に使用することができる。これにより、ディスクプールDPの使用効率を向上することができる。
図16は、図15によるデータの削除処理におけるディスクグループ表DGTBLに格納される情報の変化の例を示す。図16では、磁気ディスク装置群Ga0のディスク装置A0に対して図15に示すデータの削除処理が実行されるとする。図15のステップS712の処理が実行された後のディスクグループ表DGTBLの状態は、図6と同じである(図16(a))。変数NOWは、ステップS712によりディスク装置A4を示す”A4”に設定される。
図15のステップS714の処理により、データを削除したディスク装置A0のエントリは、現在、アクティブ状態にあるディスク装置A4のエントリの次に移動される(図16(b))。図15のステップS716の処理により、アクティブ順の領域に格納された番号が昇順に振り直され、ディスク装置A4のエントリのアクティブ順が”0”に設定され、ディスク装置A0のエントリのアクティブ順が”1”に設定される(図16(c))。そして、図15のステップS718の処理により、変数NOWが示すディスク装置A4のエントリにおけるアクティブ順の領域に格納された番号”0”が、新たなアクティブ番号に設定される(図16(d))。
この後、データの格納により、ディスク装置A4に記憶されたデータのデータ量が第2閾値を超えた場合、ディスク装置A4がインアクティブ状態に設定される。そして、ディスクグループ表DGTBLにおいて次のアクティブ順に設定されたディスク装置A0がアクティブ状態に設定される。
図17は、図12及び図14に示すファイルの削除処理の別の例を示す。図15と同一又は同様の処理については、詳細な説明は省略する。図17に示すデータの削除処理では、図15のステップS714の代わりにステップS715が実行される。その他の処理は、図15と同一又は同様である。
ステップS715では、プロセッサCPU1は、データを削除したディスク装置のエントリを、ディスクグループ表DGTBLの最後尾に移動する。
図18は、図10において読み出し要求を受信したストレージサーバSSVが実行する読み出し処理の例を示す。図18に示す処理は、読み出し要求を受信したストレージサーバSVVの各々のプロセッサCPU1がプログラムPGM1を実行することで実現される。すなわち、図18は、情報処理システムSYS1の制御方法及びストレージサーバSVVの制御プログラムの例を示す。
まず、ステップS802において、プロセッサCPU1は、図7に示すデータ管理表DMTBLを参照する。なお、ステップS802において、読み出し要求に含まれるデータのパスがデータ管理表DMTBLに存在する場合、プロセッサCPU1は、例えば、データ管理表DMTBLにおける読み出し要求に含まれるデータのパスを含むエントリを読み出す。読み出し要求に含まれるデータのパスを含むエントリは、データが格納されているディスク装置の情報(格納ディスクID)を含む。
次に、ステップS804において、プロセッサCPU1は、読み出し要求に含まれるデータのパスがデータ管理表DMTBLに存在するか否かを判定する。データのパスが存在する場合、データの読み出すために、処理はステップS806に移行される。データのパスが存在しない場合、読み出すデータがディスク装置に記憶されていないため、処理はステップS816に移行される。
ステップS806において、プロセッサCPU1は、ディスクグループ表DGTBLを参照し、読み出すデータが格納されているディスク装置である対象ディスク装置がアクティブ状態か否かを判定する。ディスク装置がアクティブ状態の場合、データをディスク装置から直接読み出し可能なため、処理はステップS808に移行される。ディスク装置がインアクティブ状態の場合、ディスク装置をアクティブ状態に設定するため、処理はステップS810に移行される。
ステップS808において、プロセッサCPU1は、データ管理表DMTBLを参照し、読み出すデータを記憶するディスク装置を検索し、検索したディスク装置からデータを読み出し、読み出したデータをフロントエンドサーバFESVに送信する。そして、読み出し処理が終了する。
一方、ステップS810において、プロセッサCPU1は、読み出すデータが格納されているディスク装置である対象ディスクをスピンアップし、ディスクグループ表DGTBLに格納されたマウントポイントにディスク装置をマウントする。次に、ステップS812において、プロセッサCPU1は、データ管理表DMTBLを参照し、読み出すデータを記憶するディスク装置を検索する。そしてプロセッサCPU1は、検索したディスク装置からデータを読み出し、読み出したデータをフロントエンドサーバFESVに送信する。
次に、ステップS814において、プロセッサCPU1は、データを読み出したディスク装置をアンマウントし、スピンダウンする。なお、データを読み出したディスク装置に対する読み出し要求が続くことが予想される場合、プロセッサCPU1は、データを読み出したディスク装置をスピンアップ状態に維持してもよい。そして、読み出し処理が終了する。
一方、ステップS816において、プロセッサCPU1は、読み出すデータがディスク装置のいずれにも記憶されていないため、読み出し処理の失敗を示す読み出し失敗通知をフロントエンドサーバFESVに応答する。そして、読み出し処理が終了する。
図19は、情報処理システムの別の例を示す。図1から図8で説明した要素と同一又は同様の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。
図19に示す情報処理システムSYS2は、ストレージサーバSSVa、SSVb、SSVcとディスクプールDPとを接続するスイッチDSWを有する。スイッチDSWは、フロントエンドサーバFESVが管理する接続情報に基づいて動作する。そして、スイッチDSWは、ストレージサーバSSVaと磁気ディスク装置群Gaとを接続し、ストレージサーバSSVbと磁気ディスク装置群Gbとを接続し、ストレージサーバSSVcと磁気ディスク装置群Gcとを接続する。
情報処理システムSYS2のその他の構成は、ディスクプールDPが磁気ディスク装置群Ga、Gb、Gcに共通に設けられることを除き、図1に示す情報処理システムSYS1と同様である。図19に示す情報処理システムSYS2は、図9から図18と同様に動作する。なお、ディスクプールDPは、図1と同様に、磁気ディスク装置群Ga、Gb、Gc毎に設けられてもよい。
図20は、情報処理システムのさらなる別の例を示す。図1から図8で説明した要素と同一又は同様の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。
図20に示す情報処理システムSYS3は、図1に示す構成に加えて、ストレージサーバSSVp及びディスクプールDPpを有する。ストレージサーバSSVpは、プロセッサCPU2と、プログラムPRG2が格納される領域を含むメモリMEM2とを有する。プログラムPGM2は、プロセッサCPU2により実行され、ストレージサーバSSVpの機能を実現する。フロントエンドサーバFESVは、ストレージサーバSSVa、SSVb、SSVcに加えて、ストレージサーバSSVpを管理する。
ディスクプールDPpは、複数のディスク装置P(P0−P19)を有する。ディスク装置P−P19は、太い実線で示すように、スピンアップ状態(アクティブ状態)に設定される。例えば、ディスク装置P0−P19は、互いに異なるハッシュ空間に割り当てられる。フロントエンドサーバFESVは、図2に示すハッシュ表HATBLに加えて、ディスク装置P0−P19用のハッシュ表HATBLpを有する。サーバ表SVTBLは、図5に示す内容に、ストレージサーバSSVpのIPアドレスを示す情報が追加される。
図20に示す情報処理システムSYS3では、端末装置TMから送信されるデータは、ハッシュ表HATBLpにしたがって、ディスク装置P0−P19のいずれかに格納される。さらに、端末装置TMから送信されるデータは、ハッシュ表HATBLにしたがって、磁気ディスク装置群Ga、Gb、Gcのそれぞれのいずれかのディスク装置A、B、Cに格納される。ディスク装置A、B、Cに格納されるデータは、ディスク装置P0−P19に格納されるデータのレプリカデータである。図20に示す情報処理システムSYS3は、図9から図18と同様に動作する。
図21は、情報処理システムのさらなる別の例を示す。図1から図8で説明した要素と同一又は同様の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。
図21に示す情報処理システムSYS4は、図1に示す構成に加えて、ストレージサーバSSVd及びディスクプールDPdを有する。ストレージサーバSSVd及びディスクプールDPdの構成及び接続関係は、図1に示すストレージサーバSSVa及びディスクプールDPaの構成及び接続関係と同様である。ディスクプールDPdは、複数のディスク装置D(D0−D19)を有する複数の磁気ディスク装置群Gd(Gd0−Gd3)を有する。
情報処理システムSYS4のフロントエンドサーバFESVは、ハッシュ値に応じて、磁気ディスク装置群Ga0−Ga3、Gb0−Gb3の1つと、磁気ディスク装置群Gc0−Gc3、Gd0−Gd3の1つとを選択するハッシュ表HATBLを有する。すなわち、フロントエンドサーバFESVは、端末装置TMからの要求を、ハッシュ表HATBLに基づき、複数のストレージサーバSSVa、SSVb、SSVc、SSVdのいずれかに振り分ける。図21に示す情報処理システムSYS4は、図9から図18と同様に動作する。
図22は、図21に示すハッシュ表HATBL2の例を示す。ハッシュ表HATBL2は、図2に示すハッシュ表HATBLと同様に、ハッシュ関数により得られるハッシュ値のうち所定数のビットの値を示す情報と、ハッシュ値に対応する磁気ディスク装置群を示す情報とを格納する領域を含む。ハッシュ表HATBL2は、ハッシュ関数等の所定の関数に基づいて、端末装置TMからの要求と磁気ディスク装置群Ga、Gb(又は、Gc、Gd)を識別する各磁気ディスク装置群識別情報とを対応付けた要求対応表の一例である。
例えば、上位の3ビットが”000b”(”b”は2進数を示す)のハッシュ値に対応するデータは、磁気ディスク装置群Ga0、Gc0に記憶される。上位の3ビットが”001b”のハッシュ値に対応するデータは、磁気ディスク装置群Ga1、Gc1に記憶される。上位の3ビットが”010b”のハッシュ値に対応するデータは、磁気ディスク装置群Ga2、Gc2に記憶される。上位の3ビットが”011b”のハッシュ値に対応するデータは、磁気ディスク装置群Ga3、Gc3に記憶される。すなわち、”000b”から”011b”のハッシュ値は、ストレージサーバSSVaに接続される磁気ディスク装置群Gaと、ストレージサーバSSVcに接続される磁気ディスク装置群Gcに割り当てられる。
”100b”から”111b”のハッシュ値は、ストレージサーバSSVbに接続される磁気ディスク装置群Gbと、ストレージサーバSSVdに接続される磁気ディスク装置群Gdに割り当てられる。なお、実際には、フロントエンドサーバFESVは、例えば、ハッシュ関数としてMD5(Message Digest 5)を用いて128ビットのハッシュ値を生成する。
図23は、図21に示すディスクプールDPa、DPbのハッシュリングを示す。ディスクプールDPa、DPbでは、図4と同様に、状態ST(ST0、ST1、ST2、ST3、ST4)毎に、ハッシュ空間に割り当てられる磁気ディスク装置A(又は、ディスク装置B)が変更される。すなわち、状態ST0−ST4のいずれか1つに対応するディスク装置A(又は、ディスク装置B)は、アクティブ状態に設定され、他の状態STに対応するディスク装置A(又は、ディスク装置B)はインアクティブ状態に設定される。すなわち、網掛けで示す状態ST1に対応するディスク装置A4−A7、B4−B7は、アクティブ状態に設定され、他のディスク装置A0−A3、A8−A19、B0−B3、B8−B19は、インアクティブ状態に設定される。
なお、ディスクプールDPc、DPdにおいても、図23と同様に、状態ST0−ST4毎に、ハッシュ空間に割り当てられるディスク装置C、Dが変更される。ディスクプールDPcにおいてハッシュ空間に割り当てられるディスク装置Cは、図23のディスク装置の符号”A”を符号”C”に置き換えることにより示される。同様に、ディスクプールDPdにおいてハッシュ空間に割り当てられるディスク装置Dは、図23の磁気ディスク装置の符号”B”を符号”D”に置き換えることにより示される。
以上、図1から図23に示す実施形態では、プロセッサCPU1は、削除要求毎にデータを削除せず、削除するデータのエントリが削除表DELTBLに所定量貯まったことに基づいて、削除表DELTBLに貯まったエントリに対応するデータをまとめて削除する。同様に、プロセッサCPU1は、データの更新が発生する毎にデータを削除せず、削除するデータのエントリが削除表DELTBLに所定量貯まったことに基づいて、削除表DELTBLに貯まったエントリに対応するデータをまとめて削除する。これにより、ディスク装置のスピンアップ及びスピンダウンの頻度を下げることができるため、ディスク装置の劣化を抑制することができ、ディスク装置の寿命を短くなることを抑制することができる。また、ディスク装置のスピンアップ及びスピンダウンの頻度を下げることで、ディスクプールDPで消費される電力を削減することができる。さらに、削除表DELTBLに貯まったエントリに対応するデータをまとめて削除することで、削除要求毎にデータを削除する場合に比べて、データを削除する効率を向上することができる。
データをまとめて削除することで、ストレージサーバSSVによるディスク装置のアクセス頻度を下げることができ、ディスク装置のアクセスが頻繁に発生することによるストレージサーバSSVの性能の低下を抑制することができる。さらに、データの更新処理により、インアクティブ状態のディスク装置に格納された元のデータを、アクティブ状態のディスク装置に移動することで、ディスク装置をスピンアップすることなく、次に発生する書き込み、削除、読み出しを実行することができる。換言すれば、スピンアップ及びスピンダウンの頻度を下げることで、ディスク装置の劣化を抑制することができ、ディスクプールDPで消費される電力を削減することができる。
データの削除処理により空き領域が生じたディスク装置を、アクティブ状態に設定可能にすることで、データを削除した記憶領域を使用しない場合に比べて、ディスク装置を効率的に使用することができる。これにより、ディスクプールDPの使用効率を向上することができる。
以上の実施形態において説明した発明を整理して、付記として開示する。
(付記1)
複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置と、前記情報処理装置を管理する管理装置と、前記管理装置に接続された端末装置を有する情報処理システムにおいて、
前記管理装置は、
各磁気ディスク装置群を識別する磁気ディスク装置群識別情報と各情報処理装置を識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報と、所定の関数に基づき要求と前記各磁気ディスク装置群識別情報とを対応付けた要求対応表とを記憶する管理記憶部と、
前記端末装置からの要求を、前記要求対応表に基づき、前記複数の磁気ディスク装置群のいずれかに振り分ける管理制御部とを有し、
前記複数の情報処理装置の各々は、
前記複数のディスク装置に格納するデータ毎にデータを識別するデータ識別情報とデータを格納するディスク装置とデータのサイズとを対応付けたデータ管理情報と、前記複数の磁気ディスク装置群がそれぞれ含む複数のディスク装置がモータの回転状態を維持した活性磁気ディスク装置又はモータの回転を停止させた複数の非活性磁気ディスク装置のいずれであるかを指定するディスクグループ状態情報と、前記管理装置を介して振り分けられた前記端末装置からの要求に含まれる前記複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、前記削除対象のデータのサイズとを含む削除データ管理情報とを記憶する記憶部と、
前記管理装置を介して振り分けられた前記端末装置からの要求に基づき、前記複数のディスク装置に格納するデータのいずれかを変更する場合、前記削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第1閾値を超えている場合、前記削除データ管理情報が指定する削除対象のデータを全て削除し、前記削除データ管理情報に含まれる前記削除データ指定情報を全て消去するとともに前記データ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新するディスク制御部と、
を有することを特徴とする情報処理システム。
(付記2)
前記ディスク制御部は、
前記管理装置を介して振り分けられた前記端末装置から要求が、前記非活性磁気ディスク装置のいずれかに格納するデータの書き込みを示し、格納するデータの前記データ識別情報が前記データ管理情報に含まれ、前記削除データ管理情報に含まれる前記合計データサイズが前記第1閾値を超えている場合、前記削除データ管理情報が指定する削除対象のデータを全て削除し、前記削除データ管理情報に含まれる前記削除データ指定情報を全て消去するとともに前記データ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新し、前記ディスクグループ状態情報が示す前記活性磁気ディスク装置に前記端末装置からのデータを格納し、格納したデータを識別する前記データ識別情報を含むエントリを前記データ管理情報に追加することを特徴とする付記1記載の情報処理システム。
(付記3)
前記ディスク制御部は、
前記管理装置を介して振り分けられた前記端末装置から要求が、前記非活性磁気ディスク装置のいずれかに格納するデータの書き込みを示し、格納するデータの前記データ識別情報が前記データ管理情報に含まれ、前記削除データ管理情報に含まれる前記合計データサイズが前記第1閾値以下の場合、前記データ識別情報及びデータのサイズを前記削除データ管理情報に追加し、前記ディスクグループ状態情報が示す前記活性磁気ディスク装置に前記端末装置からのデータを格納し、格納したデータを識別する前記データ識別情報を含むエントリを前記データ管理情報に追加することを特徴とする付記1又は請求項2記載の情報処理システム。
(付記4)
前記ディスク制御部は、
前記管理装置を介して振り分けられた前記端末装置からの要求が、前記非活性磁気ディスク装置が記憶するデータの削除を示し、前記合計データサイズが前記第1閾値以下の場合、削除対象のデータを指定する前記削除管理情報と、削除対象のデータのサイズとを、削除対象のデータが格納された前記ディスク装置に対応する前記削除データ管理情報に追加し、削除対象のデータを識別する前記データ識別情報を含むエントリを前記データ管理情報から削除することを特徴とする付記1乃至付記3のいずれか1項記載の情報処理システム。
(付記5)
前記ディスク制御部は、
前記管理装置を介して振り分けられた前記端末装置からの要求が、前記活性磁気ディスク装置が記憶するデータの削除を示す場合、削除対象のデータを削除し、削除対象のデータのデータ識別情報を含むエントリを前記データ管理情報から削除することを特徴とする付記1乃至付記4のいずれか1項記載の情報処理システム。
(付記6)
前記ディスク制御部は、
前記管理装置を介して振り分けられた前記端末装置からの要求が、前記ディスク装置のいずれにも格納されていないデータの書き込みを示す場合、前記端末装置からのデータを前記活性磁気ディスク装置に格納し、書き込んだデータを識別する前記データ識別情報を含むエントリを前記データ管理情報に追加することを特徴とする付記1乃至付記5のいずれか1項記載の情報処理システム。
(付記7)
前記ディスク制御部は、
前記活性磁気ディスク装置へのデータの格納により前記活性磁気ディスク装置が記憶するデータのサイズの合計が第2閾値を超えた場合、前記活性磁気ディスク装置を前記非活性磁気ディスク装置に設定し、前記非活性磁気ディスクのうちデータを格納可能なディスク装置のいずれかを前記活性磁気ディスク装置に設定し、前記ディスクグループ状態情報を更新することを特徴とする付記3又は付記6記載の情報処理システム。
(付記8)
前記ディスクグループ状態情報は、前記非活性化磁気ディスク装置を前記活性化磁気ディスク装置に設定する順序を指定する順序情報を含み、
前記ディスク制御部は、前記順序情報に基づき前記非活性磁気ディスク装置を前記活性化磁気ディスク装置に設定することを特徴とする付記1乃至付記7のいずれか1項記載の情報処理システム。
(付記9)
前記ディスク制御部は、
前記合計データサイズが前記第1閾値を超え、前記削除データ管理情報が指定する削除対象のデータを全て削除した場合、データが削除された非活性磁気ディスク装置が、現在の活性磁気ディスク装置の次に活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新することを特徴とする付記1乃至付記8のいずれか1項記載の情報処理システム。
(付記10)
前記ディスク制御部は、
前記合計データサイズが前記第1閾値を超え、前記削除データ管理情報が指定する削除対象のデータを全て削除した場合、データが削除された非活性磁気ディスク装置が、データを格納可能な非活性磁気ディスクのうちの最後に活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新することを特徴とする付記1乃至付記8のいずれか1項記載の情報処理システム。
(付記11)
前記ディスク制御部は、
前記合計データサイズが前記第1閾値を超えたことに基づき削除対象のデータを削除する間、削除対象のデータが格納された前記非活性磁気ディスク装置を前記活性磁気ディスク装置に変更することを特徴とする付記1乃至付記10のいずれか1項記載の情報処理システム。
(付記12)
前記ディスク制御部は、
前記管理装置を介して振り分けられた前記端末装置からの要求が、前記ディスク装置のいずれかに格納したデータの読み出しを示す場合、読み出すデータの前記データ識別情報に基づき前記データ管理情報を検索し、読み出すデータを格納したディスク装置からデータを読み出すことを特徴とする付記1乃至付記11のいずれか1項記載の情報処理システム。
(付記13)
前記ディスク制御部は、
読み出すデータを格納したディスク装置が非活性磁気ディスク装置に設定されている場合、非活性磁気ディ非活性ディスク内のデータの削除・更新時に、削除対象データの情報を削除表に登録し、登録したデータサイズの合計が所定量を超えた場合、ディスクを活性化してデータを削除することで、ディスクの劣化を抑制するスク装置に設定されたディスク装置をデータを読み出す間、活性磁気ディスク装置に設定することを特徴とする付記12記載の情報処理システム。
(付記14)
複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置と、前記情報処理装置を管理する管理装置と、前記管理装置に接続された端末装置を有する情報処理システムの制御方法において、
前記管理装置が有する管理記憶部が、各磁気ディスク装置群を識別する磁気ディスク装置群識別情報と各情報処理装置を識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報と、所定の関数に基づき要求と前記各磁気ディスク装置群識別情報とを対応付けた要求対応表とを記憶し、
前記管理装置が有する管理制御部が、前記端末装置からの要求を、前記要求対応表に基づき、前記複数の磁気ディスク装置群のいずれかに振り分け、
前記複数の情報処理装置の各々が有する記憶部が、前記複数のディスク装置に格納するデータ毎にデータを識別するデータ識別情報とデータを格納するディスク装置とデータのサイズとを対応付けたデータ管理情報と、前記複数の磁気ディスク装置群がそれぞれ含む複数のディスク装置がモータの回転状態を維持した活性磁気ディスク装置又はモータの回転を停止させた複数の非活性磁気ディスク装置のいずれであるかを指定するディスクグループ状態情報と、前記管理装置を介して振り分けられた前記端末装置からの要求に含まれる前記複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、前記削除対象のデータのサイズとを含む削除データ管理情報とを記憶し、
前記複数の情報処理装置の各々が有するディスク制御部が、前記管理装置を介して振り分けられた前記端末装置からの要求に基づき、前記複数のディスク装置に格納するデータのいずれかを変更する場合、前記削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第1閾値を超えている場合、前記削除データ管理情報が指定する削除対象のデータを全て削除し、前記削除データ管理情報に含まれる前記削除データ指定情報を全て消去するとともに前記データ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新すること
を特徴とする情報処理システムの制御方法。
(付記15)
複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置と、前記情報処理装置を管理する管理装置と、前記管理装置に接続された端末装置を有し、前記管理装置が、各磁気ディスク装置群を識別する磁気ディスク装置群識別情報と各情報処理装置を識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報と、所定の関数に基づき要求と前記各磁気ディスク装置群識別情報とを対応付けた要求対応表とを記憶する管理記憶部と、前記端末装置からの要求を、前記要求対応表に基づき、前記複数の磁気ディスク装置群のいずれかに振り分ける管理制御部とを有する情報処理システムにおける前記情報処理装置の制御プログラムにおいて、
前記複数の情報処理装置の各々が有する記憶部に、前記複数のディスク装置に格納するデータ毎にデータを識別するデータ識別情報とデータを格納するディスク装置とデータのサイズとを対応付けたデータ管理情報と、前記複数の磁気ディスク装置群がそれぞれ含む複数のディスク装置がモータの回転状態を維持した活性磁気ディスク装置又はモータの回転を停止させた複数の非活性磁気ディスク装置のいずれであるかを指定するディスクグループ状態情報と、前記管理装置を介して振り分けられた前記端末装置からの要求に含まれる前記複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、前記削除対象のデータのサイズとを含む削除データ管理情報とを記憶させ、
前記複数の情報処理装置の各々が有するディスク制御部に、前記管理装置を介して振り分けられた前記端末装置からの要求に基づき、前記複数のディスク装置に格納するデータのいずれかを変更する場合、前記削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第1閾値を超えている場合、前記削除データ管理情報が指定する削除対象のデータを全て削除し、前記削除データ管理情報に含まれる前記削除データ指定情報を全て消去するとともに前記データ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新させること
を特徴とする情報処理装置の制御プログラム。
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずである。したがって、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。
A0−A19、B0−B19、C0−C19、D0−D19、P0−P19…ディスク装置;CPU0、CPU1、CPU2…プロセッサ;DELTBL…削除表;DGTBL…ディスクグループ表;DMTBL…データ管理表;DPa、DPb、DPc、DPd、DPp…ディスクプール;DSW…スイッチ;FESV…フロントエンドサーバ;Ga0−Ga3、Gb0−Gb3、Gc0−Gc3、Gd0−Gd3、Gp0−Gp3…磁気ディスク装置群;HATBL、HATBL2、HATBLp…ハッシュ表;MEM0、MEM1、MEM2…メモリ;NSW…ネットワークスイッチ;NW…ネットワーク;PRG0、PRG1…プログラム;SSVa、SSVb、SSVc、SSVp…ストレージサーバ;SVTBL…サーバ表;SYS1、SYS2、SYS3…情報処理システム;TM…端末装置

Claims (13)

  1. 複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置と、前記情報処理装置を管理する管理装置と、前記管理装置に接続された端末装置を有する情報処理システムにおいて、
    前記管理装置は、
    各磁気ディスク装置群を識別する磁気ディスク装置群識別情報と各情報処理装置を識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報と、所定の関数に基づき要求と前記各磁気ディスク装置群識別情報とを対応付けた要求対応表とを記憶する管理記憶部と、
    前記端末装置からの要求を、前記要求対応表に基づき、前記複数の磁気ディスク装置群のいずれかに振り分ける管理制御部とを有し、
    前記複数の情報処理装置の各々は、
    前記複数のディスク装置に格納するデータ毎にデータを識別するデータ識別情報とデータを格納するディスク装置とデータのサイズとを対応付けたデータ管理情報と、前記複数の磁気ディスク装置群がそれぞれ含む複数のディスク装置がモータの回転状態を維持した活性磁気ディスク装置又はモータの回転を停止させた複数の非活性磁気ディスク装置のいずれであるかを指定するディスクグループ状態情報と、前記管理装置を介して振り分けられた前記端末装置からの要求に含まれる前記複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、前記削除対象のデータのサイズとを含む削除データ管理情報とを記憶する記憶部と、
    前記管理装置を介して振り分けられた前記端末装置からの要求に基づき、前記複数のディスク装置に格納するデータのいずれかを変更する場合、前記削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第1閾値を超えている場合、前記削除データ管理情報が指定する削除対象のデータを全て削除し、前記削除データ管理情報に含まれる前記削除データ指定情報を全て消去するとともに前記データ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新するディスク制御部と、
    を有することを特徴とする情報処理システム。
  2. 前記ディスク制御部は、
    前記管理装置を介して振り分けられた前記端末装置から要求が、前記非活性磁気ディスク装置のいずれかに格納するデータの書き込みを示し、格納するデータの前記データ識別情報が前記データ管理情報に含まれ、前記削除データ管理情報に含まれる前記合計データサイズが前記第1閾値を超えている場合、前記削除データ管理情報が指定する削除対象のデータを全て削除し、前記削除データ管理情報に含まれる前記削除データ指定情報を全て消去するとともに前記データ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新し、前記ディスクグループ状態情報が示す前記活性磁気ディスク装置に前記端末装置からのデータを格納し、格納したデータを識別する前記データ識別情報を含むエントリを前記データ管理情報に追加することを特徴とする請求項1記載の情報処理システム。
  3. 前記ディスク制御部は、
    前記管理装置を介して振り分けられた前記端末装置から要求が、前記非活性磁気ディスク装置のいずれかに格納するデータの書き込みを示し、格納するデータの前記データ識別情報が前記データ管理情報に含まれ、前記削除データ管理情報に含まれる前記合計データサイズが前記第1閾値以下である場合、前記データ識別情報及びデータのサイズを前記削除データ管理情報に追加し、前記ディスクグループ状態情報が示す前記活性磁気ディスク装置に前記端末装置からのデータを格納し、格納したデータを識別する前記データ識別情報を含むエントリを前記データ管理情報に追加することを特徴とする請求項1又は請求項2記載の情報処理システム。
  4. 前記ディスク制御部は、
    前記管理装置を介して振り分けられた前記端末装置からの要求が、前記非活性磁気ディスク装置が記憶するデータの削除を示し、前記合計データサイズが前記第1閾値以下の場合、削除対象のデータを指定する前記削除データ指定情報と、削除対象のデータのサイズとを、削除対象のデータが格納された前記ディスク装置に対応する前記削除データ管理情報に追加し、削除対象のデータを識別する前記データ識別情報を含むエントリを前記データ管理情報から削除することを特徴とする請求項1乃至請求項3のいずれか1項記載の情報処理システム。
  5. 前記ディスク制御部は、
    前記管理装置を介して振り分けられた前記端末装置からの要求が、前記活性磁気ディスク装置が記憶するデータの削除を示す場合、削除対象のデータを削除し、削除対象のデータのデータ識別情報を含むエントリを前記データ管理情報から削除することを特徴とする請求項1乃至請求項4のいずれか1項記載の情報処理システム。
  6. 前記ディスク制御部は、
    前記管理装置を介して振り分けられた前記端末装置からの要求が、前記ディスク装置のいずれにも格納されていないデータの書き込みを示す場合、前記端末装置からのデータを前記活性磁気ディスク装置に格納し、書き込んだデータを識別する前記データ識別情報を含むエントリを前記データ管理情報に追加することを特徴とする請求項1乃至請求項5のいずれか1項記載の情報処理システム。
  7. 前記ディスク制御部は、
    前記活性磁気ディスク装置へのデータの格納により前記活性磁気ディスク装置が記憶するデータのサイズの合計が第2閾値を超えた場合、前記活性磁気ディスク装置を前記非活性磁気ディスク装置に設定し、前記非活性磁気ディスク装置のうちデータを格納可能なディスク装置のいずれかを前記活性磁気ディスク装置に設定し、前記ディスクグループ状態情報を更新することを特徴とする請求項3又は請求項6記載の情報処理システム。
  8. 前記ディスクグループ状態情報は、前記非活性磁気ディスク装置を前記活性磁気ディスク装置に設定する順序を指定する順序情報を含み、
    前記ディスク制御部は、前記順序情報に基づき前記非活性磁気ディスク装置を前記活性磁気ディスク装置に設定することを特徴とする請求項1乃至請求項7のいずれか1項記載の情報処理システム。
  9. 前記ディスク制御部は、
    前記合計データサイズが前記第1閾値を超え、前記削除データ管理情報が指定する削除対象のデータを全て削除した場合、データが削除された非活性磁気ディスク装置が、現在の活性磁気ディスク装置の次に活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新することを特徴とする請求項1乃至請求項8のいずれか1項記載の情報処理システム。
  10. 前記ディスク制御部は、
    前記合計データサイズが前記第1閾値を超え、前記削除データ管理情報が指定する削除対象のデータを全て削除した場合、データが削除された非活性磁気ディスク装置が、データを格納可能な非活性磁気ディスク装置のうちの最後に活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新することを特徴とする請求項1乃至請求項8のいずれか1項記載の情報処理システム。
  11. 前記ディスク制御部は、
    前記合計データサイズが前記第1閾値を超えたことに基づき削除対象のデータを削除する間、削除対象のデータが格納された前記非活性磁気ディスク装置を前記活性磁気ディスク装置に変更することを特徴とする請求項1乃至請求項10のいずれか1項記載の情報処理システム。
  12. 複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置と、前記情報処理装置を管理する管理装置と、前記管理装置に接続された端末装置を有する情報処理システムの制御方法において、
    前記管理装置が有する管理記憶部が、各磁気ディスク装置群を識別する磁気ディスク装置群識別情報と各情報処理装置を識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報と、所定の関数に基づき要求と前記各磁気ディスク装置群識別情報とを対応付けた要求対応表とを記憶し、
    前記管理装置が有する管理制御部が、前記端末装置からの要求を、前記要求対応表に基づき、前記複数の磁気ディスク装置群のいずれかに振り分け、
    前記複数の情報処理装置の各々が有する記憶部が、前記複数のディスク装置に格納するデータ毎にデータを識別するデータ識別情報とデータを格納するディスク装置とデータのサイズとを対応付けたデータ管理情報と、前記複数の磁気ディスク装置群がそれぞれ含む複数のディスク装置がモータの回転状態を維持した活性磁気ディスク装置又はモータの回転を停止させた複数の非活性磁気ディスク装置のいずれであるかを指定するディスクグループ状態情報と、前記管理装置を介して振り分けられた前記端末装置からの要求に含まれる前記複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、前記削除対象のデータのサイズとを含む削除データ管理情報とを記憶し、
    前記複数の情報処理装置の各々が有するディスク制御部が、前記管理装置を介して振り分けられた前記端末装置からの要求に基づき、前記複数のディスク装置に格納するデータのいずれかを変更する場合、前記削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第1閾値を超えている場合、前記削除データ管理情報が指定する削除対象のデータを全て削除し、前記削除データ管理情報に含まれる前記削除データ指定情報を全て消去するとともに前記データ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新すること
    を特徴とする情報処理システムの制御方法。
  13. 複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置と、前記情報処理装置を管理する管理装置と、前記管理装置に接続された端末装置を有し、前記管理装置が、各磁気ディスク装置群を識別する磁気ディスク装置群識別情報と各情報処理装置を識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報と、所定の関数に基づき要求と前記各磁気ディスク装置群識別情報とを対応付けた要求対応表とを記憶する管理記憶部と、前記端末装置からの要求を、前記要求対応表に基づき、前記複数の磁気ディスク装置群のいずれかに振り分ける管理制御部とを有する情報処理システムにおける前記情報処理装置の制御プログラムにおいて、
    前記複数の情報処理装置の各々が有する記憶部に、前記複数のディスク装置に格納するデータ毎にデータを識別するデータ識別情報とデータを格納するディスク装置とデータのサイズとを対応付けたデータ管理情報と、前記複数の磁気ディスク装置群がそれぞれ含む複数のディスク装置がモータの回転状態を維持した活性磁気ディスク装置又はモータの回転を停止させた複数の非活性磁気ディスク装置のいずれであるかを指定するディスクグループ状態情報と、前記管理装置を介して振り分けられた前記端末装置からの要求に含まれる前記複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、前記削除対象のデータのサイズとを含む削除データ管理情報とを記憶させ、
    前記複数の情報処理装置の各々が有するディスク制御部に、前記管理装置を介して振り分けられた前記端末装置からの要求に基づき、前記複数のディスク装置に格納するデータのいずれかを変更する場合、前記削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第1閾値を超えている場合、前記削除データ管理情報が指定する削除対象のデータを全て削除し、前記削除データ管理情報に含まれる前記削除データ指定情報を全て消去するとともに前記データ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新させること
    を特徴とする情報処理装置の制御プログラム。
JP2014069110A 2014-03-28 2014-03-28 情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラム Expired - Fee Related JP6260401B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014069110A JP6260401B2 (ja) 2014-03-28 2014-03-28 情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラム
US14/636,622 US9395930B2 (en) 2014-03-28 2015-03-03 Information processing system, control method of information processing system, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014069110A JP6260401B2 (ja) 2014-03-28 2014-03-28 情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラム

Publications (2)

Publication Number Publication Date
JP2015191498A JP2015191498A (ja) 2015-11-02
JP6260401B2 true JP6260401B2 (ja) 2018-01-17

Family

ID=54190411

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014069110A Expired - Fee Related JP6260401B2 (ja) 2014-03-28 2014-03-28 情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラム

Country Status (2)

Country Link
US (1) US9395930B2 (ja)
JP (1) JP6260401B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9619157B2 (en) * 2014-04-03 2017-04-11 Analysis Solution Llc High-speed data storage
JP6545017B2 (ja) * 2015-06-30 2019-07-17 キヤノン株式会社 情報処理装置、その制御方法、および制御プログラム、並びに情報処理システム
EP3367244B1 (en) * 2015-11-16 2023-10-25 Huawei Technologies Co., Ltd. Storage system, storage device, and hard disk drive scheduling method
KR101919666B1 (ko) * 2016-11-16 2018-11-16 한양대학교 에리카산학협력단 액티브 그룹을 이용한 분산 파일 시스템 및 그 방법

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002297320A (ja) 2001-03-30 2002-10-11 Toshiba Corp ディスクアレイ装置
JP4300956B2 (ja) 2003-09-30 2009-07-22 富士ゼロックス株式会社 情報処理装置、情報処理方法、記録媒体、プログラム
US7380088B2 (en) * 2005-02-04 2008-05-27 Dot Hill Systems Corp. Storage device method and apparatus
JP4386932B2 (ja) * 2007-08-17 2009-12-16 富士通株式会社 ストレージ管理プログラム、ストレージ管理装置およびストレージ管理方法
JP5379988B2 (ja) 2008-03-28 2013-12-25 株式会社日立製作所 ストレージシステム
US8074014B2 (en) * 2008-03-31 2011-12-06 Microsoft Corporation Storage systems using write off-loading
WO2009122677A1 (ja) * 2008-04-02 2009-10-08 パナソニック株式会社 画像記録装置
US20100174865A1 (en) * 2009-01-06 2010-07-08 International Business Machines Corporation Dynamic data security erasure
US8631200B2 (en) * 2009-03-20 2014-01-14 Netapp, Inc. Method and system for governing an enterprise level green storage system drive technique
WO2010116419A1 (en) * 2009-04-10 2010-10-14 Hitachi, Ltd. Storage apparatus and method for shredding storage medium
US8122217B2 (en) * 2009-05-06 2012-02-21 International Business Machines Corporation Method of a full coverage low power mode for storage systems storing replicated data items
US9063967B2 (en) * 2013-01-10 2015-06-23 Pure Storage, Inc. Performing copies in a storage system
JP2015076060A (ja) * 2013-10-11 2015-04-20 富士通株式会社 情報処理システム、管理装置の制御プログラムおよび情報処理システムの制御方法
US9244627B2 (en) * 2013-10-15 2016-01-26 Synetic Technologies, Inc. Secure data erasure system for erasing a plurality of data storage devices

Also Published As

Publication number Publication date
JP2015191498A (ja) 2015-11-02
US20150277801A1 (en) 2015-10-01
US9395930B2 (en) 2016-07-19

Similar Documents

Publication Publication Date Title
RU2658886C1 (ru) Способ управления файлами, распределенная система хранения и узел управления
US10671285B2 (en) Tier based data file management
TWI596603B (zh) 用於快取壓縮資料之設備、系統及方法
US11157325B2 (en) System and method for seamless integration of automated orchestrator
US10789019B2 (en) Storage device capable of managing jobs without intervention of a processor
US20140189032A1 (en) Computer system and method of controlling computer system
US20130145089A1 (en) Cache memory management in a flash cache architecture
JP6260401B2 (ja) 情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラム
US9870322B2 (en) Memory mapping for object-based storage devices
JP2010186477A (ja) メモリシステム及びその磨耗度管理方法
US20130073669A1 (en) Peer-to-peer data migration
US9436494B2 (en) Preserving an independent virtual disk
WO2024099448A1 (zh) 内存释放、内存恢复方法、装置、计算机设备及存储介质
US20200394304A1 (en) Optimizing storage system performance using storage device topology
US9032402B2 (en) Managing an independent virtual disk
US9396128B2 (en) System and method for dynamic allocation of unified cache to one or more logical units
US9715455B1 (en) Hint selection of a cache policy
US10191855B2 (en) Caching systems and methods for page reclamation with simulated NVDRAM in host bus adapters
JP2020123039A (ja) メモリシステムおよび制御方法
CN111475099A (zh) 一种数据存储方法、装置及其设备
US20170357657A1 (en) Systems and methods for implementing dynamic file systems
CN114442961B (zh) 数据处理方法、装置、计算机设备及存储介质
CN112654965A (zh) 动态模块的外部分页和交换
US9778870B2 (en) Power management for a distributed storage system accessible by a cluster in a virtualized computing environment
EP3485362B1 (en) Maintaining data associated with a storage device related applications

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161206

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7426

Effective date: 20170803

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20170803

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170804

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171003

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171031

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171127

R150 Certificate of patent or registration of utility model

Ref document number: 6260401

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees