JPWO2016001959A1 - Storage system - Google Patents
Storage systemInfo
- Publication number
- JPWO2016001959A1 JPWO2016001959A1 JP2016530685A JP2016530685A JPWO2016001959A1 JP WO2016001959 A1 JPWO2016001959 A1 JP WO2016001959A1 JP 2016530685 A JP2016530685 A JP 2016530685A JP 2016530685 A JP2016530685 A JP 2016530685A JP WO2016001959 A1 JPWO2016001959 A1 JP WO2016001959A1
- Authority
- JP
- Japan
- Prior art keywords
- data
- drive
- job
- storage medium
- storage
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
プリフェッチ動作にも時間がかるため、プリフェッチのタイミングをスケジューリングしなければ、必要時に、低速な記憶媒体から高速の記憶媒体へのコピー(プリフェッチ)が実行できず処理待ちが発生してしまうという課題がある。本発明の一実施形態では、外部計算機からのリード要求の前にあらかじめ第1の記憶媒体から第2の記憶媒体にデータをコピーするプリフェッチのスケジュールを、前記プリフェッチにかかる時間に基づいて決定する。Since the prefetch operation takes time, if the prefetch timing is not scheduled, copying (prefetch) from a low-speed storage medium to a high-speed storage medium cannot be executed when necessary, resulting in a processing wait. . In one embodiment of the present invention, a prefetch schedule for copying data from a first storage medium to a second storage medium in advance before a read request from an external computer is determined based on the time taken for the prefetch.
Description
本発明はストレージシステムにおけるドライブ制御に関する。 The present invention relates to drive control in a storage system.
ストレージシステムではRead性能向上のために、アプリケーション(AP)実行前に、データを格納している記憶媒体から、より高速にRead可能な記憶装置にコピーし(これをプリフェッチと呼ぶ)キャッシュデータを作成する。例えば、特許文献1に開示される、磁気ディスクと光ディスクと含むストレージシステムにおいて、リクエスト傾向に従って光ディスクのデータを磁気ディスクにコピーし、キャッシュデータを作成する技術がある。
In the storage system, to improve the Read performance, before executing the application (AP), copy the data from the storage medium storing the data to a storage device that can be read at higher speed (this is called prefetch) to create cache data To do. For example, in a storage system disclosed in
プリフェッチ動作にも時間がかかるため、プリフェッチのタイミングをスケジューリングしなければ、必要な時に低速な記憶媒体から高速の記憶媒体へのコピー(プリフェッチ)が実行できず、処理待ちが発生してしまうという課題がある。 The prefetch operation also takes time, so if the prefetch timing is not scheduled, copying (prefetch) from a low-speed storage medium to a high-speed storage medium cannot be executed when necessary, and processing waits will occur. There is.
上記課題を解決するために、本発明の一実施形態では、外部計算機からのリード要求の前にあらかじめ第1の記憶媒体から第2の記憶媒体にデータをコピーするプリフェッチのスケジュールを、プリフェッチにかかる時間に基づいて決定する。 In order to solve the above problem, in one embodiment of the present invention, a prefetch schedule for copying data from a first storage medium to a second storage medium in advance before a read request from an external computer is applied to the prefetch. Decide based on time.
上位装置への応答時間が短縮される。 Response time to the host device is shortened.
図1は本実施例の概略を示す図である。装置管理サーバ65は、ストレージ管理プログラム504とドライブ利用処理計算プログラム511とを保持する。可搬型記憶装置40は、データを記録再生するドライブ405、媒体搬送部406、及び複数の可搬型記憶媒体408を有する。ハイブリッド型記憶装置91はハイブリット制御サーバ50、ブロックストレージ31、及び可搬型記憶装置40を有する。ブロックストレージ31は論理ボリューム313を有する。ハイブリット制御サーバ50は読み書きプログラム512を有する。
FIG. 1 is a diagram showing an outline of this embodiment. The
ハイブリッド型記憶装置91はブロックストレージ31と可搬型記憶装置40を利用し、データをアーカイブする。上位階層の記憶装置からのデータはまずハイブリット制御サーバ50の読み書きプログラム512により、ブロックストレージ31に書き込まれ、特定の条件を満たすと読み書きプログラム512により可搬型記憶装置40に書き込まれる。データをReadするときには読み書きプログラム512が可搬型記憶装置40からデータを読み出しブロックストレージ31にコピーする。このコピー処理をアプリケーションが必要とする時間より前に実施する(プリフェッチする)と可搬型記憶装置40の媒体搬送時間によるRead遅延を隠蔽することが可能となる。
The
ストレージ管理プログラム504は定期的、もしくはデータ生成のタイミングでホスト計算機10、ファイルサーバ20、ブロックストレージ30、可搬型記憶装置40、アーカイブ管理サーバ70、ジョブ管理サーバ60から各種情報を収集する。次に収集したデータに含まれるアプリケーションのスケジュールの情報、ブロックストレージの記憶情報、ドライブ性能情報、データ格納位置情報、に基づいて前記複数の可搬型記憶媒体を前記ドライブにロードするスケジュールを決定する。
The
本実施例により、可搬型記憶装置40内のドライブを利用する処理の適切な実行順序を決定することが可能となる。その結果、可搬型記憶装置40を利用したRead/Write処理の遅延を防ぐことが可能となる。特に、ドライブの数が少ない場合や、可搬型記憶媒体408がホログラムディスクなどRead/Write性能が低い場合に有効である。また、可搬型記憶装置40をRead/Write両方の処理が同頻度で発生するActive Archiveの目的で利用する場合に本実施例の効果が重要となる。
According to the present embodiment, it is possible to determine an appropriate execution order of processing using the drive in the
図2は全体の計算機システム1の構成例を示すブロック図である。ホスト計算機10はデータネットワーク80aを介してファイルサーバ20と、ハイブリッド型記憶装置91と接続される。ハイブリッド型記憶装置91はハイブリット制御サーバ50とブロックストレージ31と可搬型記憶装置40と、を有する。ハイブリット制御サーバ50とブロックストレージ31とはデータネットワーク80cを介して接続される。ハイブリット制御サーバ50と可搬型記憶装置40とはデータネットワーク80dを介して接続される。ファイルサーバ20とブロックストレージ30はデータネットワーク80bを介して接続される。ホスト計算機10、ファイルサーバ20、ブロックストレージ30、ハイブリッド型記憶装置91(ハイブリット制御サーバ50、ブロックストレージ31、可搬型記憶装置40)、ジョブ管理サーバ60、装置管理サーバ65、アーカイブ管理サーバ70は管理ネットワーク90を介して接続される。なお、データネットワーク80a、80b、80c、80d、は分かれている必要はなく、同一ネットワークでも良い。またデータネットワーク80や管理ネットワーク90のプロトコルはFC(Fibre Channel)やIP(Internet Protocol)など任意のプロトコルで構わなく、データネットワーク80と管理ネットワーク90が同一ネットワークであってもよい。ハイブリッド型記憶装置91と装置管理サーバ65を含むシステムをまとめて記憶システム92と呼ぶ。さらに記憶システム92と、ファイルサーバ20と、ブロックストレージ30と、ジョブ管理サーバ60、アーカイブ管理サーバ70を含むシステムをまとめて階層記憶システム93と呼ぶ。
FIG. 2 is a block diagram showing a configuration example of the
本実施例では各サーバが独立である場合を示すが、各サーバは必ずしも独立である必要はなく、一つの以上のサーバで各処理を実行しても良い。また、ストレージ装置や可搬型記憶装置が各サーバの処理を実行しても良い。また、ストレージ装置30とストレージ装置31が異なる筐体である例を示したが、同一の筐体でもよく、ファイルサーバ20とハイブリット制御サーバ50それぞれに記憶領域が提供されればよい。
In the present embodiment, a case where each server is independent is shown, but each server is not necessarily independent, and each process may be executed by one or more servers. Further, a storage device or a portable storage device may execute the processing of each server. In addition, although an example in which the
図3Aはホスト計算機10の例を示す図である。ホスト計算機10は、CPU101、メモリ102、データIF(Interface)108、管理IF109を備える。メモリ102にはOS(Operating System)103とストレージ装置の記憶領域をマウントするためのデバイスマネージャ107が格納される。OS103にはアプリケーション104と階層管理エージェント105とジョブ実行エージェント106が含まれる。CPU101がメモリ上のOS103やデバイスマネージャ107を動作させる。階層管理エージェント105は、後述するアーカイブ管理サーバ70内の階層管理プログラム704と通信する。ジョブ実行エージェント106は、後述するジョブ管理サーバ60のジョブ管理プログラム604と通信する。データIF108はデータネットワーク80と接続される。管理インタフェース109は管理ネットワーク90と接続する。なお、データインタフェース108と管理インタフェース109は共通のIFであってもよい。
FIG. 3A is a diagram illustrating an example of the
図3Bはファイルサーバ20の例を示す図である。ファイルサーバ20は、ホストIF201、ファイル制御プロセッサ202、メモリ203、ディスクIF206、管理IF207を備える。メモリ203にはファイル構成管理テーブル204と階層管理エージェント205が格納される。階層管理エージェント205はアーカイブ管理サーバ70内の階層管理プログラム704と通信する。ファイル制御プロセッサ202が、メモリ内の階層管理エージェントを動作させる。ホストIF201はデータネットワーク80aを介してホスト計算機10と接続する。ディスクIF206はデータネットワーク80bを介してブロックストレージ30と接続する。管理インタフェース207は管理ネットワーク90を介して装置管理サーバ65と接続する。ファイル制御プロセッサ202はブロックストレージ30のボリュームをマウントしファイルサーバ20をNAS(Network Attached Storage)として動作させる。
FIG. 3B is a diagram illustrating an example of the
図4はブロックストレージ30及び31の例を示す図である。ブロックストレージ30及び31はブロック制御プロセッサ302、メモリ303、物理ストレージデバイス306、管理IF315を備える。メモリ303はブロック構成テーブル304と階層管理エージェント305が格納される。階層管理エージェント305はアーカイブ管理サーバ70内の階層管理プログラム704と通信する。ブロック制御プロセッサ302が、メモリ内の階層管理エージェント305を動作させる。ブロック構成テーブル304の詳細は後述する。物理ストレージデバイス306は1つ以上のHDD(Hard Disk Drive)307や1つ以上のSSD(Solid State Drive)308といった記憶媒体である。複数種類の物理記憶領域を含んでもよい。なお、物理ストレージデバイスの種類はHDDやSSDだけでなく他の任意の種類のデバイスでよい。
FIG. 4 is a diagram illustrating an example of the
ここで、物理ブロックストレージ31の物理ストレージデバイスは、可搬型記憶装置の記憶媒体408からプリフェッチ目的でデータが格納される事があるため、プリフェッチ用記憶媒体と表記する事がある。このプリフェッチ用記憶媒体はプリフェッチに用いられるために記憶媒体408よりアクセス性能が高速であることが期待される。記憶媒体複数の物理ストレージデバイスはRAID(Redundant Arrays of Independent Disks)構成が組まれている。物理制御プロセッサ302は物理ストレージデバイスに基づき、論理ボリューム312をホスト計算機10やファイルサーバ20に提供する。管理インタフェース315は管理ネットワーク90を介して装置管理サーバ65と接続する。
Here, the physical storage device of the
図5は可搬型記憶装置の例を示す図である。可搬型記憶装置は、ロボットなどの媒体搬送機構などを用いて、可搬型記憶媒体をドライブにセットする記憶装置である。可搬型記憶装置40は、ホストIF401、コントローラ402、メモリ403、キャッシュメモリ404、ドライブ405、媒体搬送部406、媒体格納部407を備える。ホストIF401はデータネットワーク80を介してホスト計算機10と接続する。管理IF409は管理ネットワーク90を介して装置管理サーバ65と接続する。
FIG. 5 is a diagram illustrating an example of a portable storage device. The portable storage device is a storage device that sets a portable storage medium in a drive using a medium transport mechanism such as a robot. The
メモリ403は、Read/Writeプログラム410とエージェントプログラム411と可搬型記憶装置管理プログラム412と可搬型記憶装置構成管理テーブル413とを保持する。Read/Writeプログラム410はドライブ405を通じて記憶媒体408にデータを書き込む、または、ドライブ405を通じて媒体のデータを再生するプログラムである。エージェントプログラム411は装置管理サーバ65のストレージ管理プログラム654と読み書き指示プログラム657と通信するプログラムである。可搬型記憶装置管理プログラム412は、媒体格納部407に含まれる記憶媒体408の搬送を行う媒体搬送部406を管理し、可搬型記憶媒体408の情報を管理するプログラムである。可搬型記憶装置構成管理テーブル413の詳細は後述する。コントローラ402が、メモリ403内のプログラムを動作させる。キャッシュメモリ404は上位階層から送られたデータや可搬型記憶媒体408からリードしたデータ一時的にキャッシュしておく記憶媒体であり、DRAMやフラッシュHDDなどで構成され、Read/Write性能が可搬型記憶媒体より高い。
The
ドライブ405は媒体搬送部406により搬送された記憶媒体408に対してデータの読み書きを実施する。ドライブ405の数は1以上であり、記憶媒体408の数より少ない。また、複数のドライブ405を備える場合には性能の異なるドライブが混在しても良い。また、記憶媒体408が複数種類ある場合には、記憶媒体の種別毎に専用のドライブ405があってもよいし、異なる種別の記憶媒体で共通のドライブ405があってもよい。
The
媒体搬送部406は記憶媒体格納部407とドライブ405での記憶媒体408の搬送を行う。ここでドライブ405に記憶媒体408をリード可能な状態に配置することをロードと呼ぶ。記憶媒体搬送部406の数は一以上であればよく、必ずしもドライブの数と同等である必要はない。また、本実施例では、全ての媒体搬送部407は全てのドライブ405及び媒体格納部407に記憶媒体を搬送可能であるが、特定の媒体搬送部407を特定の媒体ドライブ及び媒体格納部間の搬送のみ実施するようにしてもよい。媒体格納部407には複数の記憶媒体408が格納される。媒体格納部407は1以上あればよい。可搬型記憶媒体408は、一つ以上のDVD(Digital Versatile Disc)、Blu−ray(登録商標) Discやホログラムディスクなどの光学記憶媒体や、テープなどの磁気記憶媒体などである。記憶媒体408の数はドライブ405の数より多く、複数種類の記憶媒体が混在していてもよい。
The
図6Aはハイブリット制御サーバ50の例を説明するブロック図である。ハイブリット制御サーバ50はホストIF、ファイル制御プロセッサ502、メモリ503、ディスクIF504、ライブラリIF505、及び管理IF506を備える。
FIG. 6A is a block diagram illustrating an example of the
ハイブリット制御サーバ50はブロックストレージ31と可搬型記憶装置40を一つの記憶装置としてホスト計算機に提供する。具体的には、ハイブリット制御サーバ50は可搬型記憶装置40の記憶容量を持つ記憶装置としてホスト計算機に提供され、ブロックストレージ31の記憶領域はホストにアクセスされるキャッシュ領域として利用される。
The
メモリ503にはファイル構成管理テーブル501と階層管理エージェント511とRead/Writeプログラム512を含む。階層管理エージェント511はアーカイブ管理サーバ70内の階層管理プログラム704と通信する。ファイル制御プロセッサ502が、メモリ内の階層管理エージェントを動作させる。ホストIF501はデータネットワーク80aを介して、ホスト計算機10と接続する。ディスクIF504はデータネットワーク80cを介してブロックストレージ30と接続する。ライブラリIF505はデータネットワーク80dを介して可搬型記憶装置40と接続する。管理IF506は管理ネットワーク90を介して装置管理サーバ65、アーカイブ管理サーバ70と接続する。
The
ファイル制御プロセッサ502はブロックストレージ31の論理ボリューム、および可搬型記憶装置40の記憶媒体またはボリュームをマウントしハイブリット制御サーバ50をNAS(Network Attached Storage)として動作させる。ここではNASの詳細な動作は省略する。メモリ503内のファイル構成管理テーブル510はハイブリット制御サーバ50が持つ物理リソース情報を持つ。ファイル構成管理テーブルの詳細は後述の、ファイル管理サーバ20のファイル構成管理テーブル204と同じ構成である。Read/Writeプログラム512はホスト計算機10または階層管理プログラム70からの指示によりブロックストレージ31または可搬型記憶装置40のデータを読み書きするプログラムである。
The
図6Bはジョブ管理サーバ60の例を説明するブロック図である。ジョブ管理サーバ60はCPU601、NIC602及びメモリ603を備える。メモリ603にはジョブ管理プログラム604とジョブ管理テーブル605が格納される。ジョブ管理プログラム604は階層管理システムで動作するジョブ処理を実行するプログラムである。ジョブ実行のためにホスト計算機10のジョブ実行エージェント106や装置管理サーバ65のジョブ実行エージェント663、アーカイブ管理サーバ70のジョブ実行エージェント707と通信して計画したジョブを実行する。ジョブ管理テーブル605の詳細は後述する。また、NIC602を介して管理ネットワーク90と接続する。ジョブ管理サーバ60には、当該ジョブ管理サーバ60を操作するための入出力装置620が接続される。入出力装置620は、マウス、キーボード及びディスプレイなどの装置であり、ジョブ管理サーバ60と管理者(ユーザとも呼ぶ)との間で情報を入出力するために利用される。
FIG. 6B is a block diagram illustrating an example of the
図7は装置管理サーバ65の例を説明するブロック図である。ホスト計算機10、ファイルサーバ20、ブロックストレージ30、ハイブリッド型記憶装置91(ハイブリット制御サーバ50、ブロックストレージ31、可搬型記憶装置40)、ジョブ管理サーバ60、アーカイブ管理サーバ70と接続され管理ネットワーク90を介して、各計算機から必要な情報を取得することができ、各計算機に必要な情報(プログラムを含む)を与えることができる。
FIG. 7 is a block diagram illustrating an example of the
装置管理サーバ65は、CPU651、NIC652、メモリ653を備え入出力装置670が接続される。CPU651は、メモリ653上に展開されるプログラムを実行する。メモリ653は、ストレージ管理プログラム654、システム管理プログラム655、ドライブ利用処理計算プログラム656、読み書き指示プログラム657、構成管理テーブル658、データ管理テーブル659、ジョブ対応関係管理テーブル660、HDD容量管理テーブル661、ポリシー管理テーブル662、ジョブ実行エージェント663、実行スクリプト664、を格納する。なお、他のプログラムが格納されていてもよい。
The
ストレージ管理プログラム654は、構成管理テーブル658、データ管理テーブル659、ジョブ対応関係管理テーブル660、HDD容量管理テーブル661、ポリシー管理テーブル662の情報を使用して、各管理対象(ホスト計算機10、ファイルサーバ20、ブロックストレージ30、ハイブリッド型記憶装置91(ハイブリット制御サーバ50、ブロックストレージ31、可搬型記憶装置40)、ジョブ管理サーバ60、アーカイブ管理サーバ70)の情報を管理する。また、ストレージ管理プログラム654は可搬型記憶装置40内のエージェントプログラム411と通信し指示出しや情報の通知を受けることができる。システム管理プログラム655は、ジョブ管理サーバ60のジョブ管理プログラム604、アーカイブ管理サーバ70の階層管理プログラム704と通信し指示出しや情報の通知を受けることができる。また、ストレージ管理プログラム654とシステム管理プログラム655は同一のプログラムであってもよい。
The
ドライブ利用処理計算プログラム656は、構成管理テーブル658、データ管理テーブル659、ジョブ対応関係管理テーブル660、HDD容量管理テーブル661、ポリシー管理テーブル662の情報を使用して、ドライブを占有する処理の内容(処理時間など)を計算するプログラムである。読み書き指示プログラム657は、可搬型記憶装置40内のキャッシュメモリ404内に溜まっているデータを記憶媒体408に書き出す指示を与えるプログラムである。構成管理テーブル658、データ管理テーブル659、ジョブ対応関係管理テーブル660及びジョブ対応関係管理テーブルHDD容量管理テーブル661の詳細については後述する。
The drive use
ポリシー管理テーブル662は、ファイルやホスト計算機等の単位でデータを動かすポリシーを記載するテーブルである。アーカイブ管理サーバ70内の移動ポリシーテーブル705と同じ内容を含む。ジョブ実行エージェント663はジョブ管理プログラム604から指示を受けて処理を実行するエージェントである。実行スクリプト664はジョブ実行エージェント663が実行する処理の内容が記載されたスクリプトである。処理に応じて、ストレージ管理プログラムやシステム管理プログラムなど複数のプログラムを呼び出す処理が記載される。入出力装置670は、マウス、キーボード及びディスプレイなどの装置であり、装置管理サーバ65と管理者(ユーザとも呼ぶ)との間で情報を入出力するために利用される。
The policy management table 662 is a table describing a policy for moving data in units of files, host computers, and the like. The same contents as the migration policy table 705 in the
図8はアーカイブ管理サーバ70の例を説明するブロック図である。アーカイブ管理サーバ70とデータネットワーク80または管理ネットワーク90を介してホスト計算機10、ファイルサーバ20、ブロックストレージ30、ハイブリッド型記憶装置91(ハイブリット制御サーバ50、ブロックストレージ31、可搬型記憶装置40)、ジョブ管理サーバ60、装置管理サーバ65と接続され管理ネットワーク80を介して、各計算機から必要な情報を取得することができ、各計算機に必要な情報(プログラムを含む)を与えることができる。
FIG. 8 is a block diagram illustrating an example of the
アーカイブ管理サーバ70は、プロセッサであるCPU701、NIC702、メモリ703を含み、入出力装置720が接続される。CPU701は、メモリ703上に展開されるプログラムを実行する。メモリ703は、階層管理プログラム704、移動ポリシーテーブル705、データ管理テーブル706、ジョブ実行エージェント707、を格納する。なお、他のプログラムが格納されていてもよい。
The
階層管理プログラム704は、階層管理エージェント105、205、305、511、と通信し、ホスト計算機10、ファイルサーバ20、ハイブリット制御サーバ50のファイル情報を取得し、ホスト計算機10、ファイルサーバ20、ブロックストレージ30、ハイブリット制御サーバ50につながるブロックストレージ31と可搬型記憶装置40のファイルまたはボリュームを別のホスト計算機10、ファイルサーバ20、ブロックストレージ30、ハイブリット制御サーバ50につながるブロックストレージ31と可搬型記憶装置40へ移動するプログラムである。
The
ポリシー管理テーブル705は、ファイルやホスト計算機等で利用されるファイル群単位でデータを動かすポリシーを記載するテーブルである。装置管理サーバ65内の移動ポリシーテーブル662と同じ内容を含み、ポリシー管理テーブル705が元の内容を示す。データ管理テーブル706は、ホスト計算機10、ファイルサーバ20、ハイブリット制御サーバ50内のファイルの属性情報を示すテーブルである。
The policy management table 705 is a table describing a policy for moving data in units of files used in files, host computers, and the like. The policy management table 705 shows the original contents including the same contents as the movement policy table 662 in the
入出力装置720は、マウス、キーボード及びディスプレイなどの装置であり、装置管理サーバ70と管理者(ユーザとも呼ぶ)との間で情報を入出力するために利用される。
The input /
図9Aはファイルサーバ20内およびハイブリット制御サーバ50のファイル構成管理テーブル204である。ファイル構成管理テーブル204は以下の(2040)乃至(2042)の情報を持つ。なお、ファイル構成管理テーブル510もファイル構成管理テーブル204と同様の構成を備える。
(2040)デバイス種別。ファイルサーバが持つデバイスの種類の情報を持つ。
(2041)デバイス識別子。ファイルサーバが持つデバイスを一意に識別する情報を持つ。
(2042)スペック。ファイルシステムの場合はサイズが設定される。FIG. 9A is a file configuration management table 204 in the
(2040) Device type. Contains information on the device type of the file server.
(2041) Device identifier. It has information that uniquely identifies the device that the file server has.
(2042) Spec. For file systems, the size is set.
図9Bはブロックストレージ30及び31内のブロック構成管理テーブル304である。ブロック構成管理テーブル304は以下の(3040)乃至(3042)の情報を持つ。
(3040)デバイス種別。ブロックストレージが持つデバイスの種類の情報を持つ。デバイスには、物理記憶ストレージデバイスを含め、ブロックストレージの持つポートなどの資源や、ホストに提供される、論理ボリューム312なども管理される。
(3041)デバイス識別子。ブロックストレージが持つデバイスを一意に識別する情報を持つ。
(3042)スペック。デバイス種別によって設定される値が異なる論理ボリュームの場合、サイズとRead/Writeの速度、ポートの場合は速度、物理記憶ストレージデバイスの場合Read/Writeの速度の値が設定される。FIG. 9B is a block configuration management table 304 in the
(3040) Device type. Contains device type information of block storage. The device manages resources such as ports of the block storage including the physical storage device and the
(3041) Device identifier. It has information that uniquely identifies the device that the block storage has.
(3042) Spec. In the case of logical volumes having different values set depending on the device type, the size and the read / write speed, the speed in the case of a port, and the read / write speed in the case of a physical storage device are set.
図9Cは、可搬型記憶装置40の可搬型記憶装置構成管理テーブル41である。可搬型記憶装置構成管理テーブル413は以下の(4130)乃至(4134)の情報を持つ。
(4130)デバイス種別。可搬型記憶装置が持つデバイスの種類の情報を持つ。ここでデバイスとは記憶媒体408だけでなく、キャッシュ、ドライブ及び媒体搬送部を含む。
(4131)デバイス識別子。可搬型記憶装置が持つデバイスを一意に識別する情報を持つ。
(4132)スペック。キャッシュの場合はサイズ、記憶媒体の場合はサイズ、媒体搬送部の場合はディスクの搬送にかかる時間であるロード時間が設定される。
(4133)書込み単位。光ディスクなどの記憶媒体に一度に書きこむことのできる最小のサイズを示す。
(4134)媒体使用期限。ホログラムディスクの場合、一定期間までに書き込み完了しなければ書き込みできなくなるという特性がある。これを媒体使用期限またはシェルフライフと呼ぶ。その期限の日にちを示す。なお、日にちではなく残り時間を保持してもよい。FIG. 9C is a portable storage device configuration management table 41 of the
(4130) Device type. It has information on the type of device that the portable storage device has. Here, the device includes not only the
(4131) Device identifier. It has information that uniquely identifies the device that the portable storage device has.
(4132) Specification. In the case of a cache, the size is set. In the case of a storage medium, the size is set.
(4133) Write unit. Indicates the minimum size that can be written to a storage medium such as an optical disc at one time.
(4134) Media expiration date. In the case of a hologram disc, there is a characteristic that writing becomes impossible unless writing is completed within a certain period. This is referred to as the medium expiration date or shelf life. Indicates the date of the deadline. The remaining time may be held instead of the date.
図10はジョブ管理テーブル605である。ジョブ管理テーブルは以下の(6050)乃至(6057)の情報を持つ。ジョブ管理テーブルの情報は、ジョブ管理サーバ60の入出力装置620からのユーザによる入力またはドライブ利用処理計算プログラムによるジョブ計算によって設定される。
(6050)ジョブ識別子。ジョブを一意に識別する情報を持つ。
(6051)ジョブ種別。ジョブの内容がRead/Writeいずれかを示す情報を持つ。
(6052)ジョブ実行エージェントマシン。各ジョブを実行するマシンのマシン名の情報を持つ。ここでHostはホスト計算機を示し、Mgmtは管理サーバを示す。
(6053)ジョブ実行エージェントIPアドレス。各ジョブを実行するマシンのIPアドレスの情報を持つ。
(6054)利用アプリ/スクリプト。各ジョブによって実行されるマシン上のアプリまたはスクリプトの場所の情報を持つ。
(6055)利用データ。各ジョブによって実行されるマシン上のアプリまたはスクリプトが利用するデータの情報を持つ。データの情報とはホスト計算機やアプリケーションが認識しているファイルやディレクトリ名である。
(6056)ジョブの実行開始予定時間。ジョブが実行される予定の時間の情報を持つ。
(6057)ジョブの実行完了必須時間。ジョブの実行完了すべき時間の情報を持つ。ユーザが設定しない場合、空欄でもよい。FIG. 10 shows a job management table 605. The job management table has the following information (6050) to (6057). Information in the job management table is set by user input from the input /
(6050) A job identifier. Has information that uniquely identifies the job.
(6051) Job type. It has information indicating whether the content of the job is Read / Write.
(6052) A job execution agent machine. Contains information about the machine name of the machine that executes each job. Here, Host represents a host computer, and Mgmt represents a management server.
(6053) Job execution agent IP address. It has information on the IP address of the machine that executes each job.
(6054) Application / script used. Contains information about the location of the app or script on the machine that is executed by each job.
(6055) Usage data. It has data information used by the application or script on the machine executed by each job. Data information is a file or directory name recognized by the host computer or application.
(6056) Scheduled job execution start time. Contains information about the time when the job is scheduled to be executed.
(6057) Job execution completion required time. Contains information about the time at which the job should be completed. If the user does not set, it may be blank.
図11は装置管理サーバ65が備える構成管理テーブル658である。構成管理テーブルは(6580)乃至(6587)の情報を持つ。構成管理テーブルの情報は、ファイルサーバ内のファイル構成管理テーブル204(ハイブリット制御サーバ50内のファイル構成管理テーブル510)、ブロックストレージ内のブロック構成管理テーブル304および可搬型記憶装置構成管理テーブル413から生成される。これらの情報はストレージ管理プログラム654が各情報を格納している管理対象から定期的に収集する。構成管理テーブル658の各カラムの詳細はここでは割愛する。
FIG. 11 shows a configuration management table 658 provided in the
図12は装置管理サーバ65が備えるデータ管理テーブル659の説明である。データ管理テーブルは以下の(6590)乃至(6595)の情報を持つ。なお、データ管理テーブル706はデータ管理テーブル659と同じ構造で同じ情報を持つ。
(6590)データ識別子。管理対象となるデータを一意に識別する情報を示す。
(6591)データサイズ。当該データのサイズを示す。
(6592)装置。データが保存されている記憶装置の場所を示す。
(6593)装置内保存場所。データが保存されている記憶装置内の論理的な記憶領域の場所を示す。
(6594) データパス。データが保存されている記憶装置内の記憶領域内のデータパスを示す。
(6595)最終アクセス時刻。当該データが最後にアクセスされた時刻を示す。FIG. 12 is an explanation of the data management table 659 included in the
(6590) Data identifier. Indicates information that uniquely identifies data to be managed.
(6591) Data size. Indicates the size of the data.
(6592) Apparatus. Indicates the location of the storage device where the data is stored.
(6593) In-device storage location. Indicates the location of a logical storage area in the storage device where the data is stored.
(6594) Data path. A data path in a storage area in a storage device in which data is stored is shown.
(6595) Last access time. Indicates the time when the data was last accessed.
図13は装置管理サーバ65が備えるジョブ対応関係権利管理テーブル660である。ジョブ対応関係管理テーブルはホスト計算機や管理計算機が実行する上位アプリケーションのジョブと、上位アプリケーションを実行するために、可搬型記憶装置のドライブが実行するジョブであるドライブ利用ジョブの対応関係を管理するテーブルである。ジョブ対応関係管理テーブルジョブは以下の(6600)乃至(6610)の情報を持つ。
(6600)上位アプリケーションのジョブ。ホスト計算機や管理計算機により指定された、上位アプリケーションが実行予定のジョブの識別子。
(6601)ジョブの内容がRead/Writeいずれであるかを示す。
(6602)利用データ。各ジョブによって実行されるマシン上のアプリまたはスクリプトが利用するデータの情報を持つ。
(6603)上位APのジョブの実行開始予定時間。上位APのジョブが実行される予定の時間の情報を持つ。
(6604)上位APのジョブの実行完了必須時間。ジョブの実行完了すべき時間の情報を持つ。ユーザが設定しない場合、空欄でもよい。
(6605)ドライブ利用ジョブ。ユーザが入力した、もしくは、ドライブ利用処理計算プログラムによって計算されたジョブの識別子の情報を持つ。
(6606)必要とする可搬型記憶媒体。ドライブ利用ジョブがRead/Write処理で利用する記憶媒体の識別子の情報を持つ。
(6607)利用予定ドライブ。ドライブ利用ジョブが利用予定のドライブの識別子の情報を持つ。
(6608)ドライブ占有開始予定時間。ドライブ利用ジョブが実行開始予定の時間の情報を持つ。
(6609)ドライブ占有終了予定時間。ドライブ利用ジョブの実行終了予定時間の情報を持つ。
(6610)関連ドライブ利用ジョブ。別のドライブ利用ジョブと関連がある場合、そのジョブの識別子の情報を持つ。ここで「関連があるジョブ」とは、ジョブで利用する記憶媒体が同じで両方処理が終わらなければデータ削除などの後処理が実行できないジョブを意味する。例えばJob αを必要とするJob Aの実行が終了したとしても、Job γを利用するJob Cの実行が終了するまでは、データ削除を実施しない。本実施例ではジョブに対して、利用するドライブを管理しているが、ドライブの時刻毎にジョブが割り当てられているか管理しても良い。FIG. 13 is a job correspondence right management table 660 provided in the
(6600) Job of upper application. The identifier of the job scheduled to be executed by the host application, specified by the host computer or management computer.
(6601) Indicates whether the content of the job is Read / Write.
(6602) Usage data. It has data information used by the application or script on the machine executed by each job.
(6603) Scheduled execution start time of job of upper AP. It has information on the time when the upper AP job is scheduled to be executed.
(6604) Mandatory completion time of the upper AP job. Contains information about the time at which the job should be completed. If the user does not set, it may be blank.
(6605) Drive use job. It has job identifier information input by the user or calculated by the drive use processing calculation program.
(6606) A required portable storage medium. It has information on the identifier of the storage medium used by the drive use job in Read / Write processing.
(6607) Drive scheduled to be used. The drive use job has information on the identifier of the drive to be used.
(6608) Drive occupation start scheduled time. Contains information about the time when a drive use job is scheduled to start execution.
(6609) Scheduled end time of drive occupation. Contains information about the scheduled end time of a job that uses a drive.
(6610) Related drive use job. When related to another drive use job, it has information on the identifier of the job. Here, the “related job” means a job in which post-processing such as data deletion cannot be executed unless the processing is completed after both storage media used in the job are the same. For example, even if the execution of Job A that requires Job α ends, data deletion is not performed until the execution of Job C that uses Job γ ends. In this embodiment, the drive to be used is managed for the job, but it may be managed whether the job is assigned for each drive time.
図14Aは装置管理サーバ65が備えるHDD容量管理テーブル661である。HDD容量管理テーブルは以下の(6611)乃至(6615)の情報を持つ。
(6611)装置。HDDを持つ装置の識別情報を示す。
(6612)Volume。装置内の論理ボリュームの識別子を示す。
(6613)時間。現在及び未来の時間を示す。なお、図任意の時間間隔でよく、また、現在過去の時間も管理してもよい。
(6614)全容量。Volumeに記載された論理ボリュームの全容量を示す。
(6615)空き容量。時間ごとの論理ボリュームの空き容量を示す。FIG. 14A is an HDD capacity management table 661 provided in the
(6611) Apparatus. The identification information of the device having the HDD is shown.
(6612) Volume. Indicates the identifier of the logical volume in the device.
(6613) Time. Indicates current and future time. It should be noted that an arbitrary time interval may be used, and the current past time may also be managed.
(6614) Total capacity. Indicates the total capacity of the logical volume described in Volume.
(6615) Free capacity. Indicates the free capacity of the logical volume for each hour.
図14Bは装置管理サーバ65が備えるポリシー管理テーブル662を示す。ポリシー管理テーブル662は以下の(6620)乃至(6623)の情報を持つ。なお、ポリシー管理テーブル705はポリシー管理テーブル662と同じ構造で同じ情報を持つ。
(6620)ファイル。ファイルの識別情報を示す。なお、この実施例ではファイル単位にポリシーを設定しているがホスト単位やディレクトリ単位で移動ポリシーを設定しても良い。
(6621)階層。ファイルが存在するストレージ装置を示す。ここではブロックストレージ30に格納されている場合をST1、ブロックストレージ31に格納されている場合をST2、及び可搬型記憶装置40に格納されている場合をST3とする。なお、ブロックストレージ30内で異なる性質の記憶媒体を備える場合などは、ブロックストレージ30に格納されているデータでも、ST0とST1の様に複数の階層に分かれても良い。また、可搬型記憶装置40に性質の異なる記憶媒体としてHDDと光ディスクが格納されている場合、ST3とST4の様に複数の階層に分かれても良い。
(6622)移動ポリシー。データの移動ポリシーを示す。図14Bの場合、ST1に含まれるFile1に対して、一ヶ月アクセスが無ければST2という別の階層へデータを移動する、ということを示す。
(6623)移動後の削除ポリシー。ポリシーに従ってデータを移動した後の元ファイルに対する処理内容を示す。FIG. 14B shows a policy management table 662 provided in the
(6620) File. Indicates the file identification information. In this embodiment, a policy is set for each file, but a migration policy may be set for each host or directory.
(6621) Hierarchy. Indicates the storage device where the file exists. Here, the case where it is stored in the
(6622) Migration policy. Indicates the data movement policy. In the case of FIG. 14B, it is shown that if there is no access for one month to File1 included in ST1, data is moved to another layer called ST2.
(6623) Deletion policy after movement. Indicates the processing contents for the original file after the data is moved according to the policy.
図15は実施例1における、全体の処理の流れを示す。実施例1では、上位のReadジョブが入力されたときにプリフェッチ処理を実行するときのドライブ利用時間のスケジューリング処理の流れを示す。
(Step1000)各プログラムが定期的に情報を収集する。具体的には、まず、ユーザがジョブ管理サーバ60の入出力装置620からジョブ実行情報(ジョブ種別、ジョブ実行マシン、利用アプリ/スクリプト、利用データ、実行時間、実行完了時間など)を入力する。次に、ジョブ管理プログラム60が入力された内容に従い、ジョブ管理テーブル605を更新する。FIG. 15 shows the overall processing flow in the first embodiment. The first embodiment shows a flow of a drive usage time scheduling process when a prefetch process is executed when a higher-level Read job is input.
(Step 1000) Each program periodically collects information. Specifically, first, the user inputs job execution information (job type, job execution machine, application / script used, application data, execution time, execution completion time, etc.) from the input /
また、アーカイブ管理サーバ70の階層管理プログラム704が各ホストのOSやアプリケーションからファイル情報を定期的に収集する。階層管理プログラム704がデータ管理テーブル706を更新する。
Further, the
また、装置管理サーバ65のシステム管理プログラム655がファイルサーバ20、ブロックストレージ30、31、ハイブリット制御サーバ50、可搬型記憶装置40、ジョブ管理サーバ60、アーカイブ管理サーバ70から定期的に、ファイル構成管理テーブル204、ブロック管理テーブル304、可搬型記憶装置管理テーブル413、ファイル構成管理テーブル510、ジョブ管理テーブル605、ポリシー管理テーブル705及びデータ管理テーブル706、を取得する。これらの情報取得頻度は各装置やテーブルごとに異なるタイミングで情報を取得しても良い。
In addition, the
ストレージ管理プログラム654が構成管理テーブル658、データ管理テーブル659、ジョブ対応関係管理テーブル660、HDD容量管理テーブル661、ポリシー管理テーブル662を更新する。システム管理プログラム655がジョブ管理サーバ60から取得したジョブ情報とジョブ対応関係管理テーブル660の情報で差分があればドライブ利用処理計算プログラム656へ差分を通知する。
(Step1100)ドライブ利用処理計算プログラム656がジョブで必要となるデータをReadするためのドライブ利用処理(プリフェッチ処理)に要する時間を計算する。
(Step1200)ドライブ利用処理計算プログラム656が事前に登録済みのジョブ情報とドライブに関する情報からジョブの実行順序とそのドライブ利用処理で利用するドライブを決定する。さらにそのドライブ利用処理をジョブとして登録する。
(Step1300)ジョブ管理プログラム604が各種ジョブ処理を実行する。
(Step1400)階層管理プログラム704がプリフェッチしたデータをポリシーに従って削除する。The
(Step 1100) The drive use
(Step 1200) The drive use
(Step 1300) The
(Step 1400) Data prefetched by the
図16ではStep1100のドライブ利用処理計算の詳細処理を説明する。実施例1ではドライブ利用処理としては記憶媒体からデータをReadする処理を示す。
(Step1101)ドライブ利用処理計算プログラム656がシステム管理プログラムか655からの通知により上位アプリのジョブ追加を検知する。
(Step1102)ドライブ利用処理計算プログラム656がジョブ対応関係管理テーブル660から上位アプリ/スクリプトで必要となるデータ、及び時間を特定する。なお、スクリプトに記載されている実行アプリケーションの引数となっているデータを利用してもよい。
(Step1103)ドライブ利用処理計算プログラム656がジョブ対応関係管理テーブル660とデータ管理テーブル659の内容から対象データの位置を調べる。その位置が可搬型記憶装置40である場合はStep1104へ進む。可搬型記憶装置40に無い場合はStep1106に進む。
(Step1104)ドライブ利用処理計算プログラム656が構成管理テーブル658からドライブのRead性能とHDDのWrite性能とロード時間を取得する。
(Step1105)ドライブ利用処理計算プログラム656が必要となるデータのデータサイズと前のフローで取得した各種情報を用いてプリフェッチ(可搬型記憶装置からブロックストレージのHDDへのコピー)に要する時間を算出する。例えば最も単純な算出方法としては、データのReadに要する時間とコピーに要する時間とロード時間を足し合わせる方法が考えられる。すなわち、データのReadに要する時間T_r[sec]について、データサイズD_Size[GB]、ドライブのRead性能をP_R[GB/sec]とすると、T_r=D_Size/P_Rで計算する。またデータをHDDにWriteする時間T_w[sec]について、データサイズD_Size[GB]、HDDのWrite性能をP_W[GB/sec]とすると、T_w=D_Size/P_Wで計算できる。ディスクのロード時間をT_l[sec]とすると、プリフェッチに要する時間T_Pre=T_r+T_w+T_lと求めることができる。また、対象となるデータとデータが保存されているディスクが複数個あり、ドライブが複数台ある場合には、複数の処理を並列に実施してプリフェッチに要する時間を計算することも可能である。また、一部のデータのReadが完了した後に、HDDへのWriteが可能な場合は、Read完了前にWriteを開始し、重複する時間を除くようにプリフェッチ時間を計算してもよい。また、ディスクのロード時間が位置によって異なる場合はそれを考慮に入れた計算をしてもよい。また、過去の計算結果と実際のプリフェッチ処理の実績時間を記録しておき、差分を元に計算時間を学習して計算させてもよい。また、その他の計算方法によってプリフェッチ時間を算出してもよい。
(Step1106)ドライブ利用処理計算プログラム656が、本ジョブではプリフェッチ処理が不要と判断する。In FIG. 16, the detailed processing of the drive usage processing calculation in
(Step 1101) The drive use
(Step 1102) The drive use
(Step 1103) The drive utilization
(Step 1104) The drive use
(Step 1105) The drive use
(Step 1106) The drive use
図17を用いて、Step1200のジョブ実行順序と利用ドライブを決定する処理の詳細を説明する。
(Step1201)ドライブ利用処理計算プログラム656が、ドライブを占有するジョブ情報をジョブ対応関係管理テーブル660から確認する。
(Step1202)ドライブ利用処理計算プログラム656が、今回のドライブ利用処理のジョブで利用する可搬型記憶媒体と同じ可搬型記憶媒体を使用する、別のプリフェッチジョブが上位アプリのジョブ開始時間より前にあるかどうか調べる。前にあるならば図18のStep1210へ進む。前に無ければStep1203へ進む。
(Step1203)ドライブ利用処理計算プログラム656が、プリフェッチジョブの元となる上位アプリのバッチジョブ開始時間より前のドライブ空き時間をジョブ対応関係管理テーブル660から探索する。Step1105で、複数のディスク、複数のドライブを並列でプリフェッチ可能かチェックしている場合、複数のドライブを探索対象とする。
(Step1204)ドライブ利用処理計算プログラム656が、Step1203で探索した空き時間の中でHDD空き容量が十分にある時間が存在するか調べる。空き容量が十分ある時間が存在する場合はStep1206へ進む。無い場合はStep1205へ進む。
(Step1205)ドライブ利用処理計算プログラム656が、ジョブ管理プログラム604へエラーを返す。この結果、入出力装置620にユーザが登録しようとしたジョブが時間通りには実施できないことを表示することが可能となる。
(Step1206)ドライブ利用処理計算プログラム656が、十分時間がある期間とそのドライブを選択し、その時間でプリフェッチジョブを実行するようジョブの順番を決定する。The details of the process of determining the job execution order and used drive in Step 1200 will be described with reference to FIG.
(Step 1201) The drive use
(Step 1202) The drive use
(Step 1203) The drive use
(Step 1204) The drive utilization
(Step 1205) The drive use
(Step 1206) The drive utilization
なお、ドライブ選択方法、ジョブの順番の決定方法としていくつかの方法が挙げられる。一つは単純前詰と呼ばれる方法が挙げられる。この方法は、ドライブ毎にジョブネット(ジョブの集合を持つことが可能なグループ)を用意し、ドライブ利用処理に要する時間を計算した後、そのジョブを現在時間に最も近い空き時間とドライブにジョブネットを設定する方法である。この方法の場合、時系列的に前から空きドライブにジョブを割り当てることが可能となる。 There are several methods as a drive selection method and a job order determination method. One is a method called simple pre-packing. This method prepares a job net (group that can have a set of jobs) for each drive, calculates the time required for drive usage processing, and then assigns the job to the drive with the free time closest to the current time. This is how to set up the net. In the case of this method, it is possible to assign jobs to empty drives from the front in time series.
また、ドライブ利用処理時間の計算精度が必ずしも正確でないため、常に時間的に前から割り当てるのではなく、他のジョブ間の間隔が最も大きい空き時間にジョブ実行時間を割り当てる方法も挙げられる。また、前詰の場合、上位APのジョブ処理が比較的遠い将来(1か月後、1年後など)に実行される場合、事前に実行する処理と上位APのジョブ実行時間の間隔が遠くなる。その場合、HDDの容量を必要以上に占有してしまうため、上位APのジョブ実行時間から期間を設けて、その期間以内に前詰するという方法も挙げられる。この期間は固定値でも良いし、上位APの種類や過去の実績から学習して適切な時間に動的に変更しても良い。また、ドライブの性能が良いもの、またはドライブの性能がプリフェッチ時間の予想を満たすものを優先的に選択する方法も挙げられる。また、その他の方法でジョブ実行時間やドライブを決定しても良い。
(Step1207)ドライブ利用処理計算プログラム656が、HDD空き容量テーブル661からプリフェッチデータ保持期間のHDD空き容量を減らす。
(Step1208)ドライブ利用処理計算プログラム656が、指定したドライブでデータをプリフェッチするスクリプトを作成する。このスクリプトには階層管理プログラム704がハイブリット制御サーバ50の階層管理エージェントを経由して光ディスクのデータをHDDにコピーする処理が記載される。
(Step1209)システム管理プログラム655が作成したスクリプトを実行するジョブをジョブ対応関係管理テーブル660と、ジョブ管理プログラム604経由でジョブ管理テーブル605に登録する。これにより処理が完了する。In addition, since the calculation accuracy of the drive use processing time is not necessarily accurate, there is a method of assigning job execution time to a free time with the longest interval between other jobs instead of always assigning from the front in time. In the case of front-packing, when the job processing of the upper AP is executed in a relatively distant future (one month later, one year later, etc.), the interval between the processing executed in advance and the job execution time of the upper AP is long. Become. In that case, since the capacity of the HDD is occupied more than necessary, there is a method in which a period is provided from the job execution time of the higher-level AP, and the front end is settled within that period. This period may be a fixed value, or may be dynamically changed to an appropriate time by learning from the type of upper AP and past results. Further, there is a method of preferentially selecting a drive with good drive performance or a drive performance that satisfies the prefetch time prediction. Further, the job execution time and drive may be determined by other methods.
(Step 1207) The drive utilization
(Step 1208) The drive utilization
(Step 1209) A job for executing a script created by the
図18はS1202で同じメディアを利用する他のジョブがあった場合のマージ処理を示す。
(Step1210)ドライブ利用処理計算プログラム656が、Step1211以降で複数のジョブをマージする処理を開始する。
(Step1211)ドライブ利用処理計算プログラム656が、前のプリフェッチジョブで利用する可搬型記憶媒体と、今回のプリフェッチジョブで利用する可搬型記憶媒体を比較する。
(Step1212)ドライブ利用処理計算プログラム656が、今回のプリフェッチジョブで利用する可搬型記憶媒体について、全てが前のプリフェッチジョブで利用する可搬型記憶媒体に含まれるかどうか調べる。全て含まれる場合はStep1213へ進む。含まれない場合は、一部含まれる可搬型記憶媒体に対してのみStep1213以降の処理を実施する。含まれない可搬型記憶媒体に対してはStep1203の処理を実施する。
(Step1213)ドライブ利用処理計算プログラム656が、今回のプリフェッチジョブに対応する上位ジョブに必要なデータを、前のプリフェッチジョブのプリフェッチデータ保持期間終了から上位ジョブ完了時刻まで、プリフェッチデータをHDD空き容量があるかを、HDD空き容量テーブル661から調べる。空き容量がある場合はStep1214へ進む。無い場合はStep1203へ進む。
(Step1214)ドライブ利用処理計算プログラム656が、HDD空き容量テーブル661から前のプリフェッチデータ保持期間終了から上位ジョブ完了時刻までのHDD空き容量を減らす。
(Step1215)ドライブ利用処理計算プログラム656が、今回のプリフェッチジョブは前のプリフェッチジョブで対応すると判断し、ジョブ対応関係管理テーブル660の関連プリフェッチジョブに前のプリフェッチジョブのジョブ識別子を登録する。そのときにドライブ占有開始予定時間とドライブ占有終了予定時間は空欄とする。FIG. 18 shows merge processing when there is another job using the same medium in S1202.
(Step 1210) The drive utilization
(Step 1211) The drive use
(Step 1212) The drive use
(Step 1213) The drive utilization
(Step 1214) The drive use
(Step 1215) The drive utilization
図19を用いてStep1400のプリフェッチデータ削除処理の詳細を説明する。
(Step1401)ドライブ利用処理計算プログラム656が、上位APのジョブ実行が完了したか、システム管理プログラム655経由でジョブ管理プログラム604へ問い合わせする。またはジョブ管理プログラム604から上位APのジョブ完了通知を受け取ってもよい。その場合はStep1403へ進む。
(Step1402)上位ジョブが完了した場合はStep1403へ進む。完了していない場合はStep1401へ戻る。
(Step1403)ドライブ利用処理計算プログラム656が、ジョブ対応関係管理テーブル660から、完了した上位APのジョブのドライブ利用ジョブが以降の上位APの関連ドライブ利用ジョブとなっていないか判断する。これは、以降の上位APでの利用を予定しているデータは消せないためである。上位APが無いかチェックする。
(Step1404)Step1403で確認した結果同じデータを利用する上位APがある場合はStep1405へ進む。無い場合はStep1406へ進む。
(Step1405)同じデータを利用する上位APを対象に、S1400を実行する。
(Step1406)システム管理プログラム655が階層管理プログラム704に対してプリフェッチしたデータについてポリシー管理テーブルに従ってデータ削除を指示する。
(Step1407)ストレージ管理プログラム654がHDD容量管理テーブル661のHDD空き容量を更新する。Details of the prefetch data deletion processing in Step 1400 will be described with reference to FIG.
(Step 1401) The drive utilization
(Step 1402) When the upper-level job is completed, the process proceeds to Step 1403. If not completed, the process returns to Step 1401.
(Step 1403) The drive use
(Step 1404) If there is a higher-order AP that uses the same data as a result of confirmation in
(Step 1405) S1400 is executed for the upper AP using the same data.
(Step 1406) The
(Step 1407) The
なお、本実施例ではデータをキャッシュする部分としてブロックストレージ31の論理ボリュームを利用したが、可搬型記憶装置内のキャッシュメモリ404を利用しても良いし、階層ストレージの下位ストレージの記憶領域を利用してもよい。
In this embodiment, the logical volume of the
以上の処理により、可搬型記憶装置のドライブ利用処理をスケジューリングできアーカイブされるファイルを容量効率よく記憶することが可能となり、Read処理の待ちが発生しにくくなり結果として上位APの処理待ちが発生しにくくなる。 With the above processing, it is possible to schedule the drive use processing of the portable storage device and store the archived file in a capacity-efficient manner, so that the waiting for the read processing is less likely to occur, resulting in waiting for the processing of the upper-level AP. It becomes difficult.
実施例2ではRead処理だけではなくWrite処理も含めたジョブのスケジューリングを実施する。以下では実施例1との差分のみ説明する。実施例1との差分は、ドライブ利用処理の計算と、ジョブ実行順序と利用ドライブの計算の2つのシーケンスである。 In the second embodiment, job scheduling including not only the Read process but also the Write process is performed. Only differences from the first embodiment will be described below. Differences from the first embodiment are two sequences: calculation of drive usage processing, and job execution order and usage drive calculation.
図20を用いて、実施例2におけるドライブ利用処理のジョブの実行時間計算処理を説明する。
(Step2101)Step1101と同様に、ドライブ利用処理計算プログラム656が上位アプリのジョブ追加を検知する。これはStep1032の結果発生する。または、階層管理プログラム704によるブロックストレージの論理ボリュームでのデータ蓄積完了やポリシーによる書き込み開始を検知し、ドライブ利用処理計算プログラム656へ通知する。ここで論理ボリュームでのデータ蓄積完了とは、論理ボリュームから可搬型記憶媒体へのデータ書き込みは上位APと常に連動するとは限らずデータを蓄積してから光ディスク1枚分データを貯めてからデータ書き込みを実施することや、1枚分貯めなくてもポリシーにしたがってデータ書き込みをすることがある。なお、この処理は必ずしも階層管理プログラム704が実施する必要は無く、ストレージ管理プログラム654やシステム管理プログラム655が実施しても良い。
(Step2102)検知したジョブ処理の内容がWrite処理である場合はStep2103へ進む。そうでない場合は実施例1のStep1102以降の処理を実行する。
(Step2103)Write処理の書き込み先が可搬型記憶装置40である場合はStep2104へ進む。そうでない場合はStep2105へ進む。
(Step2104)ドライブ利用処理計算プログラム656が、書き出し予定のデータサイズと論理ボリュームのRead性能と書き出し先ディスク性能とロード時間からWriteに要する時間を計算する。なお、時間の計算方法は、Step1104と同様に、単純にデータサイズとドライブ、論理ボリューム性能とロード時間から算出しても良いし、過去の実績の履歴を保存し、学習により処理時間を改善していってもよい。また、複数ドライブ、複数ディスクを利用する場合は、並列で処理可能な場合に、プリフェッチ時間を短縮してもよい。さらに、重複する処理の部分を短縮してもよい。また、その他の手段で計算しても良い。
(Step2105)ドライブ利用処理計算プログラム656が、書き出し予定のデータサイズと書き出し論理ボリューム性能からWriteに要する時間を計算。The job execution time calculation process of the drive use process in the second embodiment will be described with reference to FIG.
(Step 2101) Similar to Step 1101, the drive use
(Step 2102) If the detected content of the job process is a write process, the process advances to step 2103. Otherwise, the processing after
(Step 2103) When the write destination of the write process is the
(Step 2104) The drive use
(Step 2105) The drive use
図21を用いてはジョブ実行順序と利用ドライブの決定方法について説明する。
(Step2201)ドライブ利用処理計算プログラム656が、ドライブを占有するジョブ情報をジョブ対応関係管理テーブル660から確認する。
(Step2202)Step2100で検知したジョブ処理の内容がWrite処理である場合はStep2203へ進む。そうでない場合は実施例1のStep1202以降の処理を実行する。
(Step2203)Write処理の書き込み先が可搬型記憶装置40である場合はStep2104へ進む。そうでない場合はStep2105へ進む。
(Step2204)ドライブ利用処理計算プログラム656が、Writeジョブ実行時間でドライブ空き時間をジョブ対応関係管理テーブル660から探索する。
(Step2205)空き時間がある場合はStep2206へ進む。空き時間が無い場合は、ドライブ利用処理計算プログラム656が、ストレージ管理プログラム654、またはジョブ管理プログラム604へエラーを返す。この結果、入出力装置670、または620にエラーを表示することが可能となる。
(Step2206)ドライブ利用処理計算プログラム656が、同じドライブ、ディスクを利用するジョブがあり、さらにその後に十分な空き時間があるかをチェックする。時間がある場合はStep2207へ進む。時間が無い場合はStep2208へ進む。
(Step2207)ドライブ利用処理計算プログラム656が、その同じドライブを選択し、ジョブ対応関係管理テーブル660の開始、終了時間を同じドライブ・ディスクを利用するジョブの直後になるよう更新する。ドライブ利用ジョブカラムは空欄とする。
(Step2208)ドライブ利用処理計算プログラム656が、空いているドライブを選択する。With reference to FIG. 21, a job execution order and a method of determining a drive to be used will be described.
(Step 2201) The drive utilization
(Step 2202) When the content of the job process detected in
(Step 2203) When the write destination of the write process is the
(Step 2204) The drive use
(Step 2205) If there is free time, the process proceeds to Step 2206. If there is no free time, the drive utilization
(Step 2206) The drive use
(Step 2207) The drive use
(Step 2208) The drive use
なお、ドライブ選択方法、ジョブの順番の決定方法としていくつかの方法が挙げられる。実施例1のStep1206の方法に加えて、例えばシェルフライフを考慮する方法が挙げられる。光ディスクのうち、ホログラムディスクでは構成管理テーブル658の媒体使用期限6586で管理されるデータ書込みまでの寿命があり、シェルフライフと呼ぶ。Writeジョブの場合はブロックストレ―ジの論路ボリュームに空き容量があれば、実行時間を遅くする事が可能である一方で、このシェルフライフを考慮してWriteジョブを実行する必要がある。
There are several methods as a drive selection method and a job order determination method. In addition to the method of
そこで、シェルフライフの期限が近く、論理ボリュームに空きがが存在するジョブの近くにWriteジョブを設定することにより、ホログラムディスクの容量を有効に利用することができる。また、ホストなどから可搬型記憶媒体へのWrite指示を受けることもある。これは書き換え不可能な記憶媒体にデータを格納した事を確定したいという意図で実施される。このようなWrite指示に基づくWriteジョブは計算機からの指示に間に合うよう設定される。 Therefore, the capacity of the hologram disk can be used effectively by setting a Write job near a job whose shelf life is close and whose logical volume is empty. In addition, a write instruction for a portable storage medium may be received from a host or the like. This is performed with the intention of confirming that data has been stored in a non-rewritable storage medium. A write job based on such a write instruction is set in time for the instruction from the computer.
また、ホログラムディスクには追記処理を実行した場合に容量の無駄が発生することがあり、可能な限りデータをまとめてWriteしたい。そのため、一度WriteデータをHDDに蓄え、ある程度データを蓄積、まとめてからデータをホログラムディスクに書き出すことがある。このまとめる方法として何らかの関連がある複数のデータをまとめることがある。期限に間に合うドライブを選択した後、ジョブ対応関係管理テーブル660の開始、終了時間を更新し上位APのジョブ処理は空欄とする。
(Step2209)ストレージ管理プログラム654がHDD空き容量テーブルからWrite発生以降のHDD空き容量を減らす。In addition, there is a case where the capacity of the hologram disc is wasted when the additional recording process is executed, and it is desirable to write the data as much as possible. For this reason, the write data is once stored in the HDD, the data is accumulated to some extent, and then the data is written to the hologram disk. As a method of collecting, a plurality of data having some relation may be collected. After selecting a drive that meets the deadline, the start and end times of the job correspondence management table 660 are updated, and the job processing of the upper AP is left blank.
(Step 2209) The
以上の処理により、実施例1のRead処理だけでなくRead/Write処理が混在するシステムにおいても可搬型記憶装置のドライブ利用処理をスケジューリングが可能となり、Read/Write処理の待ちが発生しにくくなり結果として上位APの処理待ちが発生しにくくなる。 With the above processing, it is possible to schedule the drive use processing of the portable storage device even in a system in which not only the read processing of the first embodiment but also the read / write processing coexists, and the wait of the read / write processing is less likely to occur. As a result, it is difficult for the upper AP to wait for processing.
実施例1、実施例2ではブロックストレージ31のHDD容量管理テーブル661の予想をハイブリッド型記憶装置91内の処理だけで管理していた。実施例3ではハイブリッド型記憶装置91内の処理だけでなく、上位階層のファイルサーバ20やブロックストレージ30からのデータ移動処理も踏まえて、将来の容量を予測し、処理を実行する。以下では実施例2との差分のみ説明する。実施例2との差分は、各構成要素の情報取得処理のシーケンス(実施例1のStep1030相当)である。
In the first and second embodiments, the prediction of the HDD capacity management table 661 of the
図22を用いて、実施例3における情報取得処理Step3030を説明する。
(Step3031)装置管理サーバ65のシステム管理プログラム655がファイルサーバ20、ブロックストレージ30、31、ハイブリット制御サーバ50、可搬型記憶装置40、ジョブ管理サーバ60、アーカイブ管理サーバ70から定期的に情報取得する。
(Step3032)システム管理プログラム655が実施例1のStep1032の処理に加え、アーカイブ管理サーバ70から取得したデータ管理テーブル706の最終アクセス時間の情報とポリシー管理テーブル705の移動ポリシー情報からブロックストレージ30からブロックストレージ31に移動するデータとその時間を予測する。
(Step3033)ストレージ管理プログラム654が移動するデータ容量と時間からHDD容量管理テーブル661の情報を更新する。さらに実施例1のStep1033に記載のテーブルも更新する。
以上の処理により、実施例2の処理に加え、ハイブリッド型記憶装置外のデータ移動も考慮して可搬型記憶装置のドライブ利用処理をスケジューリングが可能となり、ハイブリッド型記憶装置を含む階層ストレージシステムでの、Read/Write処理の待ちが発生しにくくなり結果として上位APの処理待ちが発生しにくくすることが可能となる。The information
(Step 3031) The
(Step 3032) The
(Step 3033) The
With the above processing, in addition to the processing of the second embodiment, it is possible to schedule the drive use processing of the portable storage device in consideration of the data movement outside the hybrid storage device, and in the hierarchical storage system including the hybrid storage device As a result, waiting for Read / Write processing is less likely to occur, and as a result, waiting for processing of higher-level APs is less likely to occur.
実施例3までは、ジョブの実行順序と利用するドライブを決定するときに空き時間の探索を実施するが、空き時間が無い場合はエラーとしていた。実施例4では、空き時間が無い場合に既に登録済みのドライブ利用処理のジョブ実行時間をずらすことで新たに登録するドライブ利用処理が可能になるかどうかチェックする処理をする。以下では実施例1との差分のみ説明する。実施例1との差分は、ジョブ実行順序決定と利用ドライブ決定のシーケンス(実施例1のStep1200相当)である。 Up to the third embodiment, a search for free time is performed when determining the job execution order and the drive to be used, but if there is no free time, an error has occurred. In the fourth embodiment, when there is no free time, a process for checking whether or not a newly registered drive usage process is possible by shifting the job execution time of the already registered drive usage process is performed. Only differences from the first embodiment will be described below. The difference from the first embodiment is a sequence of job execution order determination and used drive determination (corresponding to Step 1200 of the first embodiment).
図23を用いて、実施例4におけるジョブ実行順序決定と利用ドライブ決定処理Step4200を説明する。
(Step4201)実施例1のStep1201からStep1203までの処理を実行する。
(Step4202)ドライブ利用処理計算プログラム656が、ドライブ空き時間をジョブ対応関係管理テーブル660から探索する。空き容量が十分ある時間が存在する場合は実施例1のStep1206へ進む。無い場合はStep4203へ進む。
(Step4203)ドライブ利用処理計算プログラム656が、既に登録済みのドライブ利用ジョブ処理のドライブおよび時間を変更すれば空き時間ができるかどうかチェックする。空き時間ができる場合はStep4204へ進む。できない場合はドライブ利用処理計算プログラム656が、ストレージ管理プログラム654、またはジョブ管理プログラム604へエラーを返す。この結果、入出力装置670、または620にエラーを表示することが可能となる。
(Step4204)ドライブ利用処理計算プログラム656が、ジョブ対応関係管理テーブル660で既に登録済みジョブの開始時間、終了時間を変更する。なお、この変更方法はいくつかの方法が挙げられる。例えば、全ての登録済みドライブ利用処理のジョブを全て解除し、上位APのジョブ開始時間の早いもの、または処理時間が最も長いものから前詰で登録していく方法が挙げられる。または、最後に登録したドライブ利用ジョブから実行時間をずらしていき、新規ジョブが登録可能か設定する処理が挙げられる。The job execution order determination and the used drive determination process Step 4200 according to the fourth embodiment will be described with reference to FIG.
(Step 4201) The processing from Step 1201 to Step 1203 of the first embodiment is executed.
(Step 4202) The drive use
(Step 4203) The drive use
(Step 4204) The drive use
または、登録済みジョブのうち、複数ドライブや複数データを利用するジョブで、ジョブ分割可能なものがあるか探索し、分割可能なものがあればジョブを細分化し、時間をずらすことでより空き時間作成しやすくして、ジョブの設定が可能かどうか調べる方法も挙げられる。また、単純にReadとWriteでは、Readの方が緊急を要する可能性が高い為、ホストなどの計算機から、前記可搬端記憶媒体へのWrite指示に基づくWriteの場合を除いては単純にReadを優先しても良い。また、他の方法でジョブの開始時間、終了時間を変更しても良い。
(Step4205)ドライブ利用処理計算プログラム656が、空いた時間とドライブを選択し、その時間でドライブ利用処理のジョブを実行するよう順番を決定する。
(Step4206)ドライブ利用処理計算プログラム656が、変更および追加したドライブ利用処理のジョブを実行するスクリプトを作成及び変更する。
(Step4207)システム管理プログラム655が、作成したスクリプトを実行するジョブを登録、及び変更したスクリプトを実行するジョブを変更するようにジョブ管理プログラム604に登録する。Or, if there are jobs that can be divided into jobs that use multiple drives or multiple data among registered jobs, search for those that can be divided, and if there are jobs that can be divided, subdivide the jobs and shift the time to free up time. You can also make it easier to create a job and check if the job can be set. In addition, since Read and Write are more likely to be urgent, Read is simply read from a computer such as a host except for a Write based on a Write instruction to the portable storage medium. You may prioritize. Also, the job start time and end time may be changed by other methods.
(Step 4205) The drive use
(Step 4206) The drive usage
(Step 4207) The
以上の処理により、既に登録済みのドライブ利用処理によってドライブの空きがなかった場合でも既存のドライブ利用処理実行時間を変更することで、新たな処理のスケジューリングが可能となり、Read/Write処理待ちを発生しにくくすることができる。 As a result of the above processing, even if there is no drive available due to the already registered drive usage processing, it is possible to schedule new processing by changing the existing drive usage processing execution time, and wait for Read / Write processing. Can be difficult.
実施例4までは光ディスクが可搬型記憶装置内に存在することが前提となっていたが、光ディスクは必ずしも可搬型記憶装置に存在するとは限らず、例えば消費電力削減のために可搬型記憶装置外に移動しオフライン状態にすることもある。実施例5ではオフライン状態の光ディスクが存在する場合のドライブ利用スケジューリングの処理を説明する。以下では実施例1との差分のみ説明する。実施例1との差分は、オフライン管理用のテーブルが追加されること、ドライブ利用処理の時間予測処理のシーケンス(実施例1のStep1100相当)が変更することである。 Up to the fourth embodiment, it is assumed that the optical disk is present in the portable storage device. However, the optical disk is not necessarily present in the portable storage device. For example, to reduce power consumption, the optical disk is not included in the portable storage device. To go offline. In the fifth embodiment, a process for scheduling the use of a drive when there is an offline optical disk will be described. Only differences from the first embodiment will be described below. The difference from the first embodiment is that a table for offline management is added, and the sequence of time prediction processing for drive utilization processing (corresponding to Step 1100 of the first embodiment) is changed.
図24Aはオフライン管理で利用する可搬型記憶装置構成管理テーブル413Bである。可搬型記憶装置構成管理テーブル413Bは実施例1の可搬型記憶装置構成管理テーブル413にオンライン/オフラインカラム4135が追加されたものである。オフライン可搬型記憶媒体管理テーブル414は以下の(4140)乃至(4143)の情報を持つ。なお、オフライン管理テーブル414は可搬型記憶装置40内のメモリ403内と、装置管理サーバ65内のメモリ653内の両方に存在する。元データがメモリ403にあり、ストレージ管理プログラム654が定期的に収集する。またこのオフライン情報は可搬型記憶装置管理プログラム412によって更新される。
FIG. 24A shows a portable storage device configuration management table 413B used for offline management. The portable storage device configuration management table 413B is obtained by adding an online / offline column 4135 to the portable storage device configuration management table 413 of the first embodiment. The offline portable storage medium management table 414 has the following information (4140) to (4143). The offline management table 414 exists both in the
まず、可搬型記憶装置構成管理テーブル413Bの差分のみ説明する。
(4135)オンライン/オフライン。ディスクがオンライン状態かオフライン状態かを示す。First, only the differences in the portable storage device configuration management table 413B will be described.
(4135) Online / offline. Indicates whether the disk is online or offline.
図24Bを用いてオフライン可搬型記憶媒体管理テーブル414について説明する。
(4140)可搬型記憶媒体識別子。可搬型記憶媒体を一意に識別する情報を持つ。
(4141)保管場所。可搬型記憶媒体を保管している場所の識別子の情報を持つ。この情報には、物理的な場所(住所、建物、倉庫、棚、など)であればなんでも含むことができる。
(4142)タグ。可搬型記憶媒体を管理するためのタグ情報を持つ。この情報は可搬型記憶媒体識別子と同じでも良いし、管理用に新規に設定しても良い。
(4143)取得に要する時間。可搬型記憶媒体をオンラインにするための時間を持つ。この情報は正確であっても目安の情報であってもよい。The offline portable storage medium management table 414 will be described with reference to FIG. 24B.
(4140) A portable storage medium identifier. It has information that uniquely identifies a portable storage medium.
(4141) Storage location. It has information on the identifier of the place where the portable storage medium is stored. This information can include any physical location (address, building, warehouse, shelf, etc.).
(4142) Tag. It has tag information for managing portable storage media. This information may be the same as the portable storage medium identifier or may be newly set for management.
(4143) Time required for acquisition. Have time to bring portable storage media online. This information may be accurate or approximate information.
図25は可搬型記憶媒体がオフラインの場合のドライブ利用処理時間予測の処理Step5100を示す。
(Step5101)実施例1のStep1101、Step1102の処理を実行する。
(Step5102)ドライブ利用処理計算プログラム656が、ドライブ利用処理の対象データの位置が可搬型記憶装置40かどうかをチェックする。可搬型記憶装置40の場合はStep5105へ進む。可搬型記憶装置40で無い場合はStep5103へ進む。
(Step5103)ドライブ利用処理計算プログラム656が、ドライブ利用処理の対象データの位置がオフラインかどうかを調べる。オフラインの場合はStep5104へ進む。そうでない場合は対象データの位置がHDDにあると判断し、Step5107へと進む。
(Step5104)ドライブ利用処理計算プログラム656が、オフライン可搬型記憶媒体管理テーブル414から可搬型記憶媒体取得に要する時間を取得する。
(Step5105)ドライブ利用処理計算プログラム656が、構成管理テーブルからドライブとHDDのRead/Write性能とロード時間を取得する。
(Step5106)実施例1のStep1105を実行する。
(Step5107)ドライブ利用処理計算プログラム656が、プリフェッチ不要と判断する。FIG. 25 shows step 5100 of drive utilization processing time prediction when the portable storage medium is offline.
(Step 5101) The processing of
(Step 5102) The drive use
(Step 5103) The drive use
(Step 5104) The drive use
(Step 5105) The drive use
(Step 5106)
(Step 5107) The drive utilization
以上の処理により、可搬型記憶媒体が可搬型記憶装置40外にありオフライン状態の場合でもドライブを利用する処理のスケジューリングが可能となり、Read/Write処理待ちを発生しにくくすることができる。
With the above processing, even when the portable storage medium is outside the
計算機システム:1、ホスト計算機:10、装置管理サーバ:65、ハイブリッド型記憶装置91
Computer system: 1, Host computer: 10, Device management server: 65,
Claims (12)
前記プロセッサは、
外部計算機からのリード要求の前にあらかじめ第1の記憶媒体から第2の記憶媒体にデータをコピーするプリフェッチのスケジュールを、前記プリフェッチにかかる時間に基づいて決定する
ことを特徴とする計算機。A computer comprising a processor,
The processor is
A computer, wherein a prefetch schedule for copying data from a first storage medium to a second storage medium in advance is determined based on the time taken for the prefetch before a read request from an external computer.
複数の前記第1の記憶媒体からデータを読み出し可能なドライブに、前記複数の第1の記憶媒体をロードするスケジュールであるドライブスケジュールを格納するメモリを備え、
前記プロセッサは前記ドライブスケジュールに基づいて前記プリフェッチのスケジュールを決定する
ことを特徴とする計算機。The computer according to claim 1,
A memory that stores a drive schedule, which is a schedule for loading the plurality of first storage media, in a drive capable of reading data from the plurality of first storage media;
The computer, wherein the processor determines the prefetch schedule based on the drive schedule.
前記メモリには、アプリケーションの実行スケジュール情報と、前記アプリケーションで利用されるデータ情報と、前記複数の第1の記憶媒体に格納されるデータの位置情報と、前記第2の記憶媒体の情報と、が格納され、
前記アプリケーションの実行スケジュール情報と、前記アプリケーションで利用されるデータ情報と、前記格納されるデータの位置情報と、前記第2の記憶媒体の情報と、前記ドライブスケジュールに基づいて、前記プリフェッチのスケジュールを決定し、前記決定したプリフェッチでのドライブ利用スケジュールをドライブ利用ジョブとして前記ドライブスケジュールに反映する
ことを特徴とする計算機。A computer according to claim 2, wherein
In the memory, application execution schedule information, data information used in the application, position information of data stored in the plurality of first storage media, information on the second storage medium, Is stored,
Based on the execution schedule information of the application, data information used in the application, location information of the stored data, information on the second storage medium, and the drive schedule, the prefetch schedule is determined. And determining and reflecting the determined drive use schedule in prefetching as a drive use job in the drive schedule.
前記プロセッサは、
前記アプリケーション実行スケジュール、前記格納されるデータの位置情報、前記プリフェッチにかかる時間に基づいて、アプリケーション実行開始までに前記アプリケーションが利用するデータのプリフェッチが完了出来るロード開始時刻を計算し、
前記ドライブスケジュールを参照し、前記ロード開始時刻の前記ドライブが空いているか確認し、
前記ロード開始時刻にドライブが空いていない場合には、前記アプリケーションが利用するデータのプリフェッチまたは当該時刻にドライブを利用予定のプリフェッチの実行時間を早め、前記プリフェッチのスケジュールを決定する
ことを特徴とする計算機。The computer according to claim 3, wherein
The processor is
Based on the application execution schedule, the location information of the stored data, and the time taken for the prefetch, calculate the load start time at which the prefetch of the data used by the application can be completed before the application execution starts,
Referring to the drive schedule, check whether the drive at the load start time is free,
When the drive is not free at the load start time, the prefetch schedule is determined by advancing the prefetch time of data used by the application or the prefetch scheduled to use the drive at the time. calculator.
前記プロセッサは、
アプリケーションの実行スケジュール情報に基づいて、前記アプリケーションの実行完了時間に前記アプリケーションの前記第2の記憶媒体から前記アプリケーションで利用されるデータを削除し、
前記第2の記憶媒体の情報に基づいて、
前記第2の記憶媒体の格納データ量が閾値を超える時間がないように、前記プリフェッチのスケジュールを決定する、
ことを特徴とする計算機。The computer according to claim 4, wherein
The processor is
Based on the execution schedule information of the application, the data used by the application is deleted from the second storage medium of the application at the execution completion time of the application,
Based on the information in the second storage medium,
Determining the prefetch schedule so that there is no time for the amount of data stored in the second storage medium to exceed a threshold;
A computer characterized by that.
前記第1の記憶媒体を備える第1のストレージ装置と、前記第2の記憶媒体を備える第2のストレージ装置と接続され、
前記決定したプリフェッチのスケジュールに基づいて、前記第1のストレージ前記にリード指示を送信し、前記第1のストレージから前記第2の記憶媒体にデータを格納させ、
前記第2のストレージ装置に接続される前記外部計算機は前記第2の記憶媒体に格納されるデータにアクセスする
ことを特徴とする計算機。The computer according to claim 3, wherein
Connected to a first storage device comprising the first storage medium and a second storage device comprising the second storage medium;
Based on the determined prefetch schedule, a read instruction is transmitted to the first storage, and data is stored in the second storage medium from the first storage,
The computer, wherein the external computer connected to the second storage device accesses data stored in the second storage medium.
前記ドライブは前記第1の記憶媒体にデータをライトする機能を備え、
前記プロセッサは前記第2の記憶媒体から前記第1の記憶媒体へのデータ移動を考慮して前記ドライブスケジュールを決定する、
ことを特徴とする計算機。The computer according to claim 6, wherein
The drive has a function of writing data to the first storage medium,
The processor determines the drive schedule in consideration of data movement from the second storage medium to the first storage medium;
A computer characterized by that.
前記メモリには更に前記第1の記憶媒体のデータ格納開始時期期限が格納され、
前記プロセッサは前記第1の記憶媒体データ格納開始時期期限に基づいて前記ドライブスケジュールを決定する
ことを特徴とする計算機。The computer according to claim 7, wherein
The memory further stores a data storage start time limit of the first storage medium,
The computer, wherein the processor determines the drive schedule based on a first storage medium data storage start time limit.
前記第1の記憶媒体を備える第1のストレージ装置、前記第2の記憶媒体を備える第2のストレージ装置、第3の記憶媒体を備える第3のストレージ装置、及び前記第3のストレージ装置から前記第2のストレージ装置への移動を管理するアーカイブ管理サーバと接続され、
前記プロセッサは、前記第3のストレージ装置または前記アーカイブ管理サーバから、前記第3の記憶媒体格納データの管理情報の最終アクセス時刻、階層移動ポリシーを取得し、前記取得した情報に基づき前記第3のストレージ装置から前記第2のストレージ装置へ移動するデータと時刻を予測し、
前記予測に基づき前記第2の記憶媒体の情報を更新する
ことを特徴とする計算機。The computer according to claim 5, wherein
From the first storage device comprising the first storage medium, the second storage device comprising the second storage medium, the third storage device comprising a third storage medium, and the third storage device Connected to an archive management server that manages movement to the second storage device,
The processor acquires a last access time and a tier migration policy of management information of the third storage medium storage data from the third storage device or the archive management server, and based on the acquired information, the third storage policy Predicting data and time to move from the storage device to the second storage device,
The computer updates the information in the second storage medium based on the prediction.
前記プロセッサは、
前記ドライブスケジュールを参照し、
前記アプリケーションで利用されるデータと同一のデータをリードするドライブ利用ジョブがあった場合、前記第2の記憶媒体の情報に基づいて、前記同一の第1の記憶媒体をロードするドライブ利用ジョブが実行されてから前記アプリケーションの実行完了時間まで前記アプリケーションで利用されるデータを前記第2の記憶媒体に格納していた場合に前記第2の記憶媒体の格納データ量が閾値を超える時間があるか確認し、
第2の記憶媒体の格納データ量が閾値を超える時間がない場合、前記アプリケーションのプリフェッチに際して前記ドライブスケジュールにドライブ利用ジョブの追加を行わず、前記同一のデータをリードするドライブ利用ジョブを関連ドライブ利用ジョブとして管理する
ことを特徴とする計算機。The computer according to claim 5, wherein
The processor is
Refer to the drive schedule,
When there is a drive use job that reads the same data as the data used in the application, the drive use job that loads the same first storage medium is executed based on the information of the second storage medium When the data used in the application is stored in the second storage medium until the execution completion time of the application, it is confirmed whether the amount of data stored in the second storage medium exceeds the threshold And
If there is no time for the stored data amount of the second storage medium to exceed the threshold value, the drive use job that reads the same data is used as the related drive use without adding the drive use job to the drive schedule at the time of prefetching the application. A computer that is managed as a job.
前記プロセッサはアプリケーションの完了通知を受け取った場合、
前記アプリケーションの実行スケジュール情報及び前記アプリケーションで利用されるデータ情報を参照し、前記アプリケーションの実行に用いたデータが他のアプリケーションの関連ドライブ利用ジョブと管理されていないか判断し、
他のアプリケーションの関連ドライブ利用ジョブと管理されていない場合、前記アプリケーションの実行に用いたデータを前記第2の記憶媒体から削除する
ことを特徴とする計算機。The computer according to claim 10, wherein
If the processor receives an application completion notification,
Refer to execution schedule information of the application and data information used in the application, determine whether data used for execution of the application is managed as a related drive use job of another application,
A computer that deletes data used for execution of the application from the second storage medium when it is not managed as a related drive use job of another application.
前記第1の記憶装置は前記複数可搬型記憶媒体からデータをリードするドライブを前記複数の可搬型記憶媒体より少ない数備え、
前記装置管理サーバは前記複数可搬型記憶媒体をロードするスケジュールであるドライブスケジュール、前記プリフェッチ記憶媒体の情報、ホストのアプリケーションの実行スケジュール情報、及び、前記複数の可搬型記憶媒体に格納されるデータの位置情報、に基づいて前記プリフェッチのスケジュールを決定する
ことを特徴とする記憶システム。A first storage device comprising a plurality of portable storage media; a second storage device comprising a prefetch storage medium capable of reading data at a higher speed than the portable storage media; the first storage device; A hybrid management server that provides a hybrid storage system from the second storage device to the host computer and a prefetch for copying data from the first storage device to the second storage device in advance before a read request from the host computer is managed. A storage system comprising a device management server
The first storage device includes a smaller number of drives for reading data from the plurality of portable storage media than the plurality of portable storage media,
The device management server includes a drive schedule that is a schedule for loading the plurality of portable storage media, information on the prefetch storage medium, execution schedule information of a host application, and data stored in the plurality of portable storage media. A storage system, wherein the prefetch schedule is determined based on position information.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2014/067306 WO2016001959A1 (en) | 2014-06-30 | 2014-06-30 | Storage system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2016001959A1 true JPWO2016001959A1 (en) | 2017-04-27 |
Family
ID=55018561
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016530685A Pending JPWO2016001959A1 (en) | 2014-06-30 | 2014-06-30 | Storage system |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPWO2016001959A1 (en) |
WO (1) | WO2016001959A1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7200746B2 (en) * | 2019-02-25 | 2023-01-10 | 富士通株式会社 | Control device and control program |
JP7326969B2 (en) | 2019-07-30 | 2023-08-16 | 富士通株式会社 | Information processing device, storage system and scheduling program |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04266130A (en) * | 1991-02-21 | 1992-09-22 | Nec Corp | File recall control system |
JPH06274388A (en) * | 1993-03-19 | 1994-09-30 | Hitachi Software Eng Co Ltd | Archive recalling method for file |
JP2001022614A (en) * | 1999-07-08 | 2001-01-26 | Hitachi Ltd | Hierarchical storage system |
JP2004252829A (en) * | 2003-02-21 | 2004-09-09 | Mitsubishi Electric Corp | Backup controller |
JP2008293233A (en) * | 2007-05-24 | 2008-12-04 | Hitachi Ltd | Computer system, its control method, and system management device |
JP2012083870A (en) * | 2010-10-08 | 2012-04-26 | Hitachi Ltd | Computer system, storage management computer and storage management method |
JP2012098965A (en) * | 2010-11-02 | 2012-05-24 | Fujitsu Ltd | Virtual tape device and physical tape selection method of virtual tape device |
-
2014
- 2014-06-30 WO PCT/JP2014/067306 patent/WO2016001959A1/en active Application Filing
- 2014-06-30 JP JP2016530685A patent/JPWO2016001959A1/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04266130A (en) * | 1991-02-21 | 1992-09-22 | Nec Corp | File recall control system |
JPH06274388A (en) * | 1993-03-19 | 1994-09-30 | Hitachi Software Eng Co Ltd | Archive recalling method for file |
JP2001022614A (en) * | 1999-07-08 | 2001-01-26 | Hitachi Ltd | Hierarchical storage system |
JP2004252829A (en) * | 2003-02-21 | 2004-09-09 | Mitsubishi Electric Corp | Backup controller |
JP2008293233A (en) * | 2007-05-24 | 2008-12-04 | Hitachi Ltd | Computer system, its control method, and system management device |
JP2012083870A (en) * | 2010-10-08 | 2012-04-26 | Hitachi Ltd | Computer system, storage management computer and storage management method |
JP2012098965A (en) * | 2010-11-02 | 2012-05-24 | Fujitsu Ltd | Virtual tape device and physical tape selection method of virtual tape device |
Also Published As
Publication number | Publication date |
---|---|
WO2016001959A1 (en) | 2016-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4749255B2 (en) | Storage system control device having multiple types of storage devices | |
US11281377B2 (en) | Method and apparatus for managing storage system | |
US9990395B2 (en) | Tape drive system server | |
US9632949B2 (en) | Storage management method, storage management system, computer system, and program | |
JP4402103B2 (en) | Data storage device, data relocation method thereof, and program | |
WO2012056494A2 (en) | Storage system and its operation method | |
US10394819B2 (en) | Controlling mirroring of tables based on access prediction | |
US9778927B2 (en) | Storage control device to control storage devices of a first type and a second type | |
US11099768B2 (en) | Transitioning from an original device to a new device within a data storage array | |
US9886449B1 (en) | Delayed allocation for data object creation | |
US20170344269A1 (en) | Storage system, control apparatus, and method of transmitting data | |
US9430168B2 (en) | Recording medium storing a program for data relocation, data storage system and data relocating method | |
US10620865B2 (en) | Writing files to multiple tapes | |
US8359439B2 (en) | Backup apparatus, backup method, and file reading apparatus | |
JP2015079409A (en) | Creation and management of logical volume snapshots under hierarchical management | |
JP6115575B2 (en) | Data set multiplicity changing device, server, data set multiplicity changing method, and computer program | |
US8880794B2 (en) | Populating a sparsely allocated memory in a storage array | |
JP5385987B2 (en) | Storage system, method, and program including a plurality of storage devices | |
WO2016001959A1 (en) | Storage system | |
US11288238B2 (en) | Methods and systems for logging data transactions and managing hash tables | |
US11288211B2 (en) | Methods and systems for optimizing storage resources | |
JP7310110B2 (en) | storage and information processing systems; | |
JP7050540B2 (en) | Arrangement control device for logical storage area, arrangement control system for logical storage area, arrangement control method for logical storage area, and arrangement control program for logical storage area. | |
JP6256133B2 (en) | Storage device, cache control method, and cache control program | |
JP2014153873A (en) | Information processing device, information processing method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161221 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170516 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20180403 |