JP2005222404A - 仮想記憶ユニットを備えた記憶制御サブシステム - Google Patents
仮想記憶ユニットを備えた記憶制御サブシステム Download PDFInfo
- Publication number
- JP2005222404A JP2005222404A JP2004031150A JP2004031150A JP2005222404A JP 2005222404 A JP2005222404 A JP 2005222404A JP 2004031150 A JP2004031150 A JP 2004031150A JP 2004031150 A JP2004031150 A JP 2004031150A JP 2005222404 A JP2005222404 A JP 2005222404A
- Authority
- JP
- Japan
- Prior art keywords
- storage
- virtual
- unit
- host terminal
- capacity value
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/0632—Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/0664—Virtualisation aspects at device level, e.g. emulation of a storage device or system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0038—System on Chip
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99943—Generating database or data structure, e.g. via user interface
Abstract
【課題】 ホスト端末に混乱を生じさせてしまう可能性を低減する記憶制御サブシステムが提供する。
【解決手段】 記憶制御サブシステム102に備えられる記憶制御装置100は、共有メモリ102に記憶された仮想記憶容量値をホスト端末に通知し、そのホスト端末において仮想記憶容量値が記憶された後、その仮想記憶容量値を有する仮想記憶ユニットがホスト端末に接続されている間は、上記通知した仮想記憶容量値が変更されないようにする。
【選択図】図2
【解決手段】 記憶制御サブシステム102に備えられる記憶制御装置100は、共有メモリ102に記憶された仮想記憶容量値をホスト端末に通知し、そのホスト端末において仮想記憶容量値が記憶された後、その仮想記憶容量値を有する仮想記憶ユニットがホスト端末に接続されている間は、上記通知した仮想記憶容量値が変更されないようにする。
【選択図】図2
Description
本発明は、仮想記憶ユニットを備えた記憶制御サブシステムに関する。
例えば、大容量のデータを取り扱う基幹業務用の記憶システムでは、ホストコンピュータ(以下、「ホスト端末」と言う)とは、別体に構成された記憶制御サブシステムを用いてデータが管理されている。この記憶制御サブシステムは、例えば、多数のディスク型記憶装置をアレイ状に配置して構成されているRAID(Redundant Array of Independent Inexpensive Disks)である。
例えば、特開平9−288547号公報には、直列に並べられた複数の実デバイスを1つの仮想デバイスとして提供することが開示されている(段落23)。
また、例えば、特開平11−345158号公報には、正副ボリュームへの更新を各ボリュームの更新情報にそれぞれ記録する正副1対のボリュームに対する差分ダンプ取得方法であって、ミラー状態移行時に前記副ボリュームの更新情報を前記正ボリュームの更新情報に一致させ、ダンプ開始時に前記ミラー状態からミラー一時解除状態へ移行して前記正ボリュームの更新情報を初期化するとともに前記副ボリュームから更新部分のダンプを得ることが開示されている。
ところで、例えば、記憶制御サブシステムは、1又は複数のディスク型記憶装置上に用意される複数の論理的な記憶デバイス(以下、Logical Deviceを略して「LDEV」と言う)のうち、1以上のLDEVから構成される1つの記憶ユニットをLU(Logical Unit)としてホスト端末に提供するものがある。このような記憶制御システムでは、例えば、1つのLUをプライマリLU、別の1つのLUをセカンダリLUとしたLUペアが形成されて、プライマリLU内の更新前データをセカンダリLUにコピーすること(すなわち、いわゆるスナップショットを作成すること)が行われる場合がある。
一般に、LUペアを構成する双方のLUの記憶容量は同じである。このため、プライマリLUの記憶容量が大きいと、セカンダリLUとしても記憶容量の大きいLUが必要となる。しかし、上述したスナップショットでは、コピーされる更新前データのデータサイズが小さい場合がある。そのため、セカンダリLUの記憶容量は無駄に大きいことになってしまう場合がある。
また、例えば、記憶制御サブシステムは、ホスト端末からリードキャパシティコマンドを受けた場合、その記憶制御サブシステムが有するLUの記憶容量をホスト端末に通知することがある。ここで、記憶制御サブシステムが、同一のLUについて、過去に通知した記憶容量と別の記憶容量を通知すると、ホスト端末に混乱を生じさせてしまう可能性がある。
従って、本発明は、例えば、少なくとも次のいずれかの目的を達成するものである。
(1)スナップショット作成のために、記憶容量の大きいLUペアを形成しても、無駄な空き記憶領域を少なくする記憶制御サブシステムを提供する。
(2)ホスト端末に混乱を生じさせてしまう可能性を低減する記憶制御サブシステムを提供する。
(1)スナップショット作成のために、記憶容量の大きいLUペアを形成しても、無駄な空き記憶領域を少なくする記憶制御サブシステムを提供する。
(2)ホスト端末に混乱を生じさせてしまう可能性を低減する記憶制御サブシステムを提供する。
本発明の他の目的は、後述の説明から明らかになるであろう。
本発明に従う記憶制御サブシステムは、ホスト端末に接続された記憶制御システムが有する記憶制御サブシステムであって、データを論理的に記憶する論理記憶デバイスと、前記論理記憶デバイスを有し、前記論理的に記憶されたデータを物理的に記憶する物理記憶デバイスと、仮想記憶容量値が設定されることによって実装状態となる仮想記憶ユニットと、前記設定された仮想記憶容量値を記憶するメモリと、記憶制御部とを備える。記憶制御部は、前記仮想記憶ユニットを認識している前記ホスト端末からリード要求又はライト要求を受信した場合に、前記仮想記憶ユニットにおける仮想記憶領域と、前記論理記憶デバイスにおける論理記憶領域とを対応付けて(例えば動的に対応付けて)、前記仮想記憶領域を介して前記論理記憶領域と前記ホスト端末との間でデータをやり取りする。前記記憶制御部は、前記メモリに記憶された仮想記憶容量値を前記ホスト端末に通知し、前記ホスト端末において前記仮想記憶容量値が記憶された後、前記仮想記憶ユニットが前記ホスト端末に接続されている間は、前記通知した仮想記憶容量値が変更されないようにする。
本発明に従う記憶制御方法は、例えば、データを論理的に記憶する論理記憶デバイスと、前記論理記憶デバイスを有し、前記論理的に記憶されたデータを物理的に記憶する物理記憶デバイスと、仮想記憶容量値が設定されることによって実装状態となる仮想記憶ユニットと、前記設定された仮想記憶容量値を記憶するメモリとを備える記憶制御サブシステムにおいて行われる方法である。前記記憶制御方法は、前記仮想記憶ユニットを認識している前記ホスト端末からリード要求又はライト要求を受信した場合に、前記仮想記憶ユニットにおける仮想記憶領域と、前記論理記憶デバイスにおける論理記憶領域とを対応付けるステップと、前記仮想記憶領域を介して前記論理記憶領域と前記ホスト端末との間でデータをやり取りするステップと、前記メモリに記憶された仮想記憶容量値を前記ホスト端末に通知するステップと、前記通知するステップを実行し、前記ホスト端末において前記仮想記憶容量値が記憶された後、前記仮想記憶ユニットが前記ホスト端末に接続されている間は、前記通知した仮想記憶容量値が変更されないようにするステップとを有する。
本発明によれば、ホスト端末に混乱を生じさせてしまう可能性を低減する記憶制御サブシステムが提供される。
以下、図面を参照して本発明の一実施形態を説明する。
図1は、本発明の一実施形態に係る記憶制御システムの外観の概略を示す。
記憶制御システム600は、例えば、基本筐体10と複数の増設筐体12とから構成することができる(基本筐体11のみで構成されても良い)。
基本筐体10は、記憶制御システム600の最小構成単位である。この基本筐体10には、例えば、複数のディスク型記憶装置(例えばハードディスクドライブ(HDD))300と、複数の制御パッケージ(例えば後述するチャネル制御部又はディスク制御部)105と、複数の電源ユニット400と、複数のバッテリユニット500とがそれぞれ着脱可能に設けられている。また、基本筐体10には、複数の冷却ファン13が設けられている。
各増設筐体12は、記憶制御システム600のオプションであり、例えば、1つの基本筐体10に最大4個の増設筐体12を接続することができる。各増設筐体12には、複数の冷却ファン13が設けられている。また、各増設筐体12には、複数のディスク型記憶装置300と、複数の電源ユニット400と、複数のバッテリユニット500とがそれぞれ着脱可能に設けられており、それらの各々は、例えば、基本筐体10に設けられた制御パッケージ105が有する制御機能により制御される。
図2は、本発明の一実施形態に係る記憶システムの全体構成例を示す。
この記憶システム1の基本的な構成要素は、1又は複数のホスト端末200A〜200Dと、記憶制御システム600である。
ホスト端末(上位装置)200A〜200Dの各々は、例えば、CPU(Central Processing Unit)、不揮発性及び/又は揮発性のメモリ(例えばROM又はRAM)、及びハードディスク等をハードウェア資源として備えたコンピュータシステム(例えば、パーソナルコンピュータ又はワークステーション)である。各ホスト端末200A〜200DのCPUが、メモリに格納された各種コンピュータプログラムを読込んで実行することにより、コンピュータプログラムとハードウェア資源(例えばメモリ)とが協働した処理が行われて、種々の機能が実現される。ホスト端末200A〜200Dの各々は、種々の方法で記憶制御システム600に接続することができる。
例えば、ホスト端末200A〜200Bは、第一通信ネットワーク(例えば、LAN、インターネット又は専用回線、以下、LANであるとする)820を介して記憶制御システム600に接続されている。LAN820を介して行われるホスト端末200A及び200Bと記憶制御システム600との間の通信は、例えばTCP/IPプロトコルに従って行われる。ホスト端末200A及び200Bから記憶制御システム600に対して、ファイル名指定によるデータアクセス要求(ファイル単位でのデータ入出力要求、以下、「ファイルアクセス要求」と言う)が送信される。
また、例えば、ホスト端末200B及び200Cは、第二通信ネットワーク(例えば、SAN(Storage Area Network)、以下、SANであるとする)821を介して記憶制御システム600に接続されている。SAN821を介して行われるホスト端末200B及び200Cと記憶制御システム600との間の通信は、例えばファイバチャネルプロトコルに従って行われる。ホスト端末200B及び200Cから記憶制御システム600に対して、例えば、ブロック単位のデータアクセス要求(以下、「ブロックアクセス要求」と言う)が送信される(なお、ブロック単位とは、後述のディスク型記憶装置300上の記憶領域におけるデータの管理単位であるブロックを単位としたものである)。
また、例えば、ホスト端末200Dは、LAN820やSAN821等のネットワークを介さずに記憶制御システム600に接続されている。ホスト端末200Dは、例えば、メインフレームコンピュータとすることができる。ホスト端末200Dと記憶制御システム600との間の通信は、例えば、FICON(Fibre
Connection:登録商標)、ESCON(Enterprise System Connection:登録商標)、ACONARC(Advanced Connection Architecture:登録商標)、FIBARC(Fibre
Connection Architecture:登録商標)等の通信プロトコルに従って行われる。ホスト端末200Dから記憶制御システム600に対して、例えば、これらの通信プロトコルのうちのいずれかに従ってブロックアクセス要求が送信される。
Connection:登録商標)、ESCON(Enterprise System Connection:登録商標)、ACONARC(Advanced Connection Architecture:登録商標)、FIBARC(Fibre
Connection Architecture:登録商標)等の通信プロトコルに従って行われる。ホスト端末200Dから記憶制御システム600に対して、例えば、これらの通信プロトコルのうちのいずれかに従ってブロックアクセス要求が送信される。
LAN820及びSAN821の少なくとも一方には、例えば、バックアップ記憶制御システム910が接続されている。バックアップ記憶制御システム910は、例えば、1又は複数個のディスク系デバイス(例えば、MO、CD−R、又はDVD−RAM)から選択されたディスク系デバイスにデータを格納する記憶制御システムであっても良いし、後に詳述する記憶制御システム600のような記憶制御システムであっても良いし、1又は複数個のテープ系デバイス(例えば、DATテープ、カセットテープ、オープンテープ又はカートリッジテープ)から選択されたテープ系デバイスにデータを格納する記憶制御システムであっても良い。バックアップ記憶制御システム910は、例えば、LAN820或いはSAN821(又は、更に、バックアップ制御システム910に接続されているホスト端末)を介して、記憶制御システム600に記憶されているデータを受信し、自分が備えている記憶装置(例えばテープ系デバイス)にそのデータを格納する。
また、LAN820及びSAN821のうちの少なくともLAN820には、例えば、管理サーバ819が接続されていても良い。管理サーバ819は、例えば、ホスト端末と別のホスト端末との間の通信や、ホスト端末と記憶制御システム600との間の通信の中継を行っても良い。
また、ホスト端末200A〜200Dは、第三通信ネットワーク(例えばLAN)を介して相互に接続されていても良い。
記憶制御システム600は、例えば、RAID((Redundant
Array of Independent Inexpensive Disks))システムである。記憶制御システム600は、ホスト端末200A〜200Dから受信したコマンドに従う制御を行う。記憶制御システム600は、記憶制御サブシステム(ディスクアレイ装置)102と、保守用端末(以下、Service Processorを略して「SVP」と記載)160とを備える。記憶制御サブシステム102は、記憶制御装置100と、記憶装置ユニット101とを備える。記憶制御装置100は、1又は複数のチャネル制御部110A〜110Dと、1又は複数のキャッシュメモリ(以下、Cache Memoryを略して「CM」と記載)130と、1又は複数の共有メモリ(以下、Shared Memoryを略して「SM」と記載)120と、1又は複数のディスク制御部140A〜140Dと、接続部150とを備える。記憶装置ユニット101は、1以上の物理ディスク群5を備える。1以上の物理ディスク群5の各々は、アレイ状に配列された複数のディスク型記憶装置300を有する。
Array of Independent Inexpensive Disks))システムである。記憶制御システム600は、ホスト端末200A〜200Dから受信したコマンドに従う制御を行う。記憶制御システム600は、記憶制御サブシステム(ディスクアレイ装置)102と、保守用端末(以下、Service Processorを略して「SVP」と記載)160とを備える。記憶制御サブシステム102は、記憶制御装置100と、記憶装置ユニット101とを備える。記憶制御装置100は、1又は複数のチャネル制御部110A〜110Dと、1又は複数のキャッシュメモリ(以下、Cache Memoryを略して「CM」と記載)130と、1又は複数の共有メモリ(以下、Shared Memoryを略して「SM」と記載)120と、1又は複数のディスク制御部140A〜140Dと、接続部150とを備える。記憶装置ユニット101は、1以上の物理ディスク群5を備える。1以上の物理ディスク群5の各々は、アレイ状に配列された複数のディスク型記憶装置300を有する。
チャネル制御部110A〜110Dの各々は、ハードウェア回路、ソフトウェア、又はそれらの組み合わせで構成することができる。各チャネル制御部110A〜110Dは、記憶制御装置100(例えば基本筐体10)に対して着脱可能であり、チャネルアダプタと呼ばれることがある。各チャネル制御部110A〜110Dは、例えば、プロセッサやメモリ等が実装されたプリント基板と、メモリに格納された制御プログラムとをそれぞれ備えており、これらのハードウェアとソフトウェアとの協働作業によって、所定の機能を実現する。チャネル制御部110A〜110Dの各々は、多重化(例えば二重化)されており、1つのチャネル制御部が破損しても他のチャネル制御部で動作するようになっている。チャネル制御部110A〜110Dは、SM120内の制御情報等(例えば後述のLU−LDEV管理テーブル)を参照しつつ、ホスト端末から受信したコマンドに従う処理を実行する。チャネル制御部110A〜110Dのうち、チャネル制御部110Cを例に採り、ディスク制御部140A〜140Dの動作も含めて先に説明すると、例えば、チャネル制御部110Cは、ホスト端末200A又は200Bから、リード要求を含んだI/O要求(入/出力要求、ここではブロックアクセス要求)を受信すると、読出しコマンドをSM120に記憶させると共に、CM130にキャッシュ領域を確保する。ディスク制御部140A〜140Dは、SM120を随時参照しており、未処理の読出しコマンドを発見すると、ディスク型記憶装置300からデータ(典型的には、ホスト端末200A〜200Dとディスク型記憶装置300との間でやり取りされるユーザデータ)を読み出して、CM130に確保された上記キャッシュ領域に記憶させる。チャネル制御部110Cは、CM130に移されたデータをキャッシュ領域から読み出し、そのデータをリード要求発行元のホスト端末200A又は200Bに送信する。
また、例えば、チャネル制御部110Cは、ホスト端末200B又は200Cから、ライト要求を含んだI/O要求を受信すると、書込みコマンドをSM120に記憶させると共に、CM130にキャッシュ領域を確保し、受信したI/O要求に含まれているデータを、上記確保したキャッシュ領域に記憶させる。その後、チャネル制御部110Cは、ライト要求発行元のホスト端末200B又は200Cに対して書込み完了を報告する。そして、ディスク制御部140A〜140Dは、SM120を随時参照しており、未処理の書込みコマンドを発見すると、その書込みコマンドに従って、CM130に確保された上記キャッシュ領域からデータを読出し、そのデータを所定のディスク型記憶装置300に記憶させる。
上記の処理は、他のチャネル制御部110A〜110B及び110Dも行うことができる。なお、チャネル制御部110A〜110Bは、ファイルアクセス要求をブロックアクセス要求に変換した後に(例えば、自分が持っているファイルシステムに従い、ファイル要求に含まれているファイル名を論理ブロックアドレスに変換した後に)、上記の処理を行う。
ディスク制御部140A〜140Dは、ハードウェア回路、ソフトウェア、又はそれらの組み合わせで構成することができる。各チャネル制御部140A〜140Dは、記憶制御装置100(例えば基本筐体10又は増設筐体12)に対して着脱可能であり、ディスクアダプタと呼ばれることがある。ディスク制御部140A〜140Dは、例えば、プロセッサやメモリ等が実装されたプリント基板と、メモリに格納された制御プログラムとをそれぞれ備えており、これらのハードウェアとソフトウェアとの協働作業によって、所定の機能を実現する。ディスク制御部140A〜140Dの各々は、多重化(例えば二重化)されており、1つのディスク制御部が破損しても他のディスク制御部で動作するようになっている。ディスク制御部140A〜140Dは、SM120内の制御情報等(例えば後述のLU−LDEV管理テーブル)を参照しつつ、各物理ディスク群5に含まれる各ディスク型記憶装置300との間のデータ通信を制御するものである。各ディスク制御部140A〜140Dと各ディスク型記憶装置300とは、例えば、SAN等の通信ネットワークを介して接続されており、ファイバチャネルプロトコルに従ってブロック単位のデータ転送を行う。また、ディスク制御部140A〜140Dは、ディスク型記憶装置300の状態を随時監視しており、この監視結果は内部の通信ネットワーク(例えばLAN)151を介してSVP160に送信される。
1又は複数のCM130は、例えば、揮発性又は不揮発性のメモリである。CM130には、キャッシュ領域が確保され、そこに、チャネル制御部110A〜110Dとディスク制御部140A〜140Dとの間で送受されるデータが記憶される。そのデータは、複数のCM130により多重管理されても良い。
1又は複数のSM120は、例えば不揮発性のメモリから構成され、制御情報等を記憶する(例えば、制御情報等は、複数のSM120により多重管理されても良い)。制御情報等には、例えば、チャネル制御部110A〜110Dとディスク制御部140A〜140Dとの間でやり取りされる種々のコマンドや、キャッシュ管理テーブルや、ディスク管理テーブルや、LU−LDEV管理テーブルがある。キャッシュ管理テーブルは、例えば、キャッシュ領域と、後述するLDEVの論理アドレスとの対応関係が書かれたテーブルである。ディスク管理テーブルは、各ディスク型記憶装置300を管理するためのテーブルであり、例えば、各ディスク型記憶装置300毎に、ディスクID、ベンダ、記憶容量、RAIDレベル、使用状況(例えば使用中か未使用か)等を有する。LU−LDEV管理テーブルは、後述するLDEVを管理するためのテーブルであり、例えば、各LDEV毎に、論理パス情報(例えばポート番号、ターゲットID及びLUN)、アドレス管理情報(例えば、ディスク型記憶装置300上の物理アドレスとLDEVにおける論理アドレスとの対応関係)、記憶容量及びRAIDレベルを有する。なお、物理アドレスとは、例えば、ディスク型記憶装置300のID、ディスクヘッド番号、及びセクタ数を含んだアドレス情報である。論理アドレスとは、例えば、LUN(Logica Unit Number)、LDEV番号、及び論理ブロックアドレスを含んだアドレス情報である。
接続部150は、各チャネル制御部110A〜110Dと、各ディスク制御部140A〜140Dと、CM130と、SM120とを相互に接続するものである。チャネル制御部110A〜110D、CM130、SM120及びディスク制御部140A〜140D間でのデータやコマンドの授受は、接続部150を介することにより行われる。接続部150は、例えば、ユーザデータが通過する第1サブ接続部と、制御情報等が通過する第2接続部とを含んでいる。第1サブ接続部には、各チャネル制御部110A〜110D、各ディスク制御部140A〜140D及びCM130が接続され、第2サブ接続部には、各チャネル制御部110A〜110D、各ディスク制御部140A〜140D及びSM120が接続される。第1サブ接続部及び第2サブ接続部のうちの少なくとも第1サブ接続部は、例えば、高速スイッチングによりデータ伝送を行う超高速クロスバスイッチ等の高速バスである。
複数のディスク型記憶装置300の各々は、例えば、ハードディスクドライブ或いは半導体メモリ装置等である。複数のディスク型記憶装置300のうちの2以上の所定数のディスク型記憶装置300によって、RAIDグループ2が構成されている。RAIDグループ2は、例えば、パリティグループ又はエラーコレクショングループとも呼ばれることがあり、RAIDの原理に従ったディスク型記憶装置300のグループである。同じRAIDグループ2に属する2以上のディスク型記憶装置300は、例えば異なるマザーボード上に搭載され、一つのディスク型記憶装置300が故障しても、残りの他のディスク型記憶装置300のデータを用いて、その故障したディスク型記憶装置300のデータを復元できるように構成されている。このRAIDグループ2の提供する物理的な記憶領域上に、論理的な記憶デバイスである複数のLDEV(Logical Device)が設定され、複数のLDEVのうちの1以上のLDEVが、LUN(Logical Unit Number)を持った1つのLU(Logical Unit)310として、記憶制御装置100からホスト端末200A〜200Dに提供される。各LU310は、例えば、プライマリLU(データコピー元LU)として、セカンダリLU(データコピー先LU)である別LU310とペアになる場合があり、その場合、そのLU310内の全部又は一部のデータ(例えば更新前のデータ)が、別LU310にコピーされることがある。また、各LU310は、例えば、セカンダリLUとして、プライマリLUである他のLU310とペアになる場合があり、その場合、別LU310内の全部又は一部のデータ(例えば更新前のデータ)が、そのLU310にコピーされることがある。
SVP160は、ストレージシステム600を保守又は管理するためのコンピュータマシンである。SVP160は、例えば、内部LAN等の通信ネットワーク151を介して、記憶制御システム600の各構成要素(例えば、各チャネル制御部110A〜110D及び各ディスク制御部140A〜140D)から情報を収集することができる。具体的には、例えば、記憶制御システム600の各構成要素(例えばチャネル制御部又はディスク制御部)に搭載されているOS(オペレーティングシステム)、アプリケーションプログラム、ドライバソフトウェア等が、その構成要素で発生した障害発生に関する障害発生情報を出力するようになっていて、SVP160が、その障害発生情報を受信することができる。SVP160が受ける情報としては、例えば、装置構成、電源アラーム、温度アラーム、入出力速度(例えば、記憶制御装置100が一定時間当たりに受信したI/O要求の数)等がある。また、例えば、SVP160は、オペレータによる操作に応答して、例えば、ディスク型記憶装置300の設定や、LDEVの設定や、チャネル制御部110A〜110Dにおいて実行されるマイクロプログラムのインストール等を行うことができる。また、SVP160は、例えば、記憶制御システム600の動作状態の確認や故障部位の特定、チャネル制御部110で実行されるオペレーティングシステムのインストール等の作業を行うこともできる。また、例えば、SVP160は、LANや電話回線等の通信ネットワークを介して外部保守センタ(図示せず)と接続されていて、その外部保守センタに、記憶制御システム600の各構成要素から受信した障害発生情報等を通知しても良い。また、SVP160は、記憶制御システム600に内蔵されている形態とすることもできるし、外付けされている形態とすることもできる。
以上が、記憶制御システム600についての基本的な説明である。なお、この記憶制御システム600では、例えば、1つのチャネル制御部と1つのディスク制御部とが1つのモジュールとして一体的に構成されて、その1つのモジュールで、チャネル制御部及びディスク制御部の機能を発揮しても良い。また、例えば、SM120とCM130が、一体的に構成されていても良い。また、各チャネル制御部毎に1つのLUNが割当てられても良いし、複数のチャネル制御部に1つのLUNが割当てられても良い。また、記憶制御システム600には、別の記憶制御システムが接続されていても良い。その場合、例えば、記憶制御システム600が有するプライマリLUと、別の記憶制御システムが有するセカンダリLUとがペア状態にされて、記憶制御システム600に接続されているホスト端末200A〜200Dが、記憶制御システム600を介して別の記憶制御システム内のセカンダリLUにアクセスしても良い。また、例えば、記憶制御システム600は、ファイルアクセス要求及びブロックアクセス要求の双方を受けるものであっても良いし、ファイルアクセス要求のみを受けるもの(例えばNAS)であっても良いし、ブロックアクセス要求のみを受けるものであっても良い。
図3は、本実施形態に係る記憶制御サブシステム102の機能を示すブロック図である。なお、以下の説明では、説明を分かり易くするために、ホスト端末200A〜200Dのうちホスト端末200Aを例に採り、且つ、チャネル制御部110A〜110Dのうちチャネル制御部110Aを例に採る。
ホスト端末200Aと記憶制御サブシステム102との間には、1又は複数の論理的な通信パス(以下、「論理パス」と言う)21A〜21Dが形成されている。各論理パス21A〜21Dは、例えば、記憶制御サブシステム102が有するポート(ホスト端末100Aが接続されるポート)の番号と、ターゲットIDと、LUNとに基づいて形成されたものである。
1又は複数のRAIDグループ2上に用意される複数のLDEVには、例えば、通常LDEVという属性を持ったLDEV(以下、通常LDEV)61aと、プールLDEVという属性を持ったLDEV(以下、プールLDEV)61bとがある。各LDEVは、SVP160のオペレータの指示により、通常LDEV61aからプールLDEV61bになることもできるし、逆に、プールLDEV61bから通常LDEV61aになることもできる。
通常LDEV61aは、ホスト端末110Aがアクセス可能なLDEVである。換言すれば、例えば、論理パス21Aが有するLUNがホスト端末110Aから指定された場合、そのLUNに対応付けられている2つの通常LDEV61aが、LU310Aとしてホスト端末200Aに提供される。また、例えば、論理パス21Bが有するLUNがホスト端末110Aから指定された場合、そのLUNに対応付けられている1つの通常LDEV61aが、LU310Bとしてホスト端末200Aに提供される。
プールLDEV61bは、LDEVプール68を構成するメンバであり、ホストがアクセス不可能なLDEVである。換言すれば、プールLDEV61bは、ホスト端末200Aから指定され得るLUNに対応付けられておらず、LUNが指定されてもプールLDEV61bそれ自体はホスト端末200Aに提供されないようになっている。
LDEVプール68の上位には、ホスト端末200Aに対して提供される1又は複数の仮想LU310Cが存在する。仮想LU310Cは、ホスト端末200Aに提供されるLUであるが、他のLU310A、310Bと違い、RAIDグループ2上に物理的なデータ格納領域を持たない仮想的なLUである。具体的に言えば、仮想LU310Cは、仮想LDEV61cから構成されるが、その仮想LDEV61cは、通常LDEV61aやプールLDEV61bと異なり、RAIDグループ2上に物理的なデータ格納領域を持たない仮想的なLDEVである。仮想LDEV61cが有する複数の仮想アドレスの各々は、ダイナミックマップテーブル(以下、「DMT」と略記)64を介して、動的に、プールLDEV68が有する複数の論理アドレスから選択された論理アドレスに対応付けられたり、その対応付けが解除されてその論理アドレスが開放されたりする。
図4は、仮想LDEV61c、LDEVプール68、及びDMT64の構成例を示す。
仮想LDEV61cは、例えば、一定サイズ(例えば64キロバイト)を有する複数の仮想チャンク410c、410c、…から成っている。各仮想チャンク410cは、所定個数(例えば128個)の論理ブロック(例えば1個が512バイト)から構成されている。各仮想チャンク410cには、先頭論理ブロックアドレス(以下、「仮想先頭LBA」と略記)が存在し、仮想先頭LBAから、どの仮想チャンク410cであるかを特定することができるようになっている。
各LDEVプール68は、1以上のLDEV61bの集合であり、例えば、一定サイズ(例えば64キロバイト)を有する複数の論理チャンク410b、410b、…から成っている。各論理チャンク61bは、所定個数(例えば128個)の論理ブロック(例えば1個が512バイト)から構成されている。各論理チャンク410bには、先頭論理ブロックアドレス(以下、「論理先頭LBA」と略記)が存在し、論理先頭LBAから、どの論理チャンク410cであるかを特定することができるようになっている。なお、例えば、アクセスする論理先頭LBAが決まれば、対応するチャンクの番号が決まる。具体的には、例えば、論理チャンクサイズを64KB(=128ブロック)とすると、論理チャンク番号nは、論理ブロック番号m/128の整数部となる(例えば、論理ブロック番号が0〜127の論理ブロックを有する論理チャンク番号はゼロであり、論理ブロック番号が128〜255の論理ブロックを有する論理チャンクの番号は1である)。
DMT64は、外部端末(例えばSVP160)から記憶制御サブシステム102内の記憶領域(例えばSM120)に登録される。DMT64は、各仮想LDEV61c毎に用意され、その仮想LDEV61cの各仮想チャンク410cと、1以上のLDEVプール68の各々における各論理チャンク410bとを対応付けるためのテーブルである。具体的には、例えば、DMT64には、各仮想先頭LBA毎に、その仮想先頭LBAに対応付けられたLDEVプール68の識別情報(例えばLDEVプール番号)と、そのLDEVプール68における論理先頭LBAとが記述される。このDMT64の記述内容は、所定のタイミング、例えば、チャネル制御部110AがI/O要求を受けた場合に、チャネル制御部110Aによって更新される。チャネル制御部110Aは、プールマネジメントテーブル(以下、「PMT」と略記)63を参照して、DMT64の記述内容の更新を更新する。
図5は、PMT63の構成例を示す。
PMT63は、LDEVプール68毎に存在するものであり、外部端末(例えばSVP160)から記憶制御サブシステム102内の記憶領域(例えばSM120)に登録される。LDEVプール68の各論理チャンク401b毎に、エントリ番号が割り当てられる。各PMT63には、それに対応したLDEVプール68における初めの空きエントリの番号(換言すれば、論理先頭LBAが最も若いチャンク番号)を筆頭に、キュー形式で、他の空きエントリの番号が書かれる。
以下、仮想LDEV61cとLDEVプール68とを動的に対応付けるチャネル制御部110Aの処理流れについて説明する。
ホスト端末200Aは、通常のLU310Aにアクセスする場合と同様の方法で、仮想LU310Cに対するI/O要求を出力する。チャネル制御部110Aは、例えば、ホスト端末110AからそのI/O要求を受けた場合、そのI/O要求から割り出された仮想先頭LBAと、LDEVプール68の論理先頭LBAとの対応付けを行う。具体的には、例えば、チャネル制御部110Aは、I/O要求を受けた仮想LU310Cが有する仮想LDEV61cに対応したDMT64を参照し、上記割り出された仮想先頭LBAに対応したLDEVプール番号を取得する。次に、チャネル制御部110Aは、取得したLDEVプール番号に対応したPMT63から、そのPMT63に書かれている最初の空きエントリ番号に対応した論理先頭LBAを取得し、その論理先頭LBAを、上記仮想先頭LBAに対応した場所(DMT64上の場所)に登録する。それにより、上記仮想先頭LBAに論理先頭LBAが対応付けられ、その論理先頭LBAを持つ論理チャンクからデータが読み出されたり、その論理チャンクにデータが書き込まれたりすることができるようになる。
また、チャネル制御部110Aは、例えば、上記I/O要求に基づく処理の終了後に、DMT64に書かれた論理先頭LBAを開放することができる。具体的には、例えば、チャネル制御部110Aは、DMT64に登録した上記論理先頭LBAをDMT64から削除し、PMT63に、その論理先頭LBA及びそれに対応するエントリ番号をPMT64に格納する。
以上のような流れで、仮想LU310C(仮想LDEV61c)とLDEVプール68との動的な対応付けやそれの解除が行われる。このように、どのホスト端末からアクセスされるかが予め割当てられていないプールLDEV61b、61b、…から成るLDEVプール68を用意し、そのLDEVプール68における記憶領域をフレキシブルに仮想LU310C(仮想LDEV61c)に対応付けることにより、空いている記憶領域を有効に活用することができる。
図6は、この実施形態に係るLU−LDEV管理テーブル162bの構成例を示す。
LU−LDEV管理テーブル162bは、記憶制御サブシステム102内の記憶領域(例えばSM120)に登録されるものである。LU−LDEV管理テーブル162bには、例えば、記憶制御システム600が備える各ポート(ホスト端末が接続されるポート)毎に、ポート番号と、そのポート番号に属する1以上のターゲットIDと、各ターゲットIDに属する1以上のLUNと、各LUNに属する1以上のLDEVに関するLDEV情報が記録されている。各LDEVのLDEV情報としては、例えば、LDEV番号、記憶容量、RAIDレベル、上述したアドレス管理情報、LDEV属性、DMT−ID、LDEVプール番号、状態及び記憶容量通知済みホストIDがある。
LDEV属性としては、例えば、上述したプールLDEV、通常LDEV及び仮想LDEVというものがある。
「プールLDEV」というLDEV属性を持つLDEV(前述したプールLDEV61b)は、ホスト端末にアクセスされないようになっているため、プールLDEV61bには、論理パス情報(例えばLUN)は対応付けられていない。また、プールLDEV61bには、どのLDEVプール68のメンバであるかが識別されるようにLDEVプール番号が対応付けられている。
「仮想LDEV」というLDEV属性を有するLDEV(前述した仮想LDEV61c)には、そのLDEV61cに対応するDMT64のID(例えばゼロ)が対応付けられる。このDMT−IDを参照することにより、どの仮想LDEV61c(仮想LU310C)にアクセスされた場合にはどのDMTを参照すれば良いかがわかるようになっている。また、仮想LDEV61cには、どのLDEVプール68のメンバであるかが識別されるようにLDEVプール番号が対応付けられている。
「通常LDEV」というLDEV属性を有するLDEV(前述した通常LDEV61a)には、DMT−ID及びLDEVプール番号は対応付けられていない。
LDEVの状態としては、例えば、アクセス可能な状態であることを表す「Ready」(例えば実装状態)と、アクセス不可能な状態であることを表す「Not Ready」(例えば未実装状態)とがある。
各LDEVの記憶容量通知済みホストIDとは、LDEVが属するLUの記憶容量の通知を受けたホスト端末のID(例えば、MACアドレス又はWWN(World Wide Name)である。これを参照することにより、どのLUの記憶容量がどのホスト端末に通知されたかが分かるようになっている。
図7は、チャネル制御部110Aの構成例を示す。
チャネル制御部110Aは、ハードウェア要素が一体的にユニット化されたボードで構成される。チャネル制御部110Aは、CHN(Channel adapter Nas)又はNASブレードと呼ばれることがある。チャネル制御部110Aは、図示しないボード接続用コネクタを備えており、そのボード接続用コネクタが記憶制御装置100の所定コネクタに嵌合することにより、チャネル制御部110Aは記憶制御装置100と電気的に接続される。チャネル制御部110Aは、例えば、ホストインターフェース部(以下、「ホストI/F」と記載)711、SVPインターフェース部(以下、「SVPI/F」と記載)51、ブリッジLSI(Large-Scale Integration)781、メモリコントローラ741、NASプロセッサ112、ホスト側メモリ113、1又は複数の入出力制御部771及びデータ転送LSI782を備える。
ホストI/F711は、ホスト端末200A及び200Bとの間で通信を行うための通信インタフェースであり、例えば、TCP/IPプロトコルに従ってホスト端末200A及び200Bから送信されたファイルアクセス要求を受信する。
SVPI/F51は、内部LAN150等の通信ネットワークを介してSVP160に接続され、且つ、後述のCHP119に接続される。SVPI/F51は、SVP160とCHP119との間の通信を制御するための通信インタフェース(例えばLANコントローラ)である。
ブリッジLSI781は、例えば、ホストI/F711、メモリコントローラ741及びデータ転送LSI782の間の通信を可能にするためのLSIである。
メモリコントローラ505は、ブリッジLSI782、NASプロセッサ112及びホスト側メモリ113の間の通信を可能にするためのLSIである。
NASプロセッサ112は、例えばCPUであり、NFS(Network File System)を用いて、記憶制御サブシステム600をNASとして機能させるための制御を行う。例えば、NASプロセッサ112は、NFS等により、ファイル名と論理ブロックアドレスとの対応関係を把握しており、チャネル制御部110Aが受けたファイルアクセス要求に含まれているファイル名及び上記対応関係を基に、そのファイルアクセス要求をブロックアクセス要求に変換して、CHP121に出力する。
ホスト側メモリ113には、例えば、様々なプログラムやデータが記憶される。具体的には、例えば、ホスト側メモリ113には、後述するファイルメタデータテーブル、ロックテーブル、及びNASマネージャ等のデータやプログラムが記憶される。
各入出力制御部771は、ディスク制御部140A〜140D、CM130、SM120及びSVP160との間でデータやコマンドの授受を行うもの(例えばマイクロプロセッサユニット)である。各入出力制御部771は、CHP(チャネルプロセッサ)121や、CHPメモリ119を備える。
CHP121は、例えば、マイクロプロセッサであり、チャネル制御部110A全体の制御を司ると共に、ディスク制御部140A〜140Dや、ホスト端末200A及び200Bや、SVP160との間の通信を制御する。CHP121は、CHPメモリ121(又はホスト側メモリ113)に格納された各種コンピュータプログラムを実行することにより、チャネル制御部110Aとしての機能を発揮する。
CHPメモリ119は、揮発性又は不揮発性のメモリ(例えばNVRAM(Non Volatile RAM))であり、例えば、CHP121の制御を司るコンピュータプログラムを格納する。CHPメモリ119に記憶されるプログラムの内容は、例えば、SVP160や、後述するNASマネージャ806からの指示により書き込みや書き換えを行うことができる。
データ転送LSI501は、データ転送の制御を行うためのLSIである。具体的には、例えば、データ転送LSI501は、CMデータ転送回路710及びSMデータ転送回路740を備える。CMデータ転送回路710は、CM130に接続され、ユーザデータの入出力を行う。SMデータ転送回路740は、SM120に接続され、制御情報の入出力を行う。
上述したホスト側メモリ113(又はCHPメモリ121)には、例えば、リードキャパシティ処理プログラム715及びLU定義処理プログラム716が格納される。
リードキャパシティ処理プログラム715は、ホスト端末200Aからリードキャパシティコマンドを受信した場合に、そのリードキャパシティコマンドが受けたポート番号、ターゲットID及びLUNに対応したLUの記憶容量をLU−LDEV管理テーブル162bから取得し、その記憶容量を、リードキャパシティコマンド発行元のホスト端末200Aに通知する。
LU定義処理プログラム716は、SVP160からのアクセスに応答して、LU設定画面をSVP160に提供し、そのLU設定画面に入力された情報に基づいて、LU−LDEV管理テーブル162bを更新する。
なお、リードキャパシティ処理プログラム715及びLU定義処理プログラム716の少なくとも一方は、必ずしもチャネル制御部110Aに格納されている必要は無く、例えばディスク制御部140A〜140Dに搭載されているメモリ等別の場所に格納されていても良い。
図8は、LUが設定される場合に行なわれる記憶制御サブシステム102での処理流れを示す。
この図に示す処理は、例えば、チャネル制御部110Aが実行する。
チャネル制御部110Aは、SVP160(又はそれに接続された外部端末)から、LDEVプールの作成依頼を受ける。チャネル制御部110Aは、その依頼に応答して、LDEVプール編集画面552をSVP160に提供する。この画面552には、例えば、作成対象のLDEVプール番号の入力欄と、そのLDEVプールに対して追加、除去又は編集するためのLDEV番号の入力欄とがある。また、例えば、その画面552には、LDEV番号の入力に入力されたLDEV番号を追加、除去又は編集のいずれを行うかの選択を受け付けるツールが設けられている。
チャネル制御部110Aは、そのLDEVプール編集画面552に入力された情報に従って、LDEVプールの作成(又は編集)を行う(換言すれば、LU−LDEV管理テーブル162bを更新する)(ステップS300)。
その後、チャネル制御部110Aは、仮想LUと通常LUのいずれを定義するかの選択をSVP160から受付け、仮想LUが選択された場合、仮想LU設定画面551をSVP160に提供する。その画面551には、その仮想LUに対応付けるポート番号、ターゲットID、LUN、LDEV番号及び仮想記憶容量の入力欄がある。
チャネル制御部110Aは、その仮想LU設定画面551に入力された情報に従って、仮想LUを定義する(換言すれば、「仮想LDEV」というLDEV属性を持った新たな仮想LDEVに関する情報をLU−LDEV管理テーブル162bに登録する)(S310)。
また、チャネル制御部110Aは、S310で定義した仮想LUがどのLDEVプールを使用するかの指定を受け(例えば、そのLDEVプールの番号の入力を受け)、指定されたLDEVプールを仮想LU(仮想LDEV)に対応付ける(換言すれば、入力されたLDEVプール番号をLU−LDEV管理テーブル162bに登録する)(S320)。
以上の流れにより、仮想LU(仮想LDEV)の定義付けが完了する。なお、ここで入力された仮想記憶容量は、ホスト端末200Aからのリードキャパシティコマンドに応答して、そのホスト端末200Aに通知される。
図9は、ホスト端末200Aの処理フローの一例を示す。
ホスト端末200Aは、例えば、再起動処理を実行する場合、又は、ホスト端末200Aに接続されている全ての記憶制御システム600を調査する再スキャン処理を実行する場合、以下の処理フローを実行する。
例えば、ホスト端末200Aは、第1のコマンド(例えばInquiryコマンド)を記憶制御システム600に発行して、その記憶制御システム600に関する制御システム情報(例えば、その記憶制御システム600のベンダ名やモデル名)をその記憶制御システム600から受信する(S201)。
次に、ホスト端末200Aは、第2のコマンド(例えばデバイスディスカバリーコマンド又はリードキャパシティコマンド)を記憶制御システム600に発行して、その記憶制御システム600がホスト端末200Aに提供する全てのLUに関するLU情報を、その記憶制御システム600から受信する(S202)。受信するLU情報には、ホスト端末200Aがアクセス可能な各LU毎に、例えば、少なくとも記憶容量情報が含まれており、その他、そのLUのパス(例えば、ポート番号、ターゲットID及びLUN)や、そのLUに属するLDEVを持ったディスク型記憶装置のベンダ等も含まれていても良い。
ホスト端末200Aは、S201で受信した制御システム情報や、S202で受信したLU情報を、ホスト端末200Aの記憶装置(例えばハードディスクドライブ)に格納する(S203)。例えば、ホスト端末200Aは、S202で受信したLU情報に基づいて、各記憶制御システム600毎に、図10に例示するような記憶制御システム管理テーブル791を作成して記憶する。記憶制御システム管理テーブル791には、各LU毎に、ポート番号、ターゲットID、LUN、ベンダ、モデル及び記憶容量等が登録される。なお、LUが仮想LUの場合、S202で受信する記憶容量は、仮想LU設定画面551で入力された値(すなわち、オペレータ任意の値)である。
ホスト端末200Aは、全ての記憶制御システム600に対して、S201〜S203処理を実行する(S304でN)。
図11は、チャネル制御部110Aが、ホスト端末200から第2コマンドとしてリードキャパシティコマンドを受けた場合に行なう処理フローの一例を示す。
チャネル制御部110Aは、ホスト端末200Aからリードキャパシティコマンドを受けた場合、そのリードキャパシティコマンドを受けたポート番号、ターゲットID及びLUNに対応した記憶容量をLU−LDEV管理テーブル162bから取得し(S211)、その記憶容量をホスト端末200Aに通知する(S212)。また、チャネル制御部110Aは、通知先ホスト端末200AのホストIDを、LU−LDEV管理テーブル162bに書き込む。
以上の説明では、説明を分かり易くするために、チャネル制御部110A及びホスト端末200Aを例に採り説明したが、上記説明は、その他のチャネル制御部110B〜110D、ディスク制御部140A〜140D、及びその他のホスト端末120B〜120Dにも当てはまるものである。
ところで、本実施形態では、更に、例えば以下の特徴的な処理が行われる。以下、上述の説明と重複するかもしれないが、幾つかの特徴的な処理について説明する。
(1)第1の特徴的な処理
図12は、第1の特徴的な処理に関わる処理流れを示す。
図12は、第1の特徴的な処理に関わる処理流れを示す。
記憶制御サブシステム102の記憶制御装置100(例えば、チャネル制御部又はディスク制御部)は、仮想LU310Cの仮想記憶容量値を所定記憶領域(例えばSM120)に登録した場合に、仮想LU310Cを実装状態にする(換言すれば、仮想LU310Cをホスト端末に対してアクセス可能にする)(S1)。
その後、記憶制御装置100は、SVP160(又はその他の外部端末)から、仮想記憶容量値の変更依頼を受けた場合(S2)、S1で登録した仮想記憶容量値をホスト端末に通知済みか否かを判別する(S3)。具体的には、例えば、記憶制御装置100は、LU−LDEV管理テーブル162bを参照し、変更依頼対象の記憶容量値に対応した通知済みホストIDが登録されているか否かを判別する。
S3の結果、肯定的な判別結果が得られた場合(S3でY)、記憶制御装置100は、SVP160からの記憶容量値変更依頼を拒否する(S4)。すなわち、記憶制御装置100は、一度でも過去にホスト端末に仮想記憶容量値を通知していれば、仮想記憶容量値の変更を禁止する。
一方、S3の結果、否定的な判別結果が得られた場合(S3でN)、記憶制御装置100は、SVP160からの記憶容量値変更依頼を受けると共に、SVP160から変更後の仮想記憶容量値の入力を受け、それを、所定記憶領域における旧い仮想記憶容量値に上書きする(S5)。
以上の処理により、一度でも過去にホスト端末に仮想記憶容量値が通知されて、そのホスト端末でその仮想記憶容量値が記憶されている可能性があれば、同一の仮想LUについて別の仮想記憶容量値がそのホスト端末に通知されて、そのホスト端末を混乱させてしまわないようなことがないように制御される。
(2)第2の特徴的な処理
記憶制御装置100は、オペレータに任意に設定された仮想記憶容量値を所定記憶領域に登録し、ホスト端末から第2コマンドを受信したら、そのコマンドに応じて、上記オペレータに設定された任意値をホスト端末に通知する。
記憶制御装置100は、オペレータに任意に設定された仮想記憶容量値を所定記憶領域に登録し、ホスト端末から第2コマンドを受信したら、そのコマンドに応じて、上記オペレータに設定された任意値をホスト端末に通知する。
(3)第3の特徴的な処理
図13は、第3の特徴的な処理に関わる構成及び処理流れを示す。
図13は、第3の特徴的な処理に関わる構成及び処理流れを示す。
記憶制御装置100は、2つのLUから成るLUペアを形成し、一方のLUをプライマリLU310P、他方のLUをセカンダリLU310Sとして、プライマリLU310P内のデータをセカンダリLU310Sにコピーするスナップショットを行うようになっている。
具体的には、例えば、記憶制御装置100は、外部端末(例えばSVP160)からの要求に手動で、又は、ライト要求を示すI/O要求を受領した場合(S11)に自動で、通常LU310AをプライマリLU310Pとし、仮想LU310CをセカンダリLU310SとしたLUペアを形成する。
その後、記憶制御装置100は、受領したライト要求から、通常LU310Aにおける書込み先チャンク(例えば先頭LBA)410Pを特定する(S12)。そして、記憶制御装置100は、特定されたチャンク410P内の一部のデータ(斜線で示した部分)しか更新されなくても、そのチャンク410P内の全てのデータを読み出し(S13)、そのデータを、仮想LU310Cに書き込む(S14)。具体的には、記憶制御装置100は、前述したように、仮想LU310C内の仮想チャンク410Sと、LDEVプール68内の論理チャンクとを動的に対応付けて、そのデータを、仮想チャンク410Sに対応付けられたLDEVチャンクに書き込む。
このようにして、スナップショットを作成した後、記憶制御装置100は、上記特定されたチャンク410Pに、S11で受領したライト要求に含まれているデータを書き込む(S15)。
なお、上記流れにおいて、記憶制御装置100は、LUペアを形成しようとする場合、LU−LDEV管理テーブル162bを参照し、プライマリLU310PとセカンダリLU310Sとの記憶容量値が一致した場合にのみLUペアを形成し、それらが一致しない場合、LUペアの形成を拒否しても良い。
プライマリLU310PとセカンダリLU310Sとの記憶容量値が同一でないとLUペアが形成されないようになっている場合、プライマリLU310Pの記憶容量が大容量であると、セコンダリLU310Sの記憶容量も大容量である必要がある。しかし、スナップショット作成では、プライマリLU310PからセコンダリLU310Sにコピーするデータサイズが、プライマリLU310Pの容量よりも小さい場合がある。それにもかかわらず、大容量の通常LU310AをセコンダリLU310Sとしてしまうと、大量の無駄な空き記憶領域が生じてしまうことが考えられる。
しかし、以上のように、スナップショットの作成において、セカンダリLU310Sを仮想LU310CとしてLUペアを形成することにより、その仮想LU310Cに対応付けられ得るLDEVプール68の空き領域は動的に別の仮想LU310Cに対応付けられるようになっているので、無駄に空き記憶領域が生じてしまうことを防ぐことができる。
(4)第4の特徴的な処理
図14は、第4の特徴的な処理に関わる処理流れを示す。
図14は、第4の特徴的な処理に関わる処理流れを示す。
記憶制御装置100は、例えば、仮想記憶容量値を持たない仮想LU310Cを準備する。
その後、記憶制御装置100は、LUペア形成コマンドを外部端末(例えばSVP160)から受信した場合(S31)、そのLUペア形成コマンドで指定されたセカンダリLU310Sである仮想LU310Cの仮想記憶容量値が所定記憶領域に登録されているか否か(例えば、LU−LDEV管理テーブル162bに記憶容量値の登録があるか否か)を判別する(S32)。
S32の結果、肯定的な判別結果が得られれば(S32でY)、記憶制御装置100は、S31で受信したLUペア形成コマンドに従って、LUペアを形成する(S34)。
一方、S32の結果、否定的な判別結果が得られれば(S32でN)、記憶制御装置100は、上記LUペア形成コマンドで指定されたプライマリLU310P(例えば通常LU310A又は仮想LU310C)の記憶容量値を仮想記憶容量値として所定記憶領域に登録する(S33)。その後、記憶制御装置100は、S34の処理を実行する。
(5)第5の特徴的な処理
図15は、第5の特徴的な処理に関わる処理流れを示す。
図15は、第5の特徴的な処理に関わる処理流れを示す。
記憶制御装置100は、例えば、仮想記憶容量値を持たない仮想LU310Cを準備する。また、記憶制御装置100は、各LUペアに関するLUペア情報(例えばLUペアを構成する各LUのLUN)を所定の記憶領域(例えばSM120)で管理している。
記憶制御装置100は、そのような仮想LU310Cに対するI/O要求を受信した場合(S41)、上記LUペア情報を参照して、その仮想LUのペア相手が存在するか否かを判別する(S42)。
S42の判別の結果、否定的な判別結果が得られた場合(S42でN)、記憶制御装置100は、LUが未実装である旨を、I/O要求送信元のホスト端末に通知し(S47)、処理を終える。なお、その後、記憶制御装置100は、その仮想LUの相手LUが設定された後、所定のタイミングで(例えば、ペア相手LUが設定された時点で)、その相手LUの記憶容量値を仮想LUの仮想記憶容量値として所定記憶領域に登録する。また、記憶制御装置100は、LUが未実装である旨の通知先となったホスト端末のホストIDを記憶しておき、仮想記憶容量値を登録した時点で、その仮想記憶容量値を、そのホストIDに対応したホスト端末に通知しても良い。
一方、S42の判別の結果、肯定的な判別結果が得られた場合(S42でY)、記憶制御装置100は、仮想記憶容量値が所定記憶領域に登録されているか否かを判別する(S43)。
このS43の判別の結果、肯定的な結果が得られた場合(S43でY)、記憶制御装置100は、S41で受信したI/O要求に従う処理を実行する(S45)。
一方、S43の判別の結果、否定的な結果が得られた場合(S43でN)、記憶制御装置100は、仮想LUの相手LUの記憶容量値を仮想記憶容量値として所定記憶領域に登録すると共に、その仮想記憶容量値を、I/O要求送信元のホスト端末に通知する(S44)。その後、記憶制御装置100は、S45の処理を実行する。
(6)第6の特徴的な処理
図16は、第6の特徴的な処理に関わる処理流れを示す。
図16は、第6の特徴的な処理に関わる処理流れを示す。
ホスト端末は、所定の処理、例えば、再起動処理を実行する場合、又は、そのホスト端末に接続されている全ての記憶制御システム600を調査する再スキャン処理を実行する場合、過去に記憶した情報(例えば、記憶制御システム管理テーブルそれ自体)を消去するようになっている。
記憶制御装置100は、例えば、外部端末(例えばSVP160)から、仮想記憶容量値の更新依頼を受けた場合(S51)、その仮想記憶容量値を持つ仮想LU310Cにアクセス可能な全てのホスト端末との接続を切断する(換言すれば、その仮想LU310Cを強制的にオフライン状態にする)(S52)。
そして、記憶制御装置100は、外部端末から新たな仮想記憶容量値の入力を受け、旧い仮想記憶容量値にその新たな仮想記憶容量値を上書きする(S53)。
その後、記憶制御装置100は、接続が切断されたホスト端末に対して再起動処理又は再スキャン処理命令を出力する(S54)。
再起動処理又は再スキャン処理命令を受けたホスト端末は、その命令に応答して再起動処理又は再スキャン処理を実行する(S55)。その際、ホスト端末は、過去に記憶した情報(例えば、記憶制御システム管理テーブルそれ自体)を消去する。
S55の処理の完了後、ホスト端末は、処理終了通知を記憶制御装置100に送信する(S56)。なお、この処理終了通知に加えて又は代えて、上述した第1コマンド(例えばInquiryコマンド)や、第2コマンド(例えばデバイスディスカバリーコマンド又はリードキャパシティコマンド)が送信されても良い。
記憶制御装置100は、ホスト端末から処理終了通知を受けたら、S53で上書きした新たな仮想記憶容量値を通知する(S57)。
ホスト端末は、記憶制御装置100から通知された新たな仮想記憶容量値を記憶する(S58)。
以上の処理流れにおいて、記憶制御装置100は、S53とS54の処理の間に、旧い仮想記憶容量値をホスト端末に通知済みか否かを判断する処理を行っても良い。その場合、肯定的な判断結果が得られた場合には、記憶制御装置100は、S54の処理を実行し、否定的な判断結果が得られた場合には、S54の処理を実行せずにS57の処理を行っても良い。
以上、本発明の実施形態を説明したが、これは本発明の説明のための例示であって、本発明の範囲をこの実施形態にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。
例えば、本発明に従う記憶制御サブシステムの第1実施態様では、前記記憶制御サブシステムの保守のための処理を行う保守用端末が前記記憶制御部に接続されている場合において、前記記憶制御部は、前記保守用端末又は前記保守用端末に接続された外部端末から、新たな前記仮想記憶ユニットを準備することのユニット準備要求を受け、前記ユニット準備要求に応答して、少なくとも前記仮想記憶容量値の記入欄を持ったグラフィカルユーザインターフェースを前記保守用端末又は前記外部端末に提供し、前記記入欄に入力された仮想記憶容量値を、前記設定された仮想記憶容量値として前記メモリに記憶させる。
例えば、本発明に従う記憶制御サブシステムの第2実施態様では、前記記憶制御サブシステムが、2つの記憶ユニットから成るユニットペアを形成し、一方の記憶ユニットをプライマリ記憶ユニット、他方の記憶ユニットをセカンダリ記憶ユニットとして、プライマリ記憶ユニット内のデータをセカンダリ記憶ユニットにコピーするスナップショットを行うようになっている場合、前記物理記憶デバイスには複数の前記論理記憶デバイスが設けられており、前記複数の論理記憶デバイスには、前記仮想記憶領域に対応付けられ得る論理記憶領域を持った2以上の第1論理記憶デバイスと、前記仮想記憶領域に対応付けられることのない論理記憶領域を持った1以上の第2論理記憶デバイスとが含まれており、前記1以上の第2論理記憶デバイスが、前記ホスト端末に接続される1つのリアル記憶ユニットを構成し、前記記憶制御部は、前記リアル記憶ユニットを前記プライマリ記憶ユニットとし、前記仮想記憶ユニットをセカンダリ記憶ユニットとしたユニットペアを形成して前記スナップショットを行う。
例えば、本発明に従う記憶制御サブシステムの第3実施態様では、前記第2実施態様において、前記記憶制御部は、前記仮想記憶容量値を前記ホスト端末に通知していない場合に、前記仮想記憶ユニットと前記リアル記憶ユニットの前記ユニットペアを形成するならば、前記リアル記憶ユニットの記憶容量値と同じ値を前記仮想記憶ユニットの記憶容量値として前記ホスト端末に通知する。
例えば、本発明に従う記憶制御サブシステムの第4実施態様では、前記第3実施態様において、前記記憶制御部は、前記仮想記憶ユニットの相手となる前記リアル記憶ユニットが見つからない場合に、前記ホスト端末から前記仮想記憶ユニットに対してリード要求又はライト要求を受けたならば、前記仮想記憶ユニットが未実装状態であると前記ホスト端末に通知し、その後、前記相手となるリアル記憶ユニットが見つかったならば、前記リアル記憶ユニットの記憶容量値と同じ値を前記仮想記憶ユニットの記憶容量値として前記ホスト端末に通知する。
例えば、本発明に従う記憶制御サブシステムの第5実施態様では、前記記憶制御部は、前記ホスト端末からリードキャパシティコマンドを受信した場合に、前記メモリに記憶されている仮想記憶容量値を前記ホスト端末に通知する。
例えば、本発明に従う記憶制御サブシステムの第6実施態様では、前記記憶制御サブシステムの保守のための処理を行う保守用端末が前記記憶制御部に接続されており、且つ、前記ホスト端末が行う起動処理又は再スキャン処理で、前記ホスト端末が、前記記憶した仮想記憶容量値を消去するようになっている場合において、前記記憶制御部は、前記仮想記憶容量値を前記ホスト端末に通知した後に、前記保守用端末又は前記保守用端末に接続された外部端末から、前記通知した仮想記憶容量値の更新要求を受けたならば、前記ホスト端末と前記仮想記憶ユニットとが接続されていない間に、前記保守用端末又は前記外部端末から新たな仮想記憶容量値を受けて前記メモリに記憶させ、且つ、前記ホスト端末に前記起動処理又は前記再スキャン処理を行わせることで、前記ホストに記憶されている旧い前記仮想記憶容量値が消去されるようにした後、前記メモリに記憶させた新たな仮想記憶容量値を前記ホスト端末に通知する。
1…記憶システム、2…RAIDグループ、10…基本筐体、12…増設筐体、100…記憶制御装置、101…記憶装置ユニット、102…記憶制御サブシステム、110A〜110D…チャネル制御部、120…共有メモリ、130…キャッシュメモリ、140A〜140D…ディスク制御部、160…保守用端末、200A〜200D…ホスト端末、300…ディスク型記憶装置、310…論理ユニット、600…記憶制御システム
Claims (7)
- ホスト端末に接続された記憶制御システムが有する記憶制御サブシステムにおいて、
データを論理的に記憶する論理記憶デバイスと、
前記論理記憶デバイスを有し、前記論理的に記憶されたデータを物理的に記憶する物理記憶デバイスと、
仮想記憶容量値が設定されることによって実装状態となる仮想記憶ユニットと、
前記設定された仮想記憶容量値を記憶するメモリと、
前記仮想記憶ユニットを認識している前記ホスト端末からリード要求又はライト要求を受信した場合に、前記仮想記憶ユニットにおける仮想記憶領域と、前記論理記憶デバイスにおける論理記憶領域とを対応付けて、前記仮想記憶領域を介して前記論理記憶領域と前記ホスト端末との間でデータをやり取りする記憶制御部と
を備え、
前記記憶制御部が、前記メモリに記憶された仮想記憶容量値を前記ホスト端末に通知し、前記ホスト端末において前記仮想記憶容量値が記憶された後、前記仮想記憶ユニットが前記ホスト端末に接続されている間は、前記通知した仮想記憶容量値が変更されないようにする、
記憶制御サブシステム。 - 前記記憶制御サブシステムの保守のための処理を行う保守用端末が前記記憶制御部に接続されている場合において、
前記記憶制御部は、前記保守用端末又は前記保守用端末に接続された外部端末から、新たな前記仮想記憶ユニットを準備することのユニット準備要求を受け、前記ユニット準備要求に応答して、少なくとも前記仮想記憶容量値の記入欄を持ったグラフィカルユーザインターフェースを前記保守用端末又は前記外部端末に提供し、前記記入欄に入力された仮想記憶容量値を、前記設定された仮想記憶容量値として前記メモリに記憶させる、
請求項1記載の記憶制御サブシステム。 - 前記記憶制御サブシステムが、2つの記憶ユニットから成るユニットペアを形成し、一方の記憶ユニットをプライマリ記憶ユニット、他方の記憶ユニットをセカンダリ記憶ユニットとして、プライマリ記憶ユニット内のデータをセカンダリ記憶ユニットにコピーするスナップショットを行うようになっている場合、
前記物理記憶デバイスには複数の前記論理記憶デバイスが設けられており、
前記複数の論理記憶デバイスには、前記仮想記憶領域に対応付けられ得る論理記憶領域を持った2以上の第1論理記憶デバイスと、前記仮想記憶領域に対応付けられることのない論理記憶領域を持った1以上の第2論理記憶デバイスとが含まれており、
前記1以上の第2論理記憶デバイスが、前記ホスト端末に接続される1つのリアル記憶ユニットを構成し、
前記記憶制御部は、前記リアル記憶ユニットを前記プライマリ記憶ユニットとし、前記仮想記憶ユニットをセカンダリ記憶ユニットとしたユニットペアを形成して前記スナップショットを行う、
請求項1記載の記憶制御サブシステム。 - 前記記憶制御部は、前記仮想記憶容量値を前記ホスト端末に通知していない場合に、前記仮想記憶ユニットと前記リアル記憶ユニットの前記ユニットペアを形成するならば、前記リアル記憶ユニットの記憶容量値と同じ値を前記仮想記憶ユニットの記憶容量値として前記ホスト端末に通知する、
請求項3記載の記憶制御サブシステム。 - 前記記憶制御部は、前記仮想記憶ユニットの相手となる前記リアル記憶ユニットが見つからない場合に、前記ホスト端末から前記仮想記憶ユニットに対してリード要求又はライト要求を受けたならば、前記仮想記憶ユニットが未実装状態であると前記ホスト端末に通知し、その後、前記相手となるリアル記憶ユニットが見つかったならば、前記リアル記憶ユニットの記憶容量値と同じ値を前記仮想記憶ユニットの記憶容量値として前記ホスト端末に通知する、
請求項4記載の記憶制御サブシステム。 - 前記記憶制御部は、前記ホスト端末から所定コマンドを受信した場合に、前記メモリに記憶されている仮想記憶容量値を前記ホスト端末に通知する、
請求項1記載の記憶制御サブシステム。 - 前記記憶制御サブシステムの保守のための処理を行う保守用端末が前記記憶制御部に接続されており、且つ、前記ホスト端末が行う所定の処理で、前記ホスト端末が、前記記憶した仮想記憶容量値を消去するようになっている場合において、
前記記憶制御部は、前記仮想記憶容量値を前記ホスト端末に通知した後に、前記保守用端末又は前記保守用端末に接続された外部端末から、前記通知した仮想記憶容量値の更新要求を受けたならば、前記ホスト端末と前記仮想記憶ユニットとが接続されていない間に、前記保守用端末又は前記外部端末から新たな仮想記憶容量値を受けて前記メモリに記憶させ、且つ、前記ホスト端末に前記所定の処理を行わせることで、前記ホストに記憶されている旧い前記仮想記憶容量値が消去されるようにした後、前記メモリに記憶させた新たな仮想記憶容量値を前記ホスト端末に通知する、
請求項1記載の記憶制御サブシステム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004031150A JP2005222404A (ja) | 2004-02-06 | 2004-02-06 | 仮想記憶ユニットを備えた記憶制御サブシステム |
US10/822,708 US7191251B2 (en) | 2004-02-06 | 2004-04-13 | Storage control sub-system comprising virtual storage units |
US11/654,542 US7617227B2 (en) | 2004-02-06 | 2007-01-18 | Storage control sub-system comprising virtual storage units |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004031150A JP2005222404A (ja) | 2004-02-06 | 2004-02-06 | 仮想記憶ユニットを備えた記憶制御サブシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005222404A true JP2005222404A (ja) | 2005-08-18 |
Family
ID=34908307
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004031150A Withdrawn JP2005222404A (ja) | 2004-02-06 | 2004-02-06 | 仮想記憶ユニットを備えた記憶制御サブシステム |
Country Status (2)
Country | Link |
---|---|
US (2) | US7191251B2 (ja) |
JP (1) | JP2005222404A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1764677A1 (en) * | 2005-09-01 | 2007-03-21 | Hitachi, Ltd. | Storage system, storage device, and control method thereof |
JP2007102455A (ja) * | 2005-10-04 | 2007-04-19 | Hitachi Ltd | ストレージシステム及び構成変更方法 |
JP2007156921A (ja) * | 2005-12-06 | 2007-06-21 | Y E Data Inc | Usbデバイス装置の異常検出・回復システム、異常検出・回復プログラム、異常検出・回復プログラムを記録した記録媒体及び異常検出・回復方法。 |
JP2007293442A (ja) * | 2006-04-21 | 2007-11-08 | Hitachi Ltd | ストレージシステム及びその制御方法 |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7761284B2 (en) | 2004-08-30 | 2010-07-20 | Overland Storage, Inc. | Tape emulating disk based storage system and method with automatically resized emulated tape capacity |
EP2033128A4 (en) | 2006-05-31 | 2012-08-15 | Ibm | METHOD AND SYSTEM FOR DATA TRANSFORMATION OF LOGIC OBJECTS FOR STORAGE PURPOSES |
US8868930B2 (en) | 2006-05-31 | 2014-10-21 | International Business Machines Corporation | Systems and methods for transformation of logical data objects for storage |
JP4963892B2 (ja) * | 2006-08-02 | 2012-06-27 | 株式会社日立製作所 | 仮想ストレージシステムの構成要素となることが可能なストレージシステムの制御装置 |
US7610418B2 (en) * | 2006-08-23 | 2009-10-27 | International Business Machines Corporation | Maximizing blade slot utilization in a storage blade enclosure |
US9122397B2 (en) * | 2007-10-26 | 2015-09-01 | Emc Corporation | Exposing storage resources with differing capabilities |
US20100030960A1 (en) * | 2008-07-31 | 2010-02-04 | Hariharan Kamalavannan | Raid across virtual drives |
US8261015B2 (en) * | 2008-09-12 | 2012-09-04 | Lsi Corporation | Utilizing more capacity of a physical disk through multiple logical drives on the physical disk |
US20100274886A1 (en) * | 2009-04-24 | 2010-10-28 | Nelson Nahum | Virtualized data storage in a virtualized server environment |
US8601472B1 (en) | 2010-12-31 | 2013-12-03 | Emc Corporation | Instantiating virtual appliances |
US8799915B1 (en) * | 2010-12-31 | 2014-08-05 | Emc Corporation | Decommissioning virtual appliances |
US8839241B2 (en) * | 2010-12-31 | 2014-09-16 | Emc Corporation | Virtual appliance deployment |
US8380668B2 (en) | 2011-06-22 | 2013-02-19 | Lsi Corporation | Automatic discovery of cache mirror partners in an N-node cluster |
US8930568B1 (en) * | 2011-12-20 | 2015-01-06 | Emc Corporation | Method and apparatus for enabling access to storage |
US8972618B2 (en) * | 2012-07-31 | 2015-03-03 | Hewlett-Packard Develpment Company, L.P. | Staged discovery in a data storage fabric |
US9219741B2 (en) | 2013-05-02 | 2015-12-22 | Airwatch, Llc | Time-based configuration policy toggling |
US11068581B1 (en) * | 2018-01-26 | 2021-07-20 | EMC IP Holding Company LLC | Techniques for establishing host connectivity |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0520197A (ja) * | 1991-07-09 | 1993-01-29 | Hitachi Ltd | 記憶管理システム及びマイクロプロセツサ |
EP0689125B1 (en) | 1994-06-22 | 2004-11-17 | Hewlett-Packard Company, A Delaware Corporation | Method of utilizing storage disks of differing capacity in a single storage volume in a hierarchic disk array |
US5651133A (en) * | 1995-02-01 | 1997-07-22 | Hewlett-Packard Company | Methods for avoiding over-commitment of virtual capacity in a redundant hierarchic data storage system |
JPH09288547A (ja) | 1996-04-22 | 1997-11-04 | Hitachi Inf Technol:Kk | アレイ型記憶装置 |
JP2866932B2 (ja) | 1997-02-18 | 1999-03-08 | 郵政省通信総合研究所長 | 視覚障害者のテキストレイアウト確認方法 |
JPH10232800A (ja) | 1997-02-19 | 1998-09-02 | Hitachi Ltd | 磁気テープ記憶装置 |
JPH11345158A (ja) | 1998-06-03 | 1999-12-14 | Hitachi Ltd | ダンプ取得方法及び制御装置並びに情報処理システム |
JP3618552B2 (ja) | 1998-06-30 | 2005-02-09 | 富士通株式会社 | 記憶装置 |
IL147073A0 (en) * | 2001-12-10 | 2002-08-14 | Monosphere Ltd | Method for managing the storage resources attached to a data network |
US7032131B2 (en) * | 2002-03-26 | 2006-04-18 | Hewlett-Packard Development Company, L.P. | System and method for ensuring merge completion in a storage area network |
JP4061960B2 (ja) | 2002-04-26 | 2008-03-19 | 株式会社日立製作所 | コンピュータシステム |
US6883083B1 (en) * | 2002-12-20 | 2005-04-19 | Veritas Operating Corporation | System and method for maintaining and accessing information regarding virtual storage devices |
JP2004334574A (ja) | 2003-05-08 | 2004-11-25 | Hitachi Ltd | ストレージの運用管理プログラム、運用管理方法及び管理計算機 |
JP4307202B2 (ja) | 2003-09-29 | 2009-08-05 | 株式会社日立製作所 | 記憶システム及び記憶制御装置 |
-
2004
- 2004-02-06 JP JP2004031150A patent/JP2005222404A/ja not_active Withdrawn
- 2004-04-13 US US10/822,708 patent/US7191251B2/en not_active Expired - Fee Related
-
2007
- 2007-01-18 US US11/654,542 patent/US7617227B2/en not_active Expired - Fee Related
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1764677A1 (en) * | 2005-09-01 | 2007-03-21 | Hitachi, Ltd. | Storage system, storage device, and control method thereof |
US8332582B2 (en) | 2005-09-01 | 2012-12-11 | Hitachi, Ltd. | Storage system, storage device, and control method thereof |
US8631199B2 (en) | 2005-09-01 | 2014-01-14 | Hitachi, Ltd. | Storage system, storage device, and control method thereof |
US9251063B2 (en) | 2005-09-01 | 2016-02-02 | Hitachi, Ltd. | Storage system including a plurality of flash memory devices |
US9495105B2 (en) | 2005-09-01 | 2016-11-15 | Hitachi, Ltd. | System managing a plurality of flash memory devices |
JP2007102455A (ja) * | 2005-10-04 | 2007-04-19 | Hitachi Ltd | ストレージシステム及び構成変更方法 |
JP2007156921A (ja) * | 2005-12-06 | 2007-06-21 | Y E Data Inc | Usbデバイス装置の異常検出・回復システム、異常検出・回復プログラム、異常検出・回復プログラムを記録した記録媒体及び異常検出・回復方法。 |
JP2007293442A (ja) * | 2006-04-21 | 2007-11-08 | Hitachi Ltd | ストレージシステム及びその制御方法 |
Also Published As
Publication number | Publication date |
---|---|
US20070130168A1 (en) | 2007-06-07 |
US20050198408A1 (en) | 2005-09-08 |
US7617227B2 (en) | 2009-11-10 |
US7191251B2 (en) | 2007-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4646526B2 (ja) | 記憶制御システム及び同システムの制御方法 | |
US7617227B2 (en) | Storage control sub-system comprising virtual storage units | |
JP4330889B2 (ja) | 記憶デバイス制御装置にソフトウエアをインストールする方法、記憶デバイス制御装置の制御方法、及び記憶デバイス制御装置 | |
JP4575028B2 (ja) | ディスクアレイ装置およびその制御方法 | |
US7788457B2 (en) | Method of controlling storage device controlling apparatus, and storage device controlling apparatus | |
US7073017B2 (en) | Efficient update of firmware in a disk-type storage device | |
US7240152B2 (en) | Method of controlling storage device controlling apparatus, and storage device controlling apparatus | |
US7216210B2 (en) | Data I/O system using a plurality of mirror volumes | |
JP2005292865A (ja) | ストレージシステム及びストレージシステムのバックアップ方法 | |
US20050198433A1 (en) | Storage device controlling apparatus and method of controlling the same | |
JP5606583B2 (ja) | ストレージ装置及び同装置の制御方法 | |
JP2010257477A (ja) | 記憶制御システム及び同システムの制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061225 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20061225 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20090525 |