JP6264116B2 - 情報処理装置,制御方法及び制御プログラム - Google Patents

情報処理装置,制御方法及び制御プログラム Download PDF

Info

Publication number
JP6264116B2
JP6264116B2 JP2014055033A JP2014055033A JP6264116B2 JP 6264116 B2 JP6264116 B2 JP 6264116B2 JP 2014055033 A JP2014055033 A JP 2014055033A JP 2014055033 A JP2014055033 A JP 2014055033A JP 6264116 B2 JP6264116 B2 JP 6264116B2
Authority
JP
Japan
Prior art keywords
storage device
server
write
data
information processing
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
Application number
JP2014055033A
Other languages
English (en)
Other versions
JP2015176574A (ja
Inventor
純 加藤
純 加藤
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014055033A priority Critical patent/JP6264116B2/ja
Priority to US14/634,941 priority patent/US20150268869A1/en
Publication of JP2015176574A publication Critical patent/JP2015176574A/ja
Application granted granted Critical
Publication of JP6264116B2 publication Critical patent/JP6264116B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/0613Improving I/O performance in relation to throughput
    • 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in 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/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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • 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]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Description

本発明は、情報処理装置,制御方法及び制御プログラムに関する。
ストレージの分野では、近年、ビッグデータをキーワードとした研究・開発が盛んに行なわれている。ビッグデータストレージはその総容量が数十〜数百PB(ペタバイト)にまで達しており、近いうちに1EB(エクサバイト)にまで到達するだろうと言われている。
その中で問題になりつつあるのがTOC(Total Cost of Ownership;総所有コスト)である。例えば、総容量1EBのシステムを組もうとした場合に、1TB(テラバイト)のSAS(Serial Attached SCSI(Small Computer System Interface))ドライブを用いると1,000,000台ものドライブが必要であり電力費用だけで毎月数千万円かかることになる。
この莫大な電力費用を減らすためにはドライブの電源を積極的に落とすことが必要不可欠であるが、ドライブの電源を落としたとしても、そのドライブへの読み出し・書き込みが発生してしまうとドライブの電源を入れる必要がある。そのため、ユーザからのリクエスト次第でドライブを不用意に起動させ電力削減にならない場合がある。
このようなストレージ装置の消費電力量を低減するための手法として、ライトオフローディングと呼ばれる手法が知られている。
ライトオフローディングにおいては、電源オフになっているドライブに書き込みがあった場合に、一旦、他の電源がオンになっているドライブの使用していない領域(ログ領域)にデータを書き込む(オフロードする)。そして、電源オフだった本来の書き込み先のドライブが電源オンになると、オフロードしていたデータをこのドライブに書き込む(書き戻す)。また、オフロード先のドライブとして、電源オフになっているドライブが接続されるサーバとは異なる他のサーバに接続されるドライブを使用するサーバ間ライトオフローディングの技術も知られている。
これにより、電源オフのドライブへの書き込みが要求されたとしても、不用意にドライブを起こす必要がなく、消費電力を削減することができる。
特開2001−93220号公報 特開2005−228288号公報
Dushyanth Narayanan, et al. "Write Off-Loading: Practical Power Management for Enterprise Storage", FAST ’08: 6th USENIX Conference on File and Storage Technologies, February 26-29, 2008
しかしながら、このような従来のストレージシステムにおいて、サーバ間ライトオフローディングの技術を用いてオフロードしていたデータの書き戻しを行なうと、書き戻しデータはサーバ間のネットワークを経由することになる。これにより、サーバ間のネットワークの負荷が増大するという課題がある。
1つの側面では、本発明は、データの書き戻しによって発生するネットワークの負荷を減少させることを目的とする。
なお、前記目的に限らず、後述する発明を実施するための形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本発明の他の目的の1つとして位置付けることができる。
このため、この情報処理装置は、第1記憶装置に第2記憶装置が格納しているデータを書き戻す情報処理装置であって、前記第1記憶装置が当該情報処理装置に接続された場合に、前記第1記憶装置に対して、前記第2記憶装置に一時的に格納されたデータを書き戻す書き戻し処理部と、前記書き戻し処理部による前記データの書き戻し後に、前記第1記憶装置に格納すべきデータが格納されている第3記憶装置が接続された他の情報処理装置、前記第1記憶装置との間の接続を、未接続状態から接続状態に変更する付け替え処理部と、を備える。
開示の情報処理装置によれば、データの書き戻しによって発生するネットワークの負荷を減少させることができる。
実施形態の一例としてのストレージシステムにおける機能構成を模式的に示す図である。 実施形態の一例としてのストレージシステムにおけるサーバ内ライトオフローディングによるライトオフローディング処理を説明する図である。 実施形態の一例としてのストレージシステムにおけるサーバ間ライトオフローディングによるライトオフローディング処理を説明する図である。 実施形態の一例としてのストレージシステムにおけるサーバ内ライトオフローディングによる負荷分散技術の第1の例を説明する図である。 実施形態の一例としてのストレージシステムにおけるサーバ間ライトオフローディングによる負荷分散技術を説明する図である。 実施形態の一例としてのストレージシステムにおけるサーバ内ライトオフローディングによる負荷分散技術の第2の例を説明する図である。 実施形態の一例としてのストレージシステムにおけるサーバ内ライトオフローディングによる書き戻し処理を説明する図である。 実施形態の一例としてのストレージシステムにおけるサーバ間ライトオフローディングによる書き戻し処理を説明する図である。 実施形態の一例としてのストレージシステムにおけるライトオフローディング処理を説明する図である。 実施形態の一例としてのストレージシステムにおけるオフロードデータの書き戻し処理を示すフローチャートである。 実施形態の一例としてのストレージシステムにおける巡回サーバリスト取得処理を例示する図である。 実施形態の一例としてのストレージシステムにおけるサーバ内書き戻し処理を例示する図である。 実施形態の一例としてのストレージシステムにおける記憶装置付け替え処理を例示する図である。 実施形態の一例としてのストレージシステムにおけるオフロード先サーバ変更処理を例示する図である。 実施形態の一例としてのストレージシステムにおけるオフロードデータの書き戻し処理の完了後の状態を例示する図である。
以下、図面を参照して情報処理装置,制御方法及び制御プログラムに係る一実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。
また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
以下、図中において、同一の各符号は同様の部分を示しているので、その説明は省略する。
〔A〕実施形態の一例
〔A−1〕システム構成
図1は、実施形態の一例としてのストレージシステムにおける機能構成を模式的に示す図である。
本実施形態の一例におけるストレージシステム1は、サーバ(情報処理装置)10に対して記憶領域を提供するものであり、ライトオフローディングの機能を備える。
以下、本実施形態の一例としてのストレージシステム1の詳細な機能構成を説明する前に、図2〜図8を用いて、ライトオフローディングについて説明する。
ライトオフローディングには、図2を用いて説明するサーバ内ライトオフローディングと図3を用いて後述するサーバ間ライトオフローディングとが考えられる。サーバ内ライトオフローディングはライトオフローディングをサーバ内に閉じて行ない、サーバ間ライトオフローディングはライトオフローディングをサーバ内に閉じないで行なう。
まず、サーバ内ライトオフローディングについて説明する。
図2は、実施形態の一例としてのストレージシステムにおけるサーバ内ライトオフローディングによるライトオフローディング処理を説明する図である。
図2に示すストレージシステム1aは、サーバ10aに対して記憶領域を提供するものであり、サーバ内ライトオフローディングの機能を備える。ストレージシステム1aは、複数(図示する例では3つ)のサーバ(サーバ#0〜#2)10a及び複数(図示する例では9つ)の記憶装置(記憶装置#0〜#8)4を備える。
以下、複数のサーバのうち1つを特定する必要があるときには「サーバ#0」,「サーバ#1」又は「サーバ#2」と表記するが、任意のサーバ装置を指すときには「サーバ10a」と表記する。また、以下、複数の記憶装置のうち1つを特定する必要があるときには「記憶装置#0」,「記憶装置#1」,「記憶装置#2」,「記憶装置#3」,「記憶装置#4」,「記憶装置#5」,「記憶装置#6」,「記憶装置#7」又は「記憶装置#8」と表記するが、任意の記憶装置を指すときには「記憶装置4」と表記する。
各サーバ10aは、ネットワーク5aを介して互いに通信可能に接続される。また、各サーバ10aと各記憶装置4とは、例えばSASやSATA(Serial Advanced Technology Attachment)を介して通信可能に接続される。具体的には、サーバ#0は記憶装置#0〜#2と通信可能に接続され、サーバ#1は記憶装置#3〜#5と通信可能に接続され、又、サーバ#2は記憶装置#6〜#8と通信可能に接続される。
記憶装置4は、データを読み書き可能に格納する既知の装置であり、例えば、Hard Disk Drive(HDD)やSolid State Drive(SSD)である。これらの記憶装置4は、互いに同様の機能構成を備える。
サーバ10aは、サーバ機能を備えたコンピュータである。図2に示す例では、3つのサーバ10aを備えているが、2つ以下又は4つ以上のサーバ10aを備えても良い。
以下、各図において、破線で示す記憶装置4は、電源オフ状態または電源オン状態ではあるがスピンダウン中であることを示し、実線で示す記憶装置は電源オン状態でスピンダウン中でもないことを示す。つまり、図2に示す例においては、記憶装置#0,#3,#6は電源オフ状態であり、記憶装置#1,#2,#4,#5,#7,#8は電源オン状態である。
ライトオフローディングにおいては、各記憶装置4内の使用していない領域をログ領域として用いる。サーバ10aは、電源オフ状態である記憶装置4に対するデータ書き込み指示が発行された場合に、この書き込み先の記憶装置4に書き込みを行なう代わりに、まず電源オン状態の他の記憶装置4に対してデータを書き込む(オフロードする)。
サーバ内ライトオフローディングにおいて、サーバ10aは、自サーバ10aに接続された電源オフ状態である記憶装置4に対するデータ書き込み指示が発行された場合に、自サーバ10aに接続された電源オン状態の他の記憶装置4に対してデータをオフロードする。つまり、サーバ内ライトオフローディングは、サーバ内に閉じたオフロード処理である。
図2に示す例においては、サーバ#0は、電源オフ状態である記憶装置#0に対するデータ書き込み指示が発行された場合に、電源オン状態の記憶装置#1,#2に対してデータをオフロードする。また、サーバ#1は、電源オフ状態である記憶装置#3に対するデータ書き込み指示が発行された場合に、電源オン状態の記憶装置#4,#5に対してデータをオフロードする。更に、サーバ#2は、電源オフ状態である記憶装置#6に対するデータ書き込み指示が発行された場合に、電源オン状態の記憶装置#7,#8に対してデータをオフロードする。
以下、電源オフ状態である本来の書き込み先の記憶装置4の代わりにデータが書き込まれる記憶装置4を「オフロード先の記憶装置4」という場合がある。
次に、サーバ間ライトオフローディングについて説明する。
図3は、実施形態の一例としてのストレージシステムにおけるサーバ間ライトオフローディングによるライトオフローディング処理を説明する図である。
図3に示すストレージシステム1bは、サーバ10bに対して記憶領域を提供するものであり、サーバ間ライトオフローディングの機能を備える。ストレージシステム1bは、複数(図示する例では3つ)のサーバ(サーバ#0〜#2)10b及び複数(図示する例では9つ)の記憶装置(記憶装置#0〜#8)4を備える。図3に示す記憶装置4は、図2に示した記憶装置4と同様の機能構成を備えるため、その説明は省略する。
以下、複数のサーバのうち1つを特定する必要があるときには「サーバ#0」,「サーバ#1」又は「サーバ#2」と表記するが、任意のサーバ装置を指すときには「サーバ10b」と表記する。
サーバ10bは、サーバ機能を備えたコンピュータである。図3に示す例では、3つのサーバ10bを備えているが、2つ以下又は4つ以上のサーバ10bを備えても良い。
サーバ間ライトオフローディングにおいて、サーバ10bは、自サーバ10bに接続された電源オフ状態である記憶装置4に対するデータ書き込み指示が発行された場合に、自サーバ10b及び他サーバ10bに接続された電源オン状態の他の記憶装置4に対してデータをオフロードする。つまり、サーバ間ライトオフローディングは、サーバ内に閉じないオフロード処理である。
図3に示す例においては、電源オフ状態である記憶装置#0に対するデータ書き込み指示が発行された場合に、サーバ#0は記憶装置#1,#2にデータをオフロードし、サーバ#1は記憶装置#4,#5にデータをオフロードし、サーバ#2は記憶装置#7,#8に対してデータをオフロードする。また、電源オフ状態である記憶装置#3に対するデータ書き込み指示が発行された場合に、サーバ#0は記憶装置#1,#2にデータをオフロードし、サーバ#1は記憶装置#4,#5にデータをオフロードし、サーバ#2は記憶装置#7,#8に対してデータをオフロードする(図示省略)。更に、電源オフ状態である記憶装置#6に対するデータ書き込み指示が発行された場合に、サーバ#0は記憶装置#1,#2にデータをオフロードし、サーバ#1は記憶装置#4,#5にデータをオフロードし、サーバ#2は記憶装置#7,#8に対してデータをオフロードする(図示省略)。
次に、ライトオフローディングにおける負荷分散について説明する。
図4は実施形態の一例としてのストレージシステムにおけるサーバ内ライトオフローディングによる負荷分散技術の第1の例を説明する図であり、図5はそのサーバ間ライトオフローディングによる負荷分散技術を説明する図である。
ライトオフローディングにおいては、電源オン状態であるオフロード先の記憶装置4にオフロードされるデータ量はサーバ内ライトオフローディングかサーバ間ライトオフローディングかによって異なる。
まず、サーバ内ライトオフローディングにおける負荷分散について説明する。
図4に示す例において、電源オフ状態である記憶装置#0,#3,#6は、30MB/sec(メガバイト毎秒),4MB/sec,4MB/secのデータをそれぞれ書き込まれようとしている(符号A11,A21,A31参照)。
サーバ#0は、記憶装置#0に対するデータを記憶装置#1,#2に15MB/secずつ分散して書き込む(符号A12参照)。また、サーバ#1は、記憶装置#3に対するデータを記憶装置#4,#5に2MB/secずつ分散して書き込む(符号A22参照)。更に、サーバ#2は、記憶装置#6に対するデータを記憶装置#7,#8に2MB/secずつ分散して書き込む(符号A32参照)。すなわち、各サーバ10は、電源オフ状態の記憶装置4に書き込まれようとするデータを、電源オフ状態の記憶装置4と同一のサーバ10に接続されている他の記憶装置4に均等に分散させて書き込む。
このように、サーバ内ライトオフローディングにおいては、電源オン状態の記憶装置4に対してオフロードされるデータ量がサーバ10a間で異なる。
次に、サーバ間ライトオフローディングにおける負荷分散について説明する。
図5に示す例においても同様に、電源オフ状態である記憶装置#0,#3,#6は、30MB/sec,4MB/sec,4MB/secのデータをそれぞれ書き込まれようとしている(符号B1,B2,B3参照)。
各サーバ10bは、電源オフ状態である記憶装置#0,#3,#6に対するデータを電源オン状態である記憶装置#1,#2,#4,#5,#7,#8に
Figure 0006264116
ずつ分散して書き込む(符号B4参照)。
具体的には、サーバ#0は、記憶装置#0,#3,#6に対するデータを記憶装置#1,#2に6.3MB/secずつ分散して書き込む。また、サーバ#1は、記憶装置#0,#3,#6に対するデータを記憶装置#4,#5に6.3MB/secずつ分散して書き込む。更に、サーバ#2は、記憶装置#0,#3,#6に対するデータを記憶装置#7,#8に6.3MB/secずつ分散して書き込む。
このように、サーバ間ライトオフローディングにおいては、電源オフ状態である記憶装置4がどのサーバ10bに接続されているかに関わらず、電源オン状態である記憶装置4に対してオフロードされるデータ量が各サーバ10bで同一となる。つまり、サーバ間ライトオフローディングにおいては、オフロードによる各記憶装置4に対する負荷の増分を均等化することができる。
次に、サーバ内ライトオフローディングにおける負荷分散について更に説明する。
図6は、実施形態の一例としてのストレージシステムにおけるサーバ内ライトオフローディングによる負荷分散技術の第2の例を説明する図である。
図6に示す例においては、記憶装置#0,#1,#3は電源オフ状態であり、記憶装置#2,#4〜#8は電源オン状態である。つまり、サーバ#0は2つの電源オフ状態の記憶装置#0,#1と接続されており、サーバ#1は1つの電源オフ状態の記憶装置#3と接続されており、サーバ#2は電源オフ状態の記憶装置4が接続されていない。
各記憶装置4は、均等に10MB/secの負荷をかけられようとしている(符号C1参照)。
サーバ#0は、記憶装置#0〜#2に対するデータをまとめて30MB/secで記憶装置#2に書き込む(符号C2参照)。また、サーバ#1は、記憶装置#3〜#5に対するデータを記憶装置#4,#5に15MB/secずつ分散して書き込む(符号C3参照)。更に、サーバ#2は、記憶装置#6〜#8に対するデータをそれぞれ記憶装置#6〜#8に10MB/secずつ分散して書き込む(符号C4参照)。
このように、サーバ内ライトオフローディングにおいては、各記憶装置4に負荷が均等にかかっている場合においても、サーバ10a毎の電源オフ状態の記憶装置4の数が異なることにより、オフロードによる各記憶装置4に対する負荷の増分が均等にならない。図6に示す例において、記憶装置#2は、記憶装置#6〜#8と比較して、3倍の負荷をかけられている。記憶装置4間における負荷の差が広がると、高い負荷を受けている記憶装置4によってストレージシステム1a全体の性能が制限されてしまい、理想的なピーク性能を発揮できない可能性がある。
そこで、各記憶装置4に均等な負荷がかかるようにするために、電源オフ状態の記憶装置4の数をサーバ10a毎に一定にすることが考えられる。
しかしながら、ライトオフローディングにおいて、ログ領域にないデータの読み込み処理を行なう場合には、電源オフ状態の記憶装置4を電源投入しなければならない。つまり、はじめ電源オフ状態の記憶装置4の数をサーバ10a毎に一定にしていたとしても、ログ領域にないデータの読み込み処理が発生すると、電源オフ状態の記憶装置4の数がサーバ10a毎に異なることになる。
次に、ライトオフローディングによる書き戻し処理について説明する。
図7は実施形態の一例としてのストレージシステムにおけるサーバ内ライトオフローディングによる書き戻し処理を説明する図であり、図8はそのサーバ間ライトオフローディングによる書き戻し処理を説明する図である。
以下、各図において、一点鎖線で示す記憶装置4は、電源オフ状態から電源投入されて書き戻し処理の対象となった記憶装置4であることを示す。つまり、図7に示す例においては記憶装置#0,#3,#6が書き戻し処理の対象であり、図8に示す例においては記憶装置#0が書き戻し処理の対象である。
まず、サーバ内ライトオフローディングにおける書き戻し処理について説明する。
図7に示すように、サーバ内ライトオフローディングにおいて、オフロード後に本来の格納先である記憶装置#0,#3,#6が電源投入された場合には、各サーバ10aは、オフロード先の記憶装置4のログ領域に格納されているオフロードデータを電源投入された記憶装置4に書き戻す。具体的には、サーバ#0は、オフロード先の記憶装置#1,#2のログ領域に格納されているオフロードデータを電源投入された記憶装置#0に書き戻す。また、サーバ#1は、オフロード先の記憶装置#4,#5のログ領域に格納されているオフロードデータを電源投入された記憶装置#3に書き戻す。更に、サーバ#2は、オフロード先の記憶装置#7,#8のログ領域に格納されているオフロードデータを電源投入された記憶装置#6に書き戻す。
以下、オフロードデータを書き戻される記憶装置4を「書き戻し先の記憶装置4」という場合がある。
このように、サーバ内ライトオフローディングにおいては、オフロード先の記憶装置4と書き戻し先の記憶装置4とが同一のサーバ10aに接続されているため、ノード間通信を行なう必要がなく、サーバ10a内に閉じてデータの書き戻しを行なうことができる。
次に、サーバ間ライトオフローディングにおける書き戻し処理について説明する。
図8に示すように、サーバ間ライトオフローディングにおいて、オフロード後に本来の格納先である記憶装置#0が電源投入された場合には、各サーバ10aは、オフロード先の記憶装置4のログ領域に格納されているオフロードデータを電源投入された記憶装置4に書き戻す。具体的には、サーバ#0は、オフロード先の記憶装置#1,#2のログ領域に格納されているオフロードデータを電源投入された記憶装置#0に書き戻す。また、サーバ#1は記憶装置#4,#5のログ領域に格納されているオフロードデータをサーバ#0にネットワーク5aを介して送信し、サーバ#0は受信したオフロードデータを電源投入された記憶装置#0に書き戻す。更に、サーバ#2は記憶装置#7,#8のログ領域に格納されているオフロードデータをサーバ#0にネットワーク5aを介して送信し、サーバ#0は受信したオフロードデータを電源投入された記憶装置#0に書き戻す。
このように、サーバ間ライトオフローディングにおいては、オフロード先の記憶装置4と書き戻し先の記憶装置4とが同一のサーバ10aに接続されているとは限らないため、ノード間通信が発生してしまう。つまり、サーバ間ライトオフローディングにおいては、サーバ10間でデータの転送を行なうためにCentral Processing Unit(CPU)やネットワーク帯域等のシステムリソースを無駄に消費してしまう。
このようなシステムリソースの消費は、ビッグデータストレージのワークロードの一例として挙げられるセンサデータの蓄積等の時系列データの書き込み処理がほとんどを占めるようなワークロードの場合に、特に大きくなる可能性がある。そのような書き込みの比重が大きいワークロードでは、記憶装置4の電源投入をしなければならないログ領域にないデータへの読み込み処理を行なわなければならないケースが発生することが相対的に少ないため、いったん電源オフ状態になった記憶装置は長時間電源オフ状態を保つことができる。しかし、そのような場合には電源投入された場合に書き戻しを行なわなければならないデータ量が電源オフ状態だった時間に比例して増えてしまうため、大量のデータをノード間通信でやりとりしなければならず、書き戻しの際に大量のシステムリソースを消費してしまう。
前述のように、サーバ内ライトオフローディングにおいては、書き戻し処理においてノード間通信は発生しないが、オフロードによって各記憶装置4にかかる負荷が不均等になってしまう。
一方、サーバ間ライトオフローディングにおいては、オフロードによって各記憶装置4にかかる負荷は均等であるが、書き戻し処理においてノード間通信が発生してしまう。
そこで、図1に示すように、本実施形態の一例におけるストレージシステム1は、複数(図示する例では2つ)のサーバ(サーバ#0,#1;情報処理装置)10,管理サーバ2,ロードバランサ(管理装置,負荷分散装置)3及び複数(図示する例では4つ)の記憶装置4を備える。記憶装置4は、図2及び図3等に示したストレージシステム1a,1bが備える記憶装置4と同様の機能構成を備えるため、その説明は省略する。
なお、ストレージシステム1が備えるサーバ10及び記憶装置4の数は図1に示す例に限定されるものではなく、種々変更することができる。例えば、ストレージシステム1は、図9を用いて後述するように3つのサーバ10及び9つの記憶装置4を備えても良いし、図11等を用いて後述するように2つのサーバ10及び6つの記憶装置4を備えても良い。
以下、複数のサーバのうち1つを特定する必要があるときには「サーバ#0」,「サーバ#1」又は「サーバ#2」と表記するが、任意のサーバ装置を指すときには「サーバ10」と表記する。
各サーバ10とロードバランサ3とはネットワーク5aを介して通信可能に接続され、各サーバ10と管理サーバ2とはネットワーク5bを介して通信可能に接続される。また、各サーバ10と各記憶装置4とは、Disk Area Network(DAN)6を介して通信可能に接続される。
DAN6は、図示しないスイッチ(中継装置)を備え、サーバ10と記憶装置4との間の接続を任意に切り替える機能を有するインターコネクトである。本実施形態の一例においては、従来のファイバーチャネル等によるStorage Area Network(SAN)と区別するため、ディスクを接続するインターコネクトの意味でDAN6と呼ぶ。DAN6は、従来のローカルディスクに相当する部分を接続するため高い性能と低コストとを両立することができる。DAN6はSANと異なり、以下のような特徴を持つ。
トポロジ:1台の記憶装置4(ターゲット)を複数のサーバ10(ノード)で共有する必要がない。
ルーティング:単純な回線スイッチでよい。
このように、トポロジやルーティング等が簡単で済むため、低コストで実装が容易となる。また、DAN6は、記憶装置4のグループ(図9等に示す一点鎖線枠参照)を構成することによって、物理ディスク資源を高速かつ柔軟に接続する。従って、サーバ10と記憶装置4とをDAN6によって接続することにより、システム要件に応じたディスク構成を提供することが可能となり、ストレージドライブ資源の利用効率を向上させることができる。
本実施形態の一例において、DAN6は、サーバ10に対して接続する記憶装置4を切り替える機能を有し、各記憶装置4を各サーバ10に対してローカルディスクのように接続する。そして、サーバ10は、DAN6を介して記憶装置4に対する読み出し・書き込みを行なう。
なお、DAN6の代わりに、市販のSASスイッチやiSCSIなどを用いてサーバ10と記憶装置4とを接続しても良い。市販のSASスイッチは、スイッチによるパス経路の切り替えを行なうことで、記憶装置4を切り替えることができる。また、iSCSIは、切り替え元のサーバ10で記憶装置4への接続を一旦切断した後に切り替え先のサーバ10で再び記憶装置4に接続することで、記憶装置4を切り替えることができる。
ロードバランサ3は、特定のサーバ10に対するアクセス負荷が集中しないように、複数のサーバ10に負荷を分散する装置である。ロードバランサ3は、どの記憶装置4にどのデータがあるのか、どのデータがどの記憶装置4のログ領域にオフロードされているかを把握している。そして、ロードバランサ3は、データの読み込み・書き込みリクエストが発生した場合に、適切な記憶装置4にリクエストを割り振る。ロードバランサ3は、図11等を用いて後述するコンシステントハッシュとハッシュ表301とを組み合わせて、リクエストの割り振りを行なう。ハッシュ表301は、オフロードされたデータのデータ名に対してオフロード先サーバの識別子を対応付けたものである。
ロードバランサ3は、オフロードされていないデータ読み込みリクエストについてはコンシステントハッシュを用いて格納先の記憶装置4の識別子を取得し、その他のリクエストについてはハッシュ表301の対応するデータ名を検索することによってオフロード先の記憶装置4の識別子を取得する。このようにすることで、オフロードされているデータに対する読み込みリクエストが不用意に電源オフ状態の記憶装置4に割り振られることを防ぐ。
管理サーバ2は図示しないCPU及びメモリを備え、管理サーバ2が備えるCPUはDAN管理部20として機能する。
DAN管理部20は、サーバ10が備える後述するCPU11の一機能としての付け替え処理部114からの指示に基づき、DAN6の操作を行なう。具体的には、DAN管理部20は、付け替え処理部114の指示に基づき、前述したDAN6のスイッチを制御することで、各記憶装置4の接続先のサーバ10を付け替える。例えば、図1に示す例において、サーバ#0と記憶装置#0とが接続されており、サーバ#0の付け替え処理部114から記憶装置#0をサーバ#1に付け替えるよう指示を受けた場合には、DAN管理部20は、記憶装置#0がサーバ#1に接続されるようにスイッチを制御する。なお、図示する例においてはDAN管理部20をサーバ10とは別の管理サーバ2に配置しているが、サーバ10がDAN管理部20としての機能を備えても良い。
サーバ10はサーバ機能を備えたコンピュータであり、サーバ#0とサーバ#1とは互いに同様の機能構成を備える。サーバ10は、CPU(コンピュータ)11及びメモリ12を備える。
メモリ12は、Read Only Memory(ROM)及びRandom Access Memory(RAM)を含む記憶装置である。メモリ12のROMには、Basic Input/Output System(BIOS)等のプログラムが書き込まれている。メモリ12上のソフトウェアプログラムは、CPU11に適宜読み込まれて実行される。また、メモリ12のRAMは、一次記録メモリあるいはワーキングメモリとして利用される。
CPU11は、種々の制御や演算を行なう処理装置であり、メモリ12に格納されたOperating System(OS)やプログラムを実行することにより、種々の機能を実現する。すなわち、CPU11は、図1に示すように、ネットワーク送受信部(送信部)111,書き戻し管理部112,書き戻し処理部(第1書き戻し処理部,第2書き戻し処理部)113,付け替え処理部114及び読み書き処理部115として機能する。
なお、これらのネットワーク送受信部111,書き戻し管理部112,書き戻し処理部113,付け替え処理部114及び読み書き処理部115としての機能を実現するためのプログラム(制御プログラム)は、例えばフレキシブルディスク,CD(CD−ROM,CD−R,CD−RW等),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD+R,DVD−RW,DVD+RW,HD DVD等),ブルーレイディスク,磁気ディスク,光ディスク,光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体から図示しない読取装置を介してプログラムを読み取って内部記録装置または外部記録装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク,光ディスク,光磁気ディスク等の記憶装置(記録媒体)に記録しておき、その記憶装置から通信経路を介してコンピュータに提供してもよい。
ネットワーク送受信部111,書き戻し管理部112,書き戻し処理部113,付け替え処理部114及び読み書き処理部115としての機能を実現する際には、内部記憶装置(本実施形態ではメモリ12)に格納されたプログラムがコンピュータのマイクロプロセッサ(本実施形態ではCPU11)によって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行してもよい。
ネットワーク送受信部111は、ネットワーク5aを介して他のサーバ10やロードバランサ3等とデータの送受信を行なう。また、ネットワーク送受信部111は、ロードバランサ3が送信した巡回サーバリスト(格納先情報)302(図11等を用いて後述)を受信し、書き戻し管理部112に渡す。更に、ネットワーク送受信部111は、書き戻し管理部112が更新した巡回サーバリスト302と、書き戻し対象の記憶装置4の付け替え先のサーバ10に関する情報とをロードバランサ3及び他のサーバ10に送信する。また、ネットワーク送受信部111は、書き戻し対象の記憶装置4を他のサーバ10に接続させる場合に、書き戻し対象の記憶装置4に対するアクセス要求が発生すると、発生したアクセス要求を書き戻し対象の記憶装置4が接続される他のサーバ10に送信(転送)する。
書き戻し管理部112は、書き戻し処理部113を用いてサーバ10内における書き戻し処理を行なわせ、付け替え処理部114を用いて書き戻し対象の記憶装置4を他のサーバ10に付け替えさえる。また、書き戻し管理部112は、ネットワーク送受信部111を介してロードバランサ3から巡回サーバリスト302を取得する。更に、書き戻し管理部112は、サーバ10内における書き戻し処理が完了すると、巡回サーバリスト302を更新し、更新した巡回サーバリスト302をロードバランサ3及び他のサーバ10にネットワーク送受信部111を介して送信する。書き戻し管理部112は、更新した巡回サーバリスト302とともに、書き戻し処理の指示を書き戻し対象の記憶装置4の付け替え先のサーバ10に送信する。
書き戻し処理部113は、書き戻し対象の記憶装置4に書き戻さなければならないデータのリスト(不図示)を各記憶装置4のログ領域から取得し、取得したリストに含まれるデータを書き戻し対象の記憶装置4に書き戻す。言い換えれば、書き戻し処理部113は、書き戻し対象の記憶装置4が自サーバ10に接続された場合に、書き戻し対象の記憶装置4に対して、オフロード先の記憶装置4に一時的に格納されたデータを書き戻す。
付け替え処理部114は、DAN管理部20を介して記憶装置4の付け替えを行なう。具体的には、付け替え処理部114は、DAN管理部20にサーバ10と書き戻し対象の記憶装置4との間のスイッチを制御させることによって、書き戻し対象の記憶装置4を他のサーバ10に接続させる。
本実施形態の一例においては、従来のストレージシステムとは異なり、サーバ10と記憶装置4とがDAN6を介して接続されているため、付け替え処理部114の機能により、サーバ10と記憶装置4との接続関係を動的に変更することができる。以下では、簡単のために、1つの記憶装置4に対して1つのサーバ10が接続されていることとするが、1つの記憶装置4に対して複数のサーバ10を接続させる(複数のサーバ10で1つの記憶装置4を共有する)ことも可能である。1つの記憶装置4に対して複数のサーバ10を接続させる場合には、以下でいう「記憶装置4を付け替える」という表現は、「記憶装置4を付け替え先のサーバ10でも共有する」と読み替えることができる。
読み書き処理部115は、自サーバ10に接続されている記憶装置4に対してデータの読み書きを行なう。また、読み書き処理部115は、オフロードするデータを記憶装置4のログ領域に配置する。
図9は、実施形態の一例としてのストレージシステムにおけるライトオフローディング処理を説明する図である。
図9に示すストレージシステム1は、3つのサーバ#0〜#2及び9つの記憶装置#0〜#8を備える。なお、管理サーバ2の図示は、簡単のため省略している。
サーバ10と記憶装置4とは、図中の一点鎖線で示す枠に従って、DAN6を介して通信可能に接続される。つまり、サーバ#0は記憶装置#0〜#2と通信可能に接続されており、サーバ#1は記憶装置#3〜#5と通信可能に接続されており、又、サーバ#2は記憶装置#6〜#8と通信可能に接続されている。
サーバ10の読み書き処理部115は、自サーバ10に接続された電源オフ状態である記憶装置4に対するデータ書き込み指示が発行された場合に、自サーバ10及び他サーバ10に接続された電源オン状態の記憶装置4に対してデータをオフロードする。
図9に示す例においては、電源オフ状態である記憶装置#0に対するデータ書き込み指示が発行された場合に、サーバ#0は記憶装置#1,#2にデータをオフロードし、サーバ#1は記憶装置#4,#5にデータをオフロードし、サーバ#2は記憶装置#7,#8に対してデータをオフロードする。また、電源オフ状態である記憶装置#3に対するデータ書き込み指示が発行された場合に、サーバ#0は記憶装置#1,#2にデータをオフロードし、サーバ#1は記憶装置#4,#5にデータをオフロードし、サーバ#2は記憶装置#7,#8に対してデータをオフロードする(図示省略)。更に、電源オフ状態である記憶装置#6に対するデータ書き込み指示が発行された場合に、サーバ#0は記憶装置#1,#2にデータをオフロードし、サーバ#1は記憶装置#4,#5にデータをオフロードし、サーバ#2は記憶装置#7,#8に対してデータをオフロードする(図示省略)。
〔A−2〕動作
上述の如く構成された実施形態の一例としてのストレージシステムにおけるオフロードデータの書き戻し処理を図10に示すフローチャート(ステップS1〜S4)に従って説明する。
書き戻し処理を開始すると、書き戻し対象の記憶装置4を有するサーバ10は、巡回サーバリスト302を参照して、書き戻し対象の記憶装置4が書き戻しデータ(オフロードデータ)が格納されている記憶装置4を有する全てのサーバ10を一巡したかを判定する(ステップS1)。
書き戻し対象の記憶装置4が書き戻しデータが格納されている記憶装置4を有する全てのサーバ10を一巡した場合には(ステップS1のYesルート参照)、書き戻し処理を終了する。
一方、書き戻し対象の記憶装置4が書き戻しデータが格納されている記憶装置4を有する全てのサーバ10を一巡していない場合には(ステップS1のNoルート参照)、付け替え処理部114は、書き戻しデータを格納する記憶装置4を有するサーバ10に書き戻し対象の記憶装置を付け替える(ステップS2)。
付け替え先のサーバ10の書き戻し処理部113は、サーバ内通信でデータの書き戻しを行なう(ステップS3)。
書き戻し管理部112は、巡回サーバリスト302を更新することにより、書き戻しを行なった記憶装置4を有するサーバ10をオフロード先の対象から外し(ステップS4)、ステップS1に戻る。
次に、図11〜図15を参照しながら、本実施形態の一例におけるオフロードデータの書き戻し処理の具体例を説明する。
図11〜図15に示すストレージシステム1は、2つのサーバ#0,#1及び6つの記憶装置#0〜#5を備える。なお、管理サーバ2の図示は、簡単のため省略している。
サーバ10と記憶装置4とは、図中の一点鎖線で示す枠に従って、DAN6を介して通信可能に接続される。つまり、サーバ#0は記憶装置#0〜#2と通信可能に接続されており、又、サーバ#2は記憶装置#6〜#8と通信可能に接続されている。
図11は、実施形態の一例としてのストレージシステムにおける巡回サーバリスト取得処理を例示する図である。
ロードバランサ3は、コンシステントハッシュとハッシュ表301とを組み合わせて、各記憶装置4に対してリクエストの割り振りを行なう。ハッシュ表301には、オフロードされたデータのデータ名と、オフロードデータを本来格納すべき記憶装置の識別子と、オフロード先のサーバ10の識別子とが互いに対応付けられている。
図11に示す例において、ハッシュ表301は、記憶装置#0に本来格納すべきデータAがサーバ#0にオフロードされていることを示している。そして、ハッシュ表301に示すデータAは、サーバ#0に接続されている記憶装置#1,#2のログ領域にオフロードされている(記憶装置#1,#2の斜線領域参照)。また、ハッシュ表301は、記憶装置#3に本来格納すべきデータBがサーバ#0にオフロードされ、記憶装置#0に本来格納すべきデータCがサーバ#1にオフロードされていることを示している。そして、ハッシュ表301に示すデータCは、サーバ#1に接続されている記憶装置#4,#5のログ領域にオフロードされている(記憶装置#4,#5の網掛け領域参照)。なお、ハッシュ表301に示すデータBは、サーバ#0に接続されている記憶装置#1,#2のうち少なくとも一方にオフロードされているが、簡単のためその図示は省略している。
例えば、サーバ#0の書き戻し管理部112は、記憶装置#0の電源投入がされると、記憶装置#0に対する書き戻し処理を開始するべく、ネットワーク送受信部111を介してロードバランサ3に対して巡回サーバリスト302の送信を要求する。
ロードバランサ3は、ハッシュ表301に基づいて巡回サーバリスト302を作成し、サーバ#0に送信する。具体的には、ロードバランサ3は、ハッシュ表301に登録されているオフロードデータを本来格納すべき記憶装置4毎に巡回サーバリスト302を作成する。図11に示す例において、記憶装置#0に本来格納すべきオフロードデータは、データAとしてサーバ#0にオフロードされ、データCとしてサーバ#1にオフロードされている。そこで、ロードバランサ3は、記憶装置#0に本来格納すべきオフロードデータがサーバ#0,#1において書き戻し済みであるか否かを登録可能な巡回サーバリスト302を作成して、サーバ#0に送信する。
サーバ#0の書き戻し管理部112は、ネットワーク送受信部111を介してロードバランサ3が送信した巡回サーバリスト302を取得する。図11に示す例においては、巡回サーバリスト302中において「×」で示すように、記憶装置#0に対する書き戻し処理はいずれのサーバ10についても完了していないことを示している。一方、各サーバ10における書き戻し処理が完了すると、書き戻し管理部112は、図12を用いて後述するように、巡回サーバリスト302中の書き戻しが完了したサーバ10について「○」を書き込む。
サーバ#0の書き戻し管理部112は、巡回サーバリスト302を取得することにより、記憶装置#0が書き戻し処理のために巡回(接続)する必要があるサーバ10を認識することができる。つまり、書き戻し管理部112は、記憶装置#0に書き戻すべきデータがサーバ#0,#1に接続されている記憶装置4にオフロードされていることを認識することができる。
図12は、実施形態の一例としてのストレージシステムにおけるサーバ内書き戻し処理を例示する図である。
書き戻し処理部113は、自サーバ10と接続されている各記憶装置4のログ領域を読み込むことによりオフロード先の記憶装置4を検出し、オフロード先の記憶装置4のログ領域から書き戻し対象の記憶装置4にオフロードデータを書き戻す。図12に示す例において、サーバ#0の書き戻し処理部113は、記憶装置#1,#2から記憶装置#0にオフロードデータ(図11に示したハッシュ表301のデータA)を書き戻す(符号D1参照)。このように、記憶装置#1,#2から記憶装置#0への書き戻し処理はサーバ#0内における処理であるため、ノード間通信は発生しない。
書き戻し管理部112は、書き戻し処理部113によるサーバ内書き戻し処理が完了すると、巡回サーバリスト302を更新する。図12に示す例において、サーバ#0の書き戻し管理部112は、巡回サーバリスト302に対して、サーバ#0における書き戻し処理が完了したことを示す「○」を書き込む(符号D2参照)。つまり、書き戻し管理部112は、巡回サーバリスト302を更新することにより、オフロード先の記憶装置#1,#2をライトオフローディングの対象から外す。
図13は、実施形態の一例としてのストレージシステムにおける記憶装置付け替え処理を例示する図である。
付け替え処理部114は、巡回サーバリスト302に基づき、書き戻し処理を行なっていないいずれかのサーバ10に書き戻し対象の記憶装置4を付け替える。図13に示す例において、サーバ#0の付け替え処理部114は、巡回サーバリスト302において書き戻し処理が未完了であると登録されているサーバ#1に記憶装置#0を付け替える(符号E1参照)。
ネットワーク送受信部111は、付け替え先のサーバ10に関する情報と書き戻し管理部112が更新した巡回サーバリスト302とをロードバランサ3及び付け替え先のサーバ10に送信する。図13に示す例において、サーバ#0のネットワーク送受信部111は、付け替え先のサーバ10がサーバ#1であるという情報と、更新した巡回サーバリスト302とをロードバランサ3及びサーバ#1に送信する(符号E2,E3参照)。
図14は、実施形態の一例としてのストレージシステムにおけるオフロード先サーバ変更処理を例示する図である。
ロードバランサ3は、受信した付け替え先のサーバ10に関する情報に基づき、ハッシュ表301における書き戻し対象のオフロードデータについてのオフロード先サーバを変更する。図14に示す例において、ロードバランサ3は、受信した付け替え先のサーバ10がサーバ#1であるという情報に基づき、ハッシュ表301のデータAについてのオフロード先サーバをサーバ#0からサーバ#1に変更する(符号F1参照)。これにより、データAについてのアクセス要求が発生した場合に、ロードバランサ3は、発生したアクセス要求をサーバ#0ではなくサーバ#1に送信することができ、書き戻し処理中においてもデータAにアクセスすることができる。図14において、ハッシュ表301のデータCについては、まだ書き戻し処理が行なわれていないため、ロードバランサ3は更新を行なわない。
なお、ロードバランサ3は、符号F1で示したハッシュ表301の更新処理を省略しても良い。この場合には、ロードバランサ3は、データAについてのアクセス要求が発生すると、発生したアクセス要求をサーバ#0に送信する。サーバ#0の書き戻し管理部112は、付け替え先のサーバ10がサーバ#1であることを認識しているので、ネットワーク送受信部111を介して、受信したアクセス要求をサーバ#0に送信(転送)する。書き戻し管理部112は、書き戻し対象の記憶装置4を他のサーバ10に付け替えた後に限らず、他のサーバ10に付け替えることが予定される場合に、ネットワーク送受信部111を介してアクセス要求の転送をすることができる。
以下、巡回サーバリスト302がすべて書き戻し済みになるまで、書き戻し,記憶装置4の付け替え及びオフロード先の変更の各処理を繰り返す。そして、すべてのサーバ10における書き戻し処理が完了した場合に、書き戻し対象の記憶装置4を元のサーバ10に付け替える。
つまり、図14に示す例において、サーバ#1の書き戻し処理部113は、記憶装置#4,#5から記憶装置#0にオフロードデータ(ハッシュ表301のデータC)を書き戻す(符号F2参照)。このように、記憶装置#4,#5から記憶装置#0への書き戻し処理はサーバ#1内における処理であるため、ノード間通信は発生しない。
サーバ#1の書き戻し管理部112は、巡回サーバリスト302に対して、サーバ#1における書き戻し処理が完了したことを記録する(符号F3参照)。
図15は、実施形態の一例としてのストレージシステムにおけるオフロードデータの書き戻し処理の完了後の状態を例示する図である。
付け替え処理部114は、巡回サーバリスト302に基づき、書き戻し処理を行なっていないいずれかのサーバ10に書き戻し対象の記憶装置4を付け替える。図15に示す例において、書き戻し処理を行なっていないサーバ10はないため、サーバ#1の付け替え処理部114は、記憶装置#0が最初に接続されていたサーバ#0に記憶装置#0を付け替える(符号G1参照)。
ネットワーク送受信部111は、付け替え先のサーバ10に関する情報と書き戻し管理部112が更新した巡回サーバリスト302とをロードバランサ3及び付け替え先のサーバ10に送信する。つまり、サーバ#1のネットワーク送受信部111は、付け替え先のサーバ10がサーバ#0であるという情報と、更新した巡回サーバリスト302とをロードバランサ3及びサーバ#0に送信する(不図示)。
付け替え先のサーバ10の書き戻し管理部112は、すべてのサーバ10における書き戻し処理が完了し、書き戻し対象の記憶装置4が自サーバ10に接続されたことを、ネットワーク送受信部111を介してロードバランサ3に通知する。図15に示す例において、サーバ#0の書き戻し管理部112は、サーバ#0,#1における書き戻し処理が完了し、記憶装置#0が自サーバ#0に接続されたことを、ネットワーク送受信部111を介してロードバランサ3に通知する(符号G2参照)。
ロードバランサ3は、サーバ#0からの通知を受信すると、書き戻しが完了したデータA及びデータCについての情報(記憶装置#0に関する情報)をハッシュ表301から削除する(符号G3参照)。
〔A−3〕効果
このように、本実施形態の一例におけるストレージシステム1(情報処理装置10)によれば、データの書き戻しによって発生するネットワークの負荷を減少させることができる。
具体的には、書き戻し処理部113は、書き戻し対象の記憶装置4が情報処理装置10に接続された場合に、書き戻し対象の記憶装置4に対して、書き戻し対象の記憶装置4に書き戻すべきデータが格納されている記憶装置4に一時的に格納されたデータを書き戻す。そして、付け替え処理部114は、書き戻し処理部113によるデータの書き戻し後に、書き戻し対象の記憶装置4に格納すべきデータが格納されている記憶装置4が接続された他の情報処理装置10に、書き戻し対象の記憶装置4を接続させる。これにより、書き戻し処理をノード内通信(ローカル)で行なうことができ、データの書き戻しによって発生するネットワークの負荷を減少させることができる。
送信部111は、付け替え処理部114が書き戻し対象の記憶装置4を他の情報処理装置10に接続させる場合に、書き戻し対象の記憶装置4に対するアクセス要求が発生すると、アクセス要求を他の情報処理装置10に送信する。これにより、書き戻し処理の実行中においても書き戻し対象の記憶装置4にアクセスすることができ、ストレージシステム1の可用性を高めることができる。
付け替え処理部114は、書き戻し管理部112が取得した格納先情報302に基づき、書き戻し対象の記憶装置4を他の情報処理装置10に接続させる。これにより、書き戻し対象の記憶装置を、書き戻すべきデータを保持する記憶装置4を有する情報処理装置1を一巡させるだけですべてのオフロードデータを取得することができる。
書き戻し管理部112は、書き戻し処理部113がデータの書き戻しを完了すると、格納先情報302を更新して管理装置3に送信する。これにより、書き戻しが完了した記憶装置4をオフロード対象から外すことができ、書き戻しが完了した記憶装置4が新しいオフロードされたデータを保持しないことを保証できる。
付け替え処理部114は、情報処理装置10と書き戻し対象の記憶装置4との間の中継装置を制御することにより、書き戻し対象の記憶装置4を他の情報処理装置10に接続させる。これにより、情報処理装置10と記憶装置4との間のネットワーク構成を簡易なものにすることができ、ストレージシステム1の設置コストを低減させることができる。
また、使用頻度の少ない記憶装置4を電源オフ状態にしておくことができ、ストレージシステム1の運用コストを低減させることができる。更に、オフロード先として記憶装置4のログ領域を使用するため、オフロード用に新たな記憶装置4を備える必要がなく、ストレージシステム1の設置コストを低減させることができる。
〔B〕その他
開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。本実施形態の各構成及び各処理は、必要に応じて取捨選択することができ、あるいは適宜組み合わせてもよい。
〔C〕付記
(付記1)
第1記憶装置を接続された第1情報処理装置と、第2記憶装置を接続された第2情報処理装置と、を備えるストレージシステムにおいて、
前記第1情報処理装置は、
前記第1記憶装置を前記第2情報処理装置に接続させる付け替え処理部を備え、
前記第2情報処理装置は、
前記付け替え処理部により当該第2情報処理装置に接続された前記第1記憶装置に対して、前記第2記憶装置に一時的に格納されたデータを書き戻す第2書き戻し処理部を備える、
ことを特徴とする、ストレージシステム。
(付記2)
前記第1情報処理装置は、
第3記憶装置と接続され、
前記付け替え処理部が前記第1記憶装置を前記第2情報処理装置に接続させる前に、前記第1記憶装置に対して、前記第3記憶装置に一時的に格納されたデータを書き戻す第1書き戻し処理部を備える、
ことを特徴とする、付記1に記載のストレージシステム。
(付記3)
前記第1情報処理装置は、
前記付け替え処理部が前記第1記憶装置を前記第2情報処理装置に接続させる場合に、前記第1記憶装置に対するアクセス要求が発生すると、当該アクセス要求を前記第2情報処理装置に送信する送信部
を備えることを特徴とする、付記1又は2に記載のストレージシステム。
(付記4)
前記第1情報処理装置は、前記第1記憶装置に格納すべきデータが格納されている記憶装置を持つ情報処理装置を示す格納先情報を当該ストレージシステムが備える管理装置から取得する書き戻し管理部を備え、
前記付け替え処理部は、前記書き戻し管理部が取得した前記格納先情報に基づき、前記第1記憶装置を前記第2情報処理装置に接続させる、
ことを特徴とする、付記1〜3のいずれか1項に記載のストレージシステム。
(付記5)
前記書き戻し管理部は、前記書き戻し処理部が前記データの書き戻しを完了すると、前記格納先情報を更新して前記管理装置に送信する、
ことを特徴とする、付記4に記載のストレージシステム。
(付記6)
第1記憶装置に第2記憶装置が格納しているデータを書き戻す情報処理装置であって、
前記第1記憶装置が当該情報処理装置に接続された場合に、前記第1記憶装置に対して、前記第2記憶装置に一時的に格納されたデータを書き戻す書き戻し処理部と、
前記書き戻し処理部による前記データの書き戻し後に、前記第1記憶装置に格納すべきデータが格納されている第3記憶装置が接続された他の情報処理装置に、前記第1記憶装置を接続させる付け替え処理部と、
を備えることを特徴とする、情報処理装置。
(付記7)
前記付け替え処理部が前記第1記憶装置を前記他の情報処理装置に接続させる場合に、前記第1記憶装置に対するアクセス要求が発生すると、当該アクセス要求を前記他の情報処理装置に送信する送信部
を備えることを特徴とする、付記6に記載の情報処理装置。
(付記8)
前記第1記憶装置に格納すべきデータが格納されている記憶装置を持つ情報処理装置示す格納先情報を当該情報処理装置と通信可能に接続される管理装置から取得する書き戻し管理部を備え、
前記付け替え処理部は、前記書き戻し管理部が取得した前記格納先情報に基づき、前記第1記憶装置を前記他の情報処理装置に接続させる、
ことを特徴とする、付記6又は7に記載の情報処理装置。
(付記9)
前記書き戻し管理部は、前記書き戻し処理部が前記データの書き戻しを完了すると、前記格納先情報を更新して前記管理装置に送信する、
ことを特徴とする、付記8に記載の情報処理装置。
(付記10)
前記付け替え処理部は、当該情報処理装置と前記第1記憶装置との間の中継装置を制御することにより、前記第1記憶装置を前記他の情報処理装置に接続させる、
ことを特徴とする、付記6〜9のいずれか1項に記載の情報処理装置。
(付記11)
第1記憶装置に第2記憶装置が格納しているデータを書き戻す情報処理装置における制御方法であって、
前記第1記憶装置が当該情報処理装置に接続された場合に、前記第1記憶装置に対して、前記第2記憶装置に一時的に格納されたデータを書き戻し、
前記データの書き戻し後に、前記第1記憶装置に格納すべきデータが格納されている第3記憶装置が接続された他の情報処理装置に、前記第1記憶装置を接続させる、
ことを特徴とする、制御方法。
(付記12)
前記第1記憶装置を前記他の情報処理装置に接続させる場合に、前記第1記憶装置に対するアクセス要求が発生すると、当該アクセス要求を前記他の情報処理装置に送信する、
ことを特徴とする、付記11に記載の制御方法。
(付記13)
前記第1記憶装置に格納すべきデータが格納されている記憶装置を持つ情報処理装置示す格納先情報を当該情報処理装置と通信可能に接続される管理装置から取得し、
取得した前記格納先情報に基づき、前記第1記憶装置を前記他の情報処理装置に接続させる、
ことを特徴とする、付記11又は12に記載の制御方法。
(付記14)
前記データの書き戻しを完了すると、前記格納先情報を更新して前記管理装置に送信する、
ことを特徴とする、付記13に記載の制御方法。
(付記15)
当該情報処理装置と前記第1記憶装置との間の中継装置を制御することにより、前記第1記憶装置を前記他の情報処理装置に接続させる、
ことを特徴とする、付記11〜14のいずれか1項に記載の制御方法。
(付記16)
第1記憶装置に第2記憶装置が格納しているデータを書き戻す情報処理装置が備えるコンピュータに、
前記第1記憶装置が当該情報処理装置に接続された場合に、前記第1記憶装置に対して、前記第2記憶装置に一時的に格納されたデータを書き戻し、
前記データの書き戻し後に、前記第1記憶装置に格納すべきデータが格納されている第3記憶装置が接続された他の情報処理装置に、前記第1記憶装置を接続させる、
処理を実行させることを特徴とする、制御プログラム。
(付記17)
前記第1記憶装置を前記他の情報処理装置に接続させる場合に、前記第1記憶装置に対するアクセス要求が発生すると、当該アクセス要求を前記他の情報処理装置に送信する、
処理を前記コンピュータに実行させることを特徴とする、付記16に記載の制御プログラム。
(付記18)
前記第1記憶装置に格納すべきデータが格納されている記憶装置を示す格納先情報を当該情報処理装置と通信可能に接続される管理装置から取得し、
取得した前記格納先情報に基づき、前記第1記憶装置を前記他の情報処理装置に接続させる、
処理を前記コンピュータに実行させることを特徴とする、付記16又は17に記載の制御プログラム。
(付記19)
前記データの書き戻しを完了すると、前記格納先情報を更新して前記管理装置に送信する、
処理を前記コンピュータに実行させることを特徴とする、付記18に記載の制御プログラム。
(付記20)
当該情報処理装置と前記第1記憶装置との間の中継装置を制御することにより、前記第1記憶装置を前記他の情報処理装置に接続させる、
処理を前記コンピュータに実行させることを特徴とする、付記16〜19のいずれか1項に記載の制御プログラム。
1 ストレージシステム
1a ストレージシステム
1b ストレージシステム
10 サーバ(情報処理装置)
10a サーバ
10b サーバ
11 CPU(コンピュータ)
111 ネットワーク送受信部(送信部)
112 書き戻し管理部
113 書き戻し処理部(第1書き戻し処理部,第2書き戻し処理部)
114 付け替え処理部
115 読み書き処理部
12 メモリ
2 管理サーバ
20 DAN管理部
3 ロードバランサ(管理装置)
301 ハッシュ表
302 巡回サーバリスト(格納先情報)
4 記憶装置
5a ネットワーク
5b ネットワーク
6 DAN

Claims (7)

  1. 第1記憶装置に第2記憶装置が格納しているデータを書き戻す情報処理装置であって、
    前記第1記憶装置が当該情報処理装置に接続された場合に、前記第1記憶装置に対して、前記第2記憶装置に一時的に格納されたデータを書き戻す書き戻し処理部と、
    前記書き戻し処理部による前記データの書き戻し後に、前記第1記憶装置に格納すべきデータが格納されている第3記憶装置が接続された他の情報処理装置、前記第1記憶装置との間の接続を、未接続状態から接続状態に変更する付け替え処理部と、
    を備えることを特徴とする、情報処理装置。
  2. 前記付け替え処理部が前記第1記憶装置を前記他の情報処理装置に接続させる場合に、前記第1記憶装置に対するアクセス要求が発生すると、当該アクセス要求を前記他の情報処理装置に送信する送信部
    を備えることを特徴とする、請求項1に記載の情報処理装置。
  3. 前記第1記憶装置に格納すべきデータが格納されている記憶装置を持つ情報処理装置を示す格納先情報を当該情報処理装置と通信可能に接続される管理装置から取得する書き戻し管理部を備え、
    前記付け替え処理部は、前記書き戻し管理部が取得した前記格納先情報に基づき、前記第1記憶装置を前記他の情報処理装置に接続させる、
    ことを特徴とする、請求項1又は2に記載の情報処理装置。
  4. 前記書き戻し管理部は、前記書き戻し処理部が前記データの書き戻しを完了すると、前記格納先情報を更新して前記管理装置に送信する、
    ことを特徴とする、請求項3に記載の情報処理装置。
  5. 前記付け替え処理部は、当該情報処理装置と前記第1記憶装置との間の中継装置を制御することにより、前記第1記憶装置を前記他の情報処理装置に接続させる、
    ことを特徴とする、請求項1〜4のいずれか1項に記載の情報処理装置。
  6. 第1記憶装置に第2記憶装置が格納しているデータを書き戻す情報処理装置における制御方法であって、
    前記第1記憶装置が当該情報処理装置に接続された場合に、前記第1記憶装置に対して、前記第2記憶装置に一時的に格納されたデータを書き戻し、
    前記データの書き戻し後に、前記第1記憶装置に格納すべきデータが格納されている第3記憶装置が接続された他の情報処理装置、前記第1記憶装置との間の接続を、未接続状態から接続状態に変更する
    ことを特徴とする、制御方法。
  7. 第1記憶装置に第2記憶装置が格納しているデータを書き戻す情報処理装置が備えるコンピュータに、
    前記第1記憶装置が当該情報処理装置に接続された場合に、前記第1記憶装置に対して、前記第2記憶装置に一時的に格納されたデータを書き戻し、
    前記データの書き戻し後に、前記第1記憶装置に格納すべきデータが格納されている第3記憶装置が接続された他の情報処理装置、前記第1記憶装置との間の接続を、未接続状態から接続状態に変更する
    処理を実行させることを特徴とする、制御プログラム。
JP2014055033A 2014-03-18 2014-03-18 情報処理装置,制御方法及び制御プログラム Expired - Fee Related JP6264116B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014055033A JP6264116B2 (ja) 2014-03-18 2014-03-18 情報処理装置,制御方法及び制御プログラム
US14/634,941 US20150268869A1 (en) 2014-03-18 2015-03-02 Storage system, information processing device, and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014055033A JP6264116B2 (ja) 2014-03-18 2014-03-18 情報処理装置,制御方法及び制御プログラム

Publications (2)

Publication Number Publication Date
JP2015176574A JP2015176574A (ja) 2015-10-05
JP6264116B2 true JP6264116B2 (ja) 2018-01-24

Family

ID=54142139

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014055033A Expired - Fee Related JP6264116B2 (ja) 2014-03-18 2014-03-18 情報処理装置,制御方法及び制御プログラム

Country Status (2)

Country Link
US (1) US20150268869A1 (ja)
JP (1) JP6264116B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6256133B2 (ja) * 2014-03-18 2018-01-10 富士通株式会社 ストレージ装置,キャッシュ制御方法及びキャッシュ制御プログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001051809A (ja) * 1999-08-12 2001-02-23 Toshiba Corp ディスクアレイ装置
TW454120B (en) * 1999-11-11 2001-09-11 Miralink Corp Flexible remote data mirroring
JP2002007304A (ja) * 2000-06-23 2002-01-11 Hitachi Ltd ストレージエリアネットワークを用いた計算機システム及びそのデータ取り扱い方法
US6816982B2 (en) * 2001-03-13 2004-11-09 Gonen Ravid Method of and apparatus for computer hard disk drive protection and recovery
JP4386932B2 (ja) * 2007-08-17 2009-12-16 富士通株式会社 ストレージ管理プログラム、ストレージ管理装置およびストレージ管理方法
US8924513B2 (en) * 2009-07-08 2014-12-30 International Business Machines Corporation Storage system

Also Published As

Publication number Publication date
US20150268869A1 (en) 2015-09-24
JP2015176574A (ja) 2015-10-05

Similar Documents

Publication Publication Date Title
US9020984B1 (en) Methods and apparatus for optimizing resource utilization in distributed storage systems
JP6476932B2 (ja) ストレージ装置,制御プログラム,ストレージシステム及びデータ転送方法
US8578087B2 (en) On demand conversion of standard logical volumes to thin-provisioned logical volumes
CN102708060B (zh) 一种镜像文件访问方法、装置及系统
US20160080490A1 (en) Online data movement without compromising data integrity
US20100131728A1 (en) Computer-readable recording medium storing data migration program, data migration method, and data migration apparatus
US8001324B2 (en) Information processing apparatus and informaiton processing method
JP2009043030A (ja) ストレージシステム
JP2007133821A (ja) 機器停止を伴う仮想ボリューム制御方法
US10303369B2 (en) Storage in tiered environment with cache collaboration
JP2015509235A (ja) 記憶階層化のためのコンテンツ選択
JP2016115253A (ja) 情報処理装置、メモリ管理方法およびメモリ管理プログラム
JP6294569B2 (ja) ストレージシステム及びキャッシュ制御方法
US8838768B2 (en) Computer system and disk sharing method used thereby
US9395930B2 (en) Information processing system, control method of information processing system, and recording medium
JP6264116B2 (ja) 情報処理装置,制御方法及び制御プログラム
JP2016081119A (ja) 情報処理システム、情報処理システムの制御方法および制御装置の制御プログラム
US10324655B2 (en) Efficient sidefile utilization in asynchronous data replication systems
CN104426965A (zh) 自管理存储方法和系统
US20100223442A1 (en) Computer system and data erasing method
US10078642B1 (en) Dynamic memory shrinker for metadata optimization
JP2020177274A (ja) ストレージ装置、ストレージシステムおよびプログラム
JP2005070965A (ja) 情報処理方法、情報処理システム及び情報処理装置
JP2015176218A (ja) 演算処理装置、演算処理装置の制御方法、及び演算処理装置の制御プログラム
JP2021124796A (ja) 分散コンピューティングシステム及びリソース割当方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170912

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171110

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171204

R150 Certificate of patent or registration of utility model

Ref document number: 6264116

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees