JP2009104440A - 先読みを用いたストレージ消費電力削減方法及びその方法を用いた計算機システム - Google Patents

先読みを用いたストレージ消費電力削減方法及びその方法を用いた計算機システム Download PDF

Info

Publication number
JP2009104440A
JP2009104440A JP2007276132A JP2007276132A JP2009104440A JP 2009104440 A JP2009104440 A JP 2009104440A JP 2007276132 A JP2007276132 A JP 2007276132A JP 2007276132 A JP2007276132 A JP 2007276132A JP 2009104440 A JP2009104440 A JP 2009104440A
Authority
JP
Japan
Prior art keywords
data
disk
memory
storage device
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2007276132A
Other languages
English (en)
Other versions
JP2009104440A5 (ja
JP5020774B2 (ja
Inventor
Hideomi Idei
英臣 出射
Kazuhiko Mogi
和彦 茂木
Norifumi Nishikawa
記史 西川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2007276132A priority Critical patent/JP5020774B2/ja
Priority to US12/007,936 priority patent/US8036076B2/en
Publication of JP2009104440A publication Critical patent/JP2009104440A/ja
Publication of JP2009104440A5 publication Critical patent/JP2009104440A5/ja
Application granted granted Critical
Publication of JP5020774B2 publication Critical patent/JP5020774B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/02Control of operating function, e.g. switching from recording to reproducing

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】搭載されるディスク台数の増加に伴い、ストレージ装置の消費電力が増大する。
【解決手段】DBサーバとして動作する計算機と、データを格納する複数のディスク装置を含むストレージ装置と、を備える計算機システムであって、前記複数のディスク装置の少なくとも一つには、前記計算機によって書き込まれたDBスキーマのデータが格納され、前記計算機システムは、さらに管理部を備え、前記管理部は、受信したクエリに基づいて、これからアクセスすべき前記DBスキーマを特定し、前記特定されたDBスキーマのデータの少なくとも一部を前記ディスク装置から前記第2メモリにコピーする指示を前記ストレージ装置に送信し、前記特定されたDBスキーマのデータが格納された前記ディスク装置の回転数を制御する指示を前記ストレージ装置に送信し、前記ストレージ装置は、前記指示に基づいて、前記ディスク装置の回転数を制御する。
【選択図】図1

Description

本願明細書で開示される技術は、データベース(以下、DB)を運用する計算機システムと、DBのデータを記憶するストレージ装置に関し、特にストレージ装置の消費電力を低減する技術に関する。
現在、DBを基盤とする多くのアプリケーションが存在し、DBに関する一連の処理/管理を行うデータベースマネージメントシステム(以下、DBMS)は極めて重要なものとなっている。DBの特徴の一つは、膨大な量のデータを扱うことである。そのため、DBMSが稼動する計算機システム(以下、DBシステム)の多くにおいては、DBMSが動作する計算機(以下、DBサーバ)に、複数台の記憶装置を備えた(つまり大容量の)ストレージ装置を接続し、ストレージ装置上にDBのデータを記憶するシステム形態が一般的である。
上記DBMSが管理するDBのデータは年々増加傾向にあり、それに伴ってストレージ装置の更なる大容量化が進んでいる。ストレージ装置の大容量化の方法の一つとして、搭載されるディスク台数を増やす方法がある。搭載するディスク台数を増やすことで記憶領域は増大するが、ディスクの回転によって多くの電力が消費されるため、ディスク台数の増加によってストレージ装置全体の消費電力が増大してしまう問題がある。ストレージ装置の消費電力を低減させるための技術として、例えば、特許文献1が知られている。
特許文献1は、ディスクアレイ装置が上位装置からのアクセスを所定の時間受信しなかった場合、ディスク装置の節電(すなわち、電源ON/OFF及び節電モードの選択)を制御する技術を開示している。ディスクアレイ装置は、上位装置からアクセスを受信したときに、アクセス先のディスク装置の電源がOFFになっている場合、そのディスク装置の電源を投入した後、アクセスを実行する。
また、ディスク(ハードディスクドライブ)単体に着目すると、消費電力はディスクの回転数に関係する。すなわち、回転数が低ければ消費電力は小さく、回転数が高くなれば消費電力も大きくなる。非特許文献1は、動的に回転数を変更することが可能なディスクの技術を開示している。本技術によれば、ディスクの回転数を小さく設定することによって、消費電力を抑えることができる。
DBシステムにおいて、DBMSがクエリ実行の際に作成するクエリプランを基に、DBMSがアクセスするデータを予めストレージ装置のディスクから読み出してキャッシュメモリ上に書き込んでおくことによって、性能を向上する技術が特許文献2に開示されている。このように、これからアクセスされるデータをあらかじめディスクから読み出してメモリ上に保持することは、先読みと呼ばれる。
特開2000−293314号公報 特開2005−258735号公報 ACM SIGARCH Computer Architecture News, Proceedings of the 30th annual international symposium on Computer architecture ISCA ’03, Volume 31 Issue 2
前述したように、DBMSが管理するDBのデータを記憶するストレージ装置において、記憶領域の増加(すなわちディスク台数の増加)に伴い消費電力も大きくなるため、ストレージ装置の消費電力を削減するための技術が望まれる。
ストレージ装置の消費電力を削減するための技術として、特許文献1に開示されている技術を利用することができる。例えば、所定の時間アクセスがない場合にディスク装置の電源をOFFにしておき、アクセスがあった場合に、そのアクセス先のディスク装置の電源をONにすることで、消費電力を削減することが可能となる。しかし、この技術では、ストレージ装置は、上位装置(例えば、ストレージ装置に接続された計算機)からアクセス要求(すなわちI/O要求)を受信すると、ディスク装置の電源をONにしてからデータアクセスを実行する。このため、上位装置に対するI/Oの応答が遅くなるという課題がある。
そこで、特許文献1に開示された技術に、非特許文献1に開示されている技術を組み合わせることが考えられる。すなわち、所定の時間アクセスがない場合、ストレージ装置のディスクの回転を低速にしておくことで消費電力が削減される。上位装置からI/O要求があった場合にディスクの回転を高速(通常)にすることで、上位装置に対するI/Oの応答を上記よりも早くすることができる。しかし、この場合、ディスクの回転を高速にするため、ストレージ装置の消費電力は多くなる。一方、ディスクの回転を低速のままにしておくことも考えられる。しかし、その場合、消費電力は削減されるが、単位時間あたりのデータ転送量が小さくなるため、上位装置に対するI/Oの応答が遅くなる。例えば、ストレージ装置がある決められた性能要件を満たさなければならない場合、結局はディスクの回転を高速で運用する場面が多くなる可能性が高い。この場合、ストレージ装置の消費電力削減は見込めない。
本発明の目的は、先読みを用いて性能を維持しつつ、ある決められた性能要件内で、DBのデータを記憶するストレージ装置内のディスクの回転を可能な限り低速にしておくことで、ストレージ装置の消費電力を削減することにある。
本願で開示する代表的な発明は、計算機と、ネットワークを介して前記計算機に接続されるストレージ装置と、を備える計算機システムであって、前記計算機は、前記ネットワークに接続される第1インタフェースと、前記第1インタフェースに接続される第1プロセッサと、前記第1プロセッサに接続される第1メモリと、を備え、前記第1プロセッサが前記第1メモリに格納されたデータベース管理システムを実行することによってデータベースサーバとして動作し、前記ストレージ装置は、前記計算機によって書き込まれたデータを格納する複数のディスク装置と、前記複数のディスク装置を制御するコントローラと、を備え、前記コントローラは、前記ネットワークに接続される第2インタフェースと、前記第2インタフェースに接続される第2プロセッサと、前記第2プロセッサに接続される第2メモリと、を備え、前記複数のディスク装置の少なくとも一つには、前記計算機によって書き込まれたデータベーススキーマのデータが格納され、前記計算機システムは、さらに管理部を備え、前記管理部は、前記前記計算機が受信したクエリに基づいて、これからアクセスすべき前記データベーススキーマを特定し、前記特定されたデータベーススキーマのデータの少なくとも一部を前記ディスク装置から読み出して、前記読み出されたデータを前記第2メモリに書き込む指示を前記ストレージ装置に送信し、前記特定されたデータベーススキーマのデータが格納された前記ディスク装置の回転数を制御するための制御指示を前記ストレージ装置に送信し、前記コントローラは、前記制御指示に基づいて、前記回転数を制御される前記ディスク装置を特定し、前記特定されたディスク装置の回転数の増加・減少、又は、前記特定されたディスク装置の回転の停止を実行することを特徴とする。
本発明の一実施形態によれば、DBのデータを記憶するストレージ装置内のディスクの回転を可能な限り低速にしておくことで、ストレージ装置の消費電力を削減することができる。
以下、本発明の実施の形態を説明する。尚、これにより本発明が限定されるものではない。
図1は、本発明の実施形態のDBシステムの構成を示すブロック図である。
本実施形態のDBシステム(すなわち図1に示す計算機システム)では、通信ネットワーク130を介して、DBサーバ100と、ストレージ装置140とが接続される。DBサーバ100は、ストレージ装置140に格納されているDBを管理するDBMS118を実行する。ストレージ装置140は、DB等、DBサーバ100が使用するデータを格納する。通信ネットワーク130は、ローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)等のネットワークであってもよいし、ファイバチャネル等で構成されるネットワーク(ストレージエリアネットワーク:SAN)であってもよい。
尚、図1は、DBサーバ100及びストレージ装置140をそれぞれ1台のみ記載しているが、本実施形態の計算機システムは、複数台のDBサーバ100及びストレージ装置140を備えてもよい。さらに、通信ネットワーク130には、計算機170が接続されてもよい。計算機170は、例えば、DBサーバ100と同様のDBサーバ、又は、DBサーバ100を利用するクライアント計算機であってもよい。
DBサーバ100は、例えば一般的な計算機であってもよい。具体的には、例えば、DBサーバ100は、内部バス102で接続されたCPU(制御プロセッサ)104、入出力装置106、記憶装置108、メモリ110、及びI/F112(すなわち通信ネットワーク130に接続されるインタフェース)を備える。メモリ110、及び記憶装置108の少なくとも一方には、オペレーティングシステム(以下、OS)114、DBMS118、DB情報取得プログラム122及びマネージャプログラム124が格納される。
OS114、DBMS118、DB情報取得プログラム122、及びマネージャプログラム124は、CPU104によって実行される。
OS114は、ローデバイスとストレージ装置140上の論理的な記憶領域とを対応付けるローデバイス情報116を保持する。尚、ローデバイスとは、OSで管理する論理的な記憶装置単位である。
DBMS118は、DBの運用管理に必要なDBMS管理情報120を保持する。DBMS118は、アプリケーション(図示省略)からクエリを受付け、受付けたクエリのクエリプランを作成し、そのクエリプランに従って処理を実行する。また、この処理の中で、ストレージ装置140の格納しているデータにアクセスする必要がある場合、DBMS118は、該当データのアクセス要求(以下、I/O要求とも言う)をストレージ装置140に発行する。
DB情報取得プログラム122は、DBに関する種々の情報を取得し、マネージャプログラム124に送信する処理を実行する。また、DB情報取得プログラム122は、DBサーバ100の性能を監視し、それも合わせてマネージャプログラム124に送信する。
マネージャプログラム124は、特許文献2(特開2005−258735号公報)に記載された先読み処理に必要なDB処理管理情報126、各論理ユニットの制御状態に関する論理ユニット状態情報128、及び、管理者が設定する性能要件情報129を保持する。尚、本実施例において、管理者が設定する性能要件、及び、DB情報取得プログラム122が監視するDBサーバ100の性能は、I/Oの応答時間(レスポンスタイム)である。しかし、応答時間の代わりに、DBサーバ100の性能を示すいかなる指標(例えばスループット又はIOPS等)が設定及び監視されてもよい。
ストレージ装置140は、複数のディスク152と、それらのディスク152に接続されたコントローラ143を有する。コントローラ143は、例えば内部バス142で接続されたI/F144(通信ネットワーク130とのインタフェース)、CPU(制御プロセッサ)146、キャッシュメモリ148、及びメモリ150を有する。
メモリ150には、ストレージ装置140を制御する制御プログラム154が格納さる。制御プログラム154は、CPU146によって実行される。制御プログラム154は、記憶領域管理情報156、ディスク回転管理情報158及びメモリ管理情報160を含む。記憶領域管理情報156は、ストレージ装置140の論理的な記憶領域と、ディスク152が有する物理的な記憶領域とを対応付ける情報である。ディスク回転管理情報158は、ディスク152の個々の回転状態を管理する情報である。メモリ管理情報160は、メモリ150の使用状況を管理する情報である。
ディスク152は、例えばハードディスクドライブ(磁気記憶装置)である。ストレージ装置140は、複数のディスク152をRAID(Redundant Array of Independent (or Inexpensive) Disks)構成にしてもよい。以下、ディスク152を物理ディスクとも記載する。
尚、上述した各種プログラムは、可搬記憶媒体又は通信ネットワークを介して各装置にインストールされてもよい。
ストレージ装置140がDBサーバ100から書き込み(ライト)要求と、その要求によって書き込まれるべきデータとを受信した場合、制御プログラム154は、受信したデータをキャッシュメモリ148に一時的に格納し、その後、該当するディスク152の記憶領域にデータを書き込む。ストレージ装置140が読み出し(リード)要求を受信した場合、制御プログラム154は、該当するデータ(すなわちその要求によって読み出されるべきデータ)をキャッシュメモリ148から読み出して、DBサーバ100に送信する。該当するデータがキャッシュメモリ148上にない場合、制御プログラム154は、該当するデータをディスク152からキャッシュメモリ148に読み出し、DBサーバ100に送信する。
以上が、本実施形態におけるDBシステムの構成に関する説明である。尚、本実施形態においてマネージャプログラム124は、DBサーバ100上で動作する。しかし、マネージャプログラム124は、DBサーバ100及びストレージ装置140に接続された別の計算機170上で動作してもよい。
計算機170は、内部バス172で接続されたCPU174、入出力装置176、記憶装置178、メモリ180、及びI/F182を備える。マネージャプログラム124が計算機170上で動作する場合、マネージャプログラム124は、メモリ180に格納され、CPU174によって実行される。
あるいは、マネージャプログラム124は、ストレージ装置140上で動作してもよい。その場合、マネージャプログラム124は、メモリ150に格納され、CPU146によって実行される。
あるいは、DBサーバ100とストレージ装置140は、一つの筐体に搭載されてもよい。具体的には、例えばDBサーバ100は、いわゆるブレードサーバとして、ストレージ装置140のコントローラ143、或いはディスク152が搭載される筐体に搭載されてもよい。
続いて、以下、前述した各種情報について詳細に説明する。
図2Aは、本発明の実施形態のストレージ装置140の制御プログラム154が保持する記憶領域管理情報156の構成例を示した説明図である。
記憶領域管理情報156は、ストレージ装置140が有する論理的な記憶領域(以下「論理ユニット」と記載する)と、実際にデータが記憶される物理的な記憶領域とを対応付ける情報であり、論理ユニット毎に対応するエントリを有する。各エントリは、論理ユニットを識別するための論理ユニット番号を登録するフィールド200、論理ユニット内における論理ブロックの番号(以下「論理ブロックアドレス」と記載する)を登録するフィールド202、論理ブロックに対応する物理ブロックが属するディスク152を識別するための物理ディスク番号を登録するフィールド204、及び、論理ブロックに対応する物理ブロックの番号(以下「物理ブロックアドレス」と記載する)を登録するフィールド206を含む。
尚、ブロックとは、記憶領域を扱う際の単位を示すものであり、一般的に512バイトであることが多い。また、論理ブロックは物理ブロックと一対一で対応している必要があるが、全ての論理ブロックが同一のディスク152上にある必要はない。
ストレージ装置140は、DBサーバ100から論理ユニット及び論理ブロックアドレスが指定されたアクセスを受け付ける。そして、ストレージ装置140は、指定された論理ユニット及び論理ブロックに対応する物理ブロックの物理ディスク番号及び物理ブロックアドレスを記憶領域管理情報156に基づいて割り出し、割り出されたアドレスが示す物理ブロックに対して実際にアクセスを実行する。
例えば、図2Aによれば、ストレージ装置140は、論理ユニット番号「0」及び論理ブロックアドレス「200000」が指定されたアクセス要求を受信した場合、物理ディスク番号「1」によって識別されるディスク152の、物理ブロックアドレス「0」によって識別される物理ブロックに対してアクセスを実行する。
図2Bは、本発明の実施形態のストレージ装置140の制御プログラム154が保持するディスク回転管理情報158の構成例を示した説明図である。
ディスク回転管理情報158は、ストレージ装置140が有するディスク152の回転状態を個別に(すなわち、物理ディスクごとに)管理する情報であり、物理ディスク毎に対応するエントリを有する。各エントリは、個々のディスク152を識別するための物理ディスク番号を登録するフィールド220、及び、物理ディスクの回転状態(例えば、通常、低速又は停止等)の情報を登録するフィールド222を含む。
尚、この例において、「通常」は、ディスク152が通常の回転数で回転している状態を示す。「低速」は、ディスク152が「通常」より低い回転数で回転している状態を示す。「停止」は、ディスク152の回転が停止している状態を示す。フィールド222には、「通常」等の代わりに、各ディスク152の回転数(rpm)が登録されてもよい。
図2Bの例では、物理ディスク番号「0」、「1」及び「2」に対応する回転状態情報として、それぞれ、「通常」、「低速」及び「停止」が登録されている。これは、物理ディスク番号「1」によって識別されるディスク152が、物理ディスク番号「0」によって識別されるディスク152より低い回転数で回転していること、及び、物理ディスク番号「2」によって識別されるディスク152の回転が停止していることを示す。
図2Cは、本発明の実施形態のストレージ装置140の制御プログラム154が保持するメモリ管理情報160の構成例を示した説明図である。
メモリ管理情報160は、メモリサイズを登録するフィールド162、使用メモリサイズを登録するフィールド164及び空きメモリサイズを登録するフィールド166を含む。
フィールド162には、メモリ150のサイズ、すなわち、メモリ150の総容量を示す値が登録される。フィールド164には、メモリ150の全記憶領域のうち、現在実際に使用されている領域の容量を示す値が登録される。フィールド166には、メモリ150の全記憶領域のうち、現在使用されていない領域の容量を示す値が登録される。
図3は、本発明の実施形態のDBサーバ100のOS114が保持するローデバイス情報116の構成例を示した説明図である。
ローデバイス情報116は、OS114が持つローデバイスと、そのローデバイスに割り当てられたストレージ装置140上の記憶領域とを対応付ける情報である。ローデバイス情報116は、ローデバイス毎に対応するエントリを有する。各エントリは、ローデバイスのファイル名を登録するフィールド300、ローデバイスに対して割り当てられた記憶領域が属するストレージ装置140の装置アドレスを登録するフィールド302、割り当てられた記憶領域が属する論理ユニットの論理ユニット番号を登録するフィールド304、割り当てられた記憶領域の論理ユニット上での先頭論理ブロックアドレスを登録するフィールド306、及び、割り当てられた記憶領域の論理ブロック数を登録するフィールド308を含む。
例えば、図3によれば、ファイル名「/dev/rdsk/raw1」によって識別されるローデバイスに、アドレス「1000」によって識別されるストレージ装置140の、番号「0」によって識別される論理ユニットの、アドレス「0」を先頭とする67108864個の論理ブロックが割り当てられている。
図4Aは、本発明の実施形態のDBMS118が保持するDBMS管理情報120の構成例を示した説明図である。
DBMS管理情報120は、DBの初期設定時又は運用時に、管理者等によって設定される。
DBMS管理情報120は、DBシステムファイルの設定情報であるDBシステムファイル情報400、データ領域の設定情報であるデータ領域情報420、テーブルやインデックスといったDBスキーマの設定情報であるDBスキーマ情報440を含む。
図4Bは、本発明の実施形態のDBシステムファイル情報400の構成例を示した説明図である。
DBシステムファイル情報400は、DBシステムファイルと、前述のローデバイスとを対応付ける情報である。DBシステムファイル情報400は、DBシステムファイル毎にエントリを有する。各エントリは、DBシステムファイルのファイル名を登録するフィールド402、及び、DBシステムファイルが登録されるローデバイスのファイル名を登録するフィールド404を含む。
尚、DBシステムファイルは、ローデバイスに作られる一つの大きなファイルである。DBMS118は、このDBシステムファイルにDBのデータを書き込むことでDBを構築する。また、DBシステムファイルに書き込まれたDBのデータについて、OS114は、前述のローデバイス情報116に基づいて、実際にデータを書き込むストレージ装置140の論理的な記憶領域を割り出す。そして、割り出した情報に基づいて、OS114が実際のデータ書き込み命令をストレージ装置140に発行する。データ読み出し(リード)も同様にして実行される。
図4Cは、本発明の実施形態のデータ領域情報420の構成例を示した説明図である。
データ領域情報420は、DBMS118が管理するデータ領域の設定情報である。データ領域情報420は、データ領域毎にエントリを有する。各エントリは、データ領域を識別するためのデータ領域IDを登録するフィールド422、データ領域の名前を登録するフィールド424、データ領域が作られるDBシステムファイルのファイル名を登録するフィールド426、及び、データ領域に割り当てた領域サイズを登録するフィールド428を含む。尚、データ領域とは、DBのデータを記憶するデータ領域であり、DBシステムファイル上に作成される。
図4Dは、本発明の実施形態のDBスキーマ情報440の構成例を示した説明図である。
DBスキーマ情報440は、DBMS118が管理する表(テーブル)及び索引(インデックス)といったDBスキーマに関する設定情報である。DBスキーマ情報440は、DBスキーマ毎にエントリを有する。
各エントリは、フィールド442、フィールド444、フィールド446、フィールド448、フィールド450及びフィールド452を含む。フィールド442には、DBスキーマを識別するためのDBスキーマIDが登録される。フィールド444には、DBスキーマの名前が登録される。フィールド446には、DBスキーマの種別(例えば「表」又は「索引」)が登録される。フィールド448には、DBスキーマが書き込まれるデータ領域を識別するためのデータ領域IDが登録される。フィールド450には、DBスキーマのサイズが登録される。フィールド452には、DBスキーマが書き込まれるデータ領域上のオフセットが登録される。
図5Aは、本発明の実施形態のマネージャプログラム124が保持するDB処理管理情報126の構成例を示した説明図である。
DB処理管理情報126は、各DBスキーマの論理的な位置情報であるDBスキーマ位置情報500、及び、DB処理に関する情報であるDB処理情報520を含む。
尚、DB処理管理情報126は、DB情報取得プログラム122がDBMS118及びOS114から取得し、マネージャプログラム124に送信した情報に基づいて作成される。
図5Bは、本発明の実施形態のDBスキーマ位置情報500の構成例を示した説明図である。
DBスキーマ位置情報500は、前述のDBスキーマがストレージ装置140の記憶領域に記憶された実際の位置を示す情報である。DBスキーマ位置情報500は、DBスキーマ毎にエントリを有する。各エントリは、フィールド502、フィールド504、フィールド506、フィールド508、フィールド510、フィールド512及びフィールド514を含む。
フィールド502には、DBスキーマを識別するためのスキーマIDが登録される。フィールド504には、DBスキーマを有するDBMSを識別するためのDBMS IDが登録される。DBMS IDは、管理者等によってあらかじめ各DBMSに一意の値として割り当てられている値である。フィールド506には、DBスキーマの種別が登録される。フィールド508には、DBスキーマのサイズが登録される。フィールド510には、DBスキーマが書き込まれたストレージ装置140の装置アドレスが登録される。フィールド512DBには、スキーマが書き込まれたストレージ装置140の論理ユニットに付与された論理ユニット番号が登録される。フィールド514には、スキーマが書き込まれた論理ユニット内の領域の先頭の論理ブロックのアドレスが登録される。
図5Cは、本発明の実施形態のDB処理情報520の構成例を示した説明図である。
DB処理情報520は、DBMSが実行するクエリ、及びそのクエリ内で実行される検索(テーブルスキャン又はインデックススキャン等。以下「スキャン」ともいう)に関する情報である。DB処理情報520は、クエリのステップ毎にエントリを有する。
各エントリは、フィールド522、フィールド524、フィールド526、フィールド528及びフィールド530を有する。フィールド522には、クエリを実行するDBMSを識別するためのDBMS IDが登録される。フィールド524には、実行するクエリを識別するためのクエリIDが登録される。フィールド526には、クエリ内で実行されるスキャンを識別するためのスキャンIDが登録される。尚、スキャンIDは、そのクエリの中で実行されるスキャンを一意に識別するためにDBMSによって割り当てられる。スキャンIDの値が小さいスキャンから順番に実行される。フィールド528には、クエリ内で実行されるスキャンでアクセスされるDBスキーマを識別するためのDBスキーマIDが登録される。フィールド530には、スキャンの種別が登録される。
図5Dは、本発明の実施形態のマネージャプログラム124が保持する論理ユニット状態情報128の構成例を示した説明図である。
論理ユニット状態情報128は、マネージャプログラム124が論理ユニットに対して、現在どのような制御を実行しているかを示す情報である。論理ユニット状態情報128は、論理ユニット毎にエントリを有する。各エントリは、論理ユニット番号を登録するフィールド540、論理ユニットが属するストレージ装置140のアドレスを登録するフィールド540、及び、論理ユニットの現在の制御状態に関する情報を登録するフィールド544を有する。
より詳細には、フィールド544には、論理ユニットに対応するディスク152の回転の制御に関する情報が登録される。図5Dの例では、論理ユニット番号「0」、「1」及び「2」に対応するフィールド544に、それぞれ、「停止」、「低速」及び「通常」が登録されている。これは、論理ユニット番号「0」によって識別される論理ユニットに割り当てられたディスク152の回転が停止し、論理ユニット番号「1」によって識別される論理ユニットに割り当てられたディスク152が低速で回転し、論理ユニット番号「2」によって識別される論理ユニットに割り当てられたディスク152が通常の回転をするように制御されていることを示す。ここで、「停止」、「低速」及び「通常」の意味は、図2Bにおいて説明したとおりである。
図6Aは、本発明の実施形態の空きメモリ量通知応答600の構成例を示した説明図である。
空きメモリ量通知応答600は、マネージャプログラム124がストレージ装置140にリクエストした空きメモリ量通知命令に対してストレージ装置140から送信される応答である。
空きメモリ量通知応答600は、該当ストレージ装置アドレスを登録するフィールド602、及び空きメモリ量を登録するフィールド604を有する。ストレージ装置140の制御プログラム154は、マネージャプログラム124から空きメモリ量通知命令を受信すると、内部に保持するメモリ管理情報160を参照し、自ストレージ装置140のアドレス、及び、現在の空きメモリ量(すなわちフィールド166の値)を、それぞれ、空きメモリ量通知応答600のフィールド602及び604にセットして、マネージャプログラム124に返信する。
図6Bは、本発明の実施形態のマネージャプログラム124がストレージ装置140に発行するディスク制御命令610の構成例を示した説明図である。
ディスク制御命令610は、制御対象である論理ユニット番号を登録するフィールド612、及び制御内容を登録するフィールド614を含む。マネージャプログラム124は、必要に応じてこのディスク制御命令610を発行することによって、ストレージ装置140のディスク152の回転を制御する。
ストレージ装置140の制御プログラム154は、ディスク制御命令610を受信すると、記憶領域管理情報156を参照して該当論理ユニットに対応する物理ディスク152を割り出し、指示された制御を実行する。その際、制御プログラム154は、受信したディスク制御命令610に従ってディスク回転管理情報158を更新する。
尚、本実施形態では、ディスク制御命令610によって、論理ユニットのディスクの回転を通常回転、低速回転、停止の3段階の制御をすることができる。しかし、より多くの段階の制御が実行されてもよいし、2段階の制御(例えば通常回転と低速回転、又は、通常回転と停止)が実行されてもよい。本実施形態において、ディスク152の回転数は、例えば、通常回転に設定されている場合に15000rpm、低速回転に設定されている場合に5400rpmである。
図6Cは、本発明の実施形態のDB情報取得プログラム122がマネージャプログラム124に送信するDB処理実行情報630の構成例を示した説明図である。
DB処理実行情報630は、DBMS118がクエリ実行のためにクエリプランに基づいてストレージ装置140上のDBデータへのアクセス要求を発行する際に、DB情報取得プログラム122によって作成され、マネージャプログラム124に送信される。DB処理実行情報630は、フィールド632、フィールド634、フィールド636、フィールド638、フィールド640及びフィールド642を含む。
フィールド632には、アクセス要求元であるクエリを実行しているDBMSのID(識別子)が登録される。フィールド634には、アクセス要求元であるクエリのIDが登録される。フィールド636には、アクセス要求元であるスキャンのIDが登録される。フィールド638には、これから発行されるアクセス要求によってアクセス先として指定されるスキーマのIDが登録される。フィールド640には、これから発行されるアクセス要求によってアクセス先として指定される位置(すなわち論理ブロックのアドレス)が登録される。フィールド642には、現在のI/O応答時間が登録される。I/O応答時間は、DB情報取得プログラム122がDBサーバ100のI/Oを監視して内部に保持している性能情報123に基づく情報である。
図6Dは、本発明の実施形態のDB処理終了情報650の構成例を示した説明図である。
DB処理終了情報650は、DBMS118がクエリを終了する際、DB情報取得プログラム122によってマネージャプログラム124に送信される。
DB処理終了情報650は、終了するクエリを実行していたDBMS118のDBMS IDを登録するフィールド652、及び、終了するクエリのクエリIDを登録するフィールド654を含む。
続いて、DB情報取得プログラム122が実行する処理(以下、DB情報取得送信処理と記載する)、マネージャプログラム124が実行する処理(以下、消費電力削減処理と記載する)の手順について説明する。尚、DBは構築済み(すなわち、DB処理管理情報126は作成済み)であるものとする。また、マネージャプログラム124が実行する先読み処理は特許文献2(特開2005−258735号公報)に記載してあるため説明を省略する。
図7は、本発明の実施形態のDB情報取得送信処理の手順例を示したフロー図である。
以下の説明においてプログラムが主語になる場合、実際にはそのプログラムを実行するCPU104(又はCPU146)によって処理が実行される。
システム管理者は、DBサーバ100上でDB情報取得プログラム122を起動し、DB情報取得送信処理を開始する(ステップ700)。
最初に、DB情報取得プログラム122は、DBMS118が起動したか否かを判定する(ステップ704)。
DBMS118が起動していないと判定された場合、DB情報取得プログラム122は、DBが変更されたか否かを判定する(ステップ706)。
DBMS118が起動したか(ステップ704でYes)、又は、DBが変更された場合(ステップ706でYes)、DB情報取得プログラム122は、DBMS118が保持するDBMS管理情報120、及び、OS114が保持するローデバイス情報116を参照して、DBスキーマに関する情報を取得する(ステップ708)。
具体的には、例えば、スキーマID、スキーマ種別、及びデータ領域IDがDBスキーマ情報440から取得される。そして、その取得されたデータ領域IDに対応するDBシステムファイル名がデータ領域情報420から取得される。そして、その取得されたDBシステムファイル名に対応するローデバイスファイル名がDBシステムファイル情報400から取得される。そして、その取得されたローデバイスファイル名に対応するストレージ装置アドレス及び論理ユニット番号がローデバイス情報116から取得される。
DB情報取得プログラム122は、ステップ708で取得した情報と、DBMS管理情報120を保持するDBMS118のIDとを含んだDBスキーマ位置情報500を作成し、マネージャプログラム124に送信する(ステップ710)。DBスキーマ位置情報500を受信したマネージャプログラム124は、その情報を内部に保持する。尚、DB情報取得プログラム122が起動した時点でDBMS118が動作している場合、DB情報取得プログラム122は起動直後に、ステップ708及びステップ710の処理を実行する。
ステップ706においてDBが変更されていないと判定されたか、又は、ステップ710が終了した場合、DB情報取得プログラム122は、DBMS118がクエリを受け付けたか否かを判定する(ステップ712)。
DBMS118がクエリを受け付けた場合(ステップ712でYes)、DBMS118によってクエリプランが作成される。DB情報取得プログラム122は、作成されたクエリのクエリプランに関する情報をDBMS118から取得して(ステップ714)、その情報を用いてDB処理情報520を作成し、マネージャプログラム124に送信する(ステップ716)。
続いて、DB情報取得プログラム122は、性能(本実施例ではI/O応答時間)の監視を開始し、取得した情報を性能情報123として内部に保持する(ステップ718)。具体的には、例えば、DB情報取得プログラム122は、OS114にI/Oの開始時間と終了時間を出力するフックを設け、そのフックによって情報を取得し、取得された情報に基づいてI/O応答時間を割り出して保持する。尚、全てのI/Oの応答時間を保持するとデータ量が大きくなるため、DB情報取得プログラム122は、ある期間又はあるI/O数の平均I/O応答時間を性能情報123として保持してもよい。
ステップ718の次に、処理はステップ720に進む。
一方、ステップ712において、DBMS118がクエリを受け付けていないと判定された場合、ステップ714から718は実行されずに、処理はステップ720に進む。
クエリ実行中(つまりDB処理中)、DBMS118がDBのデータにアクセスする場合、DBMS118からI/O要求がOS114を介してストレージ装置140に発行される。DB情報取得プログラム122は、DBMS118のI/O要求発行を監視するか、もしくはDBMS118内部にフックを設け、I/O要求発行時にDB情報取得プログラム122に通知するようにして、I/O要求発行の有無を判定する(ステップ720)。
DBMS118からI/O要求が発行される場合(ステップ720でYes)、DB情報取得プログラム122は、そのI/O要求の情報を取得する(ステップ722)。ここで取得されるI/O要求の情報には、そのI/O要求を発行するDBMS118の識別子、処理されているクエリ及びスキャンの識別子、そのI/O要求によるアクセス先のスキーマの識別子及びそのアクセス先の位置情報が含まれる。
そして、DB情報取得プログラム122は、その取得した情報と性能情報123とに基づいてDB処理実行情報630を作成し、マネージャプログラム124に送信する(ステップ724)。
ステップ724が終了すると、処理はステップ726に進む。
一方、ステップ720において、DBMS118からI/O要求が発行されないと判定された場合、ステップ722及び724は実行されずに、処理はステップ726に進む。
次に、DB情報取得プログラム122は、DBMS118がクエリの実行を終了したか否かを判定する(ステップ726)。
DBMS118がクエリの実行を終了した場合(ステップ726でYes)、DB情報取得プログラム122は、終了したクエリに関する情報をDBMS118から取得する(ステップ728)。そして、DB情報取得プログラム122は、取得した情報に基づいてDB処理終了情報650を作成し、マネージャプログラム124に送信する(ステップ730)。続いて、マネージャプログラム124は、性能監視を終了する(ステップ732)。
ステップ732が終了すると、処理はステップ704に戻る。
一方、ステップ726において、DBMS118がクエリの実行を終了していないと判定された場合、ステップ728から732は実行されずに、処理はステップ704に戻る。
以上が、DB情報取得送信処理の手順例についての説明である。尚、DBMS118が複数のクエリを受付けた場合、それらの複数のクエリの各々に対して上述の処理が行われる。
DB情報取得プログラム122が、ステップ704でYes、ステップ706でYes、ステップ712でYes、ステップ720でYes、及びステップ726でYesとなったことを検知できるようにするための方法として、種々の方法を採用することができる。具体的には、例えば、DBMS118内部に、下記の(1)乃至(5)のタイミングで、DB情報取得プログラム122に情報を通知するインタフェースを設けてもよい。この場合、そのインタフェースを通じて、DB情報取得プログラム122は、各ステップにおける「Yes」を検知することができる。
(1)DBMS起動後。この場合、例えば、DBMS118がDB情報取得プログラム122に対し、起動したことの通知を、起動と同時に送信する。
(2)DBに変更があった時。この場合、例えば、DBMS118がDB情報取得プログラム122に対し、DBを変更したことの通知を、変更と同時に送信する。
(3)クエリ受付時。この場合、例えば、DBMS118がDB情報取得プログラム122に対し、受付けられたクエリのクエリプランに関する情報を、クエリプランの作成と同時に送信する。
(4)DBMSのアクセス要求発行時。この場合、例えば、DBMS118がDB情報取得プログラム122に対し、アクセス先に関する情報を、アクセス要求発行と同時に送信する。)
(5)クエリ終了時。この場合、例えば、DBMS118がDB情報取得プログラム122に対し、終了したクエリに関する情報を、クエリの処理の終了と同時に送信する。
次に、消費電力削減処理の手順例について説明する。尚、マネージャプログラム124が実行する先読み処理については、前述した通り特許文献2に記載されているため説明を省略する。
図8A及び図8Bは、本発明の実施形態の消費電力削減処理の手順例を示したフロー図である。
システム管理者は、マネージャプログラム124を起動し、消費電力削減処理を開始する(ステップ800)。尚、本実施例においてマネージャプログラム124は、前述のDB情報取得プログラム122より先に起動される必要があるが、情報の取得手順を変更すればその限りではない。また、初期の状態において、ストレージ装置140の全てのディスク152の回転は通常回転である。
マネージャプログラム124は、DB情報取得プログラム122からDBスキーマ位置情報500を受信したか否かを判定する(ステップ802)。DBスキーマ位置情報500を受信していない場合(ステップ802でNo)、マネージャプログラム124は、受信するまでステップ802の判定を繰り返す。DBスキーマ位置情報500をDB情報取得プログラム122から受信した場合(ステップ802でYes)、マネージャプログラム124は、受信したDBスキーマ位置情報500をDB処理管理情報126の一部として内部に保持する(ステップ804)。
次に、マネージャプログラム124は、DB情報取得プログラム122からDB処理情報520を受信したか否かを判定する(ステップ806)。DB処理情報520は、クエリを受け付けたDB情報取得プログラム122によって送信される(図7のステップ716参照)。DB処理情報520を受信していない場合(ステップ806でNo)、マネージャプログラム124は、受信するまでステップ806の判定を繰り返す。
DB処理情報520をDB情報取得プログラム122から受信した場合(ステップ806でYes)、マネージャプログラム124は、受信したDB処理情報520をDB処理管理情報126の一部として内部に保持する。さらに、マネージャプログラム124は、DB処理情報520を参照して、DBMSがこれからアクセスするDBスキーマ(表、索引等)を特定する(ステップ808)。ここで特定されたDBスキーマ(すなわち、DB処理情報520に登録されている全てのDBスキーマ)は、現在のクエリ(すなわち、図7のステップ716においてDB情報取得プログラム122が受け付けたクエリ)を処理するためにDBMS118によってこれからアクセスされる。
次に、マネージャプログラム124は、空きメモリ量通知命令をストレージ装置140に発行し、ストレージ装置140から送信される空きメモリ量通知応答600の受信を待つ(ステップ810)。
次に、マネージャプログラム124は、DBスキーマ位置情報500を参照して、ステップ808で特定されたDBスキーマの総データ量を特定する。具体的には、マネージャプログラム124は、DBスキーマ位置情報500のエントリのうち、ステップ808で特定されたDBスキーマに対応するエントリのフィールド508に登録されているスキーマサイズを合計した値を合計することによって、総データ量を割り出す。そして、マネージャプログラム124は、割り出された総データ量をステップ810で取得したストレージ装置140の空きメモリ量と比較する(ステップ812)。
ステップ808で特定したDBスキーマの総データ量がストレージ装置140の空きメモリ量よりも小さい場合(ステップ812でNo)、ステップ808で特定したDBスキーマの全データをメモリ150の空き容量に格納することができる。この場合、マネージャプログラム124は、ステップ808で特定したDBスキーマの全データをストレージ装置140のメモリ150上に先読みする指示をストレージ装置140に発行し、その先読みの完了通知がストレージ装置140から送信されるのを待つ。先読みの完了通知をストレージ装置140から受信したら、マネージャプログラム124は、ステップ808で特定されたDBスキーマを記憶している論理ユニットに対応するディスク152の回転を停止する(又は低速回転にする)ディスク制御命令610を作成してストレージ装置140に発行する(ステップ814)。
ステップ814で発行される先読み指示は、先読みされるデータ(すなわちステップ808で特定されたDBスキーマのデータ)が格納されている位置を指定する情報を含む。具体的には、ステップ808で特定されたDBスキーマに対応する配置先論理ユニット番号512及び配置先先頭論理アドレス514の値が先読み指示に含まれる。
先読み指示を受信したストレージ装置140の制御プログラム154は、先読み指示によって指定された位置からデータを読み出す。具体的には、制御プログラム154は、記憶領域管理情報を参照して、先読み指示に含まれる論理ユニット番号及び論理ブロックアドレスを物理ディスク番号及び物理ブロックアドレスに変換する。そして、制御プログラム154は、変換によって得られた物理ディスク番号及び物理ブロックアドレスが示すディスク152の記憶領域からデータを読み出す。そして、制御プログラム154は、読み出したデータをメモリ150に書き込む。
制御プログラム154は、メモリ150へのデータの書き込みが終了すると、先読みの完了通知を送信する。
ステップ814で発行されるディスク制御命令610の論理ユニット番号612には、ステップ808で特定されたDBスキーマを記憶している論理ユニットに付与された番号(すなわち、特定されたDBスキーマに対応する配置先論理ユニット番号512)が登録される。
ステップ814においてマネージャプログラム124が発行したディスク制御命令610を受信したストレージ装置140の制御プログラム154は、そのディスク制御命令610によって指定された論理ユニットに対応するディスク152を特定する。
例えば、図6Bに示すように、ディスク制御命令610の論理ユニット番号612及び制御内容614にそれぞれ「0」及び「停止」が登録されている場合、制御プログラム154は、論理ユニット番号「0」が付与された論理ユニットに対応するディスク152(言い換えると、その論理ユニットに書き込まれたデータが最終的に格納されるディスク152)を特定する。
具体的には、制御プログラム154は、記憶領域管理情報156を参照する。例えば、図2に示す記憶領域管理情報156が参照された場合、論理ユニット番号200の値「0」に対応する物理ディスク番号204として少なくとも「0」、「1」及び「2」が登録されている。これは、論理ユニット番号「0」が付与された論理ユニットに、物理ディスク番号「0」、「1」及び「2」が付与されたディスク152が対応することを意味する。
さらに、制御プログラム154は、ディスク制御命令610に従って、特定されたディスク152の回転を制御する。例えば、制御プログラム154は、物理ディスク番号「0」、「1」及び「2」が付与されたディスク152の回転を停止させる。このとき、制御プログラム154は、ディスク回転管理情報158を更新する。例えば、物理ディスク番号「0」、「1」及び「2」に対応する回転状態情報222の値を「停止」にする。
続いて、マネージャプログラム124は、回転を停止した(又は低速回転にした)論理ユニットに対応する論理ユニット状態情報128のフィールド544を「停止」(又は「低速」)に更新する(ステップ816)。
次に、マネージャプログラム124は、DB処理終了情報650を受信したか否かを判定する(ステップ818)。DB処理終了情報650を受信していない場合(ステップ818でNo)、マネージャプログラム124は、DB処理終了情報650を受信するまでステップ818の判定を繰り返す。
DB処理終了情報650をDB情報取得プログラム122から受信した場合(ステップ818でYes)、マネージャプログラム124は、回転を停止していた(又は低速回転にしていた)論理ユニットに対応するディスク152の回転を通常回転にするディスク制御命令610を作成して、ストレージ装置140に発行する(ステップ820)。
ステップ820においてマネージャプログラム124が発行したディスク制御命令610を受信したストレージ装置140の制御プログラム154は、そのディスク制御命令610によって指定された論理ユニットに対応するディスク152を特定する。この特定はステップ814と同様にして実行される。
さらに、制御プログラム154は、ディスク制御命令610に従って、特定されたディスク152の回転を「通常」に戻す。
次に、マネージャプログラム124は、ステップ820において通常回転に設定された論理ユニットに対応する論理ユニット状態情報128のフィールド544を「通常」に更新する(ステップ822)。そして、マネージャプログラム124は、ステップ806のDB処理情報受信待ちループに戻る。
尚、ストレージ装置140のディスク152からメモリ150上に読み出されているデータが更新された場合は、マネージャプログラム124は、その更新されたデータに対応するディスク152上のデータ(すなわち、そのデータの読み出し元のデータ)に更新を反映させる。
以上の手順によって、DBMS118がこれからアクセスするデータ(言い換えると、DBMS118がアクセスする可能性があるデータ)があらかじめストレージ装置140のディスク152から読み出され、そのデータがメモリ150上に書き込まれる。その後、DBMS118がそれらのデータにアクセスする場合、ディスク152へのアクセスの代わりにメモリ150へのアクセスが実行される。このように、元のデータを格納しているディスク152にアクセスする必要がなくなるため、それらのデータを格納しているディスク152の回転を停止する(又は低速回転にする)ことができる。その結果、ストレージ装置140の消費電力を削減することが可能となる。
但し、DBMS118がアクセスする可能性があるデータ量がストレージ装置140の空きメモリよりも大きい場合、それらのデータの全てをディスク152から読み出してメモリ150に書き込むことができない。この場合、以下の処理を実行して可能な限りストレージ装置140の消費電力削減を図る。
ステップ808で特定したDBスキーマの総データ量がストレージ装置140の空きメモリ量よりも大きい場合(ステップ812でYes)、マネージャプログラム124は、システム管理者から性能要件(以下、性能S。本実施例の場合I/O応答時間)を受け付け、その性能要件を性能要件情報129として保持する(ステップ824)。
マネージャプログラム124は、ステップ808で内部に保持したDB処理情報520を参照して、本クエリが先読み実行可能か否か(言い換えると、先読みを実行することによってアクセス性能向上の効果が得られるか否か)を判定する(ステップ826)。この判定は、いかなる方法によって実行されてもよい。例えば、マネージャプログラム124は、特許文献2に記載された公知の技術によってこの判定を実行することができる。
ステップ826において先読み実行不可(すなわち、先読みを実行してもアクセス性能が向上しない)と判定された場合(ステップ828でNo)、アクセス性能の低下なしにディスク回転数を低速にすることができない。この場合、ディスク回転数の制御(すなわち低速化)は実行されず、処理はステップ806のDB処理情報受信待ちループに戻る。
ステップ826において先読み実行可能と判定された場合(ステップ828でYes)、ディスク回転数を低速にすることによるアクセス性能の低下を、先読みによるアクセス性能の向上が補うことができる。この場合、マネージャプログラム124は、DB情報取得プログラム122から送信されたDB処理実行情報630に基づいて先読み処理を実行する。さらに、マネージャプログラム124は、DB処理実行情報630内のI/O応答時間642を参照して、現在の性能状況(I/O応答時間)を取得する(ステップ830)。
なお、ステップ830において先読みされるデータは、ステップ808において特定されたDBスキーマに含まれるデータの一部である。この先読みされるデータは、例えば特許文献2に記載された方法によって特定されてもよい。
マネージャプログラム124は、ステップ830で取得した現在の性能(I/O応答時間)が、設定された性能要件情報129に保持されている性能S(I/O応答時間)以上であるか否かを判定する(ステップ832)。例えば、ステップ830で取得したI/O応答時間が、性能Sとして保持されているI/O応答時間以下である場合、ステップ830で取得した現在の性能が性能S以上であると判定される。
なお、本実施形態は、性能としてI/O応答時間が比較される例を示す。しかし、I/O応答時間以外の性能を示す情報(例えば、単位時間当たりのI/O回数(IOPS)又はデータスループット等)が比較されてもよい。具体的には、ステップ830で取得したIOPSの値が、性能Sとして保持されているIOPSの値以上である場合、ステップ830で取得した現在の性能が性能S以上であると判定されてもよい。
ステップ832で現在の性能が性能S以上である場合(ステップ832でYes)、マネージャプログラム124は、論理ユニット状態情報128を参照して、先読みされる表又は索引のデータを格納している論理ユニットのディスクの回転状況が通常回転であるか否かを判定する。その結果、もし通常回転であれば、その論理ユニットのディスクの回転を低速回転にするディスク制御命令610を作成してストレージ装置140に送信する(ステップ834)。
なお、先読みされる表又は索引のデータを格納している論理ユニットは、ステップ814と同様にして特定される。ステップ834で送信されるディスク制御命令610の論理ユニット番号612には、特定された論理ユニットの番号が登録され、制御内容614には、「低速」が登録される。
ステップ834においてマネージャプログラム124が発行したディスク制御命令610を受信したストレージ装置140の制御プログラム154は、そのディスク制御命令610によって指定された論理ユニットに対応するディスク152を特定する。この特定は、ステップ814と同様にして実行される。
さらに、制御プログラム154は、ディスク制御命令610に従って、特定されたディスク152の回転を制御する。例えば、物理ディスク番号「0」、「1」及び「2」が付与されたディスク152が特定された場合、制御プログラム154は、これらのディスク152の回転を低速にする。
なお、これらのディスク152の回転が既に低速に設定されている場合、マネージャプログラム124は、それらのディスク152の回転数をさらに低速にするディスク制御命令610を送信してもよい。この場合、制御プログラム154は、これらのディスク152の回転をさらに低速にする。
次に、マネージャプログラム124は、その論理ユニットに対応する論理ユニット状態情報128のフィールド544を「低速」に更新する(ステップ836)。
ステップ832で現在の性能が性能S以上でない場合(ステップ832でNo)、マネージャプログラム124は、論理ユニット状態情報128を参照して、先読み対象の表又は索引のデータを記憶している論理ユニットのディスクの回転状況が低速回転であるか否かを判定する。その結果、もし低速回転であれば、その論理ユニットのディスクの回転を通常回転にするディスク制御命令610を作成してストレージ装置140に送信する(ステップ838)。
ステップ838においてマネージャプログラム124が発行したディスク制御命令610を受信したストレージ装置140の制御プログラム154は、そのディスク制御命令610によって指定された論理ユニットに対応するディスク152を特定する。この特定は、ステップ814と同様にして実行される。
さらに、制御プログラム154は、ディスク制御命令610に従って、特定されたディスク152の回転を制御する。例えば、物理ディスク番号「0」、「1」及び「2」が付与されたディスク152が特定された場合、制御プログラム154は、これらのディスク152の回転を通常の回転数に戻す。
あるいは、制御プログラム154は、これらのディスク152の回転数を、現在設定されている回転数より高く、通常の回転数より低い回転数に設定してもよい。
次に、マネージャプログラム124は、その論理ユニットに対応する論理ユニット状態情報128のフィールド544を「通常」に更新する(ステップ840)。
ステップ836又はステップ840を実行した後、マネージャプログラム124は、DB情報取得プログラム122からDB処理終了情報650を受信したか否かを判定する(ステップ842)。
マネージャプログラム124は、DB処理終了情報650を受信していない場合(ステップ842でNo)、ステップ830以降の処理を繰り返す。
DB処理終了情報650を受信した場合(ステップ842でYes)、マネージャプログラム124は、論理ユニット状態情報128を参照して、先読みされる表又は索引のデータを記憶している論理ユニットのディスクが低速回転であるか否かを判定する。その結果、もし低速回転であれば、その論理ユニットのディスクの回転を通常回転にするディスク制御命令610を作成してストレージ装置140に送信する(ステップ844)。さらに、マネージャプログラム124は、その論理ユニットに対応する論理ユニット状態情報128のフィールド544を「通常」に更新し(ステップ846)、ステップ806のDB処理情報受信待ちループに戻る。
以上の手順によって、DBMS118がアクセスする可能性があるデータ量がストレージ装置140の空きメモリ量よりも大きいために、全データをメモリ150に書き込むことができない場合でも、ディスク152の回転を低速にすることで、ストレージ装置140の消費電力を削減することが可能となる。DBMS118がこれからアクセスしようとするデータ(言い換えると、DBMS118がアクセスする可能性があるデータの少なくとも一部)の先読みを実行することによって、アクセス性能を改善することができる。この先読みによる性能改善によって、ディスクの低速回転に起因する性能の低下を相殺することができる。システム管理者は、必要な性能を性能要件(性能S)として任意に設定することができる。この性能要件が満たされる範囲内で可能な限りストレージ装置140のディスク152の回転を低速にすることで、必要な性能を維持しながらストレージ装置140の消費電力を削減することが可能となる。
以上、本発明の実施形態によれば、DBMSが稼動するDBサーバと、DBのデータを格納するストレージ装置とがネットワークによって接続されたシステムにおいて、DBサーバ上、又は同じネットワークに接続されて別のサーバ上、あるいはストレージ装置上で、マネージャプログラムを実行する。マネージャプログラムは、DBMSが管理するDBスキーマのストレージ装置上の記憶位置に関する情報と、DBMSが実行するDB処理に関する情報と、DBMSがDB処理を実行する際に行われるDBのデータへのアクセスに関する情報とに基づいて次の処理を実行する。
マネージャプログラムは、まずDBMSが実行するDB処理でこれからアクセスするDBスキーマ(すなわち、表又は索引等)を特定してそれらの全データ量を算出する。算出された全データ量がストレージ装置の空きメモリ量よりも小さい場合、マネージャプログラムは、対象となる全データの先読み命令をストレージ装置に発行する。ストレージ装置のメモリ上への先読みが完了した後、マネージャプログラムは、対象データを格納しているディスクの回転を停止する(又は低速回転にする)指示をストレージ装置に発行する。ストレージ装置はその指示に従って、該当するディスクの回転を制御する。
DBMSが実行するDB処理でこれからアクセスされるDBスキーマの全データ量がストレージ装置の空きメモリ量よりも大きい場合、マネージャプログラムは、特許文献2記載の先読み処理を実行する。さらに、マネージャプログラムは、DBサーバの性能を監視し、設定された性能要件内であれば、対象データを格納しているディスクの回転を低速回転にする指示をストレージ装置に発行する。該当のディスクを低速回転にしている間に、DBサーバの性能が設定された性能要件を超えた場合、マネージャプログラムは、該当のディスクの回転を通常回転にする指示をストレージ装置に発行する。ストレージ装置は、それらの指示に従って、該当するディスクの回転を制御する。
その結果、必要な性能が維持される範囲で、ストレージ装置の消費電力が削減される。
本発明の実施形態のDBシステムの構成を示すブロック図である。 本発明の実施形態のストレージ装置の制御プログラムが保持する記憶領域管理情報の構成例を示した説明図である。 本発明の実施形態のストレージ装置の制御プログラムが保持するディスク回転管理情報の構成例を示した説明図である。 本発明の実施形態のストレージ装置の制御プログラムが保持するメモリ管理情報の構成例を示した説明図である。 本発明の実施形態のDBサーバのOSが保持するローデバイス情報の構成例を示した説明図である。 本発明の実施形態のDBMSが保持するDBMS管理情報の構成例を示した説明図である。 本発明の実施形態のDBシステムファイル情報の構成例を示した説明図である。 本発明の実施形態のデータ領域情報の構成例を示した説明図である。 本発明の実施形態のDBスキーマ情報の構成例を示した説明図である。 本発明の実施形態のマネージャプログラムが保持するDB処理管理情報の構成例を示した説明図である。 本発明の実施形態のDBスキーマ位置情報の構成例を示した説明図である。 本発明の実施形態のDB処理情報の構成例を示した説明図である。 本発明の実施形態のマネージャプログラムが保持する論理ユニット状態情報の構成例を示した説明図である。 本発明の実施形態の空きメモリ量通知応答の構成例を示した説明図である。 本発明の実施形態のマネージャプログラムがストレージ装置に発行するディスク制御命令の構成例を示した説明図である。 本発明の実施形態のDB情報取得プログラムがマネージャプログラムに送信するDB処理実行情報の構成例を示した説明図である。 本発明の実施形態のDB処理終了情報の構成例を示した説明図である。 本発明の実施形態のDB情報取得送信処理の手順例を示したフロー図である。 本発明の実施形態の消費電力削減処理の手順例を示したフロー図の第1の部分である。 本発明の実施形態の消費電力削減処理の手順例を示したフロー図の第2の部分である。
符号の説明
100 データベース(DB)サーバ
104、146、174 CPU
110、150、180 メモリ
114 OS
116 ローデバイス情報
118 データベース管理システム(DBMS)
120 DBMS管理情報
122 DB性能取得プログラム
123 性能情報
124 マネージャプログラム
126 DB処理管理情報
128 論理ユニット状態情報
129 性能要件情報
143 コントローラ
152 ディスク
154 制御プログラム
156 記憶領域管理情報
158 ディスク回転管理情報
160 メモリ管理情報
170 計算機

Claims (15)

  1. 計算機と、ネットワークを介して前記計算機に接続されるストレージ装置と、を備える計算機システムであって、
    前記計算機は、
    前記ネットワークに接続される第1インタフェースと、前記第1インタフェースに接続される第1プロセッサと、前記第1プロセッサに接続される第1メモリと、を備え、
    前記第1プロセッサが前記第1メモリに格納されたデータベース管理システムを実行することによってデータベースサーバとして動作し、
    前記ストレージ装置は、前記計算機によって書き込まれたデータを格納する複数のディスク装置と、前記複数のディスク装置を制御するコントローラと、を備え、
    前記コントローラは、前記ネットワークに接続される第2インタフェースと、前記第2インタフェースに接続される第2プロセッサと、前記第2プロセッサに接続される第2メモリと、を備え、
    前記複数のディスク装置の少なくとも一つには、前記計算機によって書き込まれたデータベーススキーマのデータが格納され、
    前記計算機システムは、さらに管理部を備え、
    前記管理部は、
    前記前記計算機が受信したクエリに基づいて、これからアクセスすべき前記データベーススキーマを特定し、
    前記特定されたデータベーススキーマのデータの少なくとも一部を前記ディスク装置から読み出して、前記読み出されたデータを前記第2メモリに書き込む指示を前記ストレージ装置に送信し、
    前記特定されたデータベーススキーマのデータが格納された前記ディスク装置の回転数を制御するための制御指示を前記ストレージ装置に送信し、
    前記コントローラは、前記制御指示に基づいて、前記回転数を制御される前記ディスク装置を特定し、前記特定されたディスク装置の回転数の減少、又は、前記特定されたディスク装置の回転の停止を実行することを特徴とする計算機システム。
  2. 前記管理部は、
    前記特定されたデータベーススキーマの全データ量が前記メモリの空き容量より大きくない場合、前記特定されたデータベーススキーマの全データを前記ディスク装置から読み出して、前記読み出されたデータを前記メモリに書き込み、
    前記特定されたデータベーススキーマのデータが格納された前記ディスク装置の回転を停止させるための前記制御指示を前記ストレージ装置に送信することを特徴とする請求項1に記載の計算機システム。
  3. 前記管理部は、
    前記特定されたデータベーススキーマの全データ量が前記メモリの空き容量より大きい場合、前記特定されたデータベーススキーマのデータの一部を前記ディスク装置から読み出して、前記読み出されたデータを前記メモリに書き込み、
    前記計算機の性能を示す値を取得し、
    前記取得された性能を示す値が所定の閾値より高い性能を示す場合、前記特定されたデータベーススキーマのデータが格納された前記ディスク装置の回転数を減少させるための前記制御指示を前記ストレージ装置に送信することを特徴とする請求項1に記載の計算機システム。
  4. 前記管理部は、
    前記回転制御部が前記ディスク装置の回転数を減少させる指示を前記ストレージ装置に送信した後、さらに前記計算機の性能を示す値を取得し、
    前記取得された性能を示す値が所定の閾値より高い性能を示す場合、前記特定されたデータベーススキーマのデータが格納された前記ディスク装置の回転数をさらに減少させるための前記制御指示を前記ストレージ装置に送信することを特徴とする請求項3に記載の計算機システム。
  5. 前記管理部は、前記取得された性能を示す値が所定の閾値より低い性能を示す場合、前記特定されたデータベーススキーマのデータが格納された前記ディスク装置の回転数を増加させるための前記制御指示を前記ストレージ装置に送信し、
    前記コントローラは、前記制御指示に従って、前記ディスク装置の回転数を増加させることを特徴とする請求項3に記載の計算機システム。
  6. 前記管理部は、前記ストレージ装置に空きメモリ量通知命令を送信し、
    前記ストレージ装置の前記コントローラは、前記空きメモリ量通知命令に従って、前記第2メモリの空き容量を示す値を前記管理部に送信することを特徴とする請求項2に記載の計算機システム。
  7. 前記管理部は、前記第1プロセッサが前記第1メモリに格納されたプログラムを実行することによって実現されることを特徴とする請求項1に記載の計算機システム。
  8. 前記管理部は、前記第2プロセッサが前記第2メモリに格納されたプログラムを実行することによって実現されることを特徴とする請求項1に記載の計算機システム。
  9. 前記計算機システムは、さらに、前記ネットワークを介して前記計算機及び前記ストレージ装置に接続される第2計算機を備え、
    前記第2計算機は、前記ネットワークに接続される第3インタフェースと、前記第3インタフェースに接続される第3プロセッサと、前記第3プロセッサに接続される第3メモリと、を備え、
    前記管理部は、前記第3プロセッサが前記第3メモリに格納されたプログラムを実行することによって実現されることを特徴とする請求項1に記載の計算機システム。
  10. 計算機と、ネットワークを介して前記計算機に接続されるストレージ装置と、を備える計算機システムを制御する方法であって、
    前記計算機は、
    前記ネットワークに接続される第1インタフェースと、前記第1インタフェースに接続される第1プロセッサと、前記第1プロセッサに接続される第1メモリと、を備え、
    前記第1プロセッサが前記第1メモリに格納されたデータベース管理システムを実行することによってデータベースサーバとして動作し、
    前記ストレージ装置は、前記計算機によって書き込まれたデータを格納する複数のディスク装置と、前記複数のディスク装置を制御するコントローラと、を備え、
    前記コントローラは、前記ネットワークに接続される第2インタフェースと、前記第2インタフェースに接続される第2プロセッサと、前記第2プロセッサに接続される第2メモリと、を備え、
    前記複数のディスク装置の少なくとも一つには、前記計算機によって書き込まれたデータベーススキーマのデータが格納され、
    前記方法は、
    前記計算機が受信したクエリに基づいて、これからアクセスすべき前記データベーススキーマを特定する第1手順と、
    前記特定されたデータベーススキーマのデータの少なくとも一部を前記ディスク装置から読み出して、前記読み出されたデータを前記第2メモリに書き込む指示を前記ストレージ装置に送信する第2手順と、
    前記特定されたデータベーススキーマのデータが格納された前記ディスク装置の回転数を制御するための制御指示を前記ストレージ装置に送信する第3手順と、
    前記制御指示に基づいて、前記回転数を制御される前記ディスク装置を特定し、前記特定されたディスク装置の回転数の減少、又は、前記特定されたディスク装置の回転の停止を実行する第4手順と、を含むことを特徴とする方法。
  11. 前記第2手順は、前記特定されたデータベーススキーマの全データ量が前記メモリの空き容量より大きくない場合、前記特定されたデータベーススキーマの全データを前記ディスク装置から読み出して、前記読み出されたデータを前記メモリに書き込む手順を含み、
    前記第3手順は、前記特定されたデータベーススキーマのデータが格納された前記ディスク装置の回転を停止させるための前記制御指示を前記ストレージ装置に送信する手順を含むことを特徴とする請求項10に記載の方法。
  12. 前記方法は、さらに、前記計算機の性能を示す値を取得する第5手順を含み、
    前記第2手順は、前記特定されたデータベーススキーマの全データ量が前記メモリの空き容量より大きい場合、前記特定されたデータベーススキーマのデータの一部を前記ディスク装置から読み出して、前記読み出されたデータを前記メモリに書き込む手順を含み、
    前記第3手順は、前記第5手順によって取得された性能を示す値が所定の閾値より高い性能を示す場合、前記特定されたデータベーススキーマのデータが格納された前記ディスク装置の回転数を減少させるための前記制御指示を前記ストレージ装置に送信する手順を含むことを特徴とする請求項10に記載の方法。
  13. 前記方法は、前記回転制御部が前記ディスク装置の回転数を減少させる指示を前記ストレージ装置に送信した後、さらに前記計算機の性能を示す値を取得する第6手順をさらに含み、
    前記第3手順は、前記第6手順によって取得された性能を示す値が所定の閾値より高い性能を示す場合、前記特定されたデータベーススキーマのデータが格納された前記ディスク装置の回転数をさらに減少させるための前記制御指示を前記ストレージ装置に送信する手順を含むことを特徴とする請求項12に記載の方法。
  14. 前記第3手順は、前記第5手順によって取得された性能を示す値が所定の閾値より低い性能を示す場合、前記特定されたデータベーススキーマのデータが格納された前記ディスク装置の回転数を増加させるための前記制御指示を前記ストレージ装置に送信する手順を含み、
    前記第4手順は、前記制御指示に従って、前記ディスク装置の回転数を増加させる手順を含むことを特徴とする請求項12に記載の計算機システム。
  15. 前記方法は、さらに、
    前記ストレージ装置に空きメモリ量通知命令を送信する第7手順と、
    前記空きメモリ量通知命令に従って、前記ストレージ装置が前記第2メモリの空き容量を示す値を送信する第8手順と、を含むことを特徴とする請求項11に記載の方法。
JP2007276132A 2007-10-24 2007-10-24 先読みを用いたストレージ消費電力削減方法及びその方法を用いた計算機システム Expired - Fee Related JP5020774B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007276132A JP5020774B2 (ja) 2007-10-24 2007-10-24 先読みを用いたストレージ消費電力削減方法及びその方法を用いた計算機システム
US12/007,936 US8036076B2 (en) 2007-10-24 2008-01-17 Method of reducing storage power consumption by use of prefetch and computer system using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007276132A JP5020774B2 (ja) 2007-10-24 2007-10-24 先読みを用いたストレージ消費電力削減方法及びその方法を用いた計算機システム

Publications (3)

Publication Number Publication Date
JP2009104440A true JP2009104440A (ja) 2009-05-14
JP2009104440A5 JP2009104440A5 (ja) 2010-02-25
JP5020774B2 JP5020774B2 (ja) 2012-09-05

Family

ID=40584227

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007276132A Expired - Fee Related JP5020774B2 (ja) 2007-10-24 2007-10-24 先読みを用いたストレージ消費電力削減方法及びその方法を用いた計算機システム

Country Status (2)

Country Link
US (1) US8036076B2 (ja)
JP (1) JP5020774B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016184371A (ja) * 2015-03-27 2016-10-20 富士通株式会社 ストレージ制御装置,ストレージ装置およびストレージ制御プログラム

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011043769A1 (en) * 2009-10-07 2011-04-14 Hewlett-Packard Development Company, L.P. Notification protocol based endpoint caching of host memory
US20150205721A1 (en) * 2014-01-22 2015-07-23 Advanced Micro Devices, Inc. Handling Reads Following Transactional Writes during Transactions in a Computing Device
US10289326B2 (en) 2015-09-14 2019-05-14 HGST Netherlands, B.V. Optimized data layout for object store system
US10073625B2 (en) * 2016-01-06 2018-09-11 HGST Netherlands B.V. Variable-RPM hard disk drive control
US10346044B2 (en) * 2016-04-14 2019-07-09 Western Digital Technologies, Inc. Preloading of directory data in data storage devices
US20230169008A1 (en) * 2021-11-30 2023-06-01 Red Hat, Inc. Managing prefetching operations for drives in distributed storage systems

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09244818A (ja) * 1996-02-20 1997-09-19 Internatl Business Mach Corp <Ibm> 電力節約型コンピュータ
JP2004087052A (ja) * 2002-08-28 2004-03-18 Sony Corp 映像音声記録再生装置とその制御方法
JP2005157710A (ja) * 2003-11-26 2005-06-16 Hitachi Ltd ドライブの稼働時間を抑止するディスクアレイ
JP2005258735A (ja) * 2004-03-11 2005-09-22 Hitachi Ltd Db連携プリフェッチシステム
JP2007293479A (ja) * 2006-04-24 2007-11-08 Hitachi Ltd ストレージシステムの消費電力を低減する計算機システム及び方法
JP2007293937A (ja) * 2006-04-21 2007-11-08 Hitachi Ulsi Systems Co Ltd ディスク記録再生装置および記録再生制御方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2528585B2 (ja) * 1992-04-20 1996-08-28 インターナショナル・ビジネス・マシーンズ・コーポレイション ハ―ドディスク駆動制御方法および装置、およびパ―ソナルコンピュ―タ
US6006289A (en) * 1996-11-12 1999-12-21 Apple Computer, Inc. System for transferring data specified in a transaction request as a plurality of move transactions responsive to receipt of a target availability signal
US6633891B1 (en) * 1998-11-24 2003-10-14 Oracle International Corporation Managing replacement of data in a cache on a node based on caches of other nodes
JP4325817B2 (ja) 1999-04-05 2009-09-02 株式会社日立製作所 ディスクアレイ装置
JP2001209954A (ja) * 2000-01-24 2001-08-03 Matsushita Electric Ind Co Ltd 光ディスク装置、及び光ディスク装置の制御方法
JP2001222380A (ja) * 2000-02-07 2001-08-17 Hitachi Ltd 外部記憶装置とそれを備えた情報処理システム
US7139768B1 (en) * 2000-05-04 2006-11-21 Unisys Corporation OLE DB data access system with schema modification features
US7143203B1 (en) * 2002-04-26 2006-11-28 Advanced Micro Devices, Inc. Storage device control responsive to operational characteristics of a system
JP4124331B2 (ja) * 2002-09-17 2008-07-23 株式会社日立製作所 Dbms向け仮想ボリューム作成・管理方法
WO2004036344A2 (en) * 2002-10-15 2004-04-29 Active-Base Ltd. System and method for the optimization of database
US7284014B2 (en) * 2003-04-07 2007-10-16 Hitachi, Ltd. Pre-fetch computer system
US6981123B2 (en) * 2003-05-22 2005-12-27 Seagate Technology Llc Device-managed host buffer
US20050174678A1 (en) * 2003-12-24 2005-08-11 Matsushita Electric Industrial Co., Ltd Stepping power consumption levels in a hard disk drive to maximize performance while minimizing power consumption
US20070067337A1 (en) * 2005-09-22 2007-03-22 Morris John M Method of managing retrieval of data objects from a storage device
US20070174290A1 (en) * 2006-01-19 2007-07-26 International Business Machines Corporation System and architecture for enterprise-scale, parallel data mining
US7594073B2 (en) * 2006-09-29 2009-09-22 Intel Corporation Method and apparatus for caching memory content on a computing system to facilitate instant-on resuming from a hibernation state
JP4977532B2 (ja) * 2007-06-01 2012-07-18 株式会社日立製作所 ストレージシステムの電力消費を制御するデータベース管理システム
US8010743B2 (en) * 2008-12-12 2011-08-30 Lsi Corporation Automatic raid volume generation and migration based on application type

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09244818A (ja) * 1996-02-20 1997-09-19 Internatl Business Mach Corp <Ibm> 電力節約型コンピュータ
JP2004087052A (ja) * 2002-08-28 2004-03-18 Sony Corp 映像音声記録再生装置とその制御方法
JP2005157710A (ja) * 2003-11-26 2005-06-16 Hitachi Ltd ドライブの稼働時間を抑止するディスクアレイ
JP2005258735A (ja) * 2004-03-11 2005-09-22 Hitachi Ltd Db連携プリフェッチシステム
JP2007293937A (ja) * 2006-04-21 2007-11-08 Hitachi Ulsi Systems Co Ltd ディスク記録再生装置および記録再生制御方法
JP2007293479A (ja) * 2006-04-24 2007-11-08 Hitachi Ltd ストレージシステムの消費電力を低減する計算機システム及び方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016184371A (ja) * 2015-03-27 2016-10-20 富士通株式会社 ストレージ制御装置,ストレージ装置およびストレージ制御プログラム

Also Published As

Publication number Publication date
JP5020774B2 (ja) 2012-09-05
US20090112894A1 (en) 2009-04-30
US8036076B2 (en) 2011-10-11

Similar Documents

Publication Publication Date Title
JP4824458B2 (ja) ストレージシステムの消費電力を低減する計算機システム及び方法
JP5020774B2 (ja) 先読みを用いたストレージ消費電力削減方法及びその方法を用いた計算機システム
JP6113199B2 (ja) データを管理する方法、コンピュータ・プログラム、およびシステム
CN101252589B (zh) 数据缓存装置和采用该装置的网络存储系统及缓存方法
US9244980B1 (en) Strategies for pushing out database blocks from cache
JP4508608B2 (ja) 統合キャッシュを備えた記憶装置アダプタ
US20030088591A1 (en) Data storage device with deterministic caching and retention capabilities to effect file level data transfers over a network
US9182912B2 (en) Method to allow storage cache acceleration when the slow tier is on independent controller
JP2004185349A (ja) ジャーナルログを利用した更新データ書込方法
JP2007011523A (ja) データの先読み方法及び計算機システム
KR20090032821A (ko) 하드디스크 드라이브의 선반입 방법, 이에 적합한 기록매체 그리고 이에 적합한 장치
US7376786B2 (en) Command stack management in a disk drive
WO2017126003A1 (ja) 複数種類のメモリデバイスを含む計算機システム及び方法
US20120047330A1 (en) I/o efficiency of persistent caches in a storage system
US8291125B2 (en) Speculative read-ahead for improving system throughput
JP2000330729A (ja) オンラインバックアップ機能を持つディスクアレイシステム
JP5246872B2 (ja) ストレージシステムおよびストレージ管理方法
JP2013206009A (ja) ドライブ制御装置及びストレージシステム及びドライブ制御方法
JP2006018602A (ja) 3.5インチ定形型ディスク形状を持ったデータトランスミッション装置
JP2015158902A (ja) メモリおよびコントローラを備える装置およびデータ記憶装置を備える装置
JP2006185335A (ja) 情報処理装置及びこの情報処理装置の制御方法
JP4486384B6 (ja) Db連携プリフェッチシステム
JP4486384B2 (ja) Db連携プリフェッチシステム
US9304918B2 (en) Computer system and cache control method
WO2016170632A1 (ja) 計算機及び電源制御方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100112

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120223

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120306

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120309

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120420

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120515

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120613

R150 Certificate of patent or registration of utility model

Ref document number: 5020774

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150622

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees