JP2008257572A - 論理区画に動的に資源割り当てを行うストレージシステム及びストレージシステムの論理分割方法 - Google Patents

論理区画に動的に資源割り当てを行うストレージシステム及びストレージシステムの論理分割方法 Download PDF

Info

Publication number
JP2008257572A
JP2008257572A JP2007100563A JP2007100563A JP2008257572A JP 2008257572 A JP2008257572 A JP 2008257572A JP 2007100563 A JP2007100563 A JP 2007100563A JP 2007100563 A JP2007100563 A JP 2007100563A JP 2008257572 A JP2008257572 A JP 2008257572A
Authority
JP
Japan
Prior art keywords
unit
processor
data transfer
ratio
storage system
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
Application number
JP2007100563A
Other languages
English (en)
Inventor
Kentaro Shimada
健太郎 島田
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 JP2007100563A priority Critical patent/JP2008257572A/ja
Priority to US12/015,573 priority patent/US7840775B2/en
Publication of JP2008257572A publication Critical patent/JP2008257572A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0873Mapping of cache memory to specific storage devices or parts thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/26Using a specific storage system architecture
    • G06F2212/261Storage comprising a plurality of storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/28Using a specific disk cache architecture
    • G06F2212/283Plural cache memories

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)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

【課題】ストレージシステムの有する資源の割当量を動的に変化させること。
【解決手段】ホストIF部101と、ドライブIF部102と、ディスクドライブ103と、データ転送エンジン部105と、キャッシュメモリ107および制御プロセッサ部109を含む資源を分割対象の資源として、制御プロセッサ部109のプロセッサ301は、分割対象の資源を論理的に分割して、複数の論理区画を作成し、各論理区画に分割する割合を、ホスト計算機からのアクセス量に応じて変化させるように、構成されている。
【選択図】図1

Description

本発明は、ストレージシステムに関し、特に、ストレージシステムにおける資源を論理区画に分割する技術に関する。
近年、ストレージシステムの導入コストや運用コストの削減を目的としたストレージ・コンソリデーションのニーズが高まっている。今後、ストレージ・コンソリデーションの技術によって、1台のストレージシステムに独立した複数の部署や企業のデータが格納されることが予想される。この場合、1台のストレージシステム内で管理や性能の干渉が発生しないよう、1台のストレージシステムを複数の仮想ストレージシステムとして提供できる技術、具体的には、ストレージシステムの論理パーティション技術が求められる。ストレージシステムに論理パーティション(論理区画)を設定する場合、IO(Input Output)性能(データ転送能力、トランザクション処理能力)やキャッシュ容量については、静的に割当てる方法が提案されている(特許文献1参照)。
特開2006−244098号公報
従来技術では、ストレージシステムに論理パーティションを設定するに際して、割当量を変更することは行っているが、予めスケジュールを決めたり、ホスト計算機から特別なコマンドを入力したりする必要があり、オンライン中に動的に資源の割当量を変更することは困難であった。このため、IO性能やキャッシュ容量については、初めから最大必要になる資源量を割当てることが余儀なくされていた。すなわち、システムの運用当初やホスト計算機からの負荷の変動がある場合にも、初めから各論理パーティションに対して必要最大の資源量をそれぞれ割当てることが必要であり、トータルとして、使用されない資源があっても有効に活用できないことが危惧される。
そこで、この発明は、ストレージシステムの有する資源の割当量を動的に変化させることを目的とするものである。
前記目的を達成するために、本発明は、ストレージシステムの有する資源であって、上位計算機のアクセスの対象となる資源の分割割合を上位計算機からのアクセスに応じて動的に変化させることを特徴とするものである。
すなわち、本発明は、複数の記憶デバイスを備える記憶装置と、上位計算機からのデータの入出力要求に応答して前記記憶装置に対するデータ入出力処理を行う複数のプロセッサと、各々のプロセッサと前記記憶装置とをそれぞれ接続してデータの入出力を制御する伝送制御装置と、を備えているストレージシステムにおいて、前記プロセッサは、前記上位計算機のアクセスの対象となる資源を論理的に分割して複数の論理区画を作成し、前記各論理区画に分割する割合を前記上位計算機からのアクセス量に応じて変化させるように構成されてなる、ことを特徴とする。
本発明の好適な形態は、さらに以下の特徴を備える。前記プロセッサは、前記各論理区画が使用している割合に応じて前記各論理区画に対する分割割合を変化させる、ことを特徴とする。前記プロセッサは、前記各論理区画が使用している割合を観測し、この観測結果を基に前記使用している割合が予め定める設定範囲を超えたときには、前記使用している割合に対し予め定める一定の比率だけ新たに分割する量を追加する、ことを特徴とする。前記プロセッサは、前記各論理区画が使用している割合を観測し、この観測結果を基に前記使用している割合が予め定める設定範囲を下回ったときには、前記使用している割合に対して予め定める一定の比率だけ分割する量を削減する、ことを特徴とする。前記資源は、前記記憶装置と前記プロセッサおよび前記伝送制御装置を含む、ことを特徴とする。
また他の発明は、上位計算機と接続する2個以上のホストIF部と、2個以上のディスクドライブと、前記ディスクドライブに接続し、前記ディスクドライブを制御する2個以上のドライブIF部と、前記ディスクドライブから読み込みまたは前記ディスクドライブへ書き込むデータを一時的に蓄えるキャッシュメモリと、前記ホストIF部と前記キャッシュメモリまたは前記ドライブIF部と前記キャッシュメモリの間でデータの転送を行う2個以上のデータ転送エンジン部と、 前記ホストIF部と前記ディスクIF部と前記データ転送エンジン部の間を接続する伝送スイッチと、前記データ転送エンジン部と前記キャッシュメモリを接続するキャッシュスイッチと、2個以上の制御プロセッサと、前記データ転送エンジンと前記制御プロセッサの間の制御信号線を切り替える制御信号スイッチを備えるストレージシステムであって、前記制御プロセッサは、前記上位計算機のアクセスの対象となる資源を論理的に分割して複数の論理区画を作成し、前記各論理区画を独立に動作させるとともに、前記各論理区画に分割する割合を前記上位計算機からのアクセス量に応じて変化させるように構成されてなる、ことを特徴とする。
本発明の好適な形態においては、前記プロセッサは、前記各論理区画が使用している割合に応じて前記各論理区画に対する分割割合を変化させる、ことを特徴とする。前記プロセッサは、前記各論理区画が使用している割合を観測し、この観測結果を基に前記使用している割合が予め定める設定範囲を超えたときには、前記使用している割合に対し予め定める一定の比率だけ新たに分割する量を追加する、ことを特徴とする。前記プロセッサは、前記各論理区画が使用している割合を観測し、この観測結果を基に前記使用している割合が予め定める設定範囲を下回ったときには、前記使用している割合に対し予め定める一定の比率だけ分割する量を削減する、ことを特徴とする。前記資源は、前記ホストIF部と、前記ディスクドライブと、前記キャッシュメモリと、前記データ転送エンジン部及び前記制御プロセッサを含む、ことを特徴とする。
本発明によれば、ストレージシステムの有する資源の分割割合を示す割当量を動的に変化させることができる。
次に、本発明の実施形態を、図面を用いて説明する。図1は、本発明の実施形態が適用されるストレージシステム1のブロック構成図である。
図1において、ストレージシステム1は、複数のホストIF(Interface)部101と、複数のドライブIF部102と、複数のディスクドライブ103と、伝送スイッチ104と、複数のデータ転送エンジン部105と、キャッシュスイッチ106と、複数のキャッシュメモリ107と、制御信号スイッチ108と、複数の制御プロセッサ部109を備えており、各ホストIF部101が通信ネットワーク2を介してホスト計算機(上位計算機)(図1中に図示していない)に接続されている。
各ホストIF部101は、通信ネットワーク2を介してホスト計算機とデータの授受を行うインターフェイス部として構成されており、伝送スイッチ104を介して各ドライブIF102と各データ転送エンジン部105に接続されている。各ドライブIF部102には、複数の記憶デバイスを構成する記憶装置としてのディスクドライブ103が接続されている。
伝送スイッチ104は、ホストIF部101とデータ転送エンジン部105間のデータ転送のスイッチングを行うとともに、ドライブIF部102とデータ転送エンジン部105間のデータ転送のスイッチングを行うように構成されている。
各データ転送エンジン部105は、キャッシュスイッチ106を介して各キャッシュメモリ107に接続されているとともに、制御信号スイッチ108を介して各制御プロセッサ部109に接続されている。データ転送エンジン部105は、各キャッシュメモリ107とホストIF部101間のデータ転送を、キャッシュスイッチ106を介して行うとともに、キャッシュメモリ107とドライブIF102との間のデータ転送を伝送スイッチ104またはキャッシュスイッチ106を介して行うように構成されている。
具体的には、データ転送エンジン部105は、図2に示すように、キャッシスイッチ106を介してキャッシュメモリ107に対するデータの読み書きを制御するDMA(Direct Memory Access)制御部201と、伝送スイッチ104に対するデータの転送を制御する転送制御部202と、転送制御部202と送受するデータをキャッシュスイッチ106を介してキャッシュメモリ107に転送するため、一時的に格納する転送バッファ203を備えて構成されている。
キャッシュスイッチ106は、各データ転送エンジン部105と各キャッシュメモリ107とを結ぶ接続経路を切り替えるスイッチとして構成されている。キャッシュメモリ107は、ディスクドライブ103から読み込んだデータまたはディスクドライブ103へ書き込むためのデータを一時的に蓄える記憶デバイスとして構成されている。制御信号スイッチ108は、各データ転送エンジン部105と各制御プロセッサ部109との間の制御信号のスイッチングを行うように構成されている。
制御プロセッサ部109は、図3に示すように、プログラムにしたがって各種の演算処理を行うとともに、各種の制御を行うプロセッサ(制御プロセッサ)301と、各種処理プログラムや各種データを格納するプロセッサメモリ302と、制御信号スイッチ108を介して制御信号の授受を制御するためのIO制御IF303を備えて構成されている。
各制御プロセッサ部109は、各データ転送エンジン部105を制御するとともに、ホストIF部101・キャッシュメモリ107間のデータ転送やドライブIF102・キャッシュメモリ107間のデータ転送を制御し、さらに、ストレージシステム1の有する資源であって、ホスト計算機のアクセスの対象となる資源を論理的に分割して複数の論理区画(論理パーティション)に分け、各論理区画を仮想的なストレージシステムとして動作させるようになっている。
この際、プロセッサ301は、ホストIF部101、ドライブIF部102、ディスクドライブ103、データ転送エンジン部105、キャッシュメモリ107、プロセッサ301を含む資源を論理的に分割して論理区画を作成し、各論理区画に分割する割合を、ホスト計算機からのアクセス量に応じて変化させることとしている。例えば、プロセッサ301は、各論理区画が使用している割合に応じて各論理区画に対する分割割合を変化させることとしている。このとき、プロセッサ301は、各論理区画が使用している割合を観測し、この観測結果を基に、使用している割合が予め定める設定範囲を超えたときには一定の比率だけ新たに分割量を追加し、使用している割合が予め定める設定範囲を下回ったときには一定の比率だけ分割する量を削減することとしている。
ストレージシステム1の有する資源を論理的に分割して、複数の論理区画(論理パーティション)に分けるに際しては、資源割当制御を行うための制御プログラムをハイパバイザと呼び、各プロセッサ301上で実行することとしている。
例えば、図4(a)に示すように、プロセッサ301をプロセッサa〜xで構成し、各論理区画で動作するストレージ制御プログラムが組込み型でOS(Operating System)がない場合には、資源割当制御を行うためのハイパバイザは、直接ハードウエアを制御するドライバプログラムを呼び出して、資源を構成するハードウエアを操作することになる。すなわち、ハイパバイザを用いて資源の論理分割を行う場合、ハイパバイザは、各論理区画のストレージ制御プログラムに対して、その論理区画に割当てられたハードウエアを管理し、それぞれのストレージ制御プログラムからの要求に応じて、割当てられたハードウエアの当該部分を制御するようになっている。
また、図4(b)に示すように、各論理区画で動作するストレージ制御プログラムにOSがある場合、各論理区画において、ストレージ制御プログラムとハイパバイザとの間にOSが入ることになる。ストレージ制御プログラムは,ストレージハードウェアの制御のためにOSを呼び出す。OSは、ストレージ制御プログラムからの要求内容を処理して、ハードウエアを直接制御するドライバプログラムの代りにハイパバイザを呼び出すことになる。このとき、ドライバプログラムの役割をハイパバイザが行うことになる。即ち、ハイパバイザは各OSにはドライバプログラムの役割を行いながら各論理区画への資源割り当て制御を行い,さらにハードウエアを制御するためにハイパバイザ内でドライバプログラムを呼び出す。
次に、本発明に係る資源割当・解放を行うときの方法を図5のフローチャートにしたがって説明する。この処理の対象となる資源の各論理区画に対する割合(割当量)は、例えば、キャッシュメモリ107の各論理区画への割当容量、データ転送エンジン部105の各論理区画への割当量、例えば、使用個数とそれぞれの使用時間割合、制御プロセッサ部109の各論理区画への割当量、例えば、使用プロセッサ数、各プロセッサの使用時間割合であり、資源を各論理区画に分割する一連の動作は、ハイパバイザの処理によって実現される。
まず、ハイパバイザは、各パーティションのストレージ装置としての資源使用量として、IO制御資源に関するトランザクション性能、スループット性能を観測するとともに、キャッシュ容量を観測し(S501)、各論理パーティション(論理区画)に割当てた資源量と各論理パーティションの資源使用量とを比較し(S502)、両者の間に余裕があるか、例えば、10%程度の余裕があるか否かの判定を行う(S503)。
ステップS503において、余裕ありと判定したときには、ハイパバイザは、次に、大きな余裕、例えば、50%ぐらいの余裕があるか否かを判定し(S504)、大きな余裕がないときには、このルーチンでの処理を終了し、大きな余裕があるときには、余裕のある資源を解放して、資源プールに戻し(S505)、このルーチンでの処理を終了する。すなわち、ステップS504、505においては、資源割当量と解放すべき量との間に差があるときには、一旦割当てた資源を、資源使用量の小さな変動ですぐ解放することなく、割当・開放の制御オーバヘッドを減少させることとしている。
一方、ステップS503において、余裕ないと判定したときには、ハイパバイザは、各パーティション毎に、それぞれのユーザボリュームに設定された設定資源量の合計と各パーティションに割当てた資源量とを比較し(S506)、設定資源量が割当量よりも大きいか否かを判定する(S507)。このとき、設定資源量が割当量よりも大きいときには、ハイパバイザは、資源プールに資源があるか否かの判定を行い(S508)、資源プールに資源があるときには、資源プールから新たな資源を割当て(S509)、資源プールに余裕があるか否かを判定し(S510)、資源プールに余裕があるときにはこのルーチンでの処理を終了し、資源プールに余裕がないときには、資源枯渇予告を出力し(S511)、このルーチンでの処理を終了する。また、ステップS508で資源プールに資源が無いと判定したときには、ハイパバイザは、資源枯渇警告を出力し(S512)、このルーチンでの処理を終了する。
ここで、資源の割当または解放を行うに際しては、例えば、図6に示すように、最低割当量をbとし、1回の割当または解放の単位量をeとした場合、割当を行う余裕を現在の使用量+10%(1.1倍)とし、解放を行う大きな余裕を現在の使用量の2倍としたときに、使用している割合が設定範囲を超えたときには一定の比率だけ新たに分割する量を追加するときの特性は、グラフG1で表わされる。また、使用している割合が設定範囲を下回り、一定の比率だけ分割する量を削減するとき、例えば、現在の資源割当量が現在の資源割当量の1/2を切るときに、資源を1単位解放するときの特性は、グラフG2で表わされる。
また、資源の割当・解放を安定して行うに際して、最低の割当量をbとし、1回の資源の割当・解放の単位量eとし、資源の割当の契機となる余裕をα倍、資源の解放を行う大きな余裕をβ倍とするときには、次の関係が、
(b+e)<(b/α)β ∴(β/α)>(1+e/b)
成立する。
すなわち、新規の割当または解放が発生するのは、そのときの割当単位数をnとすれば、使用量が(b+ne)/αを超えれば、新たな割当が発生し、(b+ne)/βを下回れば新たな解放が行われる。安定した割当・解放が行われるためには、割当てた直後に解放が行われたり、解放した直後に割当が行われたりしない必要がある。したがって、
(b+ne)/α>(b+ne+e)/βまたは(b+ne)/β<(b+ne−e)/α
∴β/α>(b+ne+e)/(b+ne)(n=0,1,2・・・)またはβ/α>(b+ne)/(b+ne−e)(n=1,2,3,・・・)
上記各式で、nとして、右辺が最も大きくなる値を取れば、両式とも、 β/α>1+(e/b)となる。
なお、ここでは、各資源の1回当たりの割当・解放の単位eは、各資源ごとに定まる一定値であるとした。
本実施形態では、各パーティションの資源使用量と各パーティションに対する資源の割当量とを比較しながら、資源の割当・解放を行うようにしているので、ストレージシステム1の有する資源の分割割合を示す割当量を動的に変化させることができる。
次に、資源の割当・解放を行うときの他の方法を図7のフローチャートにしたがって説明する。ここでの処理も、ハイパバイザによって行われ、ステップS701〜S711までの処理は、ステップS501〜S511までの処理と同一であるので、ステップS712以降の処理についてのみ説明する。
ステップS708において資源プールに資源がないと判定したときに、ハイパバイザは、余裕のあるパーティションを検索し(S712)、余裕のあるパーティションがあるか否かを、例えば1.5倍の余裕のあるパーティションがあるか否かを判定し(S713)、ないときには資源枯渇警告を出力し(S714)、このルーチンでの処理を終了し、余裕があるときには、余裕のあるパーティションより資源を解放し(S715)、強制開放発生を出力し(S716)、ステップS708の処理に戻り、ステップS708からS716までの処理を繰り返す。
本実施形態では、各パーティションの資源使用量と各パーティションに対する資源の割当量とを比較しながら、資源の割当・解放を行うようにしているので、ストレージシステム1の有する資源の分割割合を示す割当量を動的に変化させることができる。また、資源プールに資源が無いと判定したときでも、余裕のパーティションを検索し、余裕のあるパーティションがあるときには、余裕のあるパーティションより資源を解放し、解放されたパーティションに新たな資源を割当るようにしているので、資源をより有効に活用することができる。
次に、複数の資源を動的に割当てるときの方法を図8のフローチャートにしたがって説明する。この処理はハイパバイザによって実現される。まず、ハイパバイザは、ホスト計算機からの要求到着率を観測し(S801)、観測結果と当該パーティションの制御プロセッサ割当能力とを比較し(S802)、制御プロセッサの割当量に余裕があるか否かを判定し(S803)、余裕がないときには、当該パーティションの制御プロセッサ割当能力を増加して次の処理に移行し(S804)、余裕があるときには、大きな余裕があるか否かを判定し(S805)、大きな余裕があるときには当該パーティションの制御プロセッサ割当能力を削減し(S806)、大きな余裕がないときと同様に、次の処理に移行する。
この後、ハイパバイザは、ホスト計算機のデータ転送速度を観測し(S807)、ホスト計算機に対するデータ転送速度と当該パーティションのデータ転送エンジン部割当能力とを比較し(S808)、両者の間に余裕があるか否かを判定し(S809)、余裕がないときには当該パーティションのデータ転送エンジン部割当能力を増加して次の処理に移行し、余裕があるときには大きな余裕があるか否かを判定し(S811)、大きな余裕があるときには当該パーティションのデータ転送エンジン部割当能力を削減し(S812)、大きな余裕がないときと同様に、次の処理に移行する。
次に、ハイパバイザは、当該パーティションのキャッシュ使用量を観測し(S813)、当該パーティションのキャッシュ使用量と当該パーティションのキャッシュ割当量とを比較し(S814)、両者の間に余裕があるか否かを判定し(S815)、余裕がないときには、当該パーティションのキャッシュ割当量を増加して、このルーチンでの処理を終了し、余裕があるときには大きな余裕があるか否かを判定し(S817)、大きな余裕があるときには、当該パーティションのキャッシュ割当量を削減し(S818)、大きな余裕がないときと同様に、このルーチンでの処理を終了する。
本実施形態によれば、ホスト計算機からの要求到着率を基に各資源に対する割当量と各資源の割当能力とを比較し、この比較結果を基に各資源に対する割当能力を増加したり、削減したりすることで、ホスト計算機からの要求到着率を基に各資源に対する割当能力を動的に変化させることができる。
各実施形態において、ハイパバイザは、実際には、各制御プロセッサにおいて、ハードウエアに最も近い階層のソフトウエアとなる。オペレーティングシステムがある場合には、オペレーティングシステムはハイパバイザの上位で動作し、オペレーティングシステムには、ハイパバイザがハードウエアとのインターフェイスを仮想化して見えることになる。したがって、各論理区画(論理パーティション)では、オペレーティングシステムが稼動している場合においては、それぞれのオペレーティングシステムは、ハイパバイザの存在や論理区画の存在を意識しないで動作することになる。
各制御プロセッサでハイパバイザを実行させる方法としては、例えば、システムで予め定める一定時間割合だけ、各制御プロセッサに対してハイパバイザが稼動するように、一定時間ごとに各制御プロセッサに割り込みを発生させる方法を採用することができる。また制御プロセッサで動作する各論理区画ごとにストレージ制御プログラムが各論理区画ごとにホスト計算機からの要求到着率やホスト計算機との単位時間当たりのデータ転送量、あるいはキャッシュメモリの使用量を観測し、各資源に関する観測結果と現在利用可能な各資源とを比較して、あまり余裕がないとき、あるいは大きな余裕が発生したときに、ハイパバイザに個別に起動要求を行い、資源割当、解放処理を行うようにすることもできる。
資源の割当を行うときの余裕および資源の解放を行う大きな余裕については、次の通り規定される。例えば、1回の資源の割当・解放は、予め定める一定の資源量として、資源の割当を発生させる余裕は、資源を一定量割当てたあと、直ちに大きな余裕が発生しないように小さく定める。しかし、割当量を過小な値に定めると、資源の使用量の変動に応じて資源の割当てを行う頻度が頻繁に高まり、ハイパバイザの処理時間が増大して、システムの効率が低下する。
また、資源の解放を発生させる大きな余裕は、資源の解放を行ったあと、直ちに資源が不足して直ちに再割当が発生しないように大きく定める。この場合、余裕を過大な値に定めると、資源の解放が行われないので、全体の資源使用率が低下し、システムの効率が低下する。したがって、資源の割当を行うための余裕は、資源の割当を行ったあと、直ちに、資源の解放が発生しない範囲で、できるだけ大きな値とすることが望ましく、資源の解放を行う余裕は、資源の解放を行ったあとに直ちに資源の再割当が発生しない範囲で、できるだけ小さな値とすることが望ましい。
また、資源の割当を行う余裕を使用量の1.1倍、資源の解放を行う大きな余裕を使用量の2倍とした場合、2/1.1=1.8181…となるので、1回の資源の割当単位は、各論理区画への最小割当の約80%程度までにすることが可能になる。
また、動的に資源を増加したり減少させたりするに際して、観測された資源使用量は、現在の割当量と常時比較されるので、この比較結果を基に、資源使用量が現在の割当量を超えそうになったとき、すなわち余裕がなくなったときには、割当てられる資源がある限りにおいて、新たな割当が発生させることが必要である。ただし、使用量が現在の割当量よりも十分少なくなったとき、すなわち大きな余裕が生じたときには、新たな資源の解放を発生させることが必要となる。
具体的には、制御プロセッサは、ホスト計算機からの要求到着率を常時観測し、ホスト計算機からの要求到着率と現時点におけるプロセッサの当該論理区画への割当量とを比較する。プロセッサの当該論理区画への割当量は、この場合、ホスト計算機からの要求を単位時間に処理する能力で規定される。すなわち、プロセッサの単位時間当たりの、ホスト計算機からの要求を処理する能力をみて、現在の当該論理区画へのプロセッサの割当時間の増減を行う。
また、データ転送エンジン部に関して、制御プロセッサは、各論理区画毎に、ホスト計算機に対する現在の単位時間当たりのデータ転送量を観測し、現時点における各論理区画へのデータ転送エンジン部当たりのデータ転送量を観測し、観測結果と現在の各論理区画へのデータ転送エンジン部の割当量とを比較する。この場合、データ転送エンジン部に対する割当量は、単位時間当たりのデータ転送能力で規定される。すなわち、データ転送エンジン部の単位時間当たりのデータ転送能力をみて、現在の当該論理区画へのデータ転送エンジン部の割当時間の増減を行う。
また、キャッシュメモリに関して、制御プロセッサは、各論理区画で実際に使用されているキャッシュメモリ量を観測し、観測結果と現在のキャッシュメモリの割当とを比較して、キャッシュメモリに対する割当量の増減を行う。
また、制御プロセッサにより、新たな割当を行うときに、割当てられる資源がなかった場合、論理区画ごとに優先順位を付け、低い優先順位の論理区画の資源を強制的に解放させて割当直すこともできる。
本発明に係るストレージシステムの一実施形態を示すブロック構成図である。 データ転送エンジン部のブロック構成図である。 制御プロセッサ部のブロック構成図である。 ハイパバイザとオペレーティングシステムの論理概念を説明するための図であって、(a)は、ストレージ制御プログラムが組込み型でOSが無い場合の論理概念図、(b)は、ストレージ制御プログラムが組込み型でOSがある場合の論理概念図である。 本発明に係る資源割当・解放の制御方法を説明するためのフローチャートである。 資源割当量と資源使用量との関係を説明するための特性図である。 本発明に係る資源割当・解放の他の制御方法を説明するためのフローチャートである。 複数の資源をそれぞれ割当てるときの処理を説明するためのフローチャートである。
符号の説明
1 ストレージシステム、101 ホストIF部、102 ドライブIF部、103 ディスクドライブ、104 伝送スイッチ、105 データ転送エンジン部、106 キャッシュスイッチ、107 キャッシュメモリ、108 制御信号スイッチ、109 制御プロセッサ部

Claims (9)

  1. 複数の記憶デバイスを備える記憶部と、上位計算機からのデータの入出力要求に応答して前記記憶部に対するデータ入出力処理を制御する複数のプロセッサと、各々のプロセッサと前記記憶部とをそれぞれ接続してデータの入出力を行うデータ伝送部と、を備えているストレージシステムにおいて、
    前記プロセッサは、前記記憶部と前記データ転送部と前記プロセッサを論理的に分割して複数の論理区画を作成し、各々の論理区画がそれぞれ独立した個別のストレージシステムとして動作させるように制御し、前記各論理区画に分割する割合を前記上位計算機からのアクセス量に応じて変化させるように構成されてなる、ことを特徴とするストレージシステム。
  2. 前記プロセッサは、前記各論理区画が前記記憶部と前記データ転送部と前記プロセッサを使用している割合に応じて前記各論理区画に対する前記記憶部と前記データ転送部と前記プロセッサの分割割合を変化させる、ことを特徴とする請求項1に記載のストレージシステム。
  3. 前記プロセッサは、前記各論理区画が前記記憶部と前記データ転送部と前記プロセッサを使用している割合を観測し、この観測結果を基に前記使用している割合が予め定める設定範囲を超えたときには、前記使用している割合に対し予め定める一定の比率だけ前記記憶部と前記データ転送部と前記プロセッサの新たに分割する量を追加する、ことを特徴とする請求項2に記載のストレージシステム。
  4. 前記プロセッサは、前記各論理区画が前記記憶部と前記データ転送部と前記プロセッサを使用している割合を観測し、この観測結果を基に前記使用している割合が予め設定範囲を下回ったときには、前記使用している割合に対し予め定める一定の比率だけ前記記憶部と前記データ転送部と前記プロセッサの分割する量を削減する、ことを特徴とする請求項2に記載のストレージシステム。
  5. 上位計算機と接続する2個以上のホストIF部と、
    2個以上のディスクドライブと、
    前記ディスクドライブに接続し、前記ディスクドライブを制御する2個以上のドライブIF部と、
    前記ディスクドライブから読み込みまたは前記ディスクドライブへ書き込むデータを一時的に蓄えるキャッシュメモリと、
    前記ホストIF部と前記キャッシュメモリまたは前記ドライブIF部と前記キャッシュメモリの間でデータの転送を行う2個以上のデータ転送エンジン部と、
    前記ホストIF部と前記ディスクIF部と前記データ転送エンジン部の間を接続する伝送スイッチと、
    前記データ転送エンジン部と前記キャッシュメモリを接続するキャッシュスイッチと、
    2個以上の制御プロセッサと、
    前記データ転送エンジンと前記制御プロセッサの間の制御信号線を切り替える制御信号スイッチを備えるストレージシステムであって、
    前記制御プロセッサは、前記ホストIF部と前記ディスクドライブと前記キャッシュメモリと前記データ転送部と前記プロセッサを論理的に分割して複数の論理区画を作成し、各々の論理区画がそれぞれ独立した個別のストレージシステムとして動作させるように制御し、前記ホストIF部と前記ディスクドライブと前記キャッシュメモリと前記データ転送部と前記プロセッサの前記各論理区画に分割する割合を前記上位計算機からのアクセス量に応じて変化させるように構成されてなる、ことを特徴とするストレージシステム。
  6. 前記プロセッサは、前記各論理区画が前記ホストIF部と前記ディスクドライブと前記キャッシュメモリと前記データ転送部と前記プロセッサを使用している割合に応じて前記各論理区画に対する前記ホストIF部と前記ディスクドライブと前記キャッシュメモリと前記データ転送部と前記プロセッサの分割する割合を変化させる、ことを特徴とする請求項5に記載のストレージシステム。
  7. 前記プロセッサは、前記各論理区画が前記ホストIF部と前記ディスクドライブと前記キャッシュメモリと前記データ転送部と前記プロセッサを使用している割合を観測し、この観測結果を基に前記使用している割合が予め定める設定範囲を超えたときには、前記使用している割合に対し予め定める一定の比率だけ前記ホストIF部と前記ディスクドライブと前記キャッシュメモリと前記データ転送部と前記プロセッサを新たに分割する量を追加する、ことを特徴とする請求項6に記載のストレージシステム。
  8. 前記プロセッサは、前記各論理区画が前記ホストIF部と前記ディスクドライブと前記キャッシュメモリと前記データ転送部と前記プロセッサを使用している割合を観測し、この観測結果を基に前記使用している割合が予め定める設定範囲を下回ったときには、前記使用している割合に対し予め定める一定の比率だけ前記ホストIF部と前記ディスクドライブと前記キャッシュメモリと前記データ転送部と前記プロセッサを分割する量を削減する、ことを特徴とする請求項6に記載のストレージシステム。
  9. 上位計算機と接続する2個以上のホストIF部と、2個以上のディスクドライブと、前記ディスクドライブに接続し、前記ディスクドライブを制御する2個以上のドライブIF部と、前記ディスクドライブから読み込みまたは前記ディスクドライブへ書き込むデータを一時的に蓄えるキャッシュメモリと、前記ホストIF部と前記キャッシュメモリまたは前記ドライブIF部と前記キャッシュメモリの間でデータの転送を行う2個以上のデータ転送エンジン部と、2個以上の制御プロセッサを備えるストレージシステムを論理的に分割する方法であって、
    前記制御プロセッサは、前記上位計算機のアクセスの対象となる資源を論理的に分割して複数の論理区画を作成する第1工程と、前記各論理区画を独立に動作させる第2工程と、前記各論理区画に分割する割合を前記上位計算機からのアクセス量に応じて変化させる第3工程と、を実行する、ことを特徴とするストレージシステムの論理分割方法。
JP2007100563A 2007-04-06 2007-04-06 論理区画に動的に資源割り当てを行うストレージシステム及びストレージシステムの論理分割方法 Pending JP2008257572A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007100563A JP2008257572A (ja) 2007-04-06 2007-04-06 論理区画に動的に資源割り当てを行うストレージシステム及びストレージシステムの論理分割方法
US12/015,573 US7840775B2 (en) 2007-04-06 2008-01-17 Storage system in which resources are dynamically allocated to logical partition, and logical division method for storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007100563A JP2008257572A (ja) 2007-04-06 2007-04-06 論理区画に動的に資源割り当てを行うストレージシステム及びストレージシステムの論理分割方法

Publications (1)

Publication Number Publication Date
JP2008257572A true JP2008257572A (ja) 2008-10-23

Family

ID=39827990

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007100563A Pending JP2008257572A (ja) 2007-04-06 2007-04-06 論理区画に動的に資源割り当てを行うストレージシステム及びストレージシステムの論理分割方法

Country Status (2)

Country Link
US (1) US7840775B2 (ja)
JP (1) JP2008257572A (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010122814A (ja) * 2008-11-18 2010-06-03 Hitachi Ltd ストレージシステム及びストレージシステムの運用方法
JP2011013919A (ja) * 2009-07-01 2011-01-20 Fujitsu Ltd 転送速度設定方法、データ転送装置及び情報処理システム
JP2012504796A (ja) * 2009-01-09 2012-02-23 株式会社日立製作所 複数のマイクロプロセッサを有するストレージシステム、及び、そのストレージシステムにおける処理分担方法
US8347028B2 (en) 2009-06-26 2013-01-01 Hitachi, Ltd. Performance separation optimization according to protocol usage status and storage system performance
US8352699B2 (en) 2009-03-06 2013-01-08 Nec Corporation Host computer, multipath system, path allocation method, and program
JP2015501494A (ja) * 2011-11-05 2015-01-15 ザダーラ ストレージ リミテッド クラウドサーバーのためのバーチャルプライベートストレージアレイサービス
JP2015526823A (ja) * 2012-08-27 2015-09-10 ヴイエムウェア インコーポレイテッドVMware,Inc. 共用記憶域上にある仮想ディスクのトランスペアレントなホスト側キャッシング
WO2015198441A1 (ja) * 2014-06-26 2015-12-30 株式会社日立製作所 計算機システム、管理計算機、および管理方法
WO2016006072A1 (ja) * 2014-07-09 2016-01-14 株式会社日立製作所 管理計算機およびストレージシステム
WO2016121066A1 (ja) * 2015-01-29 2016-08-04 株式会社日立製作所 ストレージシステム
JP2018128751A (ja) * 2017-02-07 2018-08-16 日本電気株式会社 ディスク制御装置、ディスク制御方法、および、ディスク制御プログラム

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8352952B2 (en) * 2008-12-01 2013-01-08 Citrix Systems, Inc. Systems and methods for facilitating virtualization of a heterogeneous processor pool
US20100138829A1 (en) * 2008-12-01 2010-06-03 Vincent Hanquez Systems and Methods for Optimizing Configuration of a Virtual Machine Running At Least One Process
US8458510B2 (en) 2010-08-12 2013-06-04 International Business Machines Corporation LPAR creation and repair for automated error recovery
EP2608029A1 (en) * 2011-12-19 2013-06-26 Siemens Aktiengesellschaft Method and system for managing resources among different clients for an exclusive use
US10007556B2 (en) * 2015-12-07 2018-06-26 International Business Machines Corporation Reducing utilization speed of disk storage based on rate of resource provisioning
CN109308163A (zh) * 2017-07-26 2019-02-05 英业达科技有限公司 非挥发性记忆体磁区规划方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07319630A (ja) * 1994-05-27 1995-12-08 Nec Corp バッファ容量決定方式
JP2003256147A (ja) * 2002-02-28 2003-09-10 Hitachi Ltd クラスタ型ディスクアレイ装置およびクラスタ型ディスクアレイ装置の運用方法
JP2005018161A (ja) * 2003-06-23 2005-01-20 Adtex:Kk 記憶システム、制御方法、及びプログラム
JP2006277487A (ja) * 2005-03-30 2006-10-12 Hitachi Ltd ディスクアレイ装置およびその制御方法
JP2006285808A (ja) * 2005-04-04 2006-10-19 Hitachi Ltd ストレージシステム
JP2006343924A (ja) * 2005-06-08 2006-12-21 Hitachi Ltd ボリューム管理システムおよびその方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006244098A (ja) * 2005-03-03 2006-09-14 Hitachi Ltd ストレージシステムにおける論理分割方法
US7444459B2 (en) * 2006-12-12 2008-10-28 Lsi Logic Corporation Methods and systems for load balancing of virtual machines in clustered processors using storage related load information

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07319630A (ja) * 1994-05-27 1995-12-08 Nec Corp バッファ容量決定方式
JP2003256147A (ja) * 2002-02-28 2003-09-10 Hitachi Ltd クラスタ型ディスクアレイ装置およびクラスタ型ディスクアレイ装置の運用方法
JP2005018161A (ja) * 2003-06-23 2005-01-20 Adtex:Kk 記憶システム、制御方法、及びプログラム
JP2006277487A (ja) * 2005-03-30 2006-10-12 Hitachi Ltd ディスクアレイ装置およびその制御方法
JP2006285808A (ja) * 2005-04-04 2006-10-19 Hitachi Ltd ストレージシステム
JP2006343924A (ja) * 2005-06-08 2006-12-21 Hitachi Ltd ボリューム管理システムおよびその方法

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010122814A (ja) * 2008-11-18 2010-06-03 Hitachi Ltd ストレージシステム及びストレージシステムの運用方法
JP2012504796A (ja) * 2009-01-09 2012-02-23 株式会社日立製作所 複数のマイクロプロセッサを有するストレージシステム、及び、そのストレージシステムにおける処理分担方法
US8694689B2 (en) 2009-01-09 2014-04-08 Hitachi, Ltd. Storage system having plural microprocessors, and processing allotment method for storage system having plural microprocessors
US8352699B2 (en) 2009-03-06 2013-01-08 Nec Corporation Host computer, multipath system, path allocation method, and program
US8347028B2 (en) 2009-06-26 2013-01-01 Hitachi, Ltd. Performance separation optimization according to protocol usage status and storage system performance
JP2011013919A (ja) * 2009-07-01 2011-01-20 Fujitsu Ltd 転送速度設定方法、データ転送装置及び情報処理システム
JP2015501494A (ja) * 2011-11-05 2015-01-15 ザダーラ ストレージ リミテッド クラウドサーバーのためのバーチャルプライベートストレージアレイサービス
JP2015526823A (ja) * 2012-08-27 2015-09-10 ヴイエムウェア インコーポレイテッドVMware,Inc. 共用記憶域上にある仮想ディスクのトランスペアレントなホスト側キャッシング
WO2015198441A1 (ja) * 2014-06-26 2015-12-30 株式会社日立製作所 計算機システム、管理計算機、および管理方法
JPWO2015198441A1 (ja) * 2014-06-26 2017-04-20 株式会社日立製作所 計算機システム、管理計算機、および管理方法
WO2016006072A1 (ja) * 2014-07-09 2016-01-14 株式会社日立製作所 管理計算機およびストレージシステム
WO2016121066A1 (ja) * 2015-01-29 2016-08-04 株式会社日立製作所 ストレージシステム
JPWO2016121066A1 (ja) * 2015-01-29 2017-11-30 株式会社日立製作所 ストレージシステム
US10664182B2 (en) 2015-01-29 2020-05-26 Hitachi, Ltd. Storage system
JP2018128751A (ja) * 2017-02-07 2018-08-16 日本電気株式会社 ディスク制御装置、ディスク制御方法、および、ディスク制御プログラム

Also Published As

Publication number Publication date
US7840775B2 (en) 2010-11-23
US20080250219A1 (en) 2008-10-09

Similar Documents

Publication Publication Date Title
JP2008257572A (ja) 論理区画に動的に資源割り当てを行うストレージシステム及びストレージシステムの論理分割方法
US9619378B2 (en) Dynamically optimizing memory allocation across virtual machines
KR101553649B1 (ko) 멀티 코어 장치 및 멀티 코어 장치의 작업 스케줄링 방법
US7590816B2 (en) Computer system, management computer and storage system, and storage area allocation amount controlling method
JP6190969B2 (ja) マルチテナントリソース調停方法
EP1341083A2 (en) Parallel-process execution method and multiprocessor-type computer
JP2009528610A (ja) タスクの実行フェーズに基づいてキャッシュパーティションを動的にリサイズする方法及び装置
JP2008090395A (ja) 計算機システム、演算用ノード及びプログラム
US9984091B2 (en) Reducing decompression latency in a compression storage system
US8352702B2 (en) Data processing system memory allocation
CN103365603A (zh) 存储系统的存储器管理的方法和装置
KR20070090649A (ko) 멀티 코어 시스템에서 협력적 스케줄링을 제공하는 장치 및방법
JPH012145A (ja) 仮想計算機システムの資源管理方式
WO2013145199A1 (ja) 仮想計算機のスケジュール方法
JP5810918B2 (ja) スケジューリング装置、スケジューリング方法及びプログラム
CN111078407A (zh) 内存管理的方法、装置、存储介质及电子设备
KR20100039674A (ko) 다중 운영체제를 지원하는 단말기 및 그 단말기에 대한시스템 자원 할당 방법
CN116401043A (zh) 一种计算任务的执行方法和相关设备
KR20160061726A (ko) 인터럽트 핸들링 방법
JP2010026828A (ja) 仮想計算機の制御方法
JP4872942B2 (ja) ストレージシステム、ストレージ装置、優先度制御装置および優先度制御方法
JP2015064746A (ja) 情報処理システム、情報処理システムの制御方法及び制御プログラム
JP2016151816A (ja) 管理装置、情報処理システム及び管理プログラム
JP6251417B2 (ja) ストレージシステム、及び、記憶制御方法
JPWO2018173300A1 (ja) I/o制御方法およびi/o制御システム

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090218

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090716

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110920

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111121

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120117