(57)【要約】【課題】  磁気ディスク装置に記憶されたデータの削除時にディスクのスピンアップ及びスピンダウンの頻度を下げることで、ディスクの劣化を抑制する。【解決手段】  複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置は、管理装置を介して振り分けられた端末装置からの要求に基づき、複数のディスク装置に格納するデータのいずれかを変更する場合、削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第１閾値を超えている場合、削除データ管理情報が指定する削除対象のデータを全て削除し、削除データ管理情報に含まれる削除データ指定情報を全て消去するとともにデータ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるようにディスクグループ状態情報を更新するディスク制御部を有する。【選択図】    図１
2015191498.tif 000002
【特許請求の範囲】
【請求項１】
複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置と、前記情報処理装置を管理する管理装置と、前記管理装置に接続された端末装置を有する情報処理システムにおいて、
前記管理装置は、
各磁気ディスク装置群を識別する磁気ディスク装置群識別情報と各情報処理装置を識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報と、所定の関数に基づき要求と前記各磁気ディスク装置群識別情報とを対応付けた要求対応表とを記憶する管理記憶部と、
前記端末装置からの要求を、前記要求対応表に基づき、前記複数の磁気ディスク装置群のいずれかに振り分ける管理制御部とを有し、
前記複数の情報処理装置の各々は、
前記複数のディスク装置に格納するデータ毎にデータを識別するデータ識別情報とデータを格納するディスク装置とデータのサイズとを対応付けたデータ管理情報と、前記複数の磁気ディスク装置群がそれぞれ含む複数のディスク装置がモータの回転状態を維持した活性磁気ディスク装置又はモータの回転を停止させた複数の非活性磁気ディスク装置のいずれであるかを指定するディスクグループ状態情報と、前記管理装置を介して振り分けられた前記端末装置からの要求に含まれる前記複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、前記削除対象のデータのサイズとを含む削除データ管理情報とを記憶する記憶部と、
前記管理装置を介して振り分けられた前記端末装置からの要求に基づき、前記複数のディスク装置に格納するデータのいずれかを変更する場合、前記削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第１閾値を超えている場合、前記削除データ管理情報が指定する削除対象のデータを全て削除し、前記削除データ管理情報に含まれる前記削除データ指定情報を全て消去するとともに前記データ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新するディスク制御部と、
を有することを特徴とする情報処理システム。
【請求項２】
前記ディスク制御部は、
前記管理装置を介して振り分けられた前記端末装置から要求が、前記非活性磁気ディスク装置のいずれかに格納するデータの書き込みを示し、格納するデータの前記データ識別情報が前記データ管理情報に含まれ、前記削除データ管理情報に含まれる前記合計データサイズが前記第１閾値を超えている場合、前記削除データ管理情報が指定する削除対象のデータを全て削除し、前記削除データ管理情報に含まれる前記削除データ指定情報を全て消去するとともに前記データ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新し、前記ディスクグループ状態情報が示す前記活性磁気ディスク装置に前記端末装置からのデータを格納し、格納したデータを識別する前記データ識別情報を含むエントリを前記データ管理情報に追加することを特徴とする請求項１記載の情報処理システム。
【請求項３】
前記ディスク制御部は、
前記管理装置を介して振り分けられた前記端末装置から要求が、前記非活性磁気ディスク装置のいずれかに格納するデータの書き込みを示し、格納するデータの前記データ識別情報が前記データ管理情報に含まれ、前記削除データ管理情報に含まれる前記合計データサイズが前記第１閾値以下である場合、前記データ識別情報及びデータのサイズを前記削除データ管理情報に追加し、前記ディスクグループ状態情報が示す前記活性磁気ディスク装置に前記端末装置からのデータを格納し、格納したデータを識別する前記データ識別情報を含むエントリを前記データ管理情報に追加することを特徴とする請求項１又は請求項２記載の情報処理システム。
【請求項４】
前記ディスク制御部は、
前記管理装置を介して振り分けられた前記端末装置からの要求が、前記非活性磁気ディスク装置が記憶するデータの削除を示し、前記合計データサイズが前記第１閾値以下の場合、削除対象のデータを指定する前記削除管理情報と、削除対象のデータのサイズとを、削除対象のデータが格納された前記ディスク装置に対応する前記削除データ管理情報に追加し、削除対象のデータを識別する前記データ識別情報を含むエントリを前記データ管理情報から削除することを特徴とする請求項１乃至請求項３のいずれか１項記載の情報処理システム。
【請求項５】
前記ディスク制御部は、
前記管理装置を介して振り分けられた前記端末装置からの要求が、前記活性磁気ディスク装置が記憶するデータの削除を示す場合、削除対象のデータを削除し、削除対象のデータのデータ識別情報を含むエントリを前記データ管理情報から削除することを特徴とする請求項１乃至請求項４のいずれか１項記載の情報処理システム。
【請求項６】
前記ディスク制御部は、
前記管理装置を介して振り分けられた前記端末装置からの要求が、前記ディスク装置のいずれにも格納されていないデータの書き込みを示す場合、前記端末装置からのデータを前記活性磁気ディスク装置に格納し、書き込んだデータを識別する前記データ識別情報を含むエントリを前記データ管理情報に追加することを特徴とする請求項１乃至請求項５のいずれか１項記載の情報処理システム。
【請求項７】
前記ディスク制御部は、
前記活性磁気ディスク装置へのデータの格納により前記活性磁気ディスク装置が記憶するデータのサイズの合計が第２閾値を超えた場合、前記活性磁気ディスク装置を前記非活性磁気ディスク装置に設定し、前記非活性磁気ディスクのうちデータを格納可能なディスク装置のいずれかを前記活性磁気ディスク装置に設定し、前記ディスクグループ状態情報を更新することを特徴とする請求項３又は請求項６記載の情報処理システム。
【請求項８】
前記ディスクグループ状態情報は、前記非活性化磁気ディスク装置を前記活性化磁気ディスク装置に設定する順序を指定する順序情報を含み、
前記ディスク制御部は、前記順序情報に基づき前記非活性磁気ディスク装置を前記活性化磁気ディスク装置に設定することを特徴とする請求項１乃至請求項７のいずれか１項記載の情報処理システム。
【請求項９】
前記ディスク制御部は、
前記合計データサイズが前記第１閾値を超え、前記削除データ管理情報が指定する削除対象のデータを全て削除した場合、データが削除された非活性磁気ディスク装置が、現在の活性磁気ディスク装置の次に活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新することを特徴とする請求項１乃至請求項８のいずれか１項記載の情報処理システム。
【請求項１０】
前記ディスク制御部は、
前記合計データサイズが前記第１閾値を超え、前記削除データ管理情報が指定する削除対象のデータを全て削除した場合、データが削除された非活性磁気ディスク装置が、データを格納可能な非活性磁気ディスクのうちの最後に活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新することを特徴とする請求項１乃至請求項８のいずれか１項記載の情報処理システム。
【請求項１１】
前記ディスク制御部は、
前記合計データサイズが前記第１閾値を超えたことに基づき削除対象のデータを削除する間、削除対象のデータが格納された前記非活性磁気ディスク装置を前記活性磁気ディスク装置に変更することを特徴とする請求項１乃至請求項１０のいずれか１項記載の情報処理システム。
【請求項１２】
複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置と、前記情報処理装置を管理する管理装置と、前記管理装置に接続された端末装置を有する情報処理システムの制御方法において、
前記管理装置が有する管理記憶部が、各磁気ディスク装置群を識別する磁気ディスク装置群識別情報と各情報処理装置を識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報と、所定の関数に基づき要求と前記各磁気ディスク装置群識別情報とを対応付けた要求対応表とを記憶し、
前記管理装置が有する管理制御部が、前記端末装置からの要求を、前記要求対応表に基づき、前記複数の磁気ディスク装置群のいずれかに振り分け、
前記複数の情報処理装置の各々が有する記憶部が、前記複数のディスク装置に格納するデータ毎にデータを識別するデータ識別情報とデータを格納するディスク装置とデータのサイズとを対応付けたデータ管理情報と、前記複数の磁気ディスク装置群がそれぞれ含む複数のディスク装置がモータの回転状態を維持した活性磁気ディスク装置又はモータの回転を停止させた複数の非活性磁気ディスク装置のいずれであるかを指定するディスクグループ状態情報と、前記管理装置を介して振り分けられた前記端末装置からの要求に含まれる前記複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、前記削除対象のデータのサイズとを含む削除データ管理情報とを記憶し、
前記複数の情報処理装置の各々が有するディスク制御部が、前記管理装置を介して振り分けられた前記端末装置からの要求に基づき、前記複数のディスク装置に格納するデータのいずれかを変更する場合、前記削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第１閾値を超えている場合、前記削除データ管理情報が指定する削除対象のデータを全て削除し、前記削除データ管理情報に含まれる前記削除データ指定情報を全て消去するとともに前記データ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新すること
を特徴とする情報処理システムの制御方法。
【請求項１３】
複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置と、前記情報処理装置を管理する管理装置と、前記管理装置に接続された端末装置を有し、前記管理装置が、各磁気ディスク装置群を識別する磁気ディスク装置群識別情報と各情報処理装置を識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報と、所定の関数に基づき要求と前記各磁気ディスク装置群識別情報とを対応付けた要求対応表とを記憶する管理記憶部と、前記端末装置からの要求を、前記要求対応表に基づき、前記複数の磁気ディスク装置群のいずれかに振り分ける管理制御部とを有する情報処理システムにおける前記情報処理装置の制御プログラムにおいて、
前記複数の情報処理装置の各々が有する記憶部に、前記複数のディスク装置に格納するデータ毎にデータを識別するデータ識別情報とデータを格納するディスク装置とデータのサイズとを対応付けたデータ管理情報と、前記複数の磁気ディスク装置群がそれぞれ含む複数のディスク装置がモータの回転状態を維持した活性磁気ディスク装置又はモータの回転を停止させた複数の非活性磁気ディスク装置のいずれであるかを指定するディスクグループ状態情報と、前記管理装置を介して振り分けられた前記端末装置からの要求に含まれる前記複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、前記削除対象のデータのサイズとを含む削除データ管理情報とを記憶させ、
前記複数の情報処理装置の各々が有するディスク制御部に、前記管理装置を介して振り分けられた前記端末装置からの要求に基づき、前記複数のディスク装置に格納するデータのいずれかを変更する場合、前記削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第１閾値を超えている場合、前記削除データ管理情報が指定する削除対象のデータを全て削除し、前記削除データ管理情報に含まれる前記削除データ指定情報を全て消去するとともに前記データ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新させること
を特徴とする情報処理装置の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラムに関する。
【背景技術】
【０００２】
ディスク装置から削除するデータの情報が登録された管理表を参照してデータを上書きにより削除し、削除するデータを示す情報が管理表にない状態でアクセスが所定時間ない場合、省エネルギーモードに移行する手法が提案されている（例えば、特許文献１参照）。
【０００３】
ストレージシステムにおいて、省電力モード中の論理ボリュームの削除が要求された場合、要求を実行待ちのタスクに登録し、通常モードに復帰後に、登録されたタスクにしたがって論理ボリュームを削除する手法が提案されている（例えば、特許文献２参照）。
【０００４】
ディスク装置に掛かる負荷の状況を監視し、負荷が閾値以下の場合、ディスク装置を省電力モードに移行させる手法が提案されている（例えば、特許文献３参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−１０７８５６号公報
【特許文献２】特開２００９−２３８１５９号公報
【特許文献３】特開２００２−２９７３２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
例えば、省電力モードの移行によりスピンダウンした磁気ディスク装置が記憶したデータの削除は、磁気ディスク装置をスピンアップして通常モードに復帰した後、実行される。データを削除する削除要求が繰り返し発生し、スピンアップとスピンダウンとが頻繁に行われると、ディスクの劣化は進む。
【０００７】
本件開示の情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラムは、磁気ディスク装置に記憶されたデータの削除時にディスクのスピンアップ及びスピンダウンの頻度を下げることで、ディスクの劣化を抑制することを目的とする。
【課題を解決するための手段】
【０００８】
一つの観点によれば、複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置と、情報処理装置を管理する管理装置と、管理装置に接続された端末装置を有する情報処理システムにおいて、管理装置は、各磁気ディスク装置群を識別する磁気ディスク装置群識別情報と各情報処理装置を識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報と、所定の関数に基づき要求と各磁気ディスク装置群識別情報とを対応付けた要求対応表とを記憶する管理記憶部と、端末装置からの要求を、要求対応表に基づき、複数の磁気ディスク装置群のいずれかに振り分ける管理制御部とを有し、複数の情報処理装置の各々は、複数のディスク装置に格納するデータ毎にデータを識別するデータ識別情報とデータを格納するディスク装置とデータのサイズとを対応付けたデータ管理情報と、複数の磁気ディスク装置群がそれぞれ含む複数のディスク装置がモータの回転状態を維持した活性磁気ディスク装置又はモータの回転を停止させた複数の非活性磁気ディスク装置のいずれであるかを指定するディスクグループ状態情報と、管理装置を介して振り分けられた端末装置からの要求に含まれる複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、削除対象のデータのサイズとを含む削除データ管理情報とを記憶する記憶部と、管理装置を介して振り分けられた端末装置からの要求に基づき、複数のディスク装置に格納するデータのいずれかを変更する場合、削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第１閾値を超えている場合、削除データ管理情報が指定する削除対象のデータを全て削除し、削除データ管理情報に含まれる削除データ指定情報を全て消去するとともにデータ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるようにディスクグループ状態情報を更新するディスク制御部とを有する。
【０００９】
別の観点によれば、複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置と、情報処理装置を管理する管理装置と、管理装置に接続された端末装置を有する情報処理システムの制御方法は、管理装置が有する管理記憶部が、各磁気ディスク装置群を識別する磁気ディスク装置群識別情報と各情報処理装置を識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報と、所定の関数に基づき要求と各磁気ディスク装置群識別情報とを対応付けた要求対応表とを記憶し、管理装置が有する管理制御部が、端末装置からの要求を、要求対応表に基づき、複数の磁気ディスク装置群のいずれかに振り分け、複数の情報処理装置の各々が有する記憶部が、複数のディスク装置に格納するデータ毎にデータを識別するデータ識別情報とデータを格納するディスク装置とデータのサイズとを対応付けたデータ管理情報と、複数の磁気ディスク装置群がそれぞれ含む複数のディスク装置がモータの回転状態を維持した活性磁気ディスク装置又はモータの回転を停止させた複数の非活性磁気ディスク装置のいずれであるかを指定するディスクグループ状態情報と、管理装置を介して振り分けられた端末装置からの要求に含まれる複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、削除対象のデータのサイズとを含む削除データ管理情報とを記憶し、複数の情報処理装置の各々が有するディスク制御部が、管理装置を介して振り分けられた端末装置からの要求に基づき、複数のディスク装置に格納するデータのいずれかを変更する場合、削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第１閾値を超えている場合、削除データ管理情報が指定する削除対象のデータを全て削除し、削除データ管理情報に含まれる削除データ指定情報を全て消去するとともにデータ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるようにディスクグループ状態情報を更新する。
【００１０】
さらなる別の観点によれば、複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置と、情報処理装置を管理する管理装置と、管理装置に接続された端末装置を有し、管理装置が、各磁気ディスク装置群を識別する磁気ディスク装置群識別情報と各情報処理装置を識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報と、所定の関数に基づき要求と各磁気ディスク装置群識別情報とを対応付けた要求対応表とを記憶する管理記憶部と、端末装置からの要求を、要求対応表に基づき、複数の磁気ディスク装置群のいずれかに振り分ける管理制御部とを有する情報処理システムにおける情報処理装置の制御プログラムは、複数の情報処理装置の各々が有する記憶部に、複数のディスク装置に格納するデータ毎にデータを識別するデータ識別情報とデータを格納するディスク装置とデータのサイズとを対応付けたデータ管理情報と、複数の磁気ディスク装置群がそれぞれ含む複数のディスク装置がモータの回転状態を維持した活性磁気ディスク装置又はモータの回転を停止させた複数の非活性磁気ディスク装置のいずれであるかを指定するディスクグループ状態情報と、管理装置を介して振り分けられた端末装置からの要求に含まれる複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、削除対象のデータのサイズとを含む削除データ管理情報とを記憶させ、複数の情報処理装置の各々が有するディスク制御部に、管理装置を介して振り分けられた端末装置からの要求に基づき、複数のディスク装置に格納するデータのいずれかを変更する場合、削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第１閾値を超えている場合、削除データ管理情報が指定する削除対象のデータを全て削除し、削除データ管理情報に含まれる削除データ指定情報を全て消去するとともにデータ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるようにディスクグループ状態情報を更新させる。
【発明の効果】
【００１１】
本件開示の情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラムは、磁気ディスク装置に記憶されたデータの削除時にディスクのスピンアップ及びスピンダウンの頻度を下げることで、ディスクの劣化を抑制することができる。
【図面の簡単な説明】
【００１２】
【図１】情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラムの一実施形態を示す図である。
【図２】図１に示すハッシュ表の例を示す図である。
【図３】図２に示すハッシュ表により示されるハッシュ空間の例を示す図である。
【図４】図１に示すディスクプールのハッシュリングの例を示す図である。
【図５】図１に示すサーバ表の例を示す図である。
【図６】図１に示すディスクグループ表の例を示す図である。
【図７】図１に示すデータ管理表の例を示す図である。
【図８】図１に示す削除表の例を示す図である。
【図９】図１に示すフロントエンドサーバの動作の例を示す図である。
【図１０】図９に示す書き込み処理及び削除処理の例を示す図である。
【図１１】図９に示す読み出し処理の例を示す図である。
【図１２】図１０において書き込み要求を受信したストレージサーバが実行する書き込み処理の例を示す図である。
【図１３】図１２に示す新規書き込み処理の例を示す図である。
【図１４】図１０において削除要求を受信したストレージサーバが実行する削除処理の例を示す図である。
【図１５】図１２及び図１４に示すファイルの削除処理の例を示す図である。
【図１６】図１５によるデータの削除処理におけるディスクグループ表に格納される情報の変化の例を示す図である。
【図１７】図１２及び図１４に示すファイルの削除処理の別の例を示す図である。
【図１８】図１０において読み出し要求を受信したストレージサーバが実行する読み出し処理の例を示す図である。
【図１９】情報処理システムの別の例を示す図である。
【図２０】情報処理システムのさらなる別の例を示す図である。
【図２１】情報処理システムのさらなる別の例を示す図である。
【図２２】図２１に示すハッシュ表の例を示す図である。
【図２３】図２１に示すディスクプールのハッシュリングの例を示す図である。
【発明を実施するための形態】
【００１３】
以下、図面を用いて実施形態を説明する。
【００１４】
図１は、情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラムの一実施形態を示す。
【００１５】
図１に示す実施形態の情報処理システムＳＹＳ１は、フロントエンドサーバＦＥＳＶ、ストレージサーバＳＳＶ（ＳＳＶａ、ＳＳＶｂ、ＳＳＶｃ）、ディスクプールＤＰ（ＤＰａ、ＤＰｂ、ＤＰｃ）及び端末装置ＴＭを有する。例えば、フロントエンドサーバＦＥＳＶは、ネットワークスイッチＮＳＷを介してストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃに接続される。例えば、フロントエンドサーバＦＥＳＶが、ＬＡＮ（Local Area Network）を介してストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃに接続される場合、ネットワークスイッチＮＳＷは、レイヤ２スイッチである。又、フロントエンドサーバＦＥＳＶは、インターネット又はイントラネット等のネットワークＮＷを介して端末装置ＴＭに接続される。なお、フロントエンドサーバＦＥＳＶは、ネットワークスイッチＮＳＷを介さずにストレージサーバＳＳＶに接続されてもよく、ネットワークＮＷを介さずに端末装置ＴＭに接続されてもよい。
【００１６】
端末装置ＴＭは、情報処理システムＳＹＳ１をネットワークストレージシステムとして使用するアプリケーションプログラムを実行するコンピュータ装置に含まれ、あるいは、アプリケーションプログラムを使用するユーザのコンピュータに含まれる。なお、情報処理システムＳＹＳ１は、ネットワークＮＷを介して複数の端末装置ＴＭに接続されてもよい。例えば、情報処理システムＳＹＳ１は、データをオブジェクトして管理するオブジェクトストレージサービス又はオブジェクトストレージにより構築されるクラウドストレージサービスに使用される。
【００１７】
ディスクプールＤＰａは、複数のディスク装置Ａ（Ａ０−Ａ１９）をそれぞれ含む複数の磁気ディスク装置群Ｇａ（Ｇａ０、Ｇａ１、Ｇａ２、Ｇａ３）を有する。ディスクプールＤＰｂは、複数のディスク装置Ｂ（Ｂ０−Ｂ１９）をそれぞれ含む複数の磁気ディスク装置群Ｇｂ（Ｇｂ０、Ｇｂ１、Ｇｂ２、Ｇｂ３）を有する。ディスクプールＤＰｃは、複数のディスク装置Ｃ（Ｃ０−Ｃ１９）をそれぞれ含む複数の磁気ディスク装置群Ｇｃ（Ｇｃ０、Ｇｃ１、Ｇｃ２、Ｇｃ３）を有する。
【００１８】
なお、ディスクプールＤＰは、磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃに共通に設けられてもよい。又、磁気ディスク装置群Ｇａは、ストレージサーバＳＶＶａに含まれてもよく、磁気ディスク装置群Ｇｂは、ストレージサーバＳＶＶｂに含まれてもよく、磁気ディスク装置群Ｇｃは、ストレージサーバＳＶＶｃに含まれてもよい。各磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃの数は、４個に限定されず、ディスク装置Ａ、Ｂ、Ｃの数は、２０個に限定されず、各磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃに含まれるディスク装置Ａ、Ｂ、Ｃの数は、５個に限定されない。
【００１９】
例えば、図１に示す情報処理システムＳＹＳ１は、データをディスクプールＤＰａ、ＤＰｂ、ＤＰｃ内のディスク装置Ａ、Ｂ、Ｃのそれぞれに格納する。すなわち、情報処理システムＳＹＳ１は、ディスクプールＤＰａ、ＤＰｂ、ＤＰｃに３つのデータ（レプリカデータ）を冗長に保持する。
【００２０】
太い実線で示すディスク装置Ａ４−Ａ７、Ｂ４−Ｂ７、Ｃ４−Ｃ７は、ディスク（プラッタとも称される）を回転させるスピンドルモータの回転状態を維持したスピンアップ状態であることを示す。情報処理システムＳＹＳ１は、ディスク装置群Ａ０−Ａ１９、Ｂ０−Ｂ１９、Ｃ０−Ｃ１９のそれぞれについて、データの書き込み対象であるアクティブ状態のディスク装置と、データの書き込みの非対象であるインアクティブ状態のディスク装置とに分類する。アクティブ状態のディスク装置は、スピンアップ状態であり、なおかつデータを書き込む準備が完了しているものとする。例えば、アクティブ状態のディスク装置は、ファイルシステム上にマウントが完了され、オペレーティングシステムによるファイルのアクセスが可能である。すなわち、アクティブ状態であるディスク装置Ａ４−Ａ７、Ｂ４−Ｂ７、Ｃ４−Ｃ７は、スピンアップ状態であり、なおかつファイルシステム上にマウントされている。細い破線で示すディスク装置Ａ８−Ａ１９、Ｂ８−Ｂ１９、Ｃ８−Ｂ１９は、スピンドルモータの回転を停止したスピンダウン状態である。スピンダウン状態のディスク装置Ａ８−Ａ１９、Ｂ８−Ｂ１９、Ｃ８−Ｂ１９は、ファイルシステムからアンマウントされたインアクティブ状態である。太い破線で示す磁気ディスク装置Ａ０−Ａ３、Ｂ０−Ｂ３、Ｃ０−Ｃ３は、所定量（図１３に示す第２閾値）を超えるデータが格納され、スピンダウン状態に設定されたことを示す。
【００２１】
例えば、アクティブ状態のディスク装置Ａ４−Ａ７に所定量のデータが格納された場合、ディスク装置Ａ４−Ａ７はインアクティブ状態に設定され、ディスクＡ８−Ａ１１がアクティブ状態に設定される。ディスク装置Ａ０−Ａ１９をアクティブ状態に設定する順序は、図６及び図１７で説明する。この後、端末装置ＴＭから送信されるデータは、ディスク装置Ａ８−Ａ１１に格納される。アクティブ状態のディスク装置Ｂ４−Ｂ７、Ｃ４−Ｃ７も、ディスク装置Ａ４−Ａ７と同様に、所定量のデータが格納された場合インアクティブ状態に設定される。アクティブ状態のディスク装置Ａ、Ｂ、Ｃの数を制限することで、情報処理システムＳＹＳ１の消費電力を抑制することができる。
【００２２】
フロントエンドサーバＦＥＳＶは、端末装置ＴＭからの要求に基づいて、ストレージサーバＳＳＶを制御し、ストレージサーバＳＳＶ及びディスクプールＤＰ内のディスク装置Ａ、Ｂ、Ｃをネットワークストレージとして動作させる。端末装置ＴＭからの要求は、データの書き込み要求、データの削除要求及びデータの読み出し要求を含む。
【００２３】
なお、ストレージサーバＳＳＶは、ディスク装置Ａ、Ｂ、Ｃに新たなデータを書き込む書き込み要求に基づき、データの書き込み処理を実行する。但し、ストレージサーバＳＳＶは、ディスク装置Ａ、Ｂ、Ｃが記憶するデータを書き替える書き込み要求に基づきデータの更新処理を実行する。更新処理では、ストレージサーバＳＳＶは、データの削除処理とデータの書き込み処理とを実行する。また、ストレージサーバＳＳＶは、ディスク装置Ａ、Ｂ、Ｃが記憶するデータを削除する削除要求に基づき、データを直ぐに削除しない。ストレージサーバＳＳＶは、削除するデータの量が所定量を超えたことに基づきデータの削除処理を実行する。ストレージサーバＳＳＶが実行するデータの書き込み処理、データの更新処理及びデータの削除処理の例は、図１３から図１７に示される。
【００２４】
フロントエンドサーバＦＥＳＶは、プロセッサＣＰＵ（Central Processing Unit）０と、ハッシュ表ＨＡＴＢＬ、サーバ表ＳＶＴＢＬ及びプログラムＰＲＧ０が格納される領域を含むメモリＭＥＭ０とを有する。プログラムＰＧＭ０は、プロセッサＣＰＵ０により実行され、フロントエンドサーバＦＥＳＶの機能を実現する。フロントエンドサーバＦＥＳＶは、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃを管理する管理装置の一例である。
【００２５】
例えば、ハッシュ表ＨＡＴＢＬには、端末装置ＴＭから送信されるデータに基づいて得られるハッシュ値とディスク装置Ａ０−Ａ１９との対応付けを示す情報が格納される。例えば、フロントエンドサーバＦＥＳＶは、端末装置ＴＭから送信されるデータを識別する識別子（例えば、データのパス名やファイル名）をハッシュ関数に入力することでハッシュ値を得る。そして、フロントエンドサーバＦＥＳＶは、得られたハッシュ値に基づいて、データが格納される磁気ディスク装置群Ｇａを決定する。例えば、磁気ディスク装置群Ｇａ０、Ｇａ１、Ｇａ２、Ｇａ３は、互いに異なるハッシュ空間に割り当てられる。同様に、磁気ディスク装置群Ｇｂ０、Ｇｂ１、Ｇｂ２、Ｇｂ３は、互いに異なるハッシュ空間に割り当てられ、磁気ディスク装置群Ｇｃ０、Ｇｃ１、Ｇｃ２、Ｇｃ３は、互いに異なるハッシュ空間に割り当てられる。ハッシュ表ＨＡＴＢＬの例は、図２に示す。
【００２６】
例えば、サーバ表ＳＶＴＢＬには、磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃと、磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃを接続するストレージサーバＳＳＶとの対応付けを示す情報が格納される。サーバ表ＳＶＴＢＬの例は、図５に示す。
【００２７】
各ストレージサーバＳＳＶは、プロセッサＣＰＵ１と、ディスクグループ表ＤＧＴＢＬ、データ管理表ＤＭＴＢＬ、削除表ＤＥＬＴＢＬ及びプログラムＰＲＧ１が格納される領域を含むメモリＭＥＭ１とを有する。プログラムＰＧＭ１は、プロセッサＣＰＵ１により実行され、各ストレージサーバＳＳＶの機能を実現する。磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃを各々有するストレージサーバＳＳＶは、情報処理装置の一例である。ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃは、互いに同一又は同様の構成を有するため、以下の図１の説明は、ストレージサーバＳＳＶａについて示す。ストレージサーバＳＳＶｂ、ＳＳＶｃの説明は、符号”ａ”を符号”ｂ”又は符号”ｃ”に置き換えることで示される。
【００２８】
ディスクグループ表ＤＧＴＢＬには、磁気ディスク装置群Ｇａ０−Ｇａ３毎に、ディスク装置Ａをアクティブ状態に設定する順序（アクティブ順）を示す情報と、現在のアクティブ状態のディスク装置Ａを示す情報とが格納される。ディスクグループ表ＤＧＴＢＬの例は、図６に示す。
【００２９】
データ管理表ＴＭＴＢＬには、データを識別する情報と、データが格納されたディスク装置Ａを示す情報と、データのサイズ示す情報とが、データ毎に格納される。データ管理表ＴＭＴＢＬの例は、図７に示す。
【００３０】
削除表ＤＥＬＴＢＬには、削除するデータを識別する情報と、削除するデータのサイズを示す情報とが格納される。ストレージサーバＳＳＶａは、削除するデータを示す情報を、データが実際に削除されるまで削除表ＤＥＬＴＢＬに保持する。データ削除表ＤＥＬＴＢＬの例は、図８に示す。
【００３１】
図２は、図１に示すハッシュ表ＨＡＴＢＬの例を示す。例えば、ハッシュ表ＨＡＴＢＬは、ハッシュ関数により得られるハッシュ値のうち所定数のビットの値を示す情報と、ハッシュ値に対応する磁気ディスク装置群を示す情報とを格納する領域を含む。ハッシュ表ＨＡＴＢＬは、ハッシュ関数等の所定の関数に基づいて、端末装置ＴＭからの要求と磁気ディスク装置群Ｇａ０−Ｇａ３（又はＧｂ０−Ｇｂ３、Ｇｃ０−Ｇｃ３）を識別する各磁気ディスク装置群識別情報とを対応付けた要求対応表の一例である。
【００３２】
例えば、上位の２ビットが”００ｂ”（”ｂ”は２進数を示す）のハッシュ値に対応するデータは、磁気ディスク装置群Ｇａ０、Ｇｂ０、Ｇｃ０に記憶される。上位の２ビットが”０１ｂ”のハッシュ値に対応するデータは、磁気ディスク装置群Ｇａ１、Ｇｂ１、Ｇｃ１に記憶される。上位の２ビットが”１０ｂ”のハッシュ値に対応するデータは、磁気ディスク装置群Ｇａ２、Ｇｂ２、Ｇｃ２に記憶される。上位の２ビットが”１１ｂ”のハッシュ値に対応するデータは、磁気ディスク装置群Ｇａ３、Ｇｂ３、Ｇｃ３に記憶される。このように、磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃは、共通のハッシュ関数が適用される。
【００３３】
なお、実際には、フロントエンドサーバＦＥＳＶは、例えば、ハッシュ関数としてＭＤ５（Message Digest 5）を用いて１２８ビットのハッシュ値を生成する。そして、フロントエンドサーバＦＥＳＶは、ハッシュ値の上位６ビットに応じて、データの格納先を、ディスクプールＤＰａ、ＤＰｂ、ＤＰｃのそれぞれに含まれる６４個のディスク装置Ａ、Ｂ、Ｃのいずれかに決定する。しかしながら、説明を分かりやすくするため、ディスクプールＤＰａ、ＤＰｂ、ＤＰｃを区分するハッシュ値（すなわち、ハッシュ空間）の数は４個にしている。
【００３４】
なお、ハッシュ関数から出力されるハッシュ値は均等に分布するため、ハッシュ値に割り当てられた磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃのそれぞれは、均等にアクセスされる。このため、例えば、図１に示すディスクプールＤＰａ内の磁気ディスク装置群Ｇａ０、Ｇａ１、Ｇａ２、Ｇａ３のそれぞれに格納されるデータの量は、ほぼ等しくなる。同様に、磁気ディスク装置群Ｇｂ０、Ｇｂ１、Ｇｂ２、Ｇｂ３のそれぞれに格納されるデータの量は、ほぼ等しくなり、磁気ディスク装置群Ｇｃ０、Ｇｃ１、Ｇｃ２、Ｇｃ３のそれぞれに格納されるデータの量は、ほぼ等しくなる。
【００３５】
図３は、図２に示すハッシュ表ＨＡＴＢＬにより示されるハッシュ空間の例を示す。図３では、ハッシュ空間はハッシュリングとして示される。ディスクプールＤＰａ、ＤＰｂ、ＤＰｃのハッシュ空間は、互いに同一又は同様であるため、以下の図３の説明では、ディスクプールＤＰａのハッシュ空間について示す。ディスクプールＤＰｂ、ＤＰｃのハッシュ空間の説明は、符号”ａ”を符号”ｂ”又は符号”ｃ”に置き換えることで示される。なお、例えば、情報処理システムＳＹＳ１は、コンシステントハッシュ法を採用する。
【００３６】
例えば、図１に示すフロントエンドサーバＦＥＳＶは、データを識別する識別子（例えば、データのパス名やファイル名）をハッシュ関数に入力して得られるハッシュ値に応じて、データを格納する磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃを求める。ディスクプールＤＰａにおけるデータの格納先は、図２に示すように、ハッシュ値の上位２ビットに応じて４個のハッシュ空間のいずれかに決定される。
【００３７】
図４は、図３に示すディスクプールＤＰａのハッシュリングの例を示す。ディスクプールＤＰａでは、状態ＳＴ（ＳＴ０、ＳＴ１、ＳＴ２、ＳＴ３、ＳＴ４）毎に、ハッシュ空間に割り当てられる磁気ディスク装置Ａが変更される。すなわち、状態ＳＴ０−ＳＴ４のいずれか１つに対応するディスク装置Ａは、アクティブ状態に設定され、他の状態ＳＴに対応するディスク装置Ａはインアクティブ状態に設定される。図４は、図１に示すディスクプールＤＰａの状態を示し、網掛けで示す状態ＳＴ１に対応するディスク装置Ａ４、Ａ５、Ａ６、Ａ７は、アクティブ状態に設定され、他のディスク装置Ａ０−Ａ３、Ａ８−Ａ１９は、インアクティブ状態に設定される。
【００３８】
アクティブ状態の状態ＳＴ１より内側の状態ＳＴ０に含まれる太い破線で示す磁気ディスク装置Ａ０−Ａ３は、図１と同様に、所定量を超えるデータが格納され、スピンダウン状態に設定されたことを示す。アクティブ状態の状態ＳＴ１より外側の状態ＳＴ２−ＳＴ４に含まれる細い破線で示すディスク装置Ａ８−Ａ１９は、図１と同様に、スピンドルモータの回転を停止したスピンダウン状態であり、データを格納する領域を有することを示す。
【００３９】
なお、ディスクプールＤＰｂ、ＤＰｃにおいても、図４と同様に、状態ＳＴ０−ＳＴ４毎に、ハッシュ空間に割り当てられるディスク装置Ｂ、Ｃが変更される。ディスクプールＤＰｂにおいてハッシュ空間に割り当てられる磁気ディスク装置Ｂは、図４のディスク装置の符号”Ａ”を符号”Ｂ”に置き換えることにより示される。同様に、ディスクプールＤＰｃにおいてハッシュ空間に割り当てられる磁気ディスク装置Ｃは、図４の磁気ディスク装置の符号”Ａ”を符号”Ｃ”に置き換えることにより示される。
【００４０】
図５は、図１に示すサーバ表ＳＶＴＢＬの例を示す。サーバ表ＳＶＴＢＬには、情報処理システムＳＹＳ１に含まれる磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃの名称であるディスクグループ名と、磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃに接続されたストレージサーバＳＳＶを識別する情報とが格納される。例えば、ストレージサーバＳＳＶを識別する情報は、ネットワーク上でストレージサーバＳＳＶを識別する番号であるＩＰ（Internet Protocol）アドレスを含む。
【００４１】
サーバ表ＳＶＴＢＬに格納される情報は、各磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃを識別する磁気ディスク装置群識別情報とストレージサーバＳＶＶを識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報の一例である。例えば、磁気ディスク装置群識別情報は、ディスクグループ名であり、磁気ディスク装置群識別情報は、ＩＰアドレスである。フロントエンドサーバＦＥＳＶは、サーバ表ＳＶＴＢＬを参照し、ハッシュ表ＨＡＴＢＬにより特定した磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃを接続したストレージサーバＳＳＶを求める。そして、フロントエンドサーバＦＥＳＶは、求めたストレージサーバＳＳＶに、端末装置ＴＭから受信した書き込み要求、削除要求又は読み出し要求を送信する。
【００４２】
図６は、図１に示すディスクグループ表ＤＧＴＢＬの例を示す。図６は、ストレージサーバＳＳＶａが有するディスクグループ表ＤＧＴＢＬの例を示す。ストレージサーバＳＳＶｂ、ＳＳＶｃが有するディスクグループ表ＤＧＴＢＬの例は、図６の符号”Ａ”を符号”Ｂ”又は符号”Ｃ”に置き換え、符号”ａ”を符号”ｂ”又は符号”ｃ”に置き換えることで示される。
【００４３】
ディスクグループ表ＤＧＴＢＬは、ディスク装置Ａ０−Ａ１９毎に、ディスクグループ名、アクティブ順、ディスクＩＤ（identification）、マウントポイント及びアクティブ番号を示す領域を含む。ディスクグループ名は、図５に示すサーバ表ＳＶＴＢＬと同様に、情報処理システムＳＹＳ１に含まれる磁気ディスク装置群Ｇａの名称である。アクティブ順は、磁気ディスク装置群Ｇａ０−Ｇａ３毎に割り振られ、ディスク装置Ａをアクティブ状態に設定する順序を示す。例えば、アクティブ順は、図４に示す状態ＳＴの番号に対応する。
【００４４】
ディスクＩＤは、各ディスク装置Ａ０−Ａ１９を識別する情報である。マウントポイントは、各ディスク装置Ａ０−Ａ１９をファイルシステム上にマウントするディレクトリを示す。アクティブ番号は、アクティブ状態に設定中のディスク装置Ａを磁気ディスク装置群Ｇａ毎に示し、磁気ディスク装置群Ｇａ０−Ｇａ３毎に割り振られる。アクティブ番号は、アクティブ順の領域に格納された数字で示される。図６は、図１に示すディスク装置Ａ４−Ａ７がアクティブ状態に設定された場合（図４の状態ＳＴ１）のディスクグループ表ＤＧＴＢＬを示し、アクティブ状態の領域は、”１”に設定される。
【００４５】
ディスクグループ表ＤＧＴＢＬに格納される情報は、複数の磁気ディスク装置群Ｇａ０−Ｇａ３内のディスク装置Ａ０−Ａ１９のそれぞれをスピンアップ状態に維持するか、スピンダウン状態に維持するかを指定するディスクグループ状態情報の一例である。スピンアップ状態は、ディスクをスピンアップし、各ディスク装置ＡがストレージサーバＳＳＶａにマウントした状態である。スピンダウン状態は、各ディスク装置ＡがストレージサーバＳＳＶａからアンマウントし、ディスクをスピンダウンした状態である。スピンアップ状態のディスク装置Ａは、モータの回転状態を維持した活性磁気ディスク装置の一例である。スピンダウン状態のディスク装置Ａは、モータの回転を停止させた非活性磁気ディスク装置の一例である。ディスクグループ表ＤＧＴＢＬに格納されるアクティブ順を示す情報は、スピンダウン状態のディスク装置Ａをスピンアップ状態に設定する順序を指定する順序情報の一例である。
【００４６】
図７は、図１に示すデータ管理表ＤＭＴＢＬの例を示す。図７は、ストレージサーバＳＳＶａが有するデータ管理表ＤＭＴＢＬの例を示す。ストレージサーバＳＳＶｂ、ＳＳＶｃが有するデータ管理表ＤＭＴＢＬの例は、図７の格納ディスクＩＤの領域の符号”Ａ”を符号”Ｂ”又は符号”Ｃ”に置き換えることで示される。
【００４７】
データ管理表ＤＭＴＢＬは、ディスク装置Ａに格納されたデータ毎に、データのパスを示す情報と、データが格納されたディスク装置Ａを示す情報（格納ディスクＩＤ）と、データのサイズを示す情報とを格納する領域を含む。例えば、データのパスは、情報処理システムＳＹＳ１がＨＴＴＰ（Hyper Text Transfer Protocol）で使用されるパスであり、端末装置ＴＭから送信される”ＰＵＴ”、”ＤＥＬＥＴＥ”等のメソッドに含まれるパスである。
【００４８】
ストレージサーバＳＳＶａは、ディスク装置Ａのいずれかにデータを格納する毎に、格納したデータの情報をデータ管理表ＤＭＴＢＬに追加する。ストレージサーバＳＳＶａは、ディスク装置Ａのいずれかからデータを削除する毎に、削除したデータの情報をデータ管理表ＤＭＴＢＬから削除する。ストレージサーバＳＳＶａは、ディスク装置Ａからデータを読み出す場合、データ管理表ＤＭＴＢＬに参照し、データが格納されたディスク装置Ａと、データのサイズを認識する。
【００４９】
データ管理表ＤＭＴＢＬに格納される情報は、複数のディスク装置Ａ０−Ａ１９に格納するデータ毎にデータを識別するデータ識別情報とデータのサイズとを対応付けたデータ管理情報の一例である。データのパスは、データ識別情報の一例である。
【００５０】
図８は、図１に示す削除表ＤＥＬＴＢＬの例を示す。図８は、ストレージサーバＳＳＶａが有する削除表ＤＥＬＴＢＬの例を示す。ストレージサーバＳＳＶｂ、ＳＳＶｃが有する削除表ＤＥＬＴＢＬの例は、図８の符号”Ａ”を符号”Ｂ”又は符号”Ｃ”に置き換えることで示される。
【００５１】
削除表ＤＥＬＴＢＬは、ディスク装置Ａ毎に、削除要求を受けたデータのパスを示す情報と、削除要求を受けたデータのサイズを示す情報とを格納する領域を含む。ストレージサーバＳＳＶａは、削除要求を受けたデータがインアクティブ状態のディスク装置Ａに保持されている場合、削除要求を受けたデータを示す情報を削除表ＤＥＬＴＢＬに格納する。又、書き込み要求を受けたデータが、インアクティブ状態のディスク装置Ａに保持されている場合（すなわち、データの更新時）、ストレージサーバＳＳＶａは、書き込み要求を受けたデータを示す情報を削除表ＤＥＬＴＢＬに格納する。
【００５２】
なお、書き込み要求を受けたデータが、インアクティブ状態のディスク装置Ａのいずれかに保持されている場合、ストレージサーバＳＳＶａは、アクティブ状態のディスク装置Ａにデータを格納する。又、削除要求を受けたデータがアクティブ状態のディスク装置Ａに格納されている場合、ストレージサーバＳＳＶａは、データをディスク装置Ａから削除する。この場合、削除表ＤＥＬＴＢＬの内容は変更されない。
【００５３】
ストレージサーバＳＳＶａは、ディスク装置Ａ毎に、削除表ＤＥＬＴＢＬに格納された削除要求を受けたデータのサイズの合計値が所定量（図１２及び図１４に示す第１閾値）を超えたか否かを判定する。削除要求を受けたデータのサイズの合計値が所定量を超えた場合、ストレージサーバＳＳＶａは、削除表ＤＥＬＴＢＬにおいて、該当するディスク装置Ａに対応する領域に格納された情報が示す全てのデータを削除する。そして、ストレージサーバＳＳＶａは、削除したデータの情報を削除表ＤＥＬＴＢＬから削除する。
【００５４】
削除表ＤＥＬＴＢＬに格納される情報は、端末装置ＴＭからの要求に含まれる複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、削除対象のデータのサイズとを含む削除データ管理情報の一例である。ここで、端末装置ＴＭからの要求は、フロントエンドサーバＦＥＳＶを介してストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃに振り分けられる。削除表ＤＥＬＴＢＬに格納されるデータのパスは、削除データ指定情報の一例である。
【００５５】
図９は、図１に示すフロントエンドサーバＦＥＳＶの動作の例を示す。図９に示す動作は、フロントエンドサーバＦＥＳＶのプロセッサＣＰＵ０がプログラムＰＧＭ０を実行することで実現される。すなわち、図９は、情報処理システムＳＹＳ１の制御方法及びフロントエンドサーバＦＥＳＶの制御プログラムの例を示す。
【００５６】
まず、ステップＳ１０において、プロセッサＣＰＵ０は、端末装置ＴＭからの要求を受信する。例えば、端末装置ＴＭは、要求をＰＵＴメソッド、ＤＥＬＥＴＥメソッド又はＧＥＴメソッドでフロントエンドサーバＦＥＳＶに送信する。すなわち、端末装置ＴＭは、ＨＴＴＰを用いたＡＰＩ（Application Program Interface）において、メソッドを”ＰＵＴ”、”ＤＥＬＥＴＥ”又は”ＧＥＴ”とする。そして、端末装置ＴＭは、ＵＲＩ（Uniform Resource Identifier）によりデータを記憶するリソースを指定する。例えば、フロントエンドサーバＦＥＳＶのＩＰアドレスが”１９２．１６８．１．１００”であるとき、端末装置ＴＭは、ＰＵＴメソッドとして”ｈｔｔｐ：／／１９２．１６８．１．１００／ｆｏｏ／ｂａｒ／ｂｕｚ．ｊｐｇ”を送信する。ここで、”ｆｏｏ”、”ｂａｒ”、”ｂｕｚ”は、メタ構文変数を示し、”／ｆｏｏ／ｂａｒ／ｂｕｚ．ｊｐｇ”はデータのパスを示す。送信するデータは、ＨＴＴＰのタグの一種であるｂｏｄｙに格納される。
【００５７】
次に、ステップＳ１２において、プロセッサＣＰＵ０は、要求が書き込み要求を示す場合、処理をステップＳ１００に移行し、要求が書き込み要求を示さない場合、処理をステップＳ１４に移行する。ステップＳ１４において、プロセッサＣＰＵ０は、要求が削除要求を示す場合、処理をステップＳ２００に移行し、要求が削除要求を示さない場合、処理をステップＳ１６に移行する。ステップＳ１６において、プロセッサＣＰＵ０は、要求が読み出し要求を示す場合、処理をステップＳ３００に移行し、要求が読み出し要求を示さない場合、処理を終了する。なお、プロセッサＣＰＵ０は、ステップＳ１２、Ｓ１４、Ｓ１６の判定を、並列に実行してもよい。
【００５８】
ステップＳ１００において、プロセッサＣＰＵ０は、書き込み要求に基づきストレージサーバＳＶＶａ、ＳＳＶｂ、ＳＳＶｃを制御し、データをディスク装置Ａ、Ｂ、Ｃに格納する書き込み処理を実行する。プロセッサＣＰＵ０が実行する書き込み処理の例は、図１０に示す。
【００５９】
ステップＳ２００において、プロセッサＣＰＵ０は、削除要求に基づきストレージサーバＳＶＶａ、ＳＳＶｂ、ＳＳＶｃを制御し、データをディスク装置Ａ、Ｂ、Ｃから削除する削除処理を実行する。プロセッサＣＰＵ０が実行する削除処理の例は、図１０に示す。
【００６０】
ステップＳ３００において、プロセッサＣＰＵ０は、読み出し要求に基づきストレージサーバＳＶＶａ、ＳＳＶｂ、ＳＳＶｃを制御し、データをディスク装置Ａ、Ｂ、Ｃから読み出す読み出し処理を実行する。プロセッサＣＰＵ０が実行する読み出し処理の例は、図１１に示す。
【００６１】
図１０は、図９に示す書き込み処理及び削除処理の例を示す。
【００６２】
書き込み処理では、端末装置ＴＭからの書き込み要求を受信したプロセッサＣＰＵ０は、ステップＳ１０２において、データのパス（例えば、ＵＲＩ中の”／ｆｏｏ／ｂａｒ／ｂｕｚ．ｊｐｇ”）をハッシュ関数に入力し、ハッシュ値を求める。例えば、ハッシュ値は、ＭＤ５を用いて１２８ビットが生成される。
【００６３】
次に、ステップＳ１０４において、プロセッサＣＰＵ０は、図２に示すハッシュ表ＨＡＴＢＬを用いて、求めたハッシュ値からデータを格納する磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃを決定する。この実施形態では、３つのレプリカデータが３つのディスク装置Ａ、Ｂ、Ｃに冗長に格納されるため、プロセッサＣＰＵ０は、データを格納する３つの磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃを決定する。なお、１つのデータが１つのディスク装置に格納され、他のディスク装置に格納されない場合、プロセッサＣＰＵ０は、データを格納する１つの磁気ディスク装置群を決定する。この場合、例えば、磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃは、互いに異なるハッシュ空間に割り当てられる。
【００６４】
次に、ステップＳ１０６において、プロセッサＣＰＵ０は、図５に示すサーバ表ＳＶＴＢＬを検索し、ステップＳ１０４で求めた磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃに対応するＩＰアドレスを求める。すなわち、プロセッサＣＰＵ０は、磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃからデータを書き込む書き込み対象のストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃを決定する。この例では、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃのそれそれが磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃにデータを格納するため、全てのストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃが書き込み対象に決定される。
【００６５】
次に、ステップＳ１０８において、プロセッサＣＰＵ０は、書き込み対象に決定されたストレージサーバＳＶＶａ、ＳＳＶｂ、ＳＳＶｃのそれぞれに書き込み要求を送信する。例えば、書き込み要求は、書き込みデータと、書き込みデータを格納する磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃを示す情報とフルビットのハッシュ値とを含む。書き込み要求を受信した各ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの動作の例は、図１２に示す。
【００６６】
次に、ステップＳ１１０において、プロセッサＣＰＵ０は、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃからのデータの書き込みの完了を示す書き込み完了通知の受信を待つ。全てのストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃから書き込み完了通知を受けた場合、ステップＳ１１２において、プロセッサＣＰＵ０は、データの書き込みが完了したことを示す通知を端末装置ＴＭに送信し、データの書き込み処理を終了する。すなわち、プロセッサＣＰＵ０は、書き込み完了通知に対応する応答処理を実行する。
【００６７】
一方、削除処理では、端末装置ＴＭからの削除要求を受信したプロセッサＣＰＵ０は、ステップＳ２０２において、データのパスをハッシュ関数に入力し、ハッシュ値を求める。次に、ステップＳ２０４において、プロセッサＣＰＵ０は、図２に示すハッシュ表ＨＡＴＢＬを用いて、求めたハッシュ値からデータを削除する磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃを決定する。書き込み処理と同様に、１つのデータが１つのディスク装置に格納され、他のディスク装置に格納されない場合、プロセッサＣＰＵ０は、データを格納する１つの磁気ディスク装置群を決定する。
【００６８】
次に、ステップＳ２０６において、プロセッサＣＰＵ０は、図５に示すサーバ表ＳＶＴＢＬを検索し、ステップＳ２０４で求めた磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃに対応するＩＰアドレスを求める。すなわち、プロセッサＣＰＵ０は、磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃからデータを削除する削除対象のストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃを決定する。
【００６９】
次に、ステップＳ２０８において、プロセッサＣＰＵ０は、削除対象に決定されたストレージサーバＳＶＶａ、ＳＳＶｂ、ＳＳＶｃのそれぞれに削除要求を送信する。例えば、削除要求は、データを削除する磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃを示す情報とフルビットのハッシュ値とを含む。削除要求を受信したストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの動作の例は、図１４に示す。
【００７０】
次に、ステップＳ２１０において、プロセッサＣＰＵ０は、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃからのデータの削除の完了を示す削除完了通知の受信を待つ。全てのストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃから削除完了通知を受けた場合、ステップＳ２１２において、プロセッサＣＰＵ０は、データの削除が完了したことを示す通知を端末装置ＴＭに送信し、データの削除処理を終了する。すなわち、プロセッサＣＰＵ０は、削除完了通知に対応する応答処理を実行する。なお、図１４で説明するように、削除処理は、データをディスク装置から実際に削除する場合と、削除表ＤＥＬＴＢＬ及びデータ管理表ＤＭＴＢＬを利用してデータをディスク装置から削除したとみなす場合とがある。
【００７１】
図１１は、図９に示す読み出し処理の例を示す。
【００７２】
読み出し処理では、端末装置ＴＭからの読み出し要求を受信したプロセッサＣＰＵ０は、ステップＳ３０２において、データのパスをハッシュ関数に入力し、ハッシュ値を求める。
【００７３】
次に、ステップＳ３０４において、プロセッサＣＰＵ０は、図２に示すハッシュ表ＨＡＴＢＬを用いて、求めたハッシュ値からデータを読み出す磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃの１つを決定する。なお、書き込み処理と同様に、求めたハッシュ値からデータを読み出す３つの磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃを決定してもよい。この場合、プロセッサＣＰＵ０は、３つの磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃから読み出される３つのデータから正しいデータを判定する。又、１つのデータが１つのディスク装置に格納される場合、プロセッサＣＰＵ０は、データを読み出す１つの磁気ディスク装置群を決定する。
【００７４】
次に、ステップＳ３０６において、プロセッサＣＰＵ０は、図５に示すサーバ表ＳＶＴＢＬを検索し、ステップＳ３０４で求めた磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃの１つに対応するＩＰアドレスを求める。すなわち、プロセッサＣＰＵ０は、磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃの１つからデータを読み出す読み出し対象のストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃの１つを決定する。
【００７５】
次に、ステップＳ３０８において、プロセッサＣＰＵ０は、読み出し対象に決定されたストレージサーバＳＶＶａ、ＳＳＶｂ、ＳＳＶｃの１つに読み出し要求を送信する。例えば、読み出し要求は、データを読み出す磁気ディスク装置群Ｇａ（又は、Ｇｂ、Ｇｃ）の情報とフルビットのハッシュ値とを含む。読み出し要求を受信したストレージサーバＳＳＶの動作の例は、図１８に示す。
【００７６】
次に、ステップＳ３１０において、プロセッサＣＰＵ０は、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃのいずれかからのデータの読み出しの完了を示す読み出し完了通知の受信を待つ。読み出し完了通知は、ディスク装置から読み出されたデータを含む。ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃのいずれかから読み出し完了通知を受けた場合、ステップＳ３１２において、プロセッサＣＰＵ０は、読み出したデータを端末装置ＴＭに送信し、データの読み出し処理を終了する。すなわち、プロセッサＣＰＵ０は、読み出し完了通知に対応する応答処理を実行する。
【００７７】
図１２は、図１０において書き込み要求を受信したストレージサーバＳＳＶが実行する書き込み処理の例を示す。図１２に示す処理は、書き込み要求を受信したストレージサーバＳＶＶの各々のプロセッサＣＰＵ１がプログラムＰＧＭ１を実行することで実現される。すなわち、図１２は、情報処理システムＳＹＳ１の制御方法及びストレージサーバＳＶＶの制御プログラムの例を示す。
【００７８】
まず、ステップＳ４０２において、プロセッサＣＰＵ１は、図７に示すデータ管理表ＤＭＴＢＬを参照する。なお、ステップＳ４０２において、書き込み要求に含まれるデータのパスがデータ管理表ＤＭＴＢＬに存在する場合、プロセッサＣＰＵ１は、例えば、データ管理表ＤＭＴＢＬにおける書き込み要求に含まれるデータのパスを含むエントリを読み出す。書き込み要求に含まれるデータのパスを含むエントリは、データが格納されているディスク装置の情報（格納ディスクＩＤ）を含む。
【００７９】
次に、ステップＳ４０４において、プロセッサＣＰＵ１は、書き込み要求に含まれるデータのパスがデータ管理表ＤＭＴＢＬに存在するか否かを判定する。データのパスが存在する場合、データの更新をするために、処理はステップＳ４０６に移行される。データのパスが存在しない場合、データを新規に書き込むために、処理はステップＳ５００に移行される。
【００８０】
ステップＳ４０６において、プロセッサＣＰＵ１は、ディスクグループ表ＤＧＴＢＬを参照し、データを格納したディスク装置である対象ディスク装置がアクティブ状態か否かを判定する。ディスク装置がアクティブ状態の場合、データをディスク装置に直接書き込み可能なため、処理はステップＳ４１４に移行される。ディスク装置がインアクティブ状態の場合、データを更新するために、処理はステップＳ４０８に移行される。
【００８１】
ステップＳ４０８において、プロセッサＣＰＵ１は、書き込み要求に含まれるデータのパスを含むエントリ（データのパスとデータのサイズ）を、エントリに含まれるディスク装置に対応する削除表ＤＥＬＴＢＬ（図８）に追加する。すなわち、プロセッサＣＰＵ１は、データを更新する場合、削除表ＤＥＬＴＢＬに、データのパスとデータのサイズを含む新たなエントリを格納する。
【００８２】
次に、ステップＳ４１０において、プロセッサＣＰＵ１は、エントリを追加した削除表ＤＥＬＴＢＬに格納されたデータサイズの領域に格納された全てのデータサイズの合計である合計データサイズを求める。すなわち、プロセッサＣＰＵ１は、削除表ＤＥＬＴＢＬに登録された削除するデータのデータ量を計算する。
【００８３】
次に、ステップＳ４１２において、プロセッサＣＰＵ１は、計算したデータ量が第１閾値を超えたか否かを判定する。データ量が第１閾値を超えた場合、データ量を計算した削除表ＤＥＬＴＢＬに対応するディスク装置に記憶されたデータを削除するために、処理はステップＳ７００に移行される。例えば、第１閾値は、ディスク装置の記憶容量の１０％から３０％程度である。ステップＳ７００では、プロセッサＣＰＵ１は、データの削除処理を実行する。データの削除処理の例は、図１５及び図１７に示される。ステップＳ７００の処理の後、処理はステップＳ４１４に移行される。
【００８４】
インアクティブ状態のディスク装置に格納されたデータの書き込み要求に基づく更新は、インアクティブ状態のディスク装置に格納されたデータの削除と、アクティブ状態のディスク装置へのデータの書き込みとを含む。この実施形態では、プロセッサＣＰＵ１は、データの更新処理に含まれるデータの削除処理を、書き込み要求毎に実行しない。このため、インアクティブ状態のディスク装置をアクティブ状態に設定し、データの削除後にディスク装置を再びインアクティブ状態に設定する頻度は、更新処理毎にデータを削除する場合に比べて低い。ディスク装置のスピンアップ及びスピンダウンの頻度を下げることができるため、ディスク装置の劣化を抑制することができる。
【００８５】
また、ディスク装置のスピンアップ及びスピンダウンの頻度が下がるため、更新処理毎にデータを削除する場合に比べて、ディスクプールＤＰで消費される電力を削減することができる。さらに、データをまとめて削除することで、ストレージサーバＳＳＶによるディスク装置のアクセス頻度を下げることができ、ディスク装置のアクセスが頻繁に発生することによるストレージサーバＳＳＶの性能の低下を抑制することができる。
【００８６】
ステップＳ４１４において、プロセッサＣＰＵ１は、データを削除したエントリをデータ管理表ＤＭＴＢＬから削除する。例えば、更新されるデータのサイズは、ディスク装置に記憶された元のデータのサイズと異なる場合がある。このため、プロセッサＣＰＵ１は、データ管理表ＤＭＴＢＬに格納された元のデータの情報（エントリ）を削除し、更新するデータをディスク装置に格納するときに、更新するデータの情報（エントリ）をデータ管理表ＤＭＴＢＬに追加する。これにより、データ管理表ＤＭＴＢＬに登録されたエントリが示すデータを更新（書き替え）する場合に、更新されたデータの情報をデータ管理表ＤＭＴＢＬに反映させることができる。
【００８７】
次に、ステップＳ５００において、プロセッサＣＰＵ１は、データの新規の書き込み処理を実行する。ステップＳ５００では、データ管理表ＤＭＴＢＬに登録されていないエントリに対応するデータだけでなく、データ管理表ＤＭＴＢＬに登録されたエントリに対応する更新されるデータの書き込みも実行される。また、更新される元のデータがインアクティブ状態のディスク装置に格納されている場合、ステップＳ４０８により元のデータは削除したとみなされ、あるいはステップＳ７００により元のデータは削除される。さらに、アクティブ状態のディスク装置に格納されたデータの更新は、データを上書きすることにより実行される。
【００８８】
この実施形態では、データを更新する場合、更新後のデータは、アクティブ状態のディスク装置内に存在する。更新されたデータが再びアクセスされる頻度は、更新されないデータが再びアクセスされる頻度よりも高いことが多い。データの更新処理により、インアクティブ状態のディスク装置に格納された元のデータを、アクティブ状態のディスク装置に移動することで、ディスク装置をスピンアップすることなく、次に発生する書き込み、削除、読み出しを実行することができる。換言すれば、スピンアップ及びスピンダウンの頻度を下げることで、ディスク装置の劣化を抑制することができ、ディスクプールＤＰで消費される電力を削減することができる。
【００８９】
データの新規の書き込み処理の例は、図１３に示される。ステップＳ５００の処理の後、処理はステップＳ４１６に移行される。
【００９０】
ステップＳ４１６において、プロセッサＣＰＵ１は、フロントエンドサーバＦＥＳＶに書き込み処理が正常に終了したことを示す書き込み完了通知を応答する。そして、書き込み処理が終了する。
【００９１】
図１３は、図１２に示す新規書き込み処理の例を示す。図１３に示す処理は、書き込み要求を受信したストレージサーバＳＶＶのプロセッサＣＰＵ１の各々が実行する。データの書き込みは、アクティブ状態のディスク装置（例えば、図４の状態ＳＴ１）に対して実行されるため、スピンアップ及びマウントの処理を省略することができる。
【００９２】
まず、ステップＳ５０２において、プロセッサＣＰＵ１は、ディスクグループ表ＤＧＴＢＬ（図６）を参照し、データを格納するディスク装置のマウントポイントを決定する。なお、図６は、ストレージサーバＳＳＶａが有するディスクグループ表ＤＧＴＢＬを示すが、ストレージサーバＳＳＶｂ、ＳＳＶｃは、それぞれのディスクグループ表ＤＧＴＢＬを参照する。
【００９３】
次に、ステップＳ５０４において、プロセッサＣＰＵ１は、決定したマウントポイントに対してデータを含むファイルを作成し、マウントポイントにマウントされたディスク装置にデータを格納する。次に、ステップＳ５０６において、プロセッサＣＰＵ１は、格納したデータの情報（エントリ）をデータ管理表ＤＭＴＢＬ（図７）に追加する。
【００９４】
次に、ステップＳ５０８において、プロセッサＣＰＵ１は、データを格納したディスク装置に記憶されるデータ量が第２閾値を超えたか否かを判定する。データ量が第２閾値を超えた場合、データを格納したディスク装置が満杯になったと判断され、処理はステップＳ５１０に移行される。例えば、第２閾値は、ディスク装置の記憶容量の８０％から９０％程度である。
【００９５】
ステップＳ５１０において、プロセッサＣＰＵ１は、満杯になったと判断したディスク装置をアンマウントし、スピンダウンする。すなわち、満杯になったと判断したディスク装置は、スピンアップ状態からスピンダウン状態に変更される。満杯になったディスク装置をスピンダウン状態に設定することで、スピンアップ状態を維持する場合に比べて情報処理システムＳＹＳ１の消費電力を削減することができる。
【００９６】
次に、ステップＳ５１２において、プロセッサＣＰＵ１は、ディスクグループ表ＤＧＴＢＬ（図６）において、スピンダウンしたディスク装置が属する磁気ディスク装置群Ｇａのアクティブ順の領域に格納された数値にしたがい、アクティブ番号を更新する。例えば、図６において、アクティブ番号が”１”から”２”に更新され、図４に示すハッシュリングにおいて、スピンダウンしたディスク装置が属する磁気ディスク装置群Ｇａは、状態ＳＴ１から状態ＳＴ２に変更される。
【００９７】
次に、ステップＳ５１４において、プロセッサＣＰＵ１は、更新されたディスクグループ表ＤＧＴＢＬのアクティブ番号が示すディスク装置をスピンアップし、ディスクグループ表ＤＧＴＢＬに格納されたマウントポイントにディスク装置をマウントする。すなわち、新たなディスク装置がスピンダウン状態からスピンアップ状態に設定される。この後、プロセッサＣＰＵ１は、新たにスピンアップ状態に設定されたディスク装置にデータを格納する。
【００９８】
図１４は、図１０において削除要求を受信したストレージサーバＳＳＶが実行する削除処理の例を示す。図１４に示す処理は、削除要求を受信したストレージサーバＳＶＶの各々のプロセッサＣＰＵ１がプログラムＰＧＭ１を実行することで実現される。すなわち、図１４は、情報処理システムＳＹＳ１の制御方法及びストレージサーバＳＶＶの制御プログラムの例を示す。
【００９９】
まず、ステップＳ６０２において、プロセッサＣＰＵ１は、図７に示すデータ管理表ＤＭＴＢＬを参照する。なお、ステップＳ６０２において、削除要求に含まれるデータのパスがデータ管理表ＤＭＴＢＬに存在する場合、プロセッサＣＰＵ１は、例えば、データ管理表ＤＭＴＢＬにおける削除要求に含まれるデータのパスを含むエントリを読み出す。削除要求に含まれるデータのパスを含むエントリは、データが格納されているディスク装置の情報（格納ディスクＩＤ）を含む。
【０１００】
次に、ステップＳ６０４において、プロセッサＣＰＵ１は、削除要求に含まれるデータのパスがデータ管理表ＤＭＴＢＬに存在するか否かを判定する。データのパスが存在する場合、データを削除するために、処理はステップＳ６０６に移行される。データのパスが存在しない場合、削除するデータがディスク装置のいずれにも記憶されていないため、処理はステップＳ６２２に移行される。
【０１０１】
ステップＳ６０６において、プロセッサＣＰＵ１は、ディスクグループ表ＤＧＴＢＬを参照し、削除するデータが格納されているディスク装置である対象ディスクがアクティブ状態か否かを判定する。ディスク装置がアクティブ状態の場合、データをディスク装置から直接削除可能なため、処理はステップＳ６０８に移行される。ディスク装置がインアクティブ状態の場合、データをディスク装置から削除したものとみなす処理を実行するため、処理はステップＳ６１２に移行される。
【０１０２】
ステップＳ６０８において、プロセッサＣＰＵ１は、データ管理表ＤＭＴＢＬを参照し、削除するデータを記憶するディスク装置を検索し、検索したディスク装置からデータを削除する。次に、ステップＳ６１０において、プロセッサＣＰＵ１は、削除したデータのエントリをデータ管理表ＤＭＴＢＬから削除する。ステップＳ６１０の処理の後、処理はステップＳ６２０に移行される。ステップＳ６０８、Ｓ６１０のように、削除するデータが格納されているディスク装置がアクティブ状態の場合、プロセッサＣＰＵ１は、削除表ＤＥＬＴＢＬにデータの情報を追加することなくデータを削除する。これにより、削除表ＤＥＬＴＢＬに追加される情報を、インアクティブ状態のディスク装置から削除するデータの情報に限定することができ、ステップＳ７００によるデータの削除処理効率が低下することを抑制することができる。
【０１０３】
一方、ステップＳ６１２において、プロセッサＣＰＵ１は、削除要求に含まれるデータのパスを含むエントリ（データのパスとデータのサイズ）を、エントリに含まれるディスク装置に対応する削除表ＤＥＬＴＢＬに追加する。すなわち、プロセッサＣＰＵ１は、削除するデータを記憶するディスク装置がインアクティブ状態の場合、削除表ＤＥＬＴＢＬに、データのパスとデータのサイズを含む新たなエントリを格納する。
【０１０４】
ステップＳ６１４において、プロセッサＣＰＵ１は、ステップＳ６０４での判定で得られたデータのパスに基づき、削除するデータのエントリをデータ管理表ＤＭＴＢＬから削除する。
【０１０５】
次に、ステップＳ６１６において、プロセッサＣＰＵ１は、エントリを追加した削除表ＤＥＬＴＢＬに格納されたデータサイズの領域に格納された全てのデータサイズの合計である合計データサイズを求める。すなわち、プロセッサＣＰＵ１は、削除表ＤＥＬＴＢＬに登録された削除するデータのデータ量を計算する。
【０１０６】
次に、ステップＳ６１８において、プロセッサＣＰＵ１は、計算したデータ量が第１閾値を超えたか否かを判定する。データ量が第１閾値を超えた場合、データ量を計算した削除表ＤＥＬＴＢＬに対応するディスク装置に記憶されたデータを削除するために、処理はステップＳ７００に移行される。データ量が第１閾値以下の場合、処理はステップＳ６２０に移行される。ステップＳ７００によるデータの削除処理の例は、図１５及び図１７に示される。ステップＳ７００の処理の後、処理はステップＳ６２０に移行される。
【０１０７】
プロセッサＣＰＵ１は、インアクティブ状態のディスクに格納されたデータの削除要求を受けた場合、削除要求毎にデータの削除処理を実行しない。そして、プロセッサＣＰＵ１は、削除するデータのエントリが削除表ＤＥＬＴＢＬに所定量貯まったことに基づいて、削除表ＤＥＬＴＢＬに貯まったエントリに対応するデータをまとめて削除する。これにより、削除要求毎にデータを削除する場合に比べて、データを削除する効率を向上することができる。
【０１０８】
また、インアクティブ状態のディスク装置をアクティブ状態に設定し、データの削除後にディスク装置を再びインアクティブ状態に設定する頻度を、削除要求毎にデータを削除する場合に比べて低くすることができる。ディスク装置のスピンアップ及びスピンダウンの頻度を下げることができるため、ディスク装置の劣化を抑制することができる。さらに、ディスク装置のスピンアップ及びスピンダウンの頻度が下がるため、更新処理毎にデータを削除する場合に比べて、ディスクプールＤＰで消費される電力を削減することができる。
【０１０９】
ステップＳ６２０において、プロセッサＣＰＵ１は、削除処理が正常に終了したことを示す削除完了通知をフロントエンドサーバＦＥＳＶに応答する。そして、削除処理が終了する。一方、ステップＳ６２２において、プロセッサＣＰＵ１は、削除するデータがディスク装置のいずれにも記憶されていないため、削除処理の失敗を示す削除失敗通知をフロントエンドサーバＦＥＳＶに応答する。そして、削除処理が終了する。
【０１１０】
図１５は、図１２及び図１４に示すファイルの削除処理の例を示す。図１５に示す処理は、削除要求を受信したストレージサーバＳＶＶの各々が実行する。
【０１１１】
まず、ステップＳ７０２において、プロセッサＣＰＵ１は、データを削除するディスク装置をスピンダウン状態からスピンアップ状態に変更する。次に、ステップＳ７０４において、プロセッサＣＰＵ１は、スピンアップしたディスク装置に対応する削除表ＤＥＬＴＢＬにエントリがあるか否かを判定する。削除表ＤＥＬＴＢＬにエントリがある場合、データを削除するために処理はステップＳ７０６に移行される。削除表ＤＥＬＴＢＬにエントリが残っていない場合、ディスク装置から全てのデータが削除されたため、処理はステップＳ７１０に移行される。
【０１１２】
ステップＳ７０６において、プロセッサＣＰＵ１は、スピンアップしたディスク装置に対応する削除表ＤＥＬＴＢＬに格納されたエントリに含まれるデータをディスク装置から削除する。次に、ステップＳ７０８において、プロセッサＣＰＵ１は、削除したデータのエントリを削除表ＤＥＬＴＢＬから削除する。そして、ピンアップしたディスク装置に対応する削除表ＤＥＬＴＢＬからエントリがなくなるまで、ステップＳ７０６、Ｓ７０８の処理が繰り返される。
【０１１３】
一方、ステップＳ７１０において、プロセッサＣＰＵ１は、データを削除したディスク装置をスピンアップ状態からスピンダウン状態に変更する。なお、図１５に示すデータの削除処理は、削除表ＤＥＬＴＢＬに登録されたエントリに含まれるデータの合計が第１閾値を超えた場合に実行される。このため、ステップＳ７０４からＳ７０８の処理によりデータが削除されたディスク装置には、削除対象でない有効なデータが残っている。例えば、第１閾値が２０％で、第２閾値が８０％の場合、ステップＳ７０４からＳ７０８の処理によりデータが削除されたディスク装置は、記憶容量の６０％の有効なデータを保持している。
【０１１４】
データ管理表ＤＭＴＢＬは、削除処理が実行されたディスク装置に保持される有効なデータに対応するエントリを、削除することなく保持する。このため、削除処理の後にスピンダウン状態に設定されたディスク装置は、図１３に示す第２閾値以下のデータが格納され、新たなデータを書き込み可能である。
【０１１５】
次に、ステップＳ７１２、Ｓ７１４、Ｓ７１６、Ｓ７１８では、データを削除したディスク装置をデータを書き込み可能なディスク装置として割り当てる処理が実行される。
【０１１６】
ステップＳ７１２において、プロセッサＣＰＵ１は、ディスクグループ表ＤＧＴＢＬを参照し、アクティブ番号が示すディスク装置を示す情報（例えば、アクティブ番号の値）を変数ＮＯＷに設定する。
【０１１７】
次に、ステップＳ７１４において、プロセッサＣＰＵ１は、ディスクグループ表ＤＧＴＢＬにおいて、データを削除したディスク装置を含む磁気ディスク装置群のエントリを入れ換える処理を実行する。例えば、プロセッサＣＰＵ１は、データを削除したディスク装置のエントリを、現在アクティブ状態にあるディスク装置のエントリの次に移動する。
【０１１８】
次に、ステップＳ７１６において、プロセッサＣＰＵ１は、ディスクグループ表ＤＧＴＢＬにおいて、アクティブ順の領域に格納された番号を昇順に振り直す。次に、ステップＳ７１８において、プロセッサＣＰＵ１は、変数ＮＯＷが示すディスク装置を示すディスクＩＤ（ディスクグループ表ＤＧＴＢＬ）に対応して振り直されたアクティブ順の領域に格納された番号を新たなアクティブ番号に設定する。これにより、アクティブ状態のディスク装置は、アクティブ状態に維持され、データが削除されたディスク装置が、ディスクグループ表ＤＧＴＢＬにおいて、次にアクティブ状態に設定されるディスク装置に登録される。データの削除処理により空き領域が生じたディスク装置を、アクティブ状態に設定可能にすることで、データを削除した記憶領域を使用しない場合に比べて、ディスク装置を効率的に使用することができる。これにより、ディスクプールＤＰの使用効率を向上することができる。
【０１１９】
図１６は、図１５によるデータの削除処理におけるディスクグループ表ＤＧＴＢＬに格納される情報の変化の例を示す。図１６では、磁気ディスク装置群Ｇａ０のディスク装置Ａ０に対して図１５に示すデータの削除処理が実行されるとする。図１５のステップＳ７１２の処理が実行された後のディスクグループ表ＤＧＴＢＬの状態は、図６と同じである（図１６（ａ））。変数ＮＯＷは、ステップＳ７１２によりディスク装置Ａ４を示す”Ａ４”に設定される。
【０１２０】
図１５のステップＳ７１４の処理により、データを削除したディスク装置Ａ０のエントリは、現在、アクティブ状態にあるディスク装置Ａ４のエントリの次に移動される（図１６（ｂ））。図１５のステップＳ７１６の処理により、アクティブ順の領域に格納された番号が昇順に振り直され、ディスク装置Ａ４のエントリのアクティブ順が”０”に設定され、ディスク装置Ａ０のエントリのアクティブ順が”１”に設定される（図１６（ｃ））。そして、図１５のステップＳ７１８の処理により、変数ＮＯＷが示すディスク装置Ａ４のエントリにおけるアクティブ順の領域に格納された番号”０”が、新たなアクティブ番号に設定される（図１６（ｄ））。
【０１２１】
この後、データの格納により、ディスク装置Ａ４に記憶されたデータのデータ量が第２閾値を超えた場合、ディスク装置Ａ４がインアクティブ状態に設定される。そして、ディスクグループ表ＤＧＴＢＬにおいて次のアクティブ順に設定されたディスク装置Ａ０がアクティブ状態に設定される。
【０１２２】
図１７は、図１２及び図１４に示すファイルの削除処理の別の例を示す。図１５と同一又は同様の処理については、詳細な説明は省略する。図１７に示すデータの削除処理では、図１５のステップＳ７１４の代わりにステップＳ７１５が実行される。その他の処理は、図１５と同一又は同様である。
【０１２３】
ステップＳ７１５では、プロセッサＣＰＵ１は、データを削除したディスク装置のエントリを、ディスクグループ表ＤＧＴＢＬの最後尾に移動する。
【０１２４】
図１８は、図１０において読み出し要求を受信したストレージサーバＳＳＶが実行する読み出し処理の例を示す。図１８に示す処理は、読み出し要求を受信したストレージサーバＳＶＶの各々のプロセッサＣＰＵ１がプログラムＰＧＭ１を実行することで実現される。すなわち、図１８は、情報処理システムＳＹＳ１の制御方法及びストレージサーバＳＶＶの制御プログラムの例を示す。
【０１２５】
まず、ステップＳ８０２において、プロセッサＣＰＵ１は、図７に示すデータ管理表ＤＭＴＢＬを参照する。なお、ステップＳ８０２において、読み出し要求に含まれるデータのパスがデータ管理表ＤＭＴＢＬに存在する場合、プロセッサＣＰＵ１は、例えば、データ管理表ＤＭＴＢＬにおける読み出し要求に含まれるデータのパスを含むエントリを読み出す。読み出し要求に含まれるデータのパスを含むエントリは、データが格納されているディスク装置の情報（格納ディスクＩＤ）を含む。
【０１２６】
次に、ステップＳ８０４において、プロセッサＣＰＵ１は、読み出し要求に含まれるデータのパスがデータ管理表ＤＭＴＢＬに存在するか否かを判定する。データのパスが存在する場合、データの読み出すために、処理はステップＳ８０６に移行される。データのパスが存在しない場合、読み出すデータがディスク装置に記憶されていないため、処理はステップＳ８１６に移行される。
【０１２７】
ステップＳ８０６において、プロセッサＣＰＵ１は、ディスクグループ表ＤＧＴＢＬを参照し、読み出すデータが格納されているディスク装置である対象ディスク装置がアクティブ状態か否かを判定する。ディスク装置がアクティブ状態の場合、データをディスク装置から直接読み出し可能なため、処理はステップＳ８０８に移行される。ディスク装置がインアクティブ状態の場合、ディスク装置をアクティブ状態に設定するため、処理はステップＳ８１０に移行される。
【０１２８】
ステップＳ８０８において、プロセッサＣＰＵ１は、データ管理表ＤＭＴＢＬを参照し、読み出すデータを記憶するディスク装置を検索し、検索したディスク装置からデータを読み出し、読み出したデータをフロントエンドサーバＦＥＳＶに送信する。そして、読み出し処理が終了する。
【０１２９】
一方、ステップＳ８１０において、プロセッサＣＰＵ１は、読み出すデータが格納されているディスク装置である対象ディスクをスピンアップし、ディスクグループ表ＤＧＴＢＬに格納されたマウントポイントにディスク装置をマウントする。次に、ステップＳ８１２において、プロセッサＣＰＵ１は、データ管理表ＤＭＴＢＬを参照し、読み出すデータを記憶するディスク装置を検索する。そしてプロセッサＣＰＵ１は、検索したディスク装置からデータを読み出し、読み出したデータをフロントエンドサーバＦＥＳＶに送信する。
【０１３０】
次に、ステップＳ８１４において、プロセッサＣＰＵ１は、データを読み出したディスク装置をアンマウントし、スピンダウンする。なお、データを読み出したディスク装置に対する読み出し要求が続くことが予想される場合、プロセッサＣＰＵ１は、データを読み出したディスク装置をスピンアップ状態に維持してもよい。そして、読み出し処理が終了する。
【０１３１】
一方、ステップＳ８１６において、プロセッサＣＰＵ１は、読み出すデータがディスク装置のいずれにも記憶されていないため、読み出し処理の失敗を示す読み出し失敗通知をフロントエンドサーバＦＥＳＶに応答する。そして、読み出し処理が終了する。
【０１３２】
図１９は、情報処理システムの別の例を示す。図１から図８で説明した要素と同一又は同様の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。
【０１３３】
図１９に示す情報処理システムＳＹＳ２は、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃとディスクプールＤＰとを接続するスイッチＤＳＷを有する。スイッチＤＳＷは、フロントエンドサーバＦＥＳＶが管理する接続情報に基づいて動作する。そして、スイッチＤＳＷは、ストレージサーバＳＳＶａと磁気ディスク装置群Ｇａとを接続し、ストレージサーバＳＳＶｂと磁気ディスク装置群Ｇｂとを接続し、ストレージサーバＳＳＶｃと磁気ディスク装置群Ｇｃとを接続する。
【０１３４】
情報処理システムＳＹＳ２のその他の構成は、ディスクプールＤＰが磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃに共通に設けられることを除き、図１に示す情報処理システムＳＹＳ１と同様である。図１９に示す情報処理システムＳＹＳ２は、図９から図１８と同様に動作する。なお、ディスクプールＤＰは、図１と同様に、磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃ毎に設けられてもよい。
【０１３５】
図２０は、情報処理システムのさらなる別の例を示す。図１から図８で説明した要素と同一又は同様の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。
【０１３６】
図２０に示す情報処理システムＳＹＳ３は、図１に示す構成に加えて、ストレージサーバＳＳＶｐ及びディスクプールＤＰｐを有する。ストレージサーバＳＳＶｐは、プロセッサＣＰＵ２と、プログラムＰＲＧ２が格納される領域を含むメモリＭＥＭ２とを有する。プログラムＰＧＭ２は、プロセッサＣＰＵ２により実行され、ストレージサーバＳＳＶｐの機能を実現する。フロントエンドサーバＦＥＳＶは、ストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃに加えて、ストレージサーバＳＳＶｐを管理する。
【０１３７】
ディスクプールＤＰｐは、複数のディスク装置Ｐ（Ｐ０−Ｐ１９）を有する。ディスク装置Ｐ−Ｐ１９は、太い実線で示すように、スピンアップ状態（アクティブ状態）に設定される。例えば、ディスク装置Ｐ０−Ｐ１９は、互いに異なるハッシュ空間に割り当てられる。フロントエンドサーバＦＥＳＶは、図２に示すハッシュ表ＨＡＴＢＬに加えて、ディスク装置Ｐ０−Ｐ１９用のハッシュ表ＨＡＴＢＬｐを有する。サーバ表ＳＶＴＢＬは、図５に示す内容に、ストレージサーバＳＳＶｐのＩＰアドレスを示す情報が追加される。
【０１３８】
図２０に示す情報処理システムＳＹＳ３では、端末装置ＴＭから送信されるデータは、ハッシュ表ＨＡＴＢＬｐにしたがって、ディスク装置Ｐ０−Ｐ１９のいずれかに格納される。さらに、端末装置ＴＭから送信されるデータは、ハッシュ表ＨＡＴＢＬにしたがって、磁気ディスク装置群Ｇａ、Ｇｂ、Ｇｃのそれぞれのいずれかのディスク装置Ａ、Ｂ、Ｃに格納される。ディスク装置Ａ、Ｂ、Ｃに格納されるデータは、ディスク装置Ｐ０−Ｐ１９に格納されるデータのレプリカデータである。図２０に示す情報処理システムＳＹＳ３は、図９から図１８と同様に動作する。
【０１３９】
図２１は、情報処理システムのさらなる別の例を示す。図１から図８で説明した要素と同一又は同様の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。
【０１４０】
図２１に示す情報処理システムＳＹＳ４は、図１に示す構成に加えて、ストレージサーバＳＳＶｄ及びディスクプールＤＰｄを有する。ストレージサーバＳＳＶｄ及びディスクプールＤＰｄの構成及び接続関係は、図１に示すストレージサーバＳＳＶａ及びディスクプールＤＰａの構成及び接続関係と同様である。ディスクプールＤＰｄは、複数のディスク装置Ｄ（Ｄ０−Ｄ１９）を有する複数の磁気ディスク装置群Ｇｄ（Ｇｄ０−Ｇｄ３）を有する。
【０１４１】
情報処理システムＳＹＳ４のフロントエンドサーバＦＥＳＶは、ハッシュ値に応じて、磁気ディスク装置群Ｇａ０−Ｇａ３、Ｇｂ０−Ｇｂ３の１つと、磁気ディスク装置群Ｇｃ０−Ｇｃ３、Ｇｄ０−Ｇｄ３の１つとを選択するハッシュ表ＨＡＴＢＬを有する。すなわち、フロントエンドサーバＦＥＳＶは、端末装置ＴＭからの要求を、ハッシュ表ＨＡＴＢＬに基づき、複数のストレージサーバＳＳＶａ、ＳＳＶｂ、ＳＳＶｃ、ＳＳＶｄのいずれかに振り分ける。図２１に示す情報処理システムＳＹＳ４は、図９から図１８と同様に動作する。
【０１４２】
図２２は、図２１に示すハッシュ表ＨＡＴＢＬ２の例を示す。ハッシュ表ＨＡＴＢＬ２は、図２に示すハッシュ表ＨＡＴＢＬと同様に、ハッシュ関数により得られるハッシュ値のうち所定数のビットの値を示す情報と、ハッシュ値に対応する磁気ディスク装置群を示す情報とを格納する領域を含む。ハッシュ表ＨＡＴＢＬ２は、ハッシュ関数等の所定の関数に基づいて、端末装置ＴＭからの要求と磁気ディスク装置群Ｇａ、Ｇｂ（又は、Ｇｃ、Ｇｄ）を識別する各磁気ディスク装置群識別情報とを対応付けた要求対応表の一例である。
【０１４３】
例えば、上位の３ビットが”０００ｂ”（”ｂ”は２進数を示す）のハッシュ値に対応するデータは、磁気ディスク装置群Ｇａ０、Ｇｃ０に記憶される。上位の３ビットが”００１ｂ”のハッシュ値に対応するデータは、磁気ディスク装置群Ｇａ１、Ｇｃ１に記憶される。上位の３ビットが”０１０ｂ”のハッシュ値に対応するデータは、磁気ディスク装置群Ｇａ２、Ｇｃ２に記憶される。上位の３ビットが”０１１ｂ”のハッシュ値に対応するデータは、磁気ディスク装置群Ｇａ３、Ｇｃ３に記憶される。すなわち、”０００ｂ”から”０１１ｂ”のハッシュ値は、ストレージサーバＳＳＶａに接続される磁気ディスク装置群Ｇａと、ストレージサーバＳＳＶｃに接続される磁気ディスク装置群Ｇｃに割り当てられる。
【０１４４】
”１００ｂ”から”１１１ｂ”のハッシュ値は、ストレージサーバＳＳＶｂに接続される磁気ディスク装置群Ｇｂと、ストレージサーバＳＳＶｄに接続される磁気ディスク装置群Ｇｄに割り当てられる。なお、実際には、フロントエンドサーバＦＥＳＶは、例えば、ハッシュ関数としてＭＤ５（Message Digest 5）を用いて１２８ビットのハッシュ値を生成する。
【０１４５】
図２３は、図２１に示すディスクプールＤＰａ、ＤＰｂのハッシュリングを示す。ディスクプールＤＰａ、ＤＰｂでは、図４と同様に、状態ＳＴ（ＳＴ０、ＳＴ１、ＳＴ２、ＳＴ３、ＳＴ４）毎に、ハッシュ空間に割り当てられる磁気ディスク装置Ａ（又は、ディスク装置Ｂ）が変更される。すなわち、状態ＳＴ０−ＳＴ４のいずれか１つに対応するディスク装置Ａ（又は、ディスク装置Ｂ）は、アクティブ状態に設定され、他の状態ＳＴに対応するディスク装置Ａ（又は、ディスク装置Ｂ）はインアクティブ状態に設定される。すなわち、網掛けで示す状態ＳＴ１に対応するディスク装置Ａ４−Ａ７、Ｂ４−Ｂ７は、アクティブ状態に設定され、他のディスク装置Ａ０−Ａ３、Ａ８−Ａ１９、Ｂ０−Ｂ３、Ｂ８−Ｂ１９は、インアクティブ状態に設定される。
【０１４６】
なお、ディスクプールＤＰｃ、ＤＰｄにおいても、図２３と同様に、状態ＳＴ０−ＳＴ４毎に、ハッシュ空間に割り当てられるディスク装置Ｃ、Ｄが変更される。ディスクプールＤＰｃにおいてハッシュ空間に割り当てられるディスク装置Ｃは、図２３のディスク装置の符号”Ａ”を符号”Ｃ”に置き換えることにより示される。同様に、ディスクプールＤＰｄにおいてハッシュ空間に割り当てられるディスク装置Ｄは、図２３の磁気ディスク装置の符号”Ｂ”を符号”Ｄ”に置き換えることにより示される。
【０１４７】
以上、図１から図２３に示す実施形態では、プロセッサＣＰＵ１は、削除要求毎にデータを削除せず、削除するデータのエントリが削除表ＤＥＬＴＢＬに所定量貯まったことに基づいて、削除表ＤＥＬＴＢＬに貯まったエントリに対応するデータをまとめて削除する。同様に、プロセッサＣＰＵ１は、データの更新が発生する毎にデータを削除せず、削除するデータのエントリが削除表ＤＥＬＴＢＬに所定量貯まったことに基づいて、削除表ＤＥＬＴＢＬに貯まったエントリに対応するデータをまとめて削除する。これにより、ディスク装置のスピンアップ及びスピンダウンの頻度を下げることができるため、ディスク装置の劣化を抑制することができ、ディスク装置の寿命を短くなることを抑制することができる。また、ディスク装置のスピンアップ及びスピンダウンの頻度を下げることで、ディスクプールＤＰで消費される電力を削減することができる。さらに、削除表ＤＥＬＴＢＬに貯まったエントリに対応するデータをまとめて削除することで、削除要求毎にデータを削除する場合に比べて、データを削除する効率を向上することができる。
【０１４８】
データをまとめて削除することで、ストレージサーバＳＳＶによるディスク装置のアクセス頻度を下げることができ、ディスク装置のアクセスが頻繁に発生することによるストレージサーバＳＳＶの性能の低下を抑制することができる。さらに、データの更新処理により、インアクティブ状態のディスク装置に格納された元のデータを、アクティブ状態のディスク装置に移動することで、ディスク装置をスピンアップすることなく、次に発生する書き込み、削除、読み出しを実行することができる。換言すれば、スピンアップ及びスピンダウンの頻度を下げることで、ディスク装置の劣化を抑制することができ、ディスクプールＤＰで消費される電力を削減することができる。
【０１４９】
データの削除処理により空き領域が生じたディスク装置を、アクティブ状態に設定可能にすることで、データを削除した記憶領域を使用しない場合に比べて、ディスク装置を効率的に使用することができる。これにより、ディスクプールＤＰの使用効率を向上することができる。
【０１５０】
以上の実施形態において説明した発明を整理して、付記として開示する。
（付記１）
複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置と、前記情報処理装置を管理する管理装置と、前記管理装置に接続された端末装置を有する情報処理システムにおいて、
前記管理装置は、
各磁気ディスク装置群を識別する磁気ディスク装置群識別情報と各情報処理装置を識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報と、所定の関数に基づき要求と前記各磁気ディスク装置群識別情報とを対応付けた要求対応表とを記憶する管理記憶部と、
前記端末装置からの要求を、前記要求対応表に基づき、前記複数の磁気ディスク装置群のいずれかに振り分ける管理制御部とを有し、
前記複数の情報処理装置の各々は、
前記複数のディスク装置に格納するデータ毎にデータを識別するデータ識別情報とデータを格納するディスク装置とデータのサイズとを対応付けたデータ管理情報と、前記複数の磁気ディスク装置群がそれぞれ含む複数のディスク装置がモータの回転状態を維持した活性磁気ディスク装置又はモータの回転を停止させた複数の非活性磁気ディスク装置のいずれであるかを指定するディスクグループ状態情報と、前記管理装置を介して振り分けられた前記端末装置からの要求に含まれる前記複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、前記削除対象のデータのサイズとを含む削除データ管理情報とを記憶する記憶部と、
前記管理装置を介して振り分けられた前記端末装置からの要求に基づき、前記複数のディスク装置に格納するデータのいずれかを変更する場合、前記削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第１閾値を超えている場合、前記削除データ管理情報が指定する削除対象のデータを全て削除し、前記削除データ管理情報に含まれる前記削除データ指定情報を全て消去するとともに前記データ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新するディスク制御部と、
を有することを特徴とする情報処理システム。
（付記２）
前記ディスク制御部は、
前記管理装置を介して振り分けられた前記端末装置から要求が、前記非活性磁気ディスク装置のいずれかに格納するデータの書き込みを示し、格納するデータの前記データ識別情報が前記データ管理情報に含まれ、前記削除データ管理情報に含まれる前記合計データサイズが前記第１閾値を超えている場合、前記削除データ管理情報が指定する削除対象のデータを全て削除し、前記削除データ管理情報に含まれる前記削除データ指定情報を全て消去するとともに前記データ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新し、前記ディスクグループ状態情報が示す前記活性磁気ディスク装置に前記端末装置からのデータを格納し、格納したデータを識別する前記データ識別情報を含むエントリを前記データ管理情報に追加することを特徴とする付記１記載の情報処理システム。
（付記３）
前記ディスク制御部は、
前記管理装置を介して振り分けられた前記端末装置から要求が、前記非活性磁気ディスク装置のいずれかに格納するデータの書き込みを示し、格納するデータの前記データ識別情報が前記データ管理情報に含まれ、前記削除データ管理情報に含まれる前記合計データサイズが前記第１閾値以下の場合、前記データ識別情報及びデータのサイズを前記削除データ管理情報に追加し、前記ディスクグループ状態情報が示す前記活性磁気ディスク装置に前記端末装置からのデータを格納し、格納したデータを識別する前記データ識別情報を含むエントリを前記データ管理情報に追加することを特徴とする付記１又は請求項２記載の情報処理システム。
（付記４）
前記ディスク制御部は、
前記管理装置を介して振り分けられた前記端末装置からの要求が、前記非活性磁気ディスク装置が記憶するデータの削除を示し、前記合計データサイズが前記第１閾値以下の場合、削除対象のデータを指定する前記削除管理情報と、削除対象のデータのサイズとを、削除対象のデータが格納された前記ディスク装置に対応する前記削除データ管理情報に追加し、削除対象のデータを識別する前記データ識別情報を含むエントリを前記データ管理情報から削除することを特徴とする付記１乃至付記３のいずれか１項記載の情報処理システム。
（付記５）
前記ディスク制御部は、
前記管理装置を介して振り分けられた前記端末装置からの要求が、前記活性磁気ディスク装置が記憶するデータの削除を示す場合、削除対象のデータを削除し、削除対象のデータのデータ識別情報を含むエントリを前記データ管理情報から削除することを特徴とする付記１乃至付記４のいずれか１項記載の情報処理システム。
（付記６）
前記ディスク制御部は、
前記管理装置を介して振り分けられた前記端末装置からの要求が、前記ディスク装置のいずれにも格納されていないデータの書き込みを示す場合、前記端末装置からのデータを前記活性磁気ディスク装置に格納し、書き込んだデータを識別する前記データ識別情報を含むエントリを前記データ管理情報に追加することを特徴とする付記１乃至付記５のいずれか１項記載の情報処理システム。
（付記７）
前記ディスク制御部は、
前記活性磁気ディスク装置へのデータの格納により前記活性磁気ディスク装置が記憶するデータのサイズの合計が第２閾値を超えた場合、前記活性磁気ディスク装置を前記非活性磁気ディスク装置に設定し、前記非活性磁気ディスクのうちデータを格納可能なディスク装置のいずれかを前記活性磁気ディスク装置に設定し、前記ディスクグループ状態情報を更新することを特徴とする付記３又は付記６記載の情報処理システム。
（付記８）
前記ディスクグループ状態情報は、前記非活性化磁気ディスク装置を前記活性化磁気ディスク装置に設定する順序を指定する順序情報を含み、
前記ディスク制御部は、前記順序情報に基づき前記非活性磁気ディスク装置を前記活性化磁気ディスク装置に設定することを特徴とする付記１乃至付記７のいずれか１項記載の情報処理システム。
（付記９）
前記ディスク制御部は、
前記合計データサイズが前記第１閾値を超え、前記削除データ管理情報が指定する削除対象のデータを全て削除した場合、データが削除された非活性磁気ディスク装置が、現在の活性磁気ディスク装置の次に活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新することを特徴とする付記１乃至付記８のいずれか１項記載の情報処理システム。
（付記１０）
前記ディスク制御部は、
前記合計データサイズが前記第１閾値を超え、前記削除データ管理情報が指定する削除対象のデータを全て削除した場合、データが削除された非活性磁気ディスク装置が、データを格納可能な非活性磁気ディスクのうちの最後に活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新することを特徴とする付記１乃至付記８のいずれか１項記載の情報処理システム。
（付記１１）
前記ディスク制御部は、
前記合計データサイズが前記第１閾値を超えたことに基づき削除対象のデータを削除する間、削除対象のデータが格納された前記非活性磁気ディスク装置を前記活性磁気ディスク装置に変更することを特徴とする付記１乃至付記１０のいずれか１項記載の情報処理システム。
（付記１２）
前記ディスク制御部は、
前記管理装置を介して振り分けられた前記端末装置からの要求が、前記ディスク装置のいずれかに格納したデータの読み出しを示す場合、読み出すデータの前記データ識別情報に基づき前記データ管理情報を検索し、読み出すデータを格納したディスク装置からデータを読み出すことを特徴とする付記１乃至付記１１のいずれか１項記載の情報処理システム。
（付記１３）
前記ディスク制御部は、
読み出すデータを格納したディスク装置が非活性磁気ディスク装置に設定されている場合、非活性磁気ディ非活性ディスク内のデータの削除・更新時に、削除対象データの情報を削除表に登録し、登録したデータサイズの合計が所定量を超えた場合、ディスクを活性化してデータを削除することで、ディスクの劣化を抑制するスク装置に設定されたディスク装置をデータを読み出す間、活性磁気ディスク装置に設定することを特徴とする付記１２記載の情報処理システム。
（付記１４）
複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置と、前記情報処理装置を管理する管理装置と、前記管理装置に接続された端末装置を有する情報処理システムの制御方法において、
前記管理装置が有する管理記憶部が、各磁気ディスク装置群を識別する磁気ディスク装置群識別情報と各情報処理装置を識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報と、所定の関数に基づき要求と前記各磁気ディスク装置群識別情報とを対応付けた要求対応表とを記憶し、
前記管理装置が有する管理制御部が、前記端末装置からの要求を、前記要求対応表に基づき、前記複数の磁気ディスク装置群のいずれかに振り分け、
前記複数の情報処理装置の各々が有する記憶部が、前記複数のディスク装置に格納するデータ毎にデータを識別するデータ識別情報とデータを格納するディスク装置とデータのサイズとを対応付けたデータ管理情報と、前記複数の磁気ディスク装置群がそれぞれ含む複数のディスク装置がモータの回転状態を維持した活性磁気ディスク装置又はモータの回転を停止させた複数の非活性磁気ディスク装置のいずれであるかを指定するディスクグループ状態情報と、前記管理装置を介して振り分けられた前記端末装置からの要求に含まれる前記複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、前記削除対象のデータのサイズとを含む削除データ管理情報とを記憶し、
前記複数の情報処理装置の各々が有するディスク制御部が、前記管理装置を介して振り分けられた前記端末装置からの要求に基づき、前記複数のディスク装置に格納するデータのいずれかを変更する場合、前記削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第１閾値を超えている場合、前記削除データ管理情報が指定する削除対象のデータを全て削除し、前記削除データ管理情報に含まれる前記削除データ指定情報を全て消去するとともに前記データ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新すること
を特徴とする情報処理システムの制御方法。
（付記１５）
複数のディスク装置をそれぞれ含む複数の磁気ディスク装置群をそれぞれ有する複数の情報処理装置と、前記情報処理装置を管理する管理装置と、前記管理装置に接続された端末装置を有し、前記管理装置が、各磁気ディスク装置群を識別する磁気ディスク装置群識別情報と各情報処理装置を識別する情報処理装置識別情報とを対応付けたディスクグループ対応情報と、所定の関数に基づき要求と前記各磁気ディスク装置群識別情報とを対応付けた要求対応表とを記憶する管理記憶部と、前記端末装置からの要求を、前記要求対応表に基づき、前記複数の磁気ディスク装置群のいずれかに振り分ける管理制御部とを有する情報処理システムにおける前記情報処理装置の制御プログラムにおいて、
前記複数の情報処理装置の各々が有する記憶部に、前記複数のディスク装置に格納するデータ毎にデータを識別するデータ識別情報とデータを格納するディスク装置とデータのサイズとを対応付けたデータ管理情報と、前記複数の磁気ディスク装置群がそれぞれ含む複数のディスク装置がモータの回転状態を維持した活性磁気ディスク装置又はモータの回転を停止させた複数の非活性磁気ディスク装置のいずれであるかを指定するディスクグループ状態情報と、前記管理装置を介して振り分けられた前記端末装置からの要求に含まれる前記複数のディスク装置毎に削除対象のデータを指定する削除データ指定情報と、前記削除対象のデータのサイズとを含む削除データ管理情報とを記憶させ、
前記複数の情報処理装置の各々が有するディスク制御部に、前記管理装置を介して振り分けられた前記端末装置からの要求に基づき、前記複数のディスク装置に格納するデータのいずれかを変更する場合、前記削除データ管理情報に含まれる全てのデータのサイズの合計である合計データサイズが第１閾値を超えている場合、前記削除データ管理情報が指定する削除対象のデータを全て削除し、前記削除データ管理情報に含まれる前記削除データ指定情報を全て消去するとともに前記データ管理情報を更新し、データが削除された非活性磁気ディスク装置が活性磁気ディスク装置に設定されるように前記ディスクグループ状態情報を更新させること
を特徴とする情報処理装置の制御プログラム。
【０１５１】
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずである。したがって、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。
【符号の説明】
【０１５２】
Ａ０−Ａ１９、Ｂ０−Ｂ１９、Ｃ０−Ｃ１９、Ｄ０−Ｄ１９、Ｐ０−Ｐ１９…ディスク装置；ＣＰＵ０、ＣＰＵ１、ＣＰＵ２…プロセッサ；ＤＥＬＴＢＬ…削除表；ＤＧＴＢＬ…ディスクグループ表；ＤＭＴＢＬ…データ管理表；ＤＰａ、ＤＰｂ、ＤＰｃ、ＤＰｄ、ＤＰｐ…ディスクプール；ＤＳＷ…スイッチ；ＦＥＳＶ…フロントエンドサーバ；Ｇａ０−Ｇａ３、Ｇｂ０−Ｇｂ３、Ｇｃ０−Ｇｃ３、Ｇｄ０−Ｇｄ３、Ｇｐ０−Ｇｐ３…磁気ディスク装置群；ＨＡＴＢＬ、ＨＡＴＢＬ２、ＨＡＴＢＬｐ…ハッシュ表；ＭＥＭ０、ＭＥＭ１、ＭＥＭ２…メモリ；ＮＳＷ…ネットワークスイッチ；ＮＷ…ネットワーク；ＰＲＧ０、ＰＲＧ１…プログラム；ＳＳＶａ、ＳＳＶｂ、ＳＳＶｃ、ＳＳＶｐ…ストレージサーバ；ＳＶＴＢＬ…サーバ表；ＳＹＳ１、ＳＹＳ２、ＳＹＳ３…情報処理システム；ＴＭ…端末装置
【図１】
2015191498.tif 000003
【図２】
2015191498.tif 000004
【図３】
2015191498.tif 000005
【図４】
2015191498.tif 000006
【図５】
2015191498.tif 000007
【図６】
2015191498.tif 000008
【図７】
2015191498.tif 000009
【図８】
2015191498.tif 000010
【図９】
2015191498.tif 000011
【図１０】
2015191498.tif 000012
【図１１】
2015191498.tif 000013
【図１２】
2015191498.tif 000014
【図１３】
2015191498.tif 000015
【図１４】
2015191498.tif 000016
【図１５】
2015191498.tif 000017
【図１６】
2015191498.tif 000018
【図１７】
2015191498.tif 000019
【図１８】
2015191498.tif 000020
【図１９】
2015191498.tif 000021
【図２０】
2015191498.tif 000022
【図２１】
2015191498.tif 000023
【図２２】
2015191498.tif 000024
【図２３】
2015191498.tif 000025