JP2015179448A - 情報処理装置、情報処理方法、情報処理プログラム、情報処理システム、ストレージ、ストレージ制御方法、及び、ストレージ制御プログラム - Google Patents

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

Info

Publication number
JP2015179448A
JP2015179448A JP2014057066A JP2014057066A JP2015179448A JP 2015179448 A JP2015179448 A JP 2015179448A JP 2014057066 A JP2014057066 A JP 2014057066A JP 2014057066 A JP2014057066 A JP 2014057066A JP 2015179448 A JP2015179448 A JP 2015179448A
Authority
JP
Japan
Prior art keywords
controller
information
information processing
policy
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.)
Granted
Application number
JP2014057066A
Other languages
English (en)
Other versions
JP6307962B2 (ja
Inventor
智明 杉原
Tomoaki Sugihara
智明 杉原
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2014057066A priority Critical patent/JP6307962B2/ja
Priority to US14/659,870 priority patent/US20150269098A1/en
Publication of JP2015179448A publication Critical patent/JP2015179448A/ja
Application granted granted Critical
Publication of JP6307962B2 publication Critical patent/JP6307962B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/18Handling requests for interconnection or transfer for access to memory bus based on priority control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1694Configuration of memory controller to different memory types
    • 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/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • 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/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • 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/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • 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

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)
  • Computer Networks & Wireless Communication (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】通信遅延を低減する情報処理装置等を提供する。【解決手段】情報処理装置101は、論理ブロックとコントローラとが関連付けされたポリシー情報のうち、ストレージ201が採用するポリシー情報501に基づき、入出力対象となる論理ブロックに関連付けされた特定のコントローラを求め、特定のコントローラに入出力対象に関するリクエスト503を送信する発行部を有する。【選択図】 図1

Description

本発明は、たとえば、ストレージに入出力処理を実施する情報処理装置等に関する。
近年、ストレージ業界において、ユーザがシステムに対して提示する要件やシステムにおける業務に関する負荷等、システムの状態に応じて処理する新たな技術が次々と出てきている。このような技術の1つに、ストレージに含まれる記憶装置(たとえば、ディスク)における情報(データ)を最適に配置(再配置)する技術(以降、「最適配置技術」と表す。)がある。
システムに含まれるストレージには、高速にアクセス可能な記憶装置及び低速にアクセス可能な記憶装置等、様々な種類の記憶装置がある。最適配置技術は、記憶装置の種類、業務の状況、または、記憶装置にアクセスする頻度の変化等に応じて、記憶領域等に関する割り当て状況を変更する技術である。たとえば、最適配置技術においては、論理的に構築された記憶装置(以降、「論理記憶装置」と表す。)を物理的な記憶装置(以降、「物理記憶装置」と表す。)に割り当てる状況を変更する。あるいは、最適配置技術においては、論理記憶装置内においてデータを記憶する記憶領域を割り当てる状況等を変更する。最適配置技術を用いて記憶領域を割り当てる状況を変更するのに応じて、システムに関する処理性能は変化する。
このようなシステムにおいて、サーバは、ストレージにおける論理記憶装置に関する情報のみを読み取ることができる。この場合、サーバは、ストレージが制御する物理記憶装置に関する情報を読み取ることができない。
これは、システムにおいて、入出力処理は、サーバとストレージとに階層化されているためである。すなわち、ストレージが、論理記憶装置から物理記憶装置への割り当てを制御する一方で、サーバは、入出力(Input/Output)処理を制御しない。入出力処理が、サーバとストレージとに階層化されている場合、サーバは、ストレージに含まれる物理記憶装置が故障する場合であっても、該物理記憶装置に係る入出力処理を制御しない。この結果、サーバにおける負荷は軽減する。
また、ストレージに関する入出力処理方法として、ALUA(Asymmetric_Logical_Unit_Access)技術がある。ALUAは、記憶装置を制御するコントローラ(たとえば、ディスクコントローラ)に論理記憶装置を作成する場合に、各論理記憶装置を優先的に制御するコントローラ(以降、「優先コントローラ」と表す。)を決める技術である。この技術を用いるシステムにおいて、サーバは、優先コントローラに、入出力処理に関するリクエストを送信する。
ストレージが複数のコントローラを有する場合に、複数のコントローラが1つの論理記憶装置を制御する態様であってもよい。この場合、論理記憶装置を制御するコントローラは、必ずしも、該論理記憶装置に割り当てられた全ての物理記憶装置を制御するとは限らない。
上述したように、論理記憶装置を制御するコントローラ(説明の便宜上、「第1コントローラ」と表す。)と、該論理記憶装置に割り当てられた物理記憶装置を制御するコントローラ(説明の便宜上、「第2コントローラ」と表す。)とが異なる場合には、第1コントローラと第2コントローラとの間において通信する必要がある。この結果、第1コントローラと第2コントローラとが同一の場合に比べ、通信が必要なため、ストレージに関する処理性能は低下する。
特許文献1乃至特許文献3は、ストレージに関連する一般的な技術を開示する。
特許文献1に開示された装置は、クラスタ構成を有するストレージにおいて、データを格納する場合に、通信ネットワークを介して値を格納する。該装置は、キャッシュメモリに、該データの複製を作成しないため、キャッシュメモリに係る利用効率が低下するのを軽減する。
特許文献2に開示されたデータ転送装置は、ストレージに格納するデータを含むリクエストを受信する第1ノードと、第1ノードとは異なる第2ノードとを有する。第1ノードは、リクエストを受信し、該リクエストに含まれるデータを第2ノードに送信する。第2ノードは、該データを受信し、その後、確認メッセージを、該リクエストを送信したノードに送信する。
特許文献3に開示されるストレージシステムは、M/M/1待ち行列理論に従い、リクエストを投入してから該リクエストの処理が開始されるまでの期間が最短になるように、論理記憶装置を再配置する
特開2003−131818号公報 特開2000−259502号公報 特開2003−5920号公報
ストレージが複数のコントローラを有する場合には、上述したように、1つの論理記憶装置に対して、該論理記憶装置を優先的に制御する優先コントローラを設定する。論理記憶装置を割り当てられたコントローラは、それぞれ、自装置の配下にある物理記憶装置を制御する。
この場合、サーバ(情報処理装置、入出力処理装置)は、優先コントローラに入出力処理を依頼するリクエストを送信する。優先コントローラが、論理記憶装置に割り当てられた物理記憶装置を制御しない場合であっても、サーバは、該優先コントローラにリクエストを送信する。
この場合、優先コントローラは、該物理記憶装置を制御するコントローラと通信することにより、リクエストに応じた入出処理を行う。したがって、この場合には、コントローラ間における通信が発生するため、通信遅延が生じる。
そこで、本発明の主たる目的は、通信遅延を低減する情報処理装置等を提供することである。
前述の目的を達成するために、本発明の一態様において、情報処理装置は、以下の構成を備える。
すなわち、情報処理装置は、
論理ブロックとコントローラとが関連付けされたポリシー情報のうち、ストレージが採用する前記ポリシー情報に基づき、入出力対象となる論理ブロックに関連付けされた特定のコントローラを求め、前記特定のコントローラに前記入出力対象に関するリクエストを送信する発行手段
を備える。
また、本発明の他の見地として、情報処理方法は、
情報処理装置を用いて、論理ブロックとコントローラとが関連付けされたポリシー情報のうち、ストレージが採用する前記ポリシー情報に基づき、入出力対象となる前記論理ブロックに関連付けされた特定のコントローラを求め、前記特定のコントローラに前記入出力対象に関するリクエストを送信する。
さらに、同目的は、係る情報処理プログラム、および、そのプログラムを記録するコンピュータ読み取り可能な記録媒体によっても実現される。
本発明に係る情報処理装置等によれば、通信遅延を低減することができる。
本発明の第1の実施形態に係る情報処理装置が有する構成を示すブロック図である。 第1の実施形態に係る情報処理装置における処理の流れを示すフローチャートである。 論理記憶装置情報を概念的に表す図である。 ストレージが行う処理を表すフローチャートである。 論理アドレスに基づきコントローラを割り当てる場合に参照されるポリシー情報の一例を概念的に表す図である。 論理アドレスに基づきコントローラを割り当てる場合に参照されるポリシー情報の一例を概念的に表す図である。 相互に類似するポリシー情報の一例を概念的に表す図である。 相互に類似するポリシー情報の一例を概念的に表す図である。 本発明の第2の実施形態に係るストレージが有する構成を示すブロック図である。 第2の実施形態に係るストレージにおける処理の流れを示すフローチャートである。 第2の実施形態に係るストレージ及び情報処理装置における処理の流れを示すシーケンス図である。 応答情報の一例を概念的に表す図である。 本発明の第3の実施形態に係る情報処理システムが有する構成を示すブロック図である。 本発明の情報処理装置及びストレージ等を実現可能な計算処理装置のハードウェア構成を、概略的に示すブロック図である。
次に、本発明を実施する実施形態について図面を参照しながら詳細に説明する。
<第1の実施形態>
本発明の第1の実施形態に係る情報処理装置101が有する構成と、情報処理装置101が行う処理とについて、図1と図2とを参照しながら詳細に説明する。図1は、本発明の第1の実施形態に係る情報処理装置101が有する構成を示すブロック図である。図2は、第1の実施形態に係る情報処理装置101における処理の流れを示すフローチャートである。
第1の実施形態に係る情報処理装置101は、発行部102を有する。
以降、説明の便宜上、ストレージ201は、ポリシー情報501に従い、リクエストに応じた入出力処理を行うものとする。また、本実施形態においては、論理記憶装置のアドレスを、LBA(Logical_Bloock_Addressing)を用いて表すものとする。しかし、表現方法は、LBAに限定されない。以降の各実施形態においても同様である。
まず、ポリシー情報501について説明する。
ポリシー情報501は、たとえば、図5及び図6に示すように、論理記憶装置における記憶領域(以降、「論理ブロック」と表す。)を指し示す論理アドレスに応じて、該論理ブロックを制御するコントローラを割り当てる場合に参照される情報である。図5及び図6は、論理アドレスに基づきコントローラを割り当てる場合に参照されるポリシー情報501の一例を概念的に表す図である。
たとえば、ポリシー情報501は、論理ブロックの先頭を表す論理アドレス(以降、「先頭アドレス」と表す。)に基づき、どのコントローラが、該先頭アドレスを含む論理ブロックを制御するのかを表す情報である。尚、ポリシー情報501は、コントローラが制御する物理記憶装置における記憶領域を特定する情報を、必ずしも、含まなくてもよい。
ポリシー情報501は、たとえば、ポリシー情報1乃至ポリシー情報3に示すように、論理ブロックの先頭アドレスを1メビバイト(mebibyte、MiB)で割った商に応じて、該論理ブロックを制御するコントローラを決める情報である。すなわち、
・(ポリシー情報1、図5):商が偶数の場合には、コントローラとして、コントローラ0を割り当てる(図5における無地の領域)。一方、商が奇数の場合には、コントローラとして、コントローラ1を割り当てる(図5における斜線が付された領域)。すなわち、ポリシー情報1に従えば、コントローラに、論理記憶装置を1MiB単位にて均等に割り当てることになる、
・(ポリシー情報2、図6):商を5で割った余りが0または2の場合には、コントローラとして、コントローラ0を割り当てる(図6における無地の領域)。商を5で割った余りが1、3または4の場合には、コントローラとして、コントローラ1を割り当てる(図6における斜線が付された領域)。すなわち、ポリシー情報2に従えば、コントローラに、論理記憶装置を1MiB単位にて不均等に割り当てることになる、
・(ポリシー情報3):商を4で割った余りが0の場合には、コントローラとして、コントローラ0を割り当てる。商を4で割った余りが1の場合には、コントローラとして、コントローラ1を割り当てる。商を4で割った余りが2の場合には、コントローラとして、コントローラ2を割り当てる。さらに、商を4で割った余りが3の場合には、コントローラとして、コントローラ3を割り当てる。すなわち、ポリシー情報3に従えば、コントローラに、論理記憶装置を1MiB単位にて均等に割り当てることになる。
ストレージ201(または、情報処理装置101)は、ポリシー情報501に従い、各論理ブロックを制御するコントローラを決めることができる。
たとえば、ポリシー情報1に従い、論理ブロックを制御するコントローラを決める一例について、図5を参照しながら詳細に説明する。
図5に示す例において、論理ブロックは、1MiBの大きさである。たとえば、論理ブロック0x000000乃至0x100000(ただし、xは、16進数であることを表す。)の先頭アドレス0x000000を、1MiBにて割り算することにより算出される商が0(すなわち、偶数)であるため、論理ブロック0x000000乃至0x100000には、コントローラ0が割り当てられる。
同様に、論理ブロック0x300000乃至0x400000の先頭を表す論理アドレス0x300000を、1MiBにて割り算することにより算出される商が3(すなわち、奇数)であるため、論理ブロック0x000000乃至0x100000には、コントローラ1が割り当てられる。
また、ポリシー情報2に従い、コントローラを決める一例について、図6を参照しながら詳細に説明する。
図6に示す例において、論理ブロックは、1MiBの大きさである。たとえば、論理ブロック0x000000乃至0x100000の先頭アドレス0x000000を、1MiBにて割り算することにより算出される商が0(すなわち、商を5で割った余りが0)であるため、論理ブロック0x000000乃至0x100000には、コントローラ0が割り当てられる。
同様に、論理ブロック0x300000乃至0x400000の先頭アドレス0x300000を、1MiBにて割り算することにより算出される商が3(すなわち、商を5で割った余りが3)であるため、論理ブロック0x000000乃至0x100000には、コントローラ1が割り当てられる。
ポリシー情報501としては、SCSI(Small_Computer_System_Interface)の場合に、256種類まで定義することができる。ポリシー情報501が複数ある場合、ストレージ201は、あるポリシー情報501を選ぶことにより、論理ブロックを制御するコントローラを決める。
また、図7及び図8に例示するように、ストレージ201内において最適配置(再配置)する処理を軽減するために、相互に類似するポリシー情報501を定義しておくのが望ましい。図7及び図8は、相互に類似するポリシー情報の一例を概念的に表す図である。
相互に類似するポリシー情報は、たとえば、ポリシー情報4(図7)及びポリシー情報5(図8)に示す情報である。たとえば、論理ブロックの先頭アドレスを1MiBで割った商を64で割った余りに応じて、コントローラを決めるポリシー情報501の場合には、
・(ポリシー情報4、図7):余りが0乃至7、16乃至23、32乃至39、または、48乃至55の場合には、コントローラ0を割り当てる(図7における無地の領域)。余りが8乃至15、24乃至31、40乃至47、または、56乃至63の場合には、コントローラ1を割り当てる(図7における斜線が付された領域)、
・(ポリシー情報5、図8):余りが0乃至7、16乃至23、32乃至39、または、48乃至56の場合には、コントローラ0を割り当てる(図8における無地の領域)。余りが8乃至15、24乃至31、40乃至47、または、57乃至63の場合には、コントローラ1を割り当てる(図8における斜線が付された領域)。
ポリシー情報4と、ポリシー情報5との違いは、余りが56である場合の論理ブロックを制御するコントローラが異なる点である(図8における「差分」にて示された領域)。すなわち、ポリシー情報4からポリシー情報5に変更する場合には、64個の論理ブロックのうち、余りが56である場合の論理ブロック(すなわち、図8における「差分」にて示された領域)を制御するコントローラを、コントローラ0からコントローラ1に変更する。すなわち、ポリシー情報4からポリシー情報5に変更する場合には、64分の1個分の論理ブロックを変更する。
上述したポリシー情報1乃至ポリシー情報5は、論理ブロックの先頭アドレスに基づきコントローラを決めるハッシュ関数を用いる場合の一例である。たとえば、論理ブロックの先頭アドレスに基づきコントローラを決める手法として、コンシステントハッシュ技法を用いてもよい。
尚、ポリシー情報501は、たとえば、セクターに基づきコントローラを決める方法であってもよい。ポリシー情報501は、セクターサイズが4096である場合に、1つのセクター(以降、「論理セクター」と表す。)の先頭を指し示す論理アドレスを、250で割った商に応じてコントローラを決める方法であってもよい。すなわち、
・(ポリシー情報6):商が偶数の場合には、論理セクターを制御するコントローラとして、コントローラ0を割り当てる。商が奇数の場合には、論理セクターを制御するコントローラとして、コントローラ1を割り当てる。
尚、ポリシー情報501を実現する表現方法には、たとえば、スクリプト言語を用いることにより、条件式を記述する方法や、XML(Extensible_Markup_Language)を用いることにより、条件式を記述する方法等がある。また、条件式において参照されるパラメータは、たとえば、論理ブロックの先頭アドレスと、該論理ブロックのサイズ等である。これらのパラメータは、たとえば、SCSIに関するREAD_BUFFERコマンド、または、WRITE_BUFFERコマンドを実行する場合に参照されるパラメータである。上述したスクリプト言語や、XMLは、一般的な技術であるため、本実施形態においては詳細な説明を省略する。
以降、説明の便宜上、情報処理装置101、及び、ストレージ201は、ポリシー情報501を一意に識別可能なポリシー識別子を用いて、ポリシー情報501を識別するとする。ポリシー識別子は、数字であっても、記号であってもよい。また、情報処理装置101と、ストレージ201とは、ポリシー識別子を共有しているとする。すなわち、あるポリシー識別子が表すポリシー情報は、情報処理装置101と、ストレージ201とにおいて同じポリシー情報であるとする。また、情報処理装置101が1つの論理ブロックを処理する場合に読み取るポリシー情報501は、ストレージ201が該論理ブロックに適用した最新のポリシー情報であるとする。
たとえば、ストレージ201は、論理ブロックを処理するのに応じて、該論理ブロックに適用するポリシー情報501を更新する。あるいは、情報処理装置101は、処理する対象である論理ブロックに関して、ストレージ201からポリシー情報501を受信してもよい。また、情報処理装置101と、ストレージ201とが、ポリシー識別子を共有している場合に、ポリシー情報501が、ポリシー識別子を用いて表現されていてもよい。
次に、本実施形態に係る情報処理装置101における処理について説明する。
まず、発行部102は、処理を行う対象である論理記憶装置が、ポリシー情報501を適用する対象であるか否かを判定する(ステップS101)。たとえば、発行部102は、図3に例示する論理記憶装置情報502を参照することにより、該論理記憶装置が、ポリシー情報501を適用する対象であるか否かを判定する。図3は、論理記憶装置情報502を概念的に表す図である。
図3を参照すると、論理記憶装置情報502においては、たとえば、論理記憶装置1と、適用状態1とが関連付けされている。これは、論理記憶装置1に関連付けされた適用状態が1であるため、論理記憶装置1がポリシー情報を適用する対象であることを表す。また、論理記憶装置情報502においては、たとえば、論理記憶装置2と、適用状態0とが関連付けされている。これは、論理記憶装置2に関連付けされた適用状態が0であるため、論理記憶装置2が、ポリシー情報501を適用する対象でないことを表す。
情報処理装置101は、あらかじめ、ストレージ201に関する情報に基づき、論理記憶装置情報502を作成する。尚、情報処理装置101は、ストレージ201がポリシー情報を論理記憶装置に適用するか否かに基づき、論理記憶装置情報502を更新してもよい。また、論理記憶装置情報502は、さらに、論理記憶装置と、該論理記憶装置に適用するポリシー識別子とが関連付けされた情報を含んでいてもよい。たとえば、情報処理装置101は、ストレージ201から、論理記憶装置と、該論理記憶装置に関する適用状態とに関する情報を受信することにより、論理記憶装置情報502を作成する。
たとえば、発行部102は、論理記憶装置1を対象とする処理を実施する場合に、論理記憶装置情報502において、論理記憶装置1に関連付けされた適用状態を読み取る。次に、発行部102は、論理記憶装置1がポリシー情報501を適用する対象であることを表すか否かを、読み取った適用状態に基づき判定する(ステップS101)。図3に示す例において、論理記憶装置1に関連付けされた適用状態が1であるため、発行部102は、論理記憶装置1がポリシー情報501を適用する対象であると判定する。
発行部102は、論理記憶装置がポリシー情報501を適用する対象でないと判定する場合(ステップS101にてNOと判定)に、ストレージ201における優先コントローラに対してリクエスト503を送信する(ステップS104)。
一方、発行部102は、論理記憶装置がポリシー情報501を適用する対象であると判定する場合(ステップS101にてYESと判定)に、ポリシー情報501に従い、論理記憶装置における論理ブロックの先頭アドレスに基づき、該論理ブロックを制御する特定のコントローラを決定(推定)する(ステップS102)。
次に、発行部102は、決定した特定のコントローラ(たとえば、コントローラ202であるとする。)に対して、該論理ブロックに関する処理を表すリクエスト503を送信する(ステップS103)。
尚、ストレージ201は、情報処理装置101からリクエスト503を受信するよりも前に、論理記憶装置を作成しているものとする。ここでは、ストレージ201が論理記憶装置を作成する方法について、図4を参照しながら説明する。図4は、ストレージ201が行う処理を表すフローチャートである。
ストレージ201は、1つ以上の物理記憶装置をまとめることにより、論理記憶装置となるプール(ストレージプール)を作成する(ステップS201)。すなわち、ストレージ201は、1つ以上の物理記憶装置に、論理記憶装置を配置(または、再配置)する。
次に、論理記憶装置が、1つ以上の物理記憶装置から構成される場合に、ストレージ201におけるコントローラは、複数種類のポリシー情報から、特定のポリシー情報(すなわち、ポリシー情報501)を選ぶ(ステップS202)。次に、ストレージ201は、選んだポリシー情報501に従い、論理記憶装置に含まれる論理ブロックを処理する特定のコントローラを決める(求める)。たとえば、ストレージ201は、上述したポリシー情報1乃至ポリシー情報6のいずれかに従い、該論理ブロックを処理する特定のコントローラを決める。すなわち、ストレージ201において、各論理ブロックを処理する態様が決定される。
1つ以上の物理記憶装置を用いて論理記憶装置を作成する方法、すなわち、プールを作成する方法は、既に様々な方法が知られているため、ここでは、詳細な説明を省略する。
次に、コントローラ202がリクエスト503を受信する場合の処理について説明する。
まず、コントローラ202は、情報処理装置101が送信したリクエスト503を受信する。次に、コントローラ202は、受信したリクエスト503に応じて入出力処理を実行する(ステップS203)。
ストレージ201は、自装置において、入出力処理に関する論理ブロックを処理する場合に適用するポリシー情報を、ポリシー情報501として出力してもよい。あるいは、ストレージ201は、リクエスト503に応じたリプライとして、ポリシー情報501を情報処理装置101に送信してもよい。
次に、第1の実施形態に係る情報処理装置101に関する作用効果について説明する。
本実施形態に係る情報処理装置101によれば、ストレージ201における通信遅延を低減することができる。
この理由は、リクエスト503に基づいて処理する対象となる論理ブロックを格納する物理記憶装置を制御する特定のコントローラと、情報処理装置101がリクエスト503を送信するコントローラ202とが一致する可能性が高いためである。これは、発行部102が、ストレージ201が従う最新のポリシー情報に基づき、リクエスト503を送信するコントローラを決めることに起因する。
上述したように、コントローラ202と、ストレージ201においてリクエスト503に関する論理ブロックを処理する特定のコントローラ(たとえば、コントローラ203であるとする。)とが異なる場合、コントローラ202と、コントローラ203との間において、通信が発生する。一方で、該2つのコントローラが同じである場合、該2つのコントローラ間において、通信は発生しない。発行部102は、ストレージ201が従う最新のポリシー情報に基づき、リクエスト503をコントローラ202に送信するため、コントローラ202と、ストレージ201においてリクエスト503に関する論理ブロックを処理する特定のコントローラとは一致する可能性が高い。この場合、2つのコントローラの間において、通信は発生しない。
一方、特許文献3に開示された装置は、ストレージにおけるポリシー情報を参照することなく、リクエストを送信する。すなわち、コントローラ202とコントローラ203とが一致する可能性は低い。したがって、該装置においては、本実施形態に係る情報処理装置101に比べ、コントローラ202とコントローラ203との間に通信が発生する確率が高い。この結果、該装置によれば、ストレージにおける処理を効率よく行うことができない。
尚、発行部102は、先頭アドレスに基づきコントローラを算出したが、必ずしも、先頭アドレスでなくともよく、たとえば、論理ブロックの末尾を表す論理アドレス等であってもよい。
また、情報処理装置101と、ストレージ201とが、ポリシー識別子及びポリシー情報を共有する場合に、情報処理装置101は、ポリシー識別子とポリシー情報とを関連づけて記憶可能なポリシー記憶部(不図示)を有してもよい。ストレージ201がポリシー識別子を用いて、ポリシー情報を送信する場合に、情報処理装置101は、ポリシー記憶部において、該ポリシー識別子に関連付けされたポリシー情報を読み取ってもよい。
<第2の実施形態>
次に、上述した第1の実施形態を基本とする本発明の第2の実施形態について説明する。
以降の説明においては、本実施形態に係る特徴的な部分を中心に説明すると共に、上述した第1の実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明を省略する。
図9乃至図11を参照しながら、第2の実施形態に係るストレージ160が有する構成と、ストレージ160が行う処理とについて説明する。図9は、本発明の第2の実施形態に係るストレージ160が有する構成を示すブロック図である。図10は、第2の実施形態に係るストレージ160における処理の流れを示すフローチャートである。図11は、第2の実施形態に係るストレージ160及び情報処理装置151における処理の流れを示すシーケンス図である。
第2の実施形態に係るストレージ160は、コントローラ161と、コントローラ162と、物理記憶装置171乃至物理記憶装置176とを有する。
コントローラ161は、物理記憶装置171と、物理記憶装置172と、物理記憶装置173とを制御する。また、コントローラ162は、物理記憶装置174と、物理記憶装置175と、物理記憶装置176とを制御する。
また、コントローラ161は、ファイバチャネルスイッチ(Fibre_Channelスイッチ、FCスイッチ)152を介して、情報処理装置151と情報を送受信することができる。同様に、コントローラ162は、FCスイッチ153を介して、情報処理装置151と情報を送受信することができる。
説明の便宜上、コントローラ161及びコントローラ162が制御する物理記憶装置は3つであるとするが、必ずしも、3つである必要はない。コントローラ161及びコントローラ162は、より多くの物理記憶装置を制御してもよいし、より少ない物理記憶装置を制御してもよい。また、コントローラ161とコントローラ162とが、相互に異なる個数の物理記憶装置を制御してもよい。
図11を参照すると、コントローラ161及びコントローラ162は、論理記憶装置を作成し(ステップS201)、該論理記憶装置を制御する基準となるポリシー情報501を選択する(ステップS202)。その後、コントローラ161及びコントローラ162は、リクエスト503を受信する(ステップS151)。
ここで、説明の便宜上、コントローラ161は、FCスイッチ152を介して情報処理装置151からリクエスト503を受信するとする。
コントローラ161は、受信したリクエスト503において処理する対象となる論理ブロックに関して、自コントローラが制御する物理記憶装置(すなわち、物理記憶装置171乃至物理記憶装置173)に割り当てられているか否かを、ポリシー情報501等に基づき判定する(ステップS152)。たとえば、コントローラ161は、リクエスト503の一例である「READ」コマンドまたは「WRITE」コマンドに基づいて処理する論理ブロックの先頭アドレスに基づき、ポリシー情報501に従い、該論理ブロックを制御する特定のコントローラを求める。
次に、コントローラ161は、求めた特定のコントローラが自コントローラであるか否かを判定する。求めた特定のコントローラが自コントローラである場合、コントローラ161は、処理対象である論理ブロックに割り当てられた物理記憶装置を制御する。すなわち、処理対象である論理ブロックに関する制御は、コントローラ161に割り当てられている。
次に、コントローラ161は、処理対象である論理ブロックを制御する場合(ステップS152にてYESと判定)に、該リクエスト503に応じた処理を行う(ステップS153)。
その後、コントローラ161は、さらに、ストレージ160において特定のコントローラを決める特定のポリシー情報を、情報処理装置151に送信してもよい。
一方、コントローラ161は、処理対象である論理ブロックを制御しない場合(ステップS152にてNOと判定)に、ストレージ160が処理対象である論理ブロックに適用する特定のポリシー情報を表すポリシー識別子を、情報処理装置151に送信する(ステップS154)。この場合、コントローラ161は、ポリシー情報501を、ストレージ160が処理対象である論理ブロックに適用する最新のポリシー情報に更新してもよい。また、コントローラ161が該ポリシー識別子を送信し、情報処理装置151が該ポリシー識別子を受信してもよい(ステップS171)。この場合、情報処理装置151は、ポリシー情報501を、受信したポリシー識別子に更新する。
ポリシー情報501が最新のポリシー情報に更新された後、情報処理装置151は、ポリシー情報501における該最新のポリシー情報に基づき、コントローラ161を決める。
また、本実施形態に係るシステム(すなわち、ストレージ160及び情報処理装置151を含む)においては、ステップS152にてNOと判定される期間に、ステップS101、ステップS102、ステップS103、ステップS151、ステップS152、及び、ステップS154に示す処理を繰り返し実行してもよい。
さらに、本実施形態に係るシステムにおいては、再配置が実行されるのに応じて、ステップS101、ステップS102、ステップS103、ステップS151、ステップS152、ステップS153、及び、ステップS154示す処理を実行してもよい。
たとえば、コントローラ161は、リクエスト503に対して、SCSIに関する応答である「Status_code」を「GOOD」(すなわち、00h。hは16進数であることを表す。)に設定することにより応答情報を作成し、作成した応答情報を情報処理装置151に送信してもよい。
コントローラ161は、上述した応答情報に、さらに、「Sense_data」を付してもよい。たとえば、コントローラ161は、「Sense_data」において、「Response_code」を70hに設定する。さらに、コントローラ161は、応答情報に、図12に示すように、「Additional_sense_code」、または、「Additional_sense_code_qualifier」を表す領域に、最新のポリシー情報を表すポリシー識別子を設定してもよい。図12は、応答情報の一例を概念的に表す図である。
図12に示すように、応答情報である「Sense_data」は、「Status_code」と、「Response_code」と、「Sense_keyと、Additional_sense_code」と、「Additional_sense_code_qualifier」とを含む。
上述したように、コントローラ161は、ポリシー識別子を含む応答情報を作成することにより、改めて、情報処理装置151に応答する必要がなくなる。このため、コントローラ161は、さらに効率よくリクエスト503に応答することができる。
ストレージ160は、ステップS152にてNOと判定する場合であっても、リクエスト503としては正常に処理する必要がある。そこで、ストレージ160は、応答情報における、「Status_code」を「GOOD」に設定する。情報処理装置151は、第1の実施形態に示した情報処理装置でない場合であっても、ストレージ160から「Status_code」が「GOOD」である応答情報を受信する。この場合、情報処理装置151は、「GOOD」という応答に応じて、ストレージ160において問題が発生していないと判定する。
次に、第2の実施形態に係るストレージ160に関する作用効果について説明する。
本実施形態に係るストレージ160によれば、第1の実施形態に係る効果に加え、さらに、通信遅延を低減することができる。
この理由は、理由1及び理由2である。すなわち、
(理由1)情報処理装置151が、第1の実施形態に示したような作用効果を有するためである、
(理由2)情報処理装置151及びストレージ160は、サイズが小さなポリシー識別子を送受信するためである。
一般に、送受信する情報のサイズが大きいほど、通信遅延は大きくなる。ポリシー識別子が、高々、数バイトの情報であるため、ポリシー識別子のサイズは小さい。したがって、通信遅延は、上述した実施形態に比べ、さらに短い。
<第3の実施形態>
次に、上述した第1の実施形態を基本とする本発明の第3の実施形態について説明する。
以降の説明においては、本実施形態に係る特徴的な部分を中心に説明すると共に、上述した第1の実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明を省略する。
尚、第3の実施形態に係る情報処理装置181は、ハードウェアを用いて実現される。
図13を参照しながら、第3の実施形態に係る情報処理システム185が有する構成と、情報処理装置181が行う処理とについて説明する。図13は、本発明の第3の実施形態に係る情報処理システム185が有する構成を示すブロック図である。
第3の実施形態に係る情報処理システム185は、情報処理装置181と、FCスイッチ152と、FCスイッチ153と、ストレージ160とを有する。情報処理装置181は、FCスイッチ152及びFCスイッチ153を介して、ストレージ160と情報を送受信することができる。
情報処理装置181は、発行部182と、ホストバスアダプター(HBA)183と、HBA184とを有する。
発行部182は、リクエスト503を複数のHBA(インタフェースカード)に送信する。HBA(HBA183及びHBA184)は、論理記憶装置がポリシー情報501を適用する対象である場合に、FCスイッチ152及びFCスイッチ153を介して該リクエスト503を送信する。HBA(HBA183及びHBA184)は、それぞれ、FCスイッチを介して通信接続可能な論理記憶装置がポリシー情報501を適用する対象でない場合に、該リクエスト503をコントローラに送信しない。
また、情報処理装置181は、入出力処理が複数の経路を指し示すマルチパスソフトウェアに従い動作する場合に、リクエスト503を送信するコントローラを各HBAに設定することにより、各HBAを制御するドライバにリクエスト503を送信する。
HBA(HBA183及びHBA184)は、リクエスト503を受信し、リクエスト503にて処理する論理ブロックの先頭アドレスを参照する。次に、HBA(HBA183及びHBA184)は、該先頭アドレスが、コントローラにより制御される論理ブロックに含まれるアドレスであるか否かを判定する。HBA(HBA183及びHBA184)は、先頭アドレスが該論理ブロックに含まれるアドレスであると判定する場合に、FCスイッチ(FCスイッチ152及びFCスイッチ153)を介してリクエスト503を送信する。HBAは、先頭アドレスが該論理ブロックに含まれないアドレスであると判定する場合に、リクエスト503をコントローラに送信しない。その場合に、HBA(HBA183及びHBA184)は、情報処理装置181にリクエスト503が正常に完了した情報(たとえば、Linux(登録商標)においては、host_byteにDID_OKを設定する。)を送信する。
マルチパスソフトウェアは、複数の経路に係るすべての処理正常に完了した情報を受信することにより、入出力処理を完了する。一方、マルチパスソフトウェアは、正常終了しない経路がある場合、該経路を対象にする場合の処理と同様に、入出力処理に係るエラーハンドリングを実施する。
また、ソフトウェアを用いて機能を実現する場合には、上述した各実施形態に示した処理を行う。
次に、第3の実施形態に係る情報処理システム185に関する作用効果について説明する。
本実施形態に係る情報処理システム185によれば、ストレージ160における通信遅延を低減することができる。
この理由は、本実施形態に係る情報処理システム185が有する構成は、第1の実施形態に係る情報処理装置が有する構成、及び、第2の実施形態に係るストレージが有する構成を含むためである。この結果、情報処理システム185は、上述した各実施形態に記載の作用効果を享受することができる。
(ハードウェア構成例)
上述した本発明の第1の実施形態における情報処理装置を及び第2の実施形態におけるストレージ(以降、「情報処理システム」と表す)を、1つの計算処理装置(情報処理装置、コンピュータ)を用いて実現するハードウェア資源の構成例について説明する。但し、係る情報処理システムは、物理的または機能的に少なくとも2つの計算処理装置を用いて実現してもよい。また、係る情報処理システムは、専用の装置として実現してもよい。
図14は、第1の実施形態における情報処理装置を及び第2の実施形態におけるストレージを実現可能な計算処理装置のハードウェア構成を概略的に示す図である。計算処理装置20は、中央処理演算装置(Central Processing Unit、以降「CPU」と表す)21、メモリ22、ディスク23、不揮発性記録媒体24、入力装置25、出力装置26、および、通信インターフェース(以降、「通信IF」と表す。)27を有する。計算処理装置20は、通信IF27を介して、他の計算処理装置、及び、通信装置と情報を送受信することができる。
不揮発性記録媒体24は、コンピュータが読み取り可能な、たとえば、コンパクトディスク(Compact Disc)、デジタルバーサタイルディスク(Digital_Versatile_Disc)、ブルーレイディスク(Blu−ray Disc。登録商標)、ユニバーサルシリアルバスメモリ(USBメモリ)、ソリッドステートドライブ(Solid State Drive)等である。不揮発性記録媒体24は、電源を供給しなくても係るプログラムを保持し、持ち運びを可能にする。不揮発性記録媒体24は、上述した媒体に限定されない。また、不揮発性記録媒体24の代わりに、通信IF27を介して、通信ネットワークを介して係るプログラムを持ち運びしてもよい。
すなわち、CPU21は、ディスク23が記憶するソフトウェア・プログラム(コンピュータ・プログラム:以下、単に「プログラム」と称する)を、実行する際にメモリ22にコピーし、演算処理を実行する。CPU21は、プログラム実行に必要なデータをメモリ22から読み取る。表示が必要な場合には、CPU21は、出力装置26に出力結果を表示する。外部からプログラムを入力する場合、CPU21は、入力装置25からプログラムを読み取る。CPU21は、上述した図1、あるいは、図9に示した各部が表す機能(処理)に対応するところのメモリ22にある情報処理装置制御プログラム(図2、図4、あるいは、図10)、または、ストレージ制御プログラムを解釈し実行する。CPU21は、上述した本発明の各実施形態において説明した処理を順次行う。
すなわち、このような場合、本発明は、係る情報処理装置制御プログラム、または、ストレージ制御プログラムによっても成し得ると捉えることができる。更に、係る情報処理装置制御プログラム、または、ストレージ制御プログラムが記録されたコンピュータ読み取り可能な不揮発性の記録媒体によっても、本発明は成し得ると捉えることができる。
101 情報処理装置
102 発行部
201 ストレージ
202 コントローラ
203 コントローラ
501 ポリシー情報
502 論理記憶装置情報
503 リクエスト
151 情報処理装置
152 FCスイッチ
153 FCスイッチ
160 ストレージ
161 コントローラ
162 コントローラ
171 物理記憶装置
172 物理記憶装置
173 物理記憶装置
174 物理記憶装置
175 物理記憶装置
176 物理記憶装置
181 情報処理装置
182 発行部
183 HBA
184 HBA
185 情報処理システム
20 計算処理装置
21 CPU
22 メモリ
23 ディスク
24 不揮発性記録媒体
25 入力装置
26 出力装置
27 通信IF

Claims (10)

  1. 論理ブロックとコントローラとが関連付けされたポリシー情報のうち、ストレージが採用する前記ポリシー情報に基づき、入出力対象となる論理ブロックに関連付けされた特定のコントローラを求め、前記特定のコントローラに前記入出力対象に関するリクエストを送信する発行手段
    を備えることを特徴とする情報処理装置。
  2. 論理ブロックとコントローラとが関連付けされたポリシー情報のうち、入出力対象を含むリクエストに含まれる論理ブロックを制御する特定のコントローラを決める場合に従う特定のポリシー情報を、前記リクエストを送信する情報処理装置に送信するコントローラ
    を備えることを特徴とするストレージ。
  3. 請求項1に記載の情報処理装置と、
    請求項2に記載のストレージと
    を備え、
    前記コントローラは、自装置が採用する前記特定のポリシー情報を一意に識別可能なポリシー識別子を、前記情報処理装置に送信し、
    前記発行手段は、前記コントローラが送信した前記ポリシー識別子が表す前記ポリシー情報に基づき、前記リクエストを送信する
    ことを特徴とする情報処理システム。
  4. 前記情報処理装置は、
    前記コントローラが送信する前記ポリシー識別子を、記憶手段に格納するポリシー格納手段
    をさらに備え、
    前記発行手段は、前記記憶手段から、前記ポリシー識別子を読み取り、読み取ったポリシー識別子が表す前記ポリシー情報に従い、前記リクエストを送信する
    ことを特徴とする請求項3に記載の情報処理システム。
  5. 前記コントローラは、自装置が制御する物理記憶装置が、前記リクエストに含まれる前記論理ブロックを含む場合に、前記リクエストに応じた処理を行い、前記物理記憶装置が、前記リクエストに含まれる前記論理ブロックを含まない場合に、自装置が従う前記特定のポリシー情報を表す前記ポリシー識別子を送信する
    ことを特徴とする請求項3または請求項4に記載の情報処理システム。
  6. 前記ポリシー情報と、前記ポリシー識別子とを関連付けて記憶可能なポリシー情報記憶手段
    をさらに備え、
    前記発行手段は、前記ポリシー情報記憶手段において、前記コントローラが送信する前記ポリシー識別子に関連付けされた前記ポリシー情報を読み取り、読み取った前記ポリシー情報に基づき、前記コントローラを決める
    ことを特徴とする請求項3乃至請求項5のいずれかに記載の情報処理システム。
  7. 情報処理装置を用いて、論理ブロックとコントローラとが関連付けされたポリシー情報のうち、ストレージが採用する前記ポリシー情報に基づき、入出力対象となる前記論理ブロックに関連付けされた特定のコントローラを求め、前記特定のコントローラに前記入出力対象に関するリクエストを送信することを特徴とする情報処理方法。
  8. 情報処理装置を用いて、論理ブロックとコントローラとが関連付けされたポリシー情報のうち、入出力対象を含むリクエストに含まれる論理ブロックを制御する前記特定のコントローラを決める場合に従う特定のポリシー情報を、前記リクエストを送信する情報処理装置に送信するストレージ制御方法。
  9. 論理ブロックとコントローラとが関連付けされたポリシー情報のうち、ストレージが採用する前記ポリシー情報に基づき、入出力対象となる前記論理ブロックに関連付けされた特定のコントローラを求め、前記特定のコントローラに前記入出力対象に関するリクエストを送信する発行機能
    をコンピュータに実現させることを特徴とする情報処理プログラム。
  10. 論理ブロックとコントローラとが関連付けされたポリシー情報のうち、入出力対象を含むリクエストに含まれる論理ブロックを制御する特定のコントローラを決める場合に従う特定のポリシー情報を、前記リクエストを送信する情報処理装置に送信するコントローラ機能
    をコンピュータに実現させることを特徴とするストレージ制御プログラム。
JP2014057066A 2014-03-19 2014-03-19 情報処理システム、情報処理方法、及び、情報処理プログラム Active JP6307962B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014057066A JP6307962B2 (ja) 2014-03-19 2014-03-19 情報処理システム、情報処理方法、及び、情報処理プログラム
US14/659,870 US20150269098A1 (en) 2014-03-19 2015-03-17 Information processing apparatus, information processing method, storage, storage control method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014057066A JP6307962B2 (ja) 2014-03-19 2014-03-19 情報処理システム、情報処理方法、及び、情報処理プログラム

Publications (2)

Publication Number Publication Date
JP2015179448A true JP2015179448A (ja) 2015-10-08
JP6307962B2 JP6307962B2 (ja) 2018-04-11

Family

ID=54142262

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014057066A Active JP6307962B2 (ja) 2014-03-19 2014-03-19 情報処理システム、情報処理方法、及び、情報処理プログラム

Country Status (2)

Country Link
US (1) US20150269098A1 (ja)
JP (1) JP6307962B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017151858A (ja) * 2016-02-26 2017-08-31 日本電気株式会社 ストレージ装置の制御装置、ストレージ装置の制御方法、およびストレージ装置の制御プログラム

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105353989B (zh) * 2015-11-19 2018-12-28 华为技术有限公司 存储数据访问方法及相关的控制器、设备、主机和系统
US10019175B2 (en) * 2016-08-31 2018-07-10 International Business Machines Corporation Managing program access to data storage resources
US11740800B2 (en) * 2021-06-22 2023-08-29 Micron Technology, Inc. Alleviating memory hotspots on systems with multiple memory controllers

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002023963A (ja) * 2000-05-02 2002-01-25 Internatl Business Mach Corp <Ibm> 記憶装置への好ましいパスを選択するための方法、システム、および媒体
JP2003256150A (ja) * 2002-03-01 2003-09-10 Hitachi Ltd 記憶制御装置および記憶制御装置の制御方法
US6675268B1 (en) * 2000-12-11 2004-01-06 Lsi Logic Corporation Method and apparatus for handling transfers of data volumes between controllers in a storage environment having multiple paths to the data volumes
JP2013501272A (ja) * 2009-07-31 2013-01-10 イーエムシー コーポレイション キャッシング記憶制御装置間でストレージコマンドのキャッシュアウェア・マルチパス分散を用いたデータ処理システム
WO2013118243A1 (ja) * 2012-02-06 2013-08-15 株式会社日立製作所 計算機システムおよびデータ入出力方法

Family Cites Families (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6615284B2 (en) * 1996-10-31 2003-09-02 Alon Schatzberg Method and apparatus for performing input/output operations between a requesting device and responding device
US6711632B1 (en) * 1998-08-11 2004-03-23 Ncr Corporation Method and apparatus for write-back caching with minimal interrupts
WO2001040925A1 (fr) * 1999-12-02 2001-06-07 Fujitsu Limited Batterie de disques et procede d'extension de sa capacite
US6629158B1 (en) * 2000-02-16 2003-09-30 International Business Machines Corporation System, apparatus, and method for configuring an array controller
US6633962B1 (en) * 2000-03-21 2003-10-14 International Business Machines Corporation Method, system, program, and data structures for restricting host access to a storage space
US6393535B1 (en) * 2000-05-02 2002-05-21 International Business Machines Corporation Method, system, and program for modifying preferred path assignments to a storage device
JP2001350707A (ja) * 2000-06-06 2001-12-21 Hitachi Ltd 情報処理システム、記憶装置の割り当て方法
US6665743B2 (en) * 2001-04-18 2003-12-16 International Business Machines Corporation Method, system, and program for initializing a storage space
JP2003005920A (ja) * 2001-06-22 2003-01-10 Nec Corp ストレージシステム、データ再配置方法及びデータ再配置プログラム
US6845465B2 (en) * 2001-09-17 2005-01-18 Sun Microsystems, Inc. Method and system for leveraging spares in a data storage system including a plurality of disk drives
US6954824B2 (en) * 2001-10-15 2005-10-11 International Business Machines Corporation Method, system, and program for determining a configuration of a logical array including a plurality of storage devices
US6895467B2 (en) * 2001-10-22 2005-05-17 Hewlett-Packard Development Company, L.P. System and method for atomizing storage
US20030084397A1 (en) * 2001-10-31 2003-05-01 Exanet Co. Apparatus and method for a distributed raid
JP2003248611A (ja) * 2002-02-26 2003-09-05 Hitachi Ltd 記憶管理統合システム、および、その記憶管理制御方法
US7406039B2 (en) * 2002-02-26 2008-07-29 Dell Products L.P. System and method for a failover protocol in storage area network controllers
JP3869769B2 (ja) * 2002-07-24 2007-01-17 株式会社日立製作所 ストレージ・ネットワーク用のスイッチングノード装置および遠隔ストレージ装置のアクセス方法
US6904498B2 (en) * 2002-10-08 2005-06-07 Netcell Corp. Raid controller disk write mask
US6952794B2 (en) * 2002-10-10 2005-10-04 Ching-Hung Lu Method, system and apparatus for scanning newly added disk drives and automatically updating RAID configuration and rebuilding RAID data
US6795850B2 (en) * 2002-12-13 2004-09-21 Sun Microsystems, Inc. System and method for sharing memory among multiple storage device controllers
US20040230753A1 (en) * 2003-05-16 2004-11-18 International Business Machines Corporation Methods and apparatus for providing service differentiation in a shared storage environment
US7213102B2 (en) * 2003-06-26 2007-05-01 International Business Machines Corporation Apparatus method and system for alternate control of a RAID array
US20050050273A1 (en) * 2003-08-27 2005-03-03 Horn Robert L. RAID controller architecture with integrated map-and-forward function, virtualization, scalability, and mirror consistency
JP4215606B2 (ja) * 2003-09-24 2009-01-28 日本電気株式会社 ディスクアレイ装置および記憶容量拡張方法ならびにプログラム
CN100350371C (zh) * 2003-10-07 2007-11-21 普安科技股份有限公司 磁盘阵列一致性初始化方法
US20050102468A1 (en) * 2003-11-06 2005-05-12 Delaney William P. Methods and systems for coupling multiple initiators to SATA storage devices
US7305520B2 (en) * 2004-01-30 2007-12-04 Hewlett-Packard Development Company, L.P. Storage system with capability to allocate virtual storage segments among a plurality of controllers
US20050289296A1 (en) * 2004-06-23 2005-12-29 Sridhar Balasubramanian SAN based application recognition (SBAR) for RAID controller
JP2006072435A (ja) * 2004-08-31 2006-03-16 Hitachi Ltd ストレージシステムおよびデータ記録方法
EP1810155A4 (en) * 2004-09-22 2009-06-10 Xyratex Tech Ltd SYSTEM AND METHOD FOR ADAPTING THE NETWORK CONTROL BEHAVIOR BASED ON APPLICATION SPECIFIC INPUTS
US7143308B2 (en) * 2005-01-14 2006-11-28 Charlie Tseng Apparatus, system, and method for differential rebuilding of a reactivated offline RAID member disk
JP4688514B2 (ja) * 2005-02-14 2011-05-25 株式会社日立製作所 ストレージ制御装置
US20070101058A1 (en) * 2005-10-27 2007-05-03 Kinnan Keith R Storage unit configuration
JP4927412B2 (ja) * 2006-02-10 2012-05-09 株式会社日立製作所 記憶制御方法及びその制御方法
JP2007279845A (ja) * 2006-04-03 2007-10-25 Hitachi Ltd ストレージシステム
US7847801B2 (en) * 2006-09-29 2010-12-07 Lsi Corporation Method for reporting redundant controllers as independent storage entities
JP2008112291A (ja) * 2006-10-30 2008-05-15 Hitachi Ltd 記憶制御装置及び記憶制御装置のデータ移動方法
US20080168209A1 (en) * 2007-01-09 2008-07-10 Ibm Corporation Data protection via software configuration of multiple disk drives
US7797060B2 (en) * 2007-02-27 2010-09-14 Rockwell Automation Technologies, Inc. Prioritization associated with controller engine instances
US7668981B1 (en) * 2007-03-28 2010-02-23 Symantec Operating Corporation Storage paths
US8874841B2 (en) * 2007-04-30 2014-10-28 Hewlett-Packard Development Company, L.P. Method and system for distributing snapshots across arrays of an array cluster
US7814246B2 (en) * 2007-04-30 2010-10-12 Hewlett-Packard Development Company, L.P. Translation of data to/from storage devices based on a redundancy configuration and host interface type
US7761629B2 (en) * 2007-06-04 2010-07-20 International Business Machines Corporation Method for using host and storage controller port information to configure paths between a host and storage controller
KR20090085906A (ko) * 2008-02-05 2009-08-10 삼성전자주식회사 로지컬 인터페이스의 우선순위에 따른 라우팅 처리 시스템및 그 제어방법
JP5216463B2 (ja) * 2008-07-30 2013-06-19 株式会社日立製作所 ストレージ装置、その記憶領域管理方法及びフラッシュメモリパッケージ
US8307044B2 (en) * 2008-08-28 2012-11-06 Netapp, Inc. Circuits, systems, and methods to integrate storage virtualization in a storage controller
US8891298B2 (en) * 2011-07-19 2014-11-18 Greenthread, Llc Lifetime mixed level non-volatile memory system
US8166264B2 (en) * 2009-02-05 2012-04-24 Hitachi, Ltd. Method and apparatus for logical volume management
US8321645B2 (en) * 2009-04-29 2012-11-27 Netapp, Inc. Mechanisms for moving data in a hybrid aggregate
JP5437373B2 (ja) * 2009-07-22 2014-03-12 株式会社日立製作所 複数のフラッシュパッケージを有するストレージシステム
TWI407310B (zh) * 2009-10-09 2013-09-01 Silicon Motion Inc 資料儲存裝置及資料存取方法
US8930620B2 (en) * 2010-11-12 2015-01-06 Symantec Corporation Host discovery and handling of ALUA preferences and state transitions
US20120198152A1 (en) * 2011-02-01 2012-08-02 Drobo, Inc. System, apparatus, and method supporting asymmetrical block-level redundant storage
US8775731B2 (en) * 2011-03-25 2014-07-08 Dell Products, L.P. Write spike performance enhancement in hybrid storage systems
WO2012147123A1 (en) * 2011-04-26 2012-11-01 Hitachi, Ltd. Storage apparatus and control method therefor
US9021232B2 (en) * 2011-06-30 2015-04-28 Infinidat Ltd. Multipath storage system and method of operating thereof
US8793443B2 (en) * 2011-09-09 2014-07-29 Lsi Corporation Methods and structure for improved buffer allocation in a storage controller
US8706961B2 (en) * 2011-10-31 2014-04-22 Hitachi, Ltd. Storage apparatus and data management method
US9626105B2 (en) * 2011-12-12 2017-04-18 International Business Machines Corporation Controlling a storage system
US9047352B1 (en) * 2012-09-28 2015-06-02 Emc Corporation Centralized searching in a data storage environment
JP2014130387A (ja) * 2012-12-27 2014-07-10 Fujitsu Ltd ストレージコントローラ選択システム、ストレージコントローラ選択方法、およびストレージコントローラ選択プログラム
US20140281219A1 (en) * 2013-03-15 2014-09-18 Silicon Graphics International Corp. Storage Zoning Tool
US9015111B2 (en) * 2013-04-05 2015-04-21 Hitachi, Ltd. Storage system and storage system control method
US9336129B2 (en) * 2013-10-02 2016-05-10 Sandisk Technologies Inc. System and method for bank logical data remapping
CA2881206A1 (en) * 2014-02-07 2015-08-07 Andrew WARFIELD Methods, systems and devices relating to data storage interfaces for managing address spaces in data storage devices
US9594508B2 (en) * 2014-03-04 2017-03-14 Kabushiki Kaisha Toshiba Computer system having tiered block storage device, storage controller, file arrangement method and storage medium
US9003109B1 (en) * 2014-05-29 2015-04-07 SanDisk Technologies, Inc. System and method for distributed computing in non-volatile memory
JP2016143248A (ja) * 2015-02-02 2016-08-08 富士通株式会社 ストレージ制御装置及びストレージ制御プログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002023963A (ja) * 2000-05-02 2002-01-25 Internatl Business Mach Corp <Ibm> 記憶装置への好ましいパスを選択するための方法、システム、および媒体
US6675268B1 (en) * 2000-12-11 2004-01-06 Lsi Logic Corporation Method and apparatus for handling transfers of data volumes between controllers in a storage environment having multiple paths to the data volumes
JP2003256150A (ja) * 2002-03-01 2003-09-10 Hitachi Ltd 記憶制御装置および記憶制御装置の制御方法
JP2013501272A (ja) * 2009-07-31 2013-01-10 イーエムシー コーポレイション キャッシング記憶制御装置間でストレージコマンドのキャッシュアウェア・マルチパス分散を用いたデータ処理システム
WO2013118243A1 (ja) * 2012-02-06 2013-08-15 株式会社日立製作所 計算機システムおよびデータ入出力方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017151858A (ja) * 2016-02-26 2017-08-31 日本電気株式会社 ストレージ装置の制御装置、ストレージ装置の制御方法、およびストレージ装置の制御プログラム

Also Published As

Publication number Publication date
US20150269098A1 (en) 2015-09-24
JP6307962B2 (ja) 2018-04-11

Similar Documents

Publication Publication Date Title
CN110431542B (zh) 管理存储网络中的i/o操作
WO2017190084A1 (en) Offloading storage encryption operations
JP2016539399A (ja) データ書込み要求処理方法及びストレージアレイ
JP6307962B2 (ja) 情報処理システム、情報処理方法、及び、情報処理プログラム
JP6254293B2 (ja) データ重複排除方法及びストレージアレイ
JP2017513096A (ja) コンピュータ、制御デバイス及びデータ処理方法
JP6513295B2 (ja) 計算機システム
US10114583B2 (en) Storage system, storage management method, and storage medium
JP7075067B2 (ja) ストレージ装置
JP6418419B2 (ja) ハードディスクがアプリケーションコードを実行するための方法および装置
JP5272185B2 (ja) 計算機システム及びストレージシステム
JP2005149283A (ja) 情報処理システム、情報処理システムの制御方法及びプログラム
WO2015162717A1 (ja) 計算機
JP2018010698A (ja) データ書込み要求処理方法及びストレージアレイ
JP6191021B2 (ja) アクセス装置、情報記録装置およびアクセスシステム
JP7113698B2 (ja) 情報システム
JP6653786B2 (ja) I/o制御方法およびi/o制御システム
JP5750169B2 (ja) 計算機システム、プログラム連携方法、及びプログラム
JP6870390B2 (ja) 仮想基盤にもとづくシステムにおけるリソース割当方法、接続管理サーバおよび接続管理プログラム
JP7021742B2 (ja) 情報処理装置、情報処理方法、プログラム
WO2023231064A1 (zh) 存储装置的优化方法、存储装置以及计算机可读存储介质
KR102689068B1 (ko) 메모리 내 데이터 이동 방법 및 시스템
US11144206B2 (en) Method and system for sharing data reduction metadata with storage systems
KR102689070B1 (ko) 메모리 내 데이터 이동 방법 및 시스템
JP7235295B2 (ja) 仮想マシン管理装置、仮想マシン管理方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180202

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180226

R150 Certificate of patent or registration of utility model

Ref document number: 6307962

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150