JP6068676B2 - 計算機システム及び計算機システムの制御方法 - Google Patents
計算機システム及び計算機システムの制御方法 Download PDFInfo
- Publication number
- JP6068676B2 JP6068676B2 JP2015550262A JP2015550262A JP6068676B2 JP 6068676 B2 JP6068676 B2 JP 6068676B2 JP 2015550262 A JP2015550262 A JP 2015550262A JP 2015550262 A JP2015550262 A JP 2015550262A JP 6068676 B2 JP6068676 B2 JP 6068676B2
- Authority
- JP
- Japan
- Prior art keywords
- request
- processor
- information
- controller
- server
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1642—Handling requests for interconnection or transfer for access to memory bus based on arbitration with request queuing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0665—Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
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)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明の実施例1におけるストレージ装置2は、1または複数のHDD22から1つまたは複数の論理ボリューム(LDEVとも呼ばれる)を形成する。各論理ボリュームにはストレージ装置2内で一意な番号を付与して管理しており、それを論理ボリューム番号(LDEV#)と呼ぶ。また、サーバ3がI/Oコマンドの発行時などにアクセス対象のボリュームを指定する場合、計算機システム1内でサーバ3を一意に特定可能な情報(あるいはサーバ3内で仮想計算機が動作する環境の場合には、仮想計算機を一意に特定可能な情報)であるS_IDと、論理ユニット番号(LUN)とを用いる。つまりサーバ3は、I/OコマンドのコマンドパラメータにS_IDとLUNとを含めることによって、アクセス対象のボリュームを一意に特定するのであって、サーバ3はボリュームを指定する際に、ストレージ装置2で用いられるLDEV#を用いない。そのためストレージ装置2では、LDEV#とLUNとの対応関係を管理する情報(論理ボリューム管理テーブル200)を保持し、その情報を用いて、サーバ3からI/Oコマンドで指定されたS_IDとLUNの組の情報をLDEV#に変換している。図2に示す論理ボリューム管理テーブル200(または「LDEV管理テーブル200」とも呼ばれる)は、LDEV#とLUNの対応関係を管理するテーブルで、コントローラ21a、21b内のそれぞれのメモリ24a、24bに同じテーブルが格納されている。S_ID200−1とLUN200−2の欄には、LDEV#200−4で特定される論理ボリュームに対応付けられている、サーバ3のS_ID、LUNが格納される。MP#200−4は、オーナ権という情報を格納する欄で、オーナ権については以下で説明する。
図3は、サーバ3がストレージ装置2に対してI/O要求を送信する際の処理の概要を示している。まずS1は、計算機システム1の起動後の初期設定時のみ行われる処理で、ストレージコントローラ21aまたは21bが振分テーブル241a、241bを生成し、そして振分テーブルのリード先情報と振分テーブルベースアドレス情報とをサーバ3の振分モジュール33に通知する。振分テーブル241は、オーナ権情報を格納したテーブルであり、その内容は後述する。また、S1での振分テーブル241a(または241b)の生成処理は、振分テーブル241を格納する記憶領域をメモリ上に確保し、内容を初期化(たとえばテーブル上全領域に0を書き込む等)する処理である。
続いて、図3のS4で振分モジュール33が算出する振分テーブル241のアクセスアドレス及び振分テーブル241の内容について図4、図5を用いて説明する。ストレージコントローラ21のメモリ24は、64ビットのアドレス空間を持つ記憶領域で、振分テーブル241はメモリ24内の連続領域に格納されている。図4は、振分モジュール33が算出する振分テーブル241内アドレス情報のフォーマットを示している。このアドレス情報は、42ビットの振分テーブルベースアドレス、8ビットのIndex、12ビットのLUN、そして2ビットの固定値(値は00)で構成される。振分テーブルベースアドレスは、図3のS2で振分モジュール33がコントローラ21から受信する情報である。
次に、サーバ3の振分部35の行う処理(図3のS4、S6に相当する処理)の詳細を説明するが、その前に振分部35が自身のメモリ内に保持する情報について図6を用いて説明する。振分部35がI/O振分け処理を行うために必要な情報として、検索データテーブル3010、振分けテーブルベースアドレス情報3110、振分けテーブルリード先CTL#情報3120がある。検索データテーブル3010のIndex#3011には、S_ID3012の欄に格納されているS_IDに対応するIndex番号が格納されており、サーバ3からI/Oコマンドを受信すると、この検索データテーブル3010を用いてI/Oコマンド中のS_IDからIndex番号を導出する。ただし、図6の検索データテーブル3010の構成は一例であり、図6で示した構成以外に、たとえばS_ID3012の欄のみを有するテーブルで、Index番号が0番、1番、2番…のS_IDが、S_ID3012欄の先頭から順に格納されるテーブルなどを用いても、本発明は有効である。
図7を用いて、サーバ3の振分部35の行う処理(図3のS4、S6に相当する処理)の詳細を説明する。振分部35がポート36を介してMPU31からI/Oコマンドを受信すると、I/Oコマンドに含まれるサーバ3(あるいはサーバ3上の仮想計算機)のS_ID、アクセス対象LUのLUNを抽出する(S41)。振分部35は続いて、抽出されたS_IDをIndex番号に変換する処理を行う。この時、振分部35内で管理する検索データテーブル3010を用いる。振分部35は検索データテーブル3010のS_ID3012を参照して、S41で抽出したS_IDと一致する行(エントリ)を検索する。
続いて、Index番号の検索が失敗した場合に(S43の判定で、Noの場合)、代表MPに対して送信されたI/Oコマンドを受信した、ストレージ装置2での処理の流れを、図8を用いて説明する。代表MP(ここでは、コントローラ21aのMPU23aが代表MPだった場合を例にとって説明する)がI/Oコマンドを受信すると、コントローラ21aは、I/Oコマンドに含まれているS_IDとLUN、及びLDEV管理テーブル200を参照して、自身がアクセス対象のLUのオーナ権を持っているか判定する(S11)。オーナ権がある場合は、以降の処理をコントローラ21aで実施し、オーナ権がない場合には、コントローラ21bにI/Oコマンドを転送する。以降の処理はコントローラ21a、21bのいずれか一方で行われ、かつコントローラ21a、21bのいずれで処理が行われたとしても、処理に大きな違いはないため、「コントローラ21」が処理を行うこととして記載している。
振分テーブル241は、オーナ権、LU、LDEVに関する情報を格納しているテーブルであるため、LUが生成された場合やオーナ権に変更が発生する場合にも、情報の登録・更新が発生する。ここではLUを生成した場合を例にとって、振分テーブル241への情報登録の流れを説明する。
なお、本発明の実施例1の振分モジュール33は、同時に複数のI/Oコマンドを受信し、コントローラ21aまたは21bへと振り分ける処理を行うことが可能である。つまりMPU31から第1のコマンドを受信し、第1のコマンドの送信先の決定処理を行っている間に、MPU31から第2のコマンドを受信することが可能である。この場合の処理の流れについて、図9を用いて説明する。
続いて、本発明の実施例1におけるストレージ装置2で障害が発生した場合、特に複数のコントローラ21のうちの1つが停止した場合の処理について説明する。1つのコントローラ21が停止した時、当該停止したコントローラ21が振分テーブル241を有していたとすると、サーバ3はそれ以降振分テーブル241にアクセスできなくなるため、振分テーブル241を別のコントローラ21に移動し(再作成し)、かつ振分モジュールが振分テーブル241にアクセスする際のアクセス先コントローラ21の情報を変更する必要がある。また停止したコントローラ21がオーナ権を有していたボリュームについてもオーナ権を変更する必要がある。
続いて、本発明の実施例2におけるストレージコントローラ1001が有する管理情報について説明していく。まずストレージコントローラ1001がサーバブレード1002やホスト1008に提供する論理ボリューム(LU)についての管理情報について説明する。
ストレージメモリ1012−1、1012−2には、サーバブレード1002がコントローラ1001に対して発行するI/Oコマンドを格納する、FIFO型の領域が設けられており、実施例2ではそれをコマンドキューと呼ぶ。図14に、ストレージメモリ1012−1に設けられているコマンドキューの一例を示す。図14に示されているように、コマンドキューはサーバブレード1002ごと、及びコントローラ1001のプロセッサコアごとに設けられている。たとえばサーバブレード1002−1が、識別番号0x01のプロセッサコア(コア0x01)がオーナ権を持つLUに対するI/Oコマンドを発行すると、サーバブレード1002−1は、サーバブレード1002−1用のコマンドキューの集合10131−1の中の、コア0x01用キューにコマンドを格納する。なお、ストレージメモリ1012−2にも同様に、サーバブレードごとのコマンドキューが設けられているが、ストレージメモリ1012−2に設けられるコマンドキューは、MPU1011−2の持つプロセッサコア、つまり識別番号0x08〜0x0Fのプロセッサコアに対するコマンドを格納するキューである点が、ストレージメモリ1012−1に設けられているコマンドキューと異なる。
実施例2におけるコントローラ1001も実施例1のコントローラ21と同様、振分テーブル241を有する。振分テーブル241の内容は実施例1で説明したもの(図5)と同様である。相違点は、実施例2の振分テーブル241では、MPU#502にプロセッサコアの識別番号(つまり0x00〜0x0F)が格納される点であり、それ以外の点は実施例1における振分テーブルと同じである。
実施例1のストレージコントローラ21は、I/Oコマンドに含まれるサーバ3(あるいはサーバ3上で動作する仮想計算機)の情報(S_ID)をもとに、8ビットのIndex番号を導出し、サーバ3はIndex番号を用いて振分テーブル内アクセス先を決定していた。そしてコントローラ21は、S_IDとIndex番号の対応関係の情報をインデックステーブル600に管理していた。実施例2におけるコントローラ1001も同様に、インデックステーブル600を保持し、S_IDとIndex番号の対応関係の情報を管理している。
本発明の実施例2のブレードサーバ1002がI/O振分処理を行うために、ブレードサーバ1002で維持管理する情報は、実施例1のサーバ3(の振分部35)が有する情報(検索データテーブル3010、振分けテーブルベースアドレス情報3110、振分けテーブルリード先CTL#情報3120)と同じである。実施例2のブレードサーバ1002では、これらの情報はASIC1024の内部RAM10246に格納される。
続いて、図15、16を用いて、サーバブレード1002がストレージコントローラモジュール1001に対してI/O要求(リード要求を例にとる)を送信する際の処理の概要を説明する。この処理の流れは実施例1の図3に記載の流れと同様である。なお、実施例2における計算機システム1000でも、初期設定時には、図3のS1、S2の処理(振分テーブルの生成と、振分テーブルのリード先、振分テーブルベースアドレス情報の送信)は行われるが、図15、16ではその処理は省略している。
続いて、Index番号の検索が失敗した場合の処理(たとえばサーバブレード1002(またはサーバブレード1002上で稼働する仮想計算機)が最初にコントローラ1002にI/O要求を発行した時など)について、図17を用いて説明する。この処理は、実施例1における図8の処理と同様である。
実施例1において、振分モジュール33がサーバ3のMPU31から第1のコマンドを受信し、第1のコマンドの送信先の決定処理を行っている間に、MPU31から第2のコマンドを受信して処理することが可能であることを説明した。実施例2のASIC1024も同様に、複数のコマンドを同時期に処理することが可能で、この処理は実施例1の図9の処理と同じである。
また実施例2の計算機システムでも、実施例1で説明したLU生成時の処理や障害発生時の処理は、同様に実施される。処理の流れは実施例1で説明したものと同じであるため詳細な説明は省略する。なお、これらの処理の過程でオーナ権情報を決定する処理が行われるが、実施例2の計算機システムではLUのオーナ権をプロセッサコアが持つため、オーナ権の決定の際には、コントローラ1001はMPU1011ではなく、コントローラ1001内のいずれかのプロセッサコア10111を選択する点が、実施例1における処理と異なる。
2: ストレージ装置
3: サーバ
4: 管理端末
6: LAN
7: I/Oバス
21: ストレージコントローラ
22: HDD
23: MPU
24: メモリ
25: ディスクインタフェース
26: ポート
27: コントローラ間接続パス
31: MPU
32: メモリ
33: 振分モジュール
34: 相互接続スイッチ
35: 振分部
36,37: ポート
Claims (14)
- 1以上のサーバと、ストレージ装置とを有する計算機システムであって、
前記ストレージ装置は、1以上の記憶媒体と、第1プロセッサ及び第1メモリを有する第1コントローラと、第2プロセッサ及び第2メモリを有する第2コントローラとを有し、第1コントローラと第2コントローラはいずれも前記サーバに接続されており、
前記サーバは、第3プロセッサと第3メモリと、前記第3プロセッサが発行する前記ストレージ装置に対するI/O要求を前記第1プロセッサまたは第2プロセッサのいずれかに送信する振分モジュールを有し、
前記振分モジュールは、
前記第3プロセッサが第1のI/O要求を発行すると、前記ストレージ装置が提供する振分情報に基づいて、前記第1プロセッサまたは前記第2プロセッサのいずれを前記第1のI/O要求の送信先にするか決定する処理を開始し、
前記第1のI/O要求の送信先が決定する前に、前記第3プロセッサから第2のI/O要求を受信すると、前記ストレージ装置が提供する振分情報に基づいて、前記第1プロセッサまたは前記第2プロセッサのいずれを前記第2のI/O要求の送信先にするか決定する処理を開始し、
前記第1のI/O要求の送信先が決定すると、前記決定された送信先に対して前記第1のI/O要求を送信し、
前記第1のI/O要求の送信先が決定するまでは、前記第2のI/O要求を前記送信先に送信しない、
ことを特徴とする、計算機システム。 - 前記ストレージ装置は、前記第1メモリまたは前記第2メモリに、前記サーバのI/O要求の送信先についての情報を格納した振分テーブルを有し、
前記振分モジュールは、前記第3プロセッサからI/O要求を受信すると、前記振分テーブルに格納された前記情報を取得し、前記情報に基づいて前記第1プロセッサ、前記第2プロセッサのいずれを前記I/O要求の送信先にするか決定することを特徴とする、請求項1に記載の計算機システム。 - 前記ストレージ装置は、前記1以上の記憶媒体で構成される複数のボリュームを前記サーバに提供し、
前記第3プロセッサから発行されるI/O要求には少なくとも、前記サーバに与えられた固有の識別子と、前記ストレージ装置が提供するボリュームの論理ユニット番号(LUN)が含まれており、
前記振分テーブルには、前記ボリュームごとに、前記I/O要求の送信先についての情報が格納されている計算機システムであって、
前記振分モジュールは、
前記識別子及び前記識別子に対応付けられたインデックス番号との対応関係についての情報を格納した検索データテーブルを有し、
前記第3プロセッサから前記第1のI/O要求を受信すると、前記検索データテーブルを参照し、前記識別子が前記検索データテーブルに存在する場合には、前記識別子に基づいて前記インデックス番号を特定し、
前記特定したインデックス番号と前記第1のI/O要求に含まれるLUNとに基づいて前記振分テーブル内の参照先アドレスを決定し、前記参照先アドレスで特定される前記第1メモリまたは第2メモリ上の領域に格納された情報を読み出すことによって、前記第1のI/O要求の送信先についての情報を取得し、
前記取得した情報に基づいて、前記第1プロセッサ、前記第2プロセッサのいずれを前記第1のI/O要求の送信先にするか決定することを特徴とする、
請求項2に記載の計算機システム。 - 前記計算機システムでは、前記サーバの識別子に対応付けられたインデックス番号が前記検索データテーブルに存在しない場合の前記I/O要求の送信先の情報である、代表プロセッサ情報があらかじめ定義されており、
前記振分モジュールは、前記第3プロセッサから前記第2のI/O要求を受信すると、前記検索データテーブルを参照し、前記第2のI/O要求に含まれている前記識別子が前記検索データテーブルに存在しなかった場合、前記第1メモリまたは第2メモリ上の所定領域のデータの読み出しを実行した後、前記代表プロセッサ情報で特定される送信先に対して前記第2のI/O要求を送信することを特徴とする、
請求項3に記載の計算機システム。 - 前記ストレージ装置は、前記第2のI/O要求に対する応答を前記サーバに返却した後、
前記識別子に対応付けられるべきインデックス番号を決定し、前記決定したインデックス番号を前記検索データテーブルに、前記識別子と対応付けて格納する
ことを特徴とする、請求項4に記載の計算機システム。 - 前記ストレージ装置では、前記ボリュームに対するI/O要求の処理を担当するプロセッサが、前記ボリュームごとにあらかじめ定められており、
前記振分テーブルに格納されている、前記ボリュームごとの前記I/O要求の送信先についての情報は、前記各ボリュームに対するI/O要求を担当するプロセッサの情報である
ことを特徴とする、請求項3に記載の計算機システム。 - 前記第1プロセッサ及び前記第2プロセッサは、それぞれ複数のプロセッサコアを有し、
前記振分モジュールは、前記第3プロセッサからI/O要求を受信すると、前記振分テーブルに格納された前記情報を取得し、前記情報に基づいて前記第1プロセッサまたは前記第2プロセッサの有する複数のプロセッサコアのうち、いずれのプロセッサコアを前記I/O要求の送信先にするか決定することを特徴とする、請求項2に記載の計算機システム。 - 1以上のサーバと、ストレージ装置とを有する計算機システムの制御方法であって、
前記ストレージ装置は、1以上の記憶媒体と、第1プロセッサ及び第1メモリを有する第1コントローラと、第2プロセッサ及び第2メモリを有する第2コントローラとを有し、第1コントローラと第2コントローラはいずれも前記サーバに接続されており、
前記サーバは、第3プロセッサと第3メモリと、前記第3プロセッサが発行する前記ストレージ装置に対するI/O要求を前記第1プロセッサまたは第2プロセッサのいずれかに送信する振分モジュールを有し、
前記振分モジュールは、
前記第3プロセッサが第1のI/O要求を発行すると、前記ストレージ装置が提供する振分情報に基づいて、前記第1プロセッサまたは前記第2プロセッサのいずれを前記第1のI/O要求の送信先にするか決定する処理を開始し、
前記第1のI/O要求の送信先が決定する前に、前記第3プロセッサから第2のI/O要求を受信すると、前記ストレージ装置が提供する振分情報に基づいて、前記第1プロセッサまたは前記第2プロセッサのいずれを前記第2のI/O要求の送信先にするか決定する処理を開始し、
前記第1のI/O要求の送信先が決定すると、前記決定された送信先に対して前記第1のI/O要求を送信し、
前記第1のI/O要求の送信先が決定するまでは、前記第2のI/O要求を前記送信先に送信しない、
ことを特徴とする、計算機システムの制御方法。 - 前記ストレージ装置は、前記第1メモリまたは前記第2メモリに、前記サーバのI/O要求の送信先についての情報を格納した振分テーブルを有し、
前記振分モジュールは、前記第3プロセッサからI/O要求を受信すると、前記振分テーブルに格納された前記情報を取得し、前記情報に基づいて前記第1プロセッサ、前記第2プロセッサのいずれを前記I/O要求の送信先にするか決定することを特徴とする、請求項8に記載の計算機システムの制御方法。 - 前記ストレージ装置は、前記1以上の記憶媒体で構成される複数のボリュームを前記サーバに提供するストレージ装置であって、
前記第3プロセッサから発行されるI/O要求には少なくとも、前記サーバに与えられた固有の識別子と、前記ストレージ装置が提供するボリュームの論理ユニット番号(LUN)が含まれており、
前記振分テーブルには、前記ボリュームごとに、前記I/O要求の送信先についての情報が格納されており、
前記振分モジュールは、前記識別子及び前記識別子に対応付けられたインデックス番号との対応関係についての情報を格納した検索データテーブルを有しており、
前記振分モジュールは、
前記第3プロセッサから前記第1のI/O要求を受信すると、前記検索データテーブルを参照し、前記識別子が前記検索データテーブルに存在する場合には、前記識別子に基づいて前記インデックス番号を特定し、
前記特定したインデックス番号と前記第1のI/O要求に含まれるLUNとに基づいて前記振分テーブル内の参照先アドレスを決定し、前記参照先アドレスで特定される前記第1メモリまたは第2メモリ上の領域に格納された情報を読み出すことによって、前記第1のI/O要求の送信先についての情報を取得し、
前記取得した情報に基づいて、前記第1プロセッサ、前記第2プロセッサのいずれを前記第1のI/O要求の送信先にするか決定する、
ことを特徴とする、請求項9に記載の計算機システムの制御方法。 - 前記計算機システムでは、前記サーバの識別子に対応付けられたインデックス番号が前記検索データテーブルに存在しない場合の前記I/O要求の送信先の情報である、代表プロセッサ情報があらかじめ定義されており、
前記振分モジュールは、前記第3プロセッサから前記第2のI/O要求を受信すると、前記検索データテーブルを参照し、前記第2のI/O要求に含まれている前記識別子が前記検索データテーブルに存在しなかった場合、前記第1メモリまたは第2メモリ上の所定領域のデータの読み出しを実行した後、前記代表プロセッサ情報で特定される送信先に対して前記第2のI/O要求を送信する、
ことを特徴とする、請求項10に記載の計算機システムの制御方法。 - 前記ストレージ装置は、前記第2のI/O要求に対する応答を前記サーバに返却した後、
前記識別子に対応付けられるべきインデックス番号を決定し、前記決定したインデックス番号を前記検索データテーブルに、前記識別子と対応付けて格納する
ことを特徴とする、請求項11に記載の計算機システムの制御方法。 - 前記ストレージ装置では、前記ボリュームに対するI/O要求の処理を担当するプロセッサが、前記ボリュームごとにあらかじめ定められており、
前記振分テーブルに格納されている、前記ボリュームごとの前記I/O要求の送信先についての情報は、前記各ボリュームに対するI/O要求を担当するプロセッサの情報である
ことを特徴とする、請求項10に記載の計算機システムの制御方法。 - 前記第1プロセッサ及び前記第2プロセッサは、それぞれ複数のプロセッサコアを有し、
前記振分モジュールは、前記第3プロセッサからI/O要求を受信すると、前記振分テーブルに格納された前記情報を取得し、前記情報に基づいて前記第1プロセッサまたは前記第2プロセッサの有する複数のプロセッサコアのうち、いずれのプロセッサコアを前記I/O要求の送信先にするか決定することを特徴とする、請求項9に記載の計算機システムの制御方法。
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2013/082006 WO2015079528A1 (ja) | 2013-11-28 | 2013-11-28 | 計算機システム及び計算機システムの制御方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP6068676B2 true JP6068676B2 (ja) | 2017-01-25 |
| JPWO2015079528A1 JPWO2015079528A1 (ja) | 2017-03-16 |
Family
ID=53198517
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2015550262A Expired - Fee Related JP6068676B2 (ja) | 2013-11-28 | 2013-11-28 | 計算機システム及び計算機システムの制御方法 |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US20160224479A1 (ja) |
| JP (1) | JP6068676B2 (ja) |
| CN (1) | CN105009100A (ja) |
| DE (1) | DE112013006634T5 (ja) |
| GB (1) | GB2536515A (ja) |
| WO (1) | WO2015079528A1 (ja) |
Families Citing this family (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN104811473B (zh) * | 2015-03-18 | 2018-03-02 | 华为技术有限公司 | 一种创建虚拟非易失性存储介质的方法、系统及管理系统 |
| JP6516860B2 (ja) * | 2015-10-26 | 2019-05-22 | 株式会社日立製作所 | 計算機システム、及び、アクセス制御方法 |
| US10277677B2 (en) * | 2016-09-12 | 2019-04-30 | Intel Corporation | Mechanism for disaggregated storage class memory over fabric |
| CN106648851A (zh) * | 2016-11-07 | 2017-05-10 | 郑州云海信息技术有限公司 | 一种多控存储中io管理的方法和装置 |
| KR102367359B1 (ko) * | 2017-04-17 | 2022-02-25 | 에스케이하이닉스 주식회사 | 직렬 시스템 버스 인터페이스 및 직접메모리액세스 컨트롤러를 갖는 전자 시스템 및 그 동작 방법 |
| KR20210046348A (ko) * | 2019-10-18 | 2021-04-28 | 삼성전자주식회사 | 복수의 프로세서들에 유연하게 메모리를 할당하기 위한 메모리 시스템 및 그것의 동작 방법 |
| WO2021174063A1 (en) * | 2020-02-28 | 2021-09-02 | Nebulon, Inc. | Cloud defined storage |
| CN113297112B (zh) * | 2021-04-15 | 2022-05-17 | 上海安路信息科技股份有限公司 | PCIe总线的数据传输方法、系统及电子设备 |
| US12175119B2 (en) | 2021-12-06 | 2024-12-24 | SanDisk Technologies, Inc. | Enterprise host memory buffer for DRAM-less SSD |
| US11816337B2 (en) * | 2021-12-06 | 2023-11-14 | Western Digital Technologies, Inc. | Enterprise host memory buffer |
| JP7775067B2 (ja) * | 2021-12-21 | 2025-11-25 | 株式会社東芝 | 補助電源装置 |
| CN114442955B (zh) * | 2022-01-29 | 2023-08-04 | 苏州浪潮智能科技有限公司 | 全闪存储阵列的数据存储空间管理方法及装置 |
Citations (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11338648A (ja) * | 1998-02-26 | 1999-12-10 | Nec Corp | ディスクアレイ装置、そのエラ―制御方法、ならびにその制御プログラムを記録した記録媒体 |
| JP2002063126A (ja) * | 2000-08-18 | 2002-02-28 | Fujitsu Ltd | マルチパス計算機システム |
| JP2004240949A (ja) * | 2002-11-26 | 2004-08-26 | Hitachi Ltd | クラスタ型ストレージシステム及びその管理方法 |
| WO2011083522A1 (ja) * | 2010-01-05 | 2011-07-14 | 株式会社日立製作所 | 計算機システム及びその可用化方法 |
| JP2012053795A (ja) * | 2010-09-03 | 2012-03-15 | Nec Corp | 情報処理システム |
| JP2013025321A (ja) * | 2011-07-14 | 2013-02-04 | Mitsubishi Electric Corp | データ処理システム及びデータ処理方法及びプログラム |
| JP2013517537A (ja) * | 2010-04-21 | 2013-05-16 | 株式会社日立製作所 | ストレージシステム及びストレージシステムにおけるオーナ権制御方法 |
| JP2013524334A (ja) * | 2010-09-09 | 2013-06-17 | 株式会社日立製作所 | コマンドの起動を制御するストレージ装置及びその方法 |
| JP2013196176A (ja) * | 2012-03-16 | 2013-09-30 | Nec Corp | 排他制御システム、排他制御方法および排他制御プログラム |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN100375080C (zh) * | 2005-04-15 | 2008-03-12 | 中国人民解放军国防科学技术大学 | 大规模分布共享系统中的输入输出分组节流方法 |
| US7624262B2 (en) * | 2006-12-20 | 2009-11-24 | International Business Machines Corporation | Apparatus, system, and method for booting using an external disk through a virtual SCSI connection |
| JP5072692B2 (ja) * | 2008-04-07 | 2012-11-14 | 株式会社日立製作所 | 複数のストレージシステムモジュールを備えたストレージシステム |
| WO2010016104A1 (ja) * | 2008-08-04 | 2010-02-11 | 富士通株式会社 | マルチプロセッサシステム,マルチプロセッサシステム用管理装置およびマルチプロセッサシステム用管理プログラムを記録したコンピュータ読取可能な記録媒体 |
-
2013
- 2013-11-28 JP JP2015550262A patent/JP6068676B2/ja not_active Expired - Fee Related
- 2013-11-28 CN CN201380073594.2A patent/CN105009100A/zh active Pending
- 2013-11-28 GB GB1515783.7A patent/GB2536515A/en not_active Withdrawn
- 2013-11-28 US US14/773,886 patent/US20160224479A1/en not_active Abandoned
- 2013-11-28 DE DE112013006634.3T patent/DE112013006634T5/de not_active Withdrawn
- 2013-11-28 WO PCT/JP2013/082006 patent/WO2015079528A1/ja not_active Ceased
Patent Citations (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11338648A (ja) * | 1998-02-26 | 1999-12-10 | Nec Corp | ディスクアレイ装置、そのエラ―制御方法、ならびにその制御プログラムを記録した記録媒体 |
| JP2002063126A (ja) * | 2000-08-18 | 2002-02-28 | Fujitsu Ltd | マルチパス計算機システム |
| JP2004240949A (ja) * | 2002-11-26 | 2004-08-26 | Hitachi Ltd | クラスタ型ストレージシステム及びその管理方法 |
| WO2011083522A1 (ja) * | 2010-01-05 | 2011-07-14 | 株式会社日立製作所 | 計算機システム及びその可用化方法 |
| JP2013517537A (ja) * | 2010-04-21 | 2013-05-16 | 株式会社日立製作所 | ストレージシステム及びストレージシステムにおけるオーナ権制御方法 |
| JP2012053795A (ja) * | 2010-09-03 | 2012-03-15 | Nec Corp | 情報処理システム |
| JP2013524334A (ja) * | 2010-09-09 | 2013-06-17 | 株式会社日立製作所 | コマンドの起動を制御するストレージ装置及びその方法 |
| JP2013025321A (ja) * | 2011-07-14 | 2013-02-04 | Mitsubishi Electric Corp | データ処理システム及びデータ処理方法及びプログラム |
| JP2013196176A (ja) * | 2012-03-16 | 2013-09-30 | Nec Corp | 排他制御システム、排他制御方法および排他制御プログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| DE112013006634T5 (de) | 2015-10-29 |
| CN105009100A (zh) | 2015-10-28 |
| JPWO2015079528A1 (ja) | 2017-03-16 |
| GB201515783D0 (en) | 2015-10-21 |
| US20160224479A1 (en) | 2016-08-04 |
| GB2536515A (en) | 2016-09-21 |
| WO2015079528A1 (ja) | 2015-06-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6068676B2 (ja) | 計算機システム及び計算機システムの制御方法 | |
| JP6074056B2 (ja) | 計算機システムおよびデータ制御方法 | |
| JP6329318B2 (ja) | 情報処理装置 | |
| CN110825670A (zh) | 基于NVMe协议的主机与固态驱动器(SSD)之间的受管理交换 | |
| JP7116381B2 (ja) | クラウド・ベースのランクを使用するデータの動的再配置 | |
| US20180189109A1 (en) | Management system and management method for computer system | |
| US20170102874A1 (en) | Computer system | |
| JP6703600B2 (ja) | 計算機システム及びサーバ | |
| US20080301385A1 (en) | Storage controller and control method for the same | |
| JP2021128802A (ja) | 情報処理システム、ストレージシステム及びデータ転送方法 | |
| US20050144173A1 (en) | Method for coupling storage devices of cluster storage | |
| US20130111221A1 (en) | Storage system and its management method | |
| CN106030552A (zh) | 计算机系统 | |
| US9003087B2 (en) | Compound storage system and storage control method | |
| US10503440B2 (en) | Computer system, and data migration method in computer system | |
| US11989455B2 (en) | Storage system, path management method, and recording medium | |
| US8799573B2 (en) | Storage system and its logical unit management method | |
| JP6353981B2 (ja) | ストレージシステム、及び、記憶制御方法 | |
| US9239681B2 (en) | Storage subsystem and method for controlling the storage subsystem | |
| WO2017072868A1 (ja) | ストレージ装置 | |
| JP2018113075A (ja) | 情報処理装置 | |
| US9529721B2 (en) | Control device, and storage system | |
| US11016698B2 (en) | Storage system that copies write data to another storage system | |
| US11201788B2 (en) | Distributed computing system and resource allocation method | |
| JP6200100B2 (ja) | 計算機システム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150701 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160531 |
|
| 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: 20161206 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161222 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6068676 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |