JP2005010997A - データアクセスシステム及び方法 - Google Patents

データアクセスシステム及び方法 Download PDF

Info

Publication number
JP2005010997A
JP2005010997A JP2003173347A JP2003173347A JP2005010997A JP 2005010997 A JP2005010997 A JP 2005010997A JP 2003173347 A JP2003173347 A JP 2003173347A JP 2003173347 A JP2003173347 A JP 2003173347A JP 2005010997 A JP2005010997 A JP 2005010997A
Authority
JP
Japan
Prior art keywords
storage area
data
host
target
online
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2003173347A
Other languages
English (en)
Other versions
JP4433372B2 (ja
JP2005010997A5 (ja
Inventor
Akihiro Mori
昭洋 森
Kiyohisa Miyamoto
清久 宮本
Masafumi Kimura
雅史 木村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2003173347A priority Critical patent/JP4433372B2/ja
Priority to US10/769,806 priority patent/US7058753B2/en
Publication of JP2005010997A publication Critical patent/JP2005010997A/ja
Priority to US11/357,152 priority patent/US7366870B2/en
Publication of JP2005010997A5 publication Critical patent/JP2005010997A5/ja
Priority to US12/073,823 priority patent/US8078809B2/en
Application granted granted Critical
Publication of JP4433372B2 publication Critical patent/JP4433372B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/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
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • 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/0614Improving the reliability of storage systems
    • G06F3/0617Improving the reliability of storage systems in relation to availability
    • 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/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Abstract

【課題】オンライン状態になっているデータ記憶領域に対してデータアクセスを行うのと同様の方法でそのデータ記憶領域とは別のデータ記憶領域に対してアクセスできるようにする。
【解決手段】ディスクアレイ装置3が有する複数の論理ボリューム11には、ホスト1に対してオンライン状態であるオンラインボリュームと、オフライン状態であるオフラインボリュームとが含まれる。ホスト1は、ターゲットボリューム11Tを指すターゲット情報を含んだアクセスコマンド19を、そのボリューム11Tとは別の起動ボリューム11Kに対するアクセスコマンドとしてディスクアレイ装置3に送信する。ディスクアレイ装置3は、起動ボリューム11Kに対するアクセスコマンド19を受信し、そのアクセスコマンド19が持つターゲット情報に基づいて、ターゲットボリューム11Tに対するデータアクセスをホスト1に提供する。
【選択図】 図4

Description

【0001】
【発明の属する技術分野】
本発明は、データ記憶領域に対するデータアクセスのための技術に関し、具体的には、例えば、アレイ状に配設された多数のディスク型記憶装置上に用意された論理ボリュームからデータをリードする又はその論理ボリュームにデータをライトするための技術に関する。
【0002】
【従来の技術】
例えば、大容量のデータを取り扱う基幹業務用のデータベースシステムでは、ホストコンピュータ(以下、単に「ホスト」と言う)とは別体に構成された記憶システムを用いてデータが管理されている。この記憶システムは、例えば、ディスクアレイ装置とも呼ばれ、多数のディスク型記憶装置をアレイ状に配設して構成されているRAID(Redundant Array of Independent Inexpensive Disks)である。
【0003】
この記憶システムには、例えば次のようなものがある。
【0004】
すなわち、その記憶システムは、ホストからリード/ライトコマンドを受けることができ、また、仮想的な記憶領域として仮想ディスクを持つことができる。記憶システムは、ホストからライトコマンドを受けたときは、その仮想ディスクが制御ボリュームとして定義されていれば、ミラーリングを行ない、その仮想ディスクが制御ボリュームとして定義されていなければ、通常のリード又はライトのための動作を行なう(例えば特許文献1)。
【0005】
【特許文献1】
特開2000−112666号公報。
【0006】
【発明が解決しようとする課題】
ところで、例えば、記憶システムには、仮想的な記憶領域である論理ボリュームを複数個用意することができるものがあり、ホストのオペレーティングシステム(以下、「ホストOS」と言う)には、記憶システム上の各論理ボリューム毎にその論理ボリュームがオンライン状態かオフライン状態かを管理するものがある。そのホストOSは、同ホストのアプリケーションプログラム(以下、「ホストAP」と言う)から、所定の又はユーザ所望の論理ボリューム(以下、「ターゲットボリューム」と言う)に対するデータの書込み又は読出し処理(以下、「I/O処理」と言う)の要求を受けたときは、そのターゲットボリュームがオンライン状態になっているか否かをチェックし、オンライン状態になっていれば、記憶システムに対してそのターゲットボリュームに対するI/O処理要求を送信し、オフライン状態であれば、ホストAPにエラーを返答する。すなわち、ホストOSは、ターゲットボリュームに対してオンライン状態になっていなければ、そのターゲットボリュームに対してデータの読出し又は書込みを行なうことができない。
【0007】
しかし、ユーザは、オフライン状態になっているターゲットボリュームに対してデータの読出し又は書込みを行ないたい場合がある。
【0008】
具体的には、例えば、記憶システムでは、記憶装置内のディスクの故障に起因してデータが損失等してもシステムが停止することがないようにするために二重化処理(いわゆるミラーリング処理)が行われることがある。この処理では、記憶システムは、正ボリュームと副ボリュームという2つの論理ボリュームを有し、ホストからデータの書込み要求を受けたときは、書込み要求されたデータ(以下、「ライトデータ」と言う)を複製して、正ボリュームと副ボリュームの両方に同一のライトデータを書込む。
【0009】
このような二重化処理において、正ボリュームと副ボリュームは、一般に、ペア状態で管理されていて、同じボリュームラベル(例えばボリューム名)を持っている。そのため、ホストOSは、ペア状態で管理されている正ボリュームと副ボリュームを別々のボリュームとして区別することはできない。故に、二重化処理では、一方の論理ボリューム、例えば、正ボリュームが強制的にオンライン状態となり、副ボリュームがオフライン状態となり、ホストOSは、正ボリュームに対してのみオンライン状態になる。
【0010】
しかし、ユーザは、ホストAPを操作し副ボリュームに対してI/O処理を行いたい場合がある。そのためには、ユーザは、副ボリュームのボリュームラベルを正ボリュームのそれと違えることにより副ボリュームを正ボリュームから切り離し、更に、その後、ホストを再起動することにより、ホストOSに対して副ボリュームを認識させるようにする。すなわち、ユーザは、手動で、副ボリュームを正ボリュームから切り離し、副ボリュームをホストOSとの間でオンライン状態にする必要がある。
【0011】
このように、オフライン状態になっている論理ボリュームに対してデータの読出し又は書込みを行なうためには、ユーザにとって面倒な処理が必要になる。
【0012】
また、例えばホストOSによっては、ユーザが上述のような作業を行なっても、オフライン状態になっている論理ボリュームをオンライン状態にすることができない場合もある。
【0013】
更に、例えば二重化処理において、ホストOSに対してオフライン状態である副ボリュームをオンライン状態にするためには、その副ボリュームを正ボリュームから切り離す必要があるが、副ボリュームが正ボリュームから切り離されている間は、二重化処理が行われないので、万一ライトデータの損失があった場合には対応が困難である。
【0014】
以上のような問題点は、仮想的な記憶領域である論理ボリュームに限らず、物理的な記憶領域についても存在し得るものである。
【0015】
従って、本発明の目的は、オンライン状態になっている物理的又は論理的なデータ記憶領域に対してデータアクセスを行うのと同様の方法でそのデータ記憶領域とは別のデータ記憶領域、例えばホストに対してオフライン状態になっているデータ記憶領域に対してデータアクセスを行うことができるようにすることにある。本発明の更なる目的は、後述する実施の形態の記載から明らかになるであろう。
【0016】
【課題を解決するための手段】
本発明に従うデータアクセスシステムは、記憶システムと、前記記憶システムと通信可能に接続されているホスト装置とを有するシステムであって、前記記憶システムは、前記ホスト装置に対してオンライン状態であるオンライン記憶領域を含む、物理的又は論理的な複数のデータ記憶領域と、前記ホスト装置をして、所望の又は所定の前記オンライン記憶領域を介して、前記オンライン記憶領域とは別のデータ記憶領域であって、前記ホスト装置がアクセスしたいターゲットであるターゲット記憶領域にアクセスすることを可能にせしめるアクセス制御手段とを備える。
【0017】
なお、ここで言う「ターゲット記憶領域」には、ホスト装置に対してオフライン状態であるデータ記憶領域が含まれても良いし、或いは、ホスト装置に対する複数のオンライン記憶領域のうちの前記所望のオンライン記憶領域以外のオンライン記憶領域(すなわち、アクセス要求の発行先となっていない他のオンライン記憶領域)が含まれても良い。
【0018】
このデータアクセスシステムによれば、ターゲット記憶領域がオンライン状態か否かに関わらず、そのターゲット記憶領域を指すターゲット情報を含んだアクセス要求を、そのターゲット記憶領域とは別の所望のオンライン記憶領域に対して送信することができる。すなわち、ユーザは、オンライン状態である所望のデータ記憶領域に対してデータアクセスを行うのと同様の方法でそのデータ記憶領域とは別のデータ記憶領域に対してデータアクセスを行なうことができる。
【0019】
第1の好適な実施形態では、前記ターゲット記憶領域は、前記ホスト装置に対しオフライン状態であるオフライン記憶領域である。これにより、ユーザは、オンライン状態である所望のデータ記憶領域に対してデータアクセスを行うのと同様の方法で所望のオンライン状態のデータ記憶領域に対してデータアクセスを行なうことができる。
【0020】
第2の好適な実施形態では、前記ホスト装置は、前記ターゲット記憶領域を指すターゲット情報を含んだアクセス要求を、前記所望のオンライン記憶領域に対するアクセス要求として前記記憶システムに送信するアクセス要求手段を有し、前記アクセス制御手段は、前記ホスト装置から前記所望のオンライン記憶領域に対するアクセス要求を受信し、そのアクセス要求が持つターゲット情報に基づいて、前記ターゲット記憶領域からデータをリードして前記ホスト装置に提供する、又は、前記ホスト装置からデータを受けて前記ターゲット記憶領域にライトする。
【0021】
第3の好適な実施形態では、前記アクセス制御手段は、前記ホスト装置に対する通信インターフェースであるホスト通信手段と、前記複数のデータ記憶領域に対してアクセスする記憶領域通信手段と、前記データ記憶領域からリードされたリードデータ又は前記ホスト装置から受信したライトデータを前記ホスト通信手段と前記記憶領域通信手段との間で受け渡すためのキャッシュメモリと備える。前記キャッシュメモリには、前記リードデータ又は前記ライトデータを一時的に格納するための記憶領域であるキャッシュスロットが確保されるようになっている。前記キャッシュスロットは、一つのデータ記憶領域に対して専用に設けられるようになっている。前記ホスト通信手段は、前記ホスト装置から前記所望のオンライン記憶領域に対するアクセス要求を受信した場合、前記所望のオンライン記憶領域に対してではなく、前記受信したアクセス要求が持つターゲット情報が指すターゲット記憶領域に専用のターゲット用キャッシュスロットを前記キャッシュメモリ上に確保し、それにより、前記ターゲット記憶領域から読み出されたリードデータ又は前記ターゲット記憶領域にライトするライトデータが前記確保したターゲット用キャッシュスロットに一時的に格納されるようにする。
【0022】
第4の好適な実施形態では、前記アクセス制御手段は、前記ホスト装置に対する通信インターフェースであるホスト通信手段と、前記複数のデータ記憶領域に対してアクセスする記憶領域通信手段と、前記複数のデータ記憶領域へのアクセスを制御するためのアクセス制御テーブルとを備えている。前記アクセス制御テーブルには、どのデータ記憶領域にアクセスするかのアクセス対象情報を記録することができるようになっており、前記ホスト通信手段は、前記ホスト装置から前記アクセス要求を受信した場合、前記アクセス制御テーブルに、前記受信したアクセス要求が持つターゲット情報が指す前記ターゲット記憶領域をアクセス対象としたアクセス対象情報を登録し、前記記憶領域通信手段は、前記アクセス制御テーブルに登録された前記アクセス対象に基づいて、前記ターゲット記憶領域からデータをリードしそのリードデータが前記ホスト通信手段から前記ホスト装置に送信されるようにする、又は、前記ホスト通信手段が前記ホスト装置から受信したライトデータを前記ターゲット記憶領域にライトする。
【0023】
より詳細には、例えば、前記アクセス制御手段は、前記複数のデータ記憶領域に対してそれぞれ用意される複数のアクセス制御テーブルを備えている。各データ記憶領域の前記アクセス制御テーブルには、そのデータ記憶領域のどこにアクセスするかのアクセスアドレスを記録することができるようになっている。前記ホスト通信手段は、前記ホスト装置から前記所望のオンライン記憶領域に対するアクセス要求を受信した場合、前記所望のオンライン記憶領域のアクセス制御テーブルに、前記受信したアクセス要求が持つターゲット情報が指す前記ターゲット記憶領域を識別するためのターゲット領域識別情報を前記アクセスアドレスとして登録し、且つ、前記ターゲット記憶領域の前記アクセス制御テーブルに、前記ターゲット情報に基づいて前記ターゲット記憶領域の前記アクセスアドレスであるターゲットアクセスアドレスを登録する。前記記憶領域通信手段は、前記所望のオンライン記憶領域の前記アクセス制御テーブルに登録された前記ターゲット領域識別情報から前記ターゲット記憶領域を識別して、そのターゲット記憶領域のアクセス制御テーブルを参照し、そのアクセス制御テーブルに登録されている前記ターゲットアクセスアドレスからデータをリードしそのリードデータが前記ホスト通信手段から前記ホスト装置に送信されるようにする、又は、前記ホスト通信手段が前記ホスト装置から受信したライトデータを前記ターゲットアクセスアドレスにライトする。
【0024】
更に詳細には、例えば、前記アクセス制御手段は、前記データ記憶領域からリードされたリードデータ又は前記ホスト装置から受信したライトデータを前記ホスト通信手段と前記記憶領域通信手段との間で受け渡すためのキャッシュメモリを更に備える。前記キャッシュメモリには、前記リードデータ又は前記ライトデータを一時的に格納するための記憶領域であるキャッシュスロットが確保されるようになっている。前記キャッシュスロットは、一つのデータ記憶領域に対して専用に設けられるようになっている。各データ記憶領域の前記アクセス制御テーブルには、更に、そのデータ記憶領域に専用に設けられた前記キャッシュスロットを特定するためのキャッシュポインタが記録されるようになっている。前記ホスト通信手段は、前記ホスト装置から前記所望のオンライン記憶領域に対するアクセス要求を受信した場合、前記所望のオンライン記憶領域に対してではなく、前記受信したアクセス要求が持つターゲット情報が指すターゲット記憶領域に専用のターゲット用キャッシュスロットを前記キャッシュメモリ上に確保して、前記確保したターゲット用キャッシュスロットのキャッシュポインタであるターゲット用キャッシュポインタも前記アクセス制御テーブルに登録し、そのターゲット用キャッシュポインタからリードデータを読み出して前記ホスト装置に送信する、又は、前記ホスト装置からのライトデータを前記ターゲット用キャッシュポインタに格納する。前記記憶領域通信手段は、前記ターゲット記憶領域のアクセス制御テーブルを参照してそのターゲット記憶領域のターゲット用アクセスポインタ及びターゲット用キャッシュポインタを特定し、前記特定されたターゲット用アクセスポインタからデータをリードしそのリードデータを前記特定されたターゲット用キャッシュポインタに格納する、又は、前記ホスト通信手段によって前記ターゲット用キャッシュポインタに格納された前記ライトデータを前記ターゲット用キャッシュポインタから読み出して前記ターゲット用アクセスポインタにライトする。
【0025】
第5の好適な実施形態では、前記ホスト装置が送信するアクセス要求には、第1のサブアクセス要求と、第2のサブアクセス要求とが含まれている。前記第1のサブアクセス要求は、前記所望のオンライン記憶領域に対する要求であって、前記ターゲット情報を含んでいる(更に、前記所望のオンライン記憶領域とそれとは別のデータ記憶領域のどちらに対してデータのリード又はライトを行なうかを表すアクセス種別を含んでいても良い)。前記第2のサブアクセス要求も、前記所望のオンライン記憶領域に対する要求であって、データのリードとライトのどちらを実行するのかを表すリード/ライト情報を含んでいる。前記アクセス制御手段は、前記第2のアクセス要求の前に前記第1のサブアクセス要求を受信することにより、前記ターゲット情報に基づいてリード/ライト準備処理を行い、続いて、前記第2のサブアクセス要求を受信することにより、前記ターゲット情報が指す前記ターゲット記憶領域に対するデータのリード又はライトを実行する。
【0026】
第6の好適な実施形態では、第3及び第5の好適な実施形態において、前記リード/ライト準備処理には、前記ホスト通信手段が前記キャッシュメモリ上に前記キャッシュスロットを確保することが含まれる。
【0027】
第7の好適な実施形態では、前記記憶システムが、物理的な1又は複数の記憶装置上に、プライマリの論理的なデータ記憶領域であるプライマリ記憶領域と、セコンダリの論理的なデータ記憶領域であるセコンダリ記憶領域とのペアを用意し、前記プライマリ記憶領域と前記セコンダリ記憶領域の両方にデータをライトする二重化処理を行う場合、前記所望のオンライン記憶領域は前記プライマリ記憶領域であり、前記ターゲット記憶領域(例えばオフライン記憶領域)は前記セコンダリ記憶領域である。
【0028】
更に好適には、例えば、前記プライマリ記憶領域内の第1のデータと前記セコンダリ記憶領域内の第2のデータが互いに一致しない場合、前記記憶システムは、前記セコンダリ記憶領域から前記第2のデータをリードし、その第2のデータを前記プライマリ記憶領域内の前記第1のデータに上書きする手段を有する。この場合、例えば、前記ホスト装置は、前記セコンダリ記憶領域の前記第2のデータをアクセス対象とした第2データアクセス要求を前記プライマリ記憶領域に対するものとして前記記憶システムに送信し、前記記憶システムは、前記ホスト装置からの前記第2データアクセス要求に基づいて前記セコンダリ記憶領域から前記第2のデータをリードし、そのリードした第2のデータを前記プライマリ記憶領域の第1のデータに上書きする。
【0029】
第8の好適な実施形態では、第1のホスト装置と第2のホスト装置が前記記憶システムに通信可能に接続されている場合、前記第1のホスト装置にとっての前記ターゲット記憶領域(例えばオフライン記憶領域)には、前記第2のホスト装置に対してオンライン状態であるデータ記憶領域が含まれている。
【0030】
第9の好適な実施形態では、第3の好適な実施形態において、第1のホスト装置と第2のホスト装置が前記記憶システムに通信可能に接続されている場合、前記キャッシュメモリには、第1のホスト装置用のキャッシュ領域である第1ホスト用領域と第2のホスト装置用のキャッシュ領域である第2ホスト用領域とが用意されており、前記第1のホスト装置にとっての前記ターゲット記憶領域(例えばオフライン記憶領域)には、前記第2のホスト装置に対してオンライン状態である第2ホストオンライン記憶領域が含まれており、前記ホスト通信手段は、前記第1のホスト装置から、前記第2ホストオンライン記憶領域をターゲット記憶領域とするターゲット情報を持ったアクセス要求を受けたときは、前記キャッシュメモリ上の前記第2ホスト用領域内に、前記第2ホストオンライン記憶領域用の前記キャッシュスロットを確保する。
【0031】
本発明に従う記憶システムは、通信接続可能なホスト装置に対してオンライン状態であるオンライン記憶領域を含む、物理的又は論理的な複数のデータ記憶領域と、前記ホスト装置をして、所望の又は所定の前記オンライン記憶領域を介して、前記オンライン記憶領域とは別のデータ記憶領域であって、前記ホスト装置がアクセスしたいターゲットであるターゲット記憶領域にアクセスすることを可能にせしめるアクセス制御手段とを備える。
【0032】
具体的には、例えば、記憶システムは、物理的又は論理的な複数のデータ記憶領域と、前記ホスト装置の各データ記憶領域に対するデータアクセスを制御するアクセス制御手段とを備えている。前記複数のデータ記憶領域には、前記ホスト装置に対してオンライン状態であるオンライン記憶領域と、前記ホスト装置に対しオフライン状態であるオフライン記憶領域とが含まれている場合、前記アクセス制御手段は、アクセスしたいターゲットのデータ記憶領域であるターゲット記憶領域を指すターゲット情報を含んだアクセス要求を、前記ターゲット記憶領域とは別の所望のオンライン記憶領域に対するアクセス要求として前記ホスト装置から受信し、そのアクセス要求が持つターゲット情報に基づいて、前記ターゲット記憶領域からデータをリードして前記ホスト装置に提供する、又は、前記ホスト装置からデータを受けて前記ターゲット記憶領域にライトする。
【0033】
本発明に従うホスト装置は、物理的又は論理的な複数のデータ記憶領域を持つ記憶システムに対して通信可能に接続することができるホスト装置であって、前記複数のデータ記憶領域には、前記ホスト装置に対してオンライン状態であるオンライン記憶領域が含まれている場合、所望の又は所定の前記オンライン記憶領域を介して、前記オンライン記憶領域とは別のデータ記憶領域であって、前記ホスト装置がアクセスしたいターゲットであるターゲット記憶領域にアクセスする手段を備える。具体的には、例えば、ホスト装置は、アクセスしたいターゲットのデータ記憶領域であるターゲット記憶領域を指すターゲット情報を含んだアクセス要求を、前記ターゲット記憶領域とは別の所望のオンライン記憶領域に対するアクセス要求として生成する要求生成手段と、前記生成したアクセス要求を前記記憶システムに送信するアクセス要求手段とを備える。
【0034】
好適な実施形態では、ホスト装置は、更に、各データ記憶領域毎にそのデータ記憶領域がオンライン状態であるかオフライン状態であるかを示すオンライン/オフライン識別情報と、前記オンライン/オフライン識別情報に基づいて各データ記憶領域がオンライン状態であるかオフライン状態であるかを識別し、オンライン状態のときには前記アクセス要求手段を実行するようにし、オフライン状態のときにはエラーを出力する制御手段と、前記ターゲット記憶領域がオフライン記憶領域の場合には、そのターゲット記憶領域がオンライン状態であることを示すように前記オンライン/オフライン識別情報を更新する情報更新手段とを備える。この場合、前記制御手段が、前記情報更新手段によって更新された後の前記オンライン/オフライン識別情報に基づいて動作するようになっている。
【0035】
この実施形態によれば、ターゲット記憶領域がオフライン記憶領域であっても、制御手段が参照するオンライン/オフライン識別情報では、そのターゲット記憶領域はオンライン記憶領域であると更新され、制御手段は、その更新後のオンライン/オフライン識別情報を参照するので、制御手段によってエラーが出力されることはない。
【0036】
また、この実施形態によれば、例えば、ホスト装置のOSが、前記情報更新手段を有していないが故に上記のようにエラーを出力するようになっていても、そのOSに前記情報更新手段を組み込むことによりエラーが出力されないようにすることが可能になるので、既存のホスト装置のOSを簡単に設計変更するだけで、ホスト装置が、所望のオンライン記憶領域にデータアクセスするのと同様にオフライン記憶領域にアクセスすることができるようにすることが可能である。
【0037】
本発明に従うコンピュータプログラム(又はそれを記録した記録媒体)は、物理的又は論理的な複数のデータ記憶領域を持つ記憶システムに対して通信可能に接続することができるホスト装置として動作するためのコンピュータプログラムにおいて、前記複数のデータ記憶領域には、前記ホスト装置に対してオンライン状態であるオンライン記憶領域が含まれている場合、所望の又は所定の前記オンライン記憶領域を介して、前記オンライン記憶領域とは別のデータ記憶領域であって、前記ホスト装置がアクセスしたいターゲットであるターゲット記憶領域にアクセスするステップをコンピュータに実行させるためのコンピュータプログラムである。
【0038】
本発明のデータアクセスシステム、記憶システム及びホスト装置は、専用ハードウェア、プログラムされたコンピュータ、又はそれらの組合せのいずれによっても実現することができる。
【0039】
【発明の実施の形態】
図1は、本発明の一実施形態に係るアクセスシステムの全体構成を示す。
【0040】
このアクセスシステム100には、ディスクアレイ装置(例えばRAID)3と、そのディスクアレイ装置3に通信可能に接続することができるホストシステム(以下、単に「ホスト」と言う)1とが備えられる(一つのホスト1に複数台のディスクアレイ装置3が接続されても良いし、一つのディスクアレイ装置3に複数台のホスト1が接続されても良い)。ディスクアレイ装置3は、アレイ状に配設された複数のディスク型記憶装置を有する1以上の物理ディスク群9を有し、それら物理ディスク群9により提供される物理的な記憶領域上には、論理的な記憶領域である複数の論理ボリューム(Logical Unit)11が設定される。
【0041】
ホスト1は、例えば、パーソナルコンピュータやワークステーション等であり、CPU(Central Processing Unit)やメモリ等を備えたコンピュータシステムである。ホスト1のCPUが各種プログラムを実行することにより、種々の機能が実現される。ホスト1は、例えば、LAN等の通信ネットワークを介してディスクアレイ装置3に接続される。
【0042】
このホスト1は、図示のように、1又は複数のアプリケーションプログラム(以下、「ホストAP」と言う)5と、オペレーティングシステム(以下、「ホストOS」と言う)7とを有している。
【0043】
ホストAP5は、所定の又はユーザから指定された論理ボリューム(以下、「ターゲットボリューム」と言う)11に対するデータの書込み処理又は読出し処理(以下、「I/O処理」と言う)の要求をホストOS7に発行する。
【0044】
ホストOS7は、ホストAP5からのI/O処理要求に応答して、ターゲットボリューム11がオンライン状態であるか否かのチェックを行ない、その結果に応じた内容を持つデータ書込み/読出しコマンド(以下、「アクセスコマンド」と言う)を生成し、そのコマンドをディスクアレイ装置3に送信する。
【0045】
ディスクアレイ装置3は、1又は複数のチャネル制御部13と、キャッシュメモリ15と、制御メモリ17と、1以上の物理ディスク群9と、1以上のディスク制御部19と、スイッチング制御部21とを備えている。
【0046】
1又は複数のチャネル制御部13は、1又は複数のホスト1と通信可能に接続される。各チャネル制御部13は、ハードウェア回路、ソフトウェア、又はそれらの組み合わせで構成することができ、このディスクアレイ装置3とそれに接続されているホスト1との間のデータ通信を行う。各チャネル制御部13は、接続されているホスト1と通信を行うための通信インターフェースを有し、また、ホスト1から受信した各種コマンドを解釈して処理するためのコマンドプロセッサ機能も有する。各チャネル制御部13は、制御メモリ17に登録されている情報を参照して、キャッシュメモリ15に格納されているデータを読み出してホスト1に送信したり、ホスト1から受信した書込み対象のデータ(以下、「ライトデータ」と言う)をキャッシュメモリ15に格納したりする。
【0047】
キャッシュメモリ15は、各チャネル制御部13や各ディスク制御部19により共有されるメモリである。キャッシュメモリ15には、各チャネル制御部13によって、1又は複数の仮想記憶領域(以下、「キャッシュスロット」と言う)を設定することができる。キャッシュスロットは、或る一つの論理ボリュームに対して設定される。具体的には、キャッシュスロットには、そのキャッシュスロットに対応している論理ボリュームにライトされるデータ、又は、その論理ボリュームからリードされたデータが一時的に格納される。
【0048】
制御メモリ17も、各チャネル制御部13や各ディスク制御部19により共有されるメモリである。制御メモリ17には、1以上の物理ディスク群9上に用意される各論理ボリューム11毎に制御テーブル(図示せず)が用意され、各制御テーブルには後述する所定の種々の情報が格納される。キャッシュメモリ15上のキャッシュスロットや、各論理ボリューム11に対するデータの読出しや書込みは、その論理ボリュームに対応した制御テーブルに記録されている所定の情報に基づいて行なわれる。
【0049】
各物理ディスク群9は、複数のディスク型記憶装置をアレイ状に配設して構成されている。物理ディスク群9を構成するディスク型記憶装置としては、例えば、ハードディスク装置、フレキシブルディスク装置、半導体記憶装置等の種々のデバイスを用いることができる。1以上の物理ディスク群9により提供される物理的な記憶領域上には、前述したように、論理的な記憶領域である複数の論理ボリューム11が設定される。
【0050】
各ディスク制御部19は、各物理ディスク群9毎に備えられており、その所定の物理ディスク群9を制御するものである。例えば、ディスク制御部19は、制御メモリ17上のターゲットボリューム11の制御テーブルに基づいて、1以上の物理ディスク群9上のターゲットボリューム11に対してデータの読出し又は書込みを行なう。また、ディスク制御部19は、論理アドレスを物理アドレスに変換することにより、論理ボリューム11に対するデータアクセス要求を物理ディスクへのデータアクセス要求に変換する。
【0051】
スイッチング制御部21は、例えば、高速スイッチング動作によりデータ伝送を行う超高速クロスバスイッチ等のような高速バスとして構成することができる。スイッチング制御部21は、各チャネル制御部13と、各ディスク制御部19と、制御メモリ17と、キャッシュメモリ15とを相互に通信可能に接続する。これらの各チャネル制御部13と、各ディスク制御部19と、制御メモリ17と、キャッシュメモリ15との間のデータやコマンドの授受は、スイッチング制御部21を介して行われる。
【0052】
以上が、この実施形態に係るアクセスシステム100の概要である。なお、このアクセスシステム100では、例えば、各ディスク制御部19と各物理ディスク群9とは、直接的に接続してもよいし、ネットワークを介して間接的に接続してもよい。また、物理ディスク群9とディスク制御部19とを一体的に構成しても良い。また、各チャネル制御部13毎にそれぞれ1つの論理ボリューム11が割り当てられても良いし、複数のチャネル制御部13で1つの論理ボリューム11が共有されても良い。
【0053】
さて、以下、本実施形態に係るアクセスシステム100をより詳細に説明する。
【0054】
まず、ホスト1がディスクアレイ装置3に対して発行するアクセスコマンドについて説明する。
【0055】
図2は、ホスト1が発行するアクセスコマンドを示す。
【0056】
ホスト1がディスクアレイ装置3に対して発行するアクセスコマンド19は、第1のサブコマンド19Aと、第2のサブコマンド19Bとを含んでいる。
【0057】
第1のサブコマンド19Aは、第2のサブコマンド19Bよりも先に(例えば最初に)ホスト1からディスクアレイ装置3に送信されるパケットである。このサブコマンド19Aには、コマンド対象ボリュームID、第1アクセス種別コード、及びターゲット情報が含まれている。
【0058】
「コマンド対象ボリュームID」とは、アクセスコマンド19の発行先とする論理ボリュームの識別コードであり、この実施形態では、必ず、起動ボリュームのIDになる。「起動ボリューム」とは、ホスト1に対してオンライン状態である1又は複数の論理ボリューム(以下、「オンラインボリューム」と言う)の中からホスト1によって選択されたオンラインボリュームのことであり、アクセスコマンド19の発行先となるものである(起動ボリュームは、所定の規則に基づいてホスト1又はディスクアレイ装置3によって自動的に選択されても良いし、ユーザが任意に選択しても良い)。
【0059】
「第1アクセス種別コード」とは、ホスト1がどのような種別のアクセスを行ないたいかを示すコードである。第1のアクセス種別には、例えば、リード、ライト、リードコントロール及びライトコントロールの4種類がある(このような4種類に限定しなくても良い)。第1アクセス種別コードとして「リード」を示すコードが含まれている場合、起動ボリュームからデータをリードすることを意味する。同様に、第1のアクセス種別コードとして「ライト」を示すコードが含まれている場合、起動ボリュームにデータをライトすることを意味する。一方、「リードコントロール」を示すコードが含まれている場合、起動ボリュームとは別の論理ボリューム(例えば、起動ボリューム以外のオンラインボリューム、又は、ホスト1に対してオフライン状態である論理ボリュームであるオフラインボリューム)からデータをリードすることを意味する。また、「ライトコントロール」を示すコードが含まれている場合、起動ボリュームとは別の論理ボリュームにデータをライトすることを意味する。
【0060】
「ターゲット情報」とは、ホスト1がリードしたいデータを持っている論理ボリューム又はホスト1がデータをライトしたい論理ボリューム(つまりターゲットボリューム)に関する情報である。具体的には、例えば、第1のサブコマンド19Aにおいて、アクセス種別コードがリード又はライトを示すコードである場合、ターゲット情報には、起動ボリュームのどこにアクセスするかのアクセス先を表すアドレス(以下、「アクセスアドレス」と言う)が含まれている。一方、第1のサブコマンド19Aにおいて、アクセス種別コードがリードコントロール又はライトコントロールを示すコードである場合、ターゲット情報には、起動ボリュームとは別の論理ボリュームのボリュームIDと、その別の論理ボリュームのどこにアクセスするかのアクセス先を表すアクセスアドレスとが含まれている。
【0061】
第2のサブコマンド19Bは、第1のサブコマンド19Aがホスト1からディスクアレイ装置3に送信された後、所定のタイミングで、ホスト1からディスクアレイ装置3に送信されるパケットである。このサブコマンド19Bには、コマンド対象ボリュームID、第2アクセス種別コード、及び付属データが含まれている。
【0062】
「コマンド対象ボリュームID」は、第1のサブコマンド19Aに含まれるコマンド対象ボリュームIDと同じである。すなわち、アクセスコマンド19は、ホスト1が起動ボリュームにアクセスしたいのか或いは別の論理ボリュームにアクセスしたいのかに関わらず(換言すれば、ターゲットボリュームが起動ボリュームであるか或いは別の論理ボリュームであるかに関わらず)、起動ボリュームをコマンドの対象としているため、第1のサブコマンド19Aと同様に、このサブコマンド19Bのコマンド対象ボリュームIDは、起動ボリュームのIDになる。
【0063】
「第2アクセス種別コード」は、第1アクセス種別コードと異なり、リードとライトのいずれかを示すコードになる。すなわち、この第2アクセス種別コードとして「リード」を示すコードが含まれている場合、第1のサブコマンド19Aのターゲット情報から特定可能なターゲットボリューム(すなわち、起動ボリューム又は起動ボリュームとは別の論理ボリューム)からデータをリードすることを意味する。同様に、第2のサブコマンド19Bにアクセス種別コードとして「ライト」を示すコードが含まれている場合、そのターゲットボリュームにデータをライトすることを意味する。
【0064】
「付属データ」とは、第2のサブコマンド19Bに付属するデータである。具体的には、例えば、付属データは、第2アクセス種別コードがライトを示すコードのときは、ホスト1がターゲットボリュームにライトしたいライトデータを含み、一方、第2アクセス種別コードがリードを示すコードのときは、ライトデータの代わりにヌルのデータを含む。
【0065】
以上が、ホスト1がディスクアレイ装置3に対して発行するアクセスコマンドについての説明である(どのような流れでホスト1が第1及び第2のサブコマンド19A、19Bを送信し、その第1及び第2のサブコマンド19A、19Bに基づいてディスクアレイ装置3がどのような流れで動作するかについては後で詳述する)。
【0066】
次に、ディスクアレイ装置3が有する制御メモリ17上に用意される制御テーブルについて説明する。
【0067】
図3は、制御メモリ17に用意される制御テーブルを示す。
【0068】
制御テーブル31は、前述したように、各論理ボリューム11毎に用意される。各制御テーブル31には、ボリュームID、アクセス種別、アクセス対象情報、及びキャッシュポインタ等が記録される。
【0069】
「ボリュームID」は、対応する論理ボリュームのIDである。各チャネル制御部13及びディスク制御部19は、このボリュームIDを参照することにより、どの制御テーブル31がどの論理ボリューム11に対応しているのかを認識することができる。
【0070】
「アクセス種別」は、対応する論理ボリュームに対してどのような種別のアクセスが行なわれるのかを示すものである。具体的には、例えば、ターゲットボリュームが起動ボリュームの場合には、起動ボリュームの制御テーブル31に、アクセス種別として、リード又はライトが登録される。一方、ターゲットボリュームが起動ボリュームとは別の論理ボリューム(以下、「別ボリューム」と略記する)の場合には、起動ボリュームの制御テーブル31に、アクセス種別として、リードコントロール又はライトコントロールが登録され、別ボリュームの制御テーブル31には、アクセス種別として、リード又はライトが登録される。
【0071】
「アクセスアドレス」は、対応する論理ボリュームのどこにアクセスするかを表すアクセス先のアドレス(例えば論理アドレス)を示す。
【0072】
「キャッシュポインタ」とは、対応する起動ボリュームに対してキャッシュメモリ15上に専用に用意されたキャッシュスロットを指し示す情報である。各チャネル制御部13及び各ディスク制御部19は、各制御テーブル31に登録されているキャッシュポインタを参照することにより、その制御テーブル31に対応した論理ボリューム11からリードしたデータ又はその論理ボリューム11にライトするデータをどのキャッシュスロットに格納すれば良いのかを識別することができる。
【0073】
以上が、制御テーブル31についての説明である。
【0074】
次に、本実施形態に係るデータアクセスシステムにおいて、ホスト1が起動ボリュームとは別の論理ボリュームをターゲットとしそこからデータをリードする場合の流れを簡単に説明する。なお、以下の説明では、ターゲットボリュームを、ホスト1に対してオフライン状態であるオフラインボリュームであるとする。
【0075】
図4は、本実施形態に係るデータアクセスシステムにおいて、ホスト1が起動ボリュームとは別の論理ボリュームをターゲットとしそこからデータをリードする場合の流れを示す。
【0076】
ホストAP5は、所定の又はユーザから指定されたオフラインボリューム(つまりターゲットボリューム)11Tから所定の又はユーザ指定のデータをリードする旨を表したI/O処理要求をホストOS7に発行する。
【0077】
ホストOS7は、ホストAP5からのI/O処理要求に応答して、オフラインボリューム11を指すターゲット情報を持ったアクセスコマンド19を生成し、それを起動ボリューム11Kに対するコマンドとしてディスクアレイ装置3に送信する。
【0078】
ホスト1と通信可能に接続されているチャネル制御部13は、ホスト1から、起動ボリューム11Kに対するアクセスコマンド19を受信して、そのアクセスコマンド19に含まれている第1アクセス種別コードを解析する。その結果、その第1アクセス種別コードが、起動ボリュームとは別の論理ボリュームからデータをリードするリードコントロールを意味している場合には、チャネル制御部13は、次のように動作する。
【0079】
すなわち、チャネル制御部13は、キャッシュメモリ15上にキャッシュスロット21を確保するが、その際、アクセスコマンド19が起動ボリューム11Kに対するものであっても、ターゲットがオフラインボリューム11Tなので、起動ボリューム11Kに対してではなくオフラインボリューム11Tに対してキャッシュスロット21を確保する。そして、チャネル制御部13は、アクセスコマンド19に含まれているターゲット情報から特定できるオフラインボリューム11Tの制御テーブル31Tに、オフラインボリューム11Tに対して確保したキャッシュスロット21のキャッシュポイントを登録する(起動ボリューム11Kの制御テーブル31Kには、キャッシュポインタを登録しない)。また、チャネル制御部13は、アクセスコマンド19に含まれているターゲット情報から特定できるオフラインボリューム11Tのアクセスアドレスも、制御テーブル31Tに登録する。
【0080】
各ディスク制御部19は、例えば、自分が接続されている物理ディスク群9上に用意された論理ボリューム11のIDを把握しており、その論理ボリューム11の制御テーブル(以下、「対象制御テーブル」と言う)を常に監視している。その結果、各ディスク制御部19は、対象制御テーブルに新たにキャッシュポインタ、アクセスアドレス及びアクセス種別等が登録されたら、そのアクセス種別に応じた処理を行う。
【0081】
すなわち、この図4の例で言えば、オフラインボリューム11Tが用意されている物理ディスク群9に対応したディスク制御部(以下、「担当ディスク制御部」と言う)19は、制御テーブル31Tに新たにキャッシュポインタ及びアクセスアドレス等が登録されたことを検出したならば、そのアクセスアドレス(すなわちオフラインボリューム11Tにおけるアドレス)からデータをリードし、リードしたデータを(以下、「リードデータ」と言う)、制御テーブル31Tに登録されているキャッシュポインタから識別できるキャッシュスロット21に格納する。
【0082】
チャネル制御部13は、所定の方法(例えば、上記確保したキャッシュスロット21を監視する方法)でキャッシュスロット21にリードデータが格納されたことを検出したら、そのリードデータをキャッシュスロット21から読出してホスト1に送信する。
【0083】
このような流れにより、ホスト1は、起動ボリューム11Kに対するアクセスコマンド19をディスクアレイ装置3に送信しても、起動ボリューム11Kとは別の論理ボリューム(例えばオフラインボリューム11T)からデータをリードすることができる。
【0084】
なお、ホスト1及びディスクアレイ装置3についての動作については後で更に詳細に説明するので、ここでは詳しくは説明しないが、図4を参照した上記説明から、別ボリュームにデータをライトする場合の動作も理解することができる。
【0085】
すなわち、チャネル制御部13は、ターゲットボリューム11Tに対してキャッシュスロット21を確保してそれのキャッシュスロットを制御テーブル31Tに登録し、且つ、そのキャッシュスロット21に、ホスト1からのライトデータを格納する。担当ディスク制御部19は、制御テーブル31Tに登録されているキャッシュポインタからライトデータがあるキャッシュスロット21を識別し、そのキャッシュスロット21から、ライトデータを読み出して、そのライトデータを、制御テーブル31Tに登録されているアクセスアドレスにライトする。
【0086】
上記のことをより抽象的に表現すれば、例えば、ディスクアレイ装置3は、ホスト1をして、所望の又は所定のオンラインボリューム(すなわち起動ボリューム)11Kを介して、そのオンラインボリューム11Kとは別の論理ボリュームであって、ホスト1がアクセスしたいターゲットであるターゲットボリューム11Tにアクセスすることを可能にせしめる。別の観点から言えば、例えば、ホスト1は、ディスクアレイ装置3が有する複数の論理ボリュームのうちの所望の又は所定のオンラインボリューム11Kを介して、そのオンラインボリューム11Kとは別の論理ボリュームであるターゲットボリューム11Tにアクセスする。
【0087】
さて、以下、ホスト1及びディスクアレイ装置3の動作について更に詳細に説明する。
【0088】
図5は、ホストOS7の動作流れを示す。
【0089】
まず、動作を説明する前に、ホストOS7が管理している2種類の情報について説明する。
【0090】
ホストOS7は、各論理ボリューム11毎に、オンラインビットとオープンビットを管理している。
【0091】
「オンラインビット」とは、対応する論理ボリュームがホスト1に対してオンライン状態か否かを表すものである。このオンラインビットがセットされていれば(例えば「1」であれば)、対応する論理ボリュームがオンライン状態であることを示し、セットされていなければ(例えば「0」であれば)、その論理ボリュームがオフライン状態であることを示す。ホストOS7は、任意のタイミングで、各論理ボリュームがオンライン状態かオフライン状態かを監視し、その監視結果に応じて、各論理ボリュームのオンラインビットをセットしたり、或いは、セットされているオンラインビットをはずしたりする(例えば「1」から「0」にしたりする)。
【0092】
「オープンビット」とは、対応する論理ボリュームに対し、I/O処理を要求するホストAP5以外の他のホストAP(図示せず)がアクセスしてはならないか否かをホストOS7に対して示すものである。このオープンビットがセットされていれば(例えば「1」であれば)、対応する論理ボリュームに、I/O処理を要求するホストAP5以外の他のホストAP(図示せず)がアクセスさせてはならないことをホストOS7に対して示し(つまり排他処理実行中であることを示し)、セットされていなければ(例えば「0」であれば)、その論理ボリュームにどのホストAP5がアクセスしても良いこと(つまり排他処理が行われていないこと)を示す。
【0093】
次に、このようなオンラインビット及びオープンビットを管理するホストOS7がどのような流れで動作するのかを説明する。
【0094】
ホストOS7は、ホストAP5から、ターゲットボリューム11Tの通知と共に、そのターゲットボリューム11Tに対してI/O処理を行うことのI/O処理要求を受ける(ステップS11)。
【0095】
ホストOS7は、ホストAP5からのI/O処理要求に応答して、ターゲットボリューム11Tに対してオープン処理を行うことを開始する(S12)。この「オープン処理」とは、ターゲットボリューム11Tに対して他のホストAP(図示せず)がアクセスしないようにする排他処理のことである。
【0096】
まず、ホストOS7は、ターゲットボリューム11Tにオンラインビットがセットされているか否かに関わらず、ターゲットボリューム11Tのオンラインビットをセットする(S13)。
【0097】
次に、ホストOS7は、ターゲットボリューム11Tにオンラインビットがセットされているか否かを確認する(S14)。ここで、ホストOS7は、S13でオンラインビットがセットされたので、オンラインビットがセットされていることを検出し(S14でYES)、そのターゲットボリューム11Tに対してオープンビットをセットする(S16)。そして、ホストOS7は、そのターゲットボリューム11Tを起動ボリューム11Kとする、或いは、そのターゲットボリューム11Tとは別のオンラインボリュームを起動ボリューム11Kとするアクセスコマンド19(厳密に言うと、この段階では第1のサブコマンド19A)を生成してディスクアレイ装置3に送信する。
【0098】
以上が、ホストOS7の動作流れである。
【0099】
なお、上記流れにおいて、ホストOS7は、もし、S14の結果、オンラインビットがセットされていないことを検出したならば(S14でNO)、ターゲットボリューム11Tがオフラインボリュームということであり、エラーをホストAP5に通知するようになっている(S15)。しかし、前述した工夫、すなわち、ターゲットボリューム11Tにオンラインビットがセットされているか否かを確認する処理(S14の処理)の前に、ターゲットボリューム11Tにオンラインビットがセットされているか否かに関わらずターゲットボリューム11Tのオンラインビットをセットする処理(S13の処理)を行うという工夫がホストOS7に施されていることにより、ターゲットボリューム11Tがオフラインボリュームであっても、ホストOS7からホストAP5にエラーが通知されること無く、ターゲットボリューム11Tがオンラインボリュームであるときと同様に、ホストOS7からディスクアレイ装置3にアクセスコマンド19が送信される。
【0100】
また、上述のS12〜S16の処理は、マクロによって行なわれても良い。従って、S14の処理の前に、ターゲットボリューム11Tにオンラインビットがセットされているか否かに関わらず強制的にターゲットボリューム11Tのオンラインビットをセットする処理(S13の処理)を行なうようになったマクロをホストOS7に搭載すれば、ホストOS7は前述した図5の動作を実行することができる。また、ホストOS7に既に搭載されているマクロが、S12の処理の後、S13の処理を行わずにS14の処理を行うようになっていても、S12の処理とS14の処理との間にS13の処理を入れ込むことで、前述したS12〜S16の動作を行なうことができるマクロに変更することができる。
【0101】
また、図5の処理は、ターゲットボリューム11Tがオフラインボリュームの場合にのみ行なわれるようにしても良い。具体的には、例えば、S12において、ホストOS7は、一次的にターゲットボリューム11Tにオンラインビットがセットされているか否かを確認し、その結果、オンラインビットがセットされていないときにのみ、S13の処理を行い、オンラインビットが既にセットされているときは(つまりターゲットボリューム11Tがオンラインボリュームの場合には)、S13の処理を省略してS14の処理(二次的にターゲットボリューム11Tにオンラインビットがセットされているか否かを確認する処理)を行っても良い。
【0102】
また、図示しないが、ホストOS7は、第1のサブコマンド19Aを送信した後、任意のタイミングで(例えば、ディスクアレイ装置3から所定内容の返答を受けたときに)、第2のサブコマンド19Bを生成し送信することができる。具体的には、例えば、ホストOS7は、送信した第1のサブコマンド19Aに含まれる第1アクセス種別コードが、リード又はリードコントロールを示すコードであれば、リードを示す第2アクセス種別コードを持った第2のサブコマンド19Bを生成し送信し、一方、上記第1アクセス種別コードがライト又はライトコントロールを示すコードであれば、ライトを示す第2アクセス種別コードを持った第2のサブコマンド19Bを生成し送信する。
【0103】
図6〜図10は、ディスクアレイ装置3の動作流れを示す。具体的には、図6は、ホスト1から第1のサブコマンド19Aを受信したときのディスクアレイ装置3の動作流れを示し、図7〜図10は、ホスト1から第2のサブコマンド19Bを受信したときのディスクアレイ装置3の動作流れを示す。
【0104】
まず、図6を参照して、ホスト1から第1のサブコマンド19Aを受信したときのディスクアレイ装置3の動作流れを説明する。
【0105】
図6に示すように、ディスクアレイ装置3のチャネル制御部13は、ホスト1から第1のサブコマンド19Aを受信した場合(S21)、そのサブコマンド19Aに含まれているコマンド対象ボリュームIDから起動ボリューム11Kを特定すると共に、そのサブコマンド19Aに含まれている第1アクセス種別コードを解析する(S22)。
【0106】
S22の結果、第1アクセス種別コードがリード又はライトを示している場合、ターゲットが起動ボリューム11Kであることを意味するので、チャネル制御部13は、上記特定された起動ボリューム11KのIDを持つ制御テーブル(以下、「起動制御テーブル」と言う)31Kに、アクセス種別としてリード又はライトを登録し、且つ、起動ボリューム11Kのアクセスアドレスを登録する(S23)。そして、チャネル制御部13は、第1のサブコマンド19Aについての処理が完了した旨を表すコマンド処理終了をホスト1に返答する(S26)。
【0107】
一方、S22の結果、第1アクセス種別コードがリードコントロール又はライトコントロールを示している場合、ターゲットは起動ボリューム11Kとは別のボリューム(例えばオフラインボリューム)11Tであることを意味するので、チャネル制御部13は、起動制御テーブル31Kに、アクセス種別としてリードコントロール又はライトコントロールを登録し、且つ、受信したサブコマンド11Aに含まれるターゲット情報が示すターゲットボリューム11TのボリュームIDを、制御テーブル31Kに登録する(S24)。また、チャネル制御部13は、ターゲットボリューム11Tの制御テーブル(以下、「ターゲット制御テーブル」と言う)31Tに、アクセス種別としてリード又はライトを登録し、且つ、ターゲットボリューム11Tのアクセスアドレスを登録する(S25)。それが完了したら、チャネル制御部13は、上述したコマンド処理終了をホスト1に返答する(S26)。
【0108】
ホストOS7は、チャネル制御部13からコマンド処理終了の返答を受けたら、第2のサブコマンド19Bを生成し送信する。このとき送信されるサブコマンド19Bに含まれる第2アクセス種別コードは、前述したように、先に送信した第1のサブコマンド19Aに含まれる第1アクセス種別コードがリード又はリードコントロールを示すコードのときは、リードを示すコードであり、上記第1アクセス種別コードがライト又はライトコントロールを示すコードのときは、ライトを示すコードである。
【0109】
さて、次に、図7〜10を参照して、ホスト1から第2のサブコマンド19Bを受信したときのディスクアレイ装置3の動作流れを説明する。なお、その際、説明を分かり易くするために、以下の4つの場合、
(1)起動ボリューム11Kからデータをリードする場合(換言すれば、先に受信した第1のサブコマンド19Aが持つ第1アクセス種別コードがリードを示す場合、以下、「通常リードの場合」と言う)、
(2)起動ボリューム11Kとは別のボリューム11Tからデータをリードする場合(換言すれば、先に受信した第1のサブコマンド19Aが持つ第1アクセス種別コードがリードコントロールを示す場合、以下、単に「リードコントロールの場合」と言う)、
(3)起動ボリューム11Kとは別のボリューム11Tにデータをライトする場合(換言すれば、先に受信した第1のサブコマンド19Aが持つ第1アクセス種別コードがライトコントロールを示す場合、以下、単に「ライトコントロールの場合」と言う)、
(4)起動ボリューム11Kにデータをライトする場合(換言すれば、先に受信した第1のサブコマンド19Aが持つ第1アクセス種別コードがライトを示す場合、以下、「通常ライトの場合」と言う)、
に分けて説明する。
【0110】
(1)通常リードの場合。
【0111】
図7に示すように、チャネル制御部13は、ホスト1から第2のサブコマンド19Bを受信すると(S31)、そのサブコマンド19Bに含まれているコマンド対象ボリュームIDから起動ボリューム11Kを特定すると共に、そのサブコマンド19Bに含まれている第2アクセス種別コードを解析する(S32)。
【0112】
S32の結果、チャネル制御部13は、第2アクセス種別コードがリードを示しているときは、第2のサブコマンド19Bの対象となっている起動ボリューム11Kの制御テーブル31Kを参照して、アクセス種別としてリードとリードコントロールのどちらが登録されているかを調べる(S33)。
【0113】
S33の結果、リードが登録されていれば、チャネル制御部13は、起動制御テーブル31Kにキャッシュポインタが登録されているか否か(以下、これを「キャッシュヒットしたか否か」と言う)を確認する(S34)。
【0114】
S34の結果、キャッシュヒットしなければ(S35でN)、チャネル制御部13は、キャッシュメモリ15上に起動ボリューム11Kに専用のキャッシュスロット21を確保し、そのキャッシュスロット21のキャッシュポインタを起動制御テーブル31Kに登録する(S36)。その後、チャネル制御部13は、ホスト1に切り離し要求(具体的には、例えば、複数の通信チャネルのうちの所定の通信チャネルを切断する要求)をする(S37)。それにより、ホスト1によって、ホスト1とディスクアレイ装置3との間で切り離しが行なわれる。
【0115】
S37の後、図8に示すように、起動ボリューム11Kが用意されている物理ディスク群9に対応のディスク制御部19が、起動制御テーブル31Kにキャッシュポインタ等が新たに登録されたことを検出したら、その起動制御テーブル31Kに登録されているアクセスアドレス(つまり起動ボリューム11Kのアクセスアドレス)からデータをリードし、そのリードデータを、起動制御テーブル31Kに登録されているキャッシュポインタが示すキャッシュポインタ21に格納する(S44)。そして、そのディスク制御部19は、起動ボリューム11Kのキャッシュスロット21にリードデータを格納したことを意味するデータ準備完了をチャネル制御部13に通知する(S45)。なお、どのチャネル制御部13に通知するかは、例えば、起動制御テーブル31Kにキャッシュポインタ等を登録するチャネル制御部13が自分の識別コードも一緒に登録し、ディスク制御部19は、その識別コードから、上記データ準備完了の通知先とするチャネル制御部13を識別することができる。
【0116】
チャネル制御部13は、ディスク制御部19からデータ準備完了の通知を受けたときは、図7のS37で切り離しを要求したホスト1に対し再接続を要求する(S46)。
【0117】
ホストOS7は、チャネル制御部13から再接続の要求を受けたときは、ディスクアレイ装置3に対して再接続を行なって(例えば、切断した所定の通信チャネルを形成し)、先に送信した第2のサブコマンド19Bを再送信する。そのため、再び、上述した図7のS31〜S34の処理が行われる。
【0118】
このときS34では、S36で起動制御テーブル31Kにキャッシュポインタが登録されたので、キャッシュヒットする(S35でY)。その場合、チャネル制御部13は、キャッシュヒットしたキャッシュスロット21(すなわち、起動制御テーブル31Kに登録されたキャッシュポインタが示すキャッシュスロット21)から、上記格納されたリードデータを読み出してホスト1に送信し、且つ、ホスト1に、正常にリード処理が行われた旨を示す正常ステータスを通知して、起動制御テーブル31K上のレコード(例えば、キャッシュポインタ、アクセスアドレス、アクセス種別等)を消去する(S38)。
【0119】
以上が、通常リードの場合の流れである。
【0120】
(2)リードコントロールの場合(すなわち、起動ボリューム11Kとは別のボリューム11Tからデータをリードする場合)。
【0121】
この場合、まず、図7に示すように、通常リードの場合と同様にS31〜S33が行われる。そして、この場合では、S33の結果として、起動制御テーブル31Kにリードコントロールが登録されていることが検出される。そのため、チャネル制御部13は、起動制御テーブル31Kに登録されているターゲットボリュームのIDから、ターゲットボリューム11T及びそれの制御テーブル(つまりターゲット制御テーブル)31Tを認識し、その認識された制御テーブル31Tを参照して、キャッシュヒットしたか否かを確認する(S39)。
【0122】
S39の結果、キャッシュヒットしなければ(S40でN)、チャネル制御部13は、キャッシュメモリ15上にターゲットボリューム11Tに専用のキャッシュスロット21を確保し、そのキャッシュスロット21のキャッシュポインタをターゲット制御テーブル31Tに登録する(S41)。その後、チャネル制御部13は、ホスト1に切り離し要求をする(S42)。それにより、ホスト1によって、ホスト1とディスクアレイ装置3との間で切り離しが行なわれる。
【0123】
S42の後、図8に示すように、ターゲットボリューム11Tが用意されている物理ディスク群9に対応のディスク制御部19が、ターゲット制御テーブル31Tにキャッシュポインタ等が新たに登録されたことを検出したら、そのターゲット制御テーブル31Tに登録されているアクセスアドレス(つまりターゲットボリューム11Tのアクセスアドレス)からデータをリードし、そのリードデータを、ターゲット制御テーブル31Tに登録されているキャッシュポインタが示すキャッシュポインタ21に格納する(S44)。そして、そのディスク制御部19は、ターゲットボリューム11Tのキャッシュスロット21にリードデータを格納したことを意味するデータ準備完了をチャネル制御部13に通知する(S45)。
【0124】
チャネル制御部13は、ディスク制御部19からデータ準備完了の通知を受けたときは、図7のS37で切り離しを要求したホスト1に対し再接続を要求する(S46)。
【0125】
ホストOS7は、チャネル制御部13から再接続の要求を受けたときは、ディスクアレイ装置3に対して再接続を行なって、先に送信した第2のサブコマンド19Bを再送信する。そのため、再び、上述したS31〜S33及びS39の処理が行われる。
【0126】
このときS39では、S41でターゲット制御テーブル31Tにキャッシュポインタが登録されたので、キャッシュヒットする(S40でY)。その場合、チャネル制御部13は、キャッシュヒットしたキャッシュスロット21(すなわち、ターゲット制御テーブル31Tに登録されたキャッシュポインタが示すキャッシュスロット21)から、上記格納されたリードデータを読み出してホスト1に送信し、且つ、ホスト1に、正常にリード処理が行われた旨を示す正常ステータスを通知して、起動制御テーブル31K及びターゲット制御テーブル31T上のレコード(例えば、キャッシュポインタ、アクセスアドレス、アクセス種別等)を消去する(S43)。
【0127】
以上が、リードコントロールの場合の流れである。
【0128】
(3)ライトコントロールの場合(すなわち、起動ボリューム11Kとは別のボリューム11Tにデータをライトする場合)。
【0129】
この場合、まず、図7に示すように、通常リードの場合と同様にS31〜S32が行われる。そして、この場合では、S32の結果として、第2のサブコマンド19Bが持つ第2アクセス種別コードはライトを示すことが検出される。
【0130】
その後、図9に示すように、チャネル制御部13は、第2のサブコマンド19Bの対象となっている起動ボリューム11Kの制御テーブル31Kを参照して、アクセス種別としてライトとライトコントロールのどちらが登録されているかを調べる(S47)。
【0131】
S47の結果、ライトコントロールが登録されていれば、チャネル制御部13は、起動制御テーブル31Kに登録されているターゲットボリュームのIDから、ターゲットボリューム11T及びそれの制御テーブル31Tを認識し、その認識された制御テーブル31Tを参照して、キャッシュヒットしたか否かを確認する(S49)。
【0132】
S49の結果、キャッシュヒットしなければ(S50でN)、チャネル制御部13は、キャッシュメモリ15上にターゲットボリューム11Tに専用のキャッシュスロット21を確保し、そのキャッシュスロット21のキャッシュポインタをターゲット制御テーブル31Tに登録する(S51)。その後、チャネル制御部13は、ホスト1に切り離し要求をする(S52)。
【0133】
S52の後、図10に示すように、ターゲットボリューム11Tが用意されている物理ディスク群9に対応のディスク制御部19が、ターゲット制御テーブル31Tにキャッシュポインタ等が新たに登録されたことを検出したら、そのターゲット制御テーブル31Tに登録されているアクセスアドレス(つまりターゲットボリューム11Tのアクセスアドレス)からデータをリードし、そのリードデータを、ターゲット制御テーブル31Tに登録されているキャッシュポインタが示すキャッシュポインタ21に格納する(S54)。そして、そのディスク制御部19は、データ準備完了をチャネル制御部13に通知する(S55)。
【0134】
チャネル制御部13は、ディスク制御部19からデータ準備完了の通知を受けたときは、図9のS52で切り離しを要求したホスト1に対し再接続を要求する(S56)。
【0135】
ホストOS7は、チャネル制御部13から再接続の要求を受けたときは、ディスクアレイ装置3に対して再接続を行なって、先に送信した第2のサブコマンド19Bを再送信する。そのため、再び、上述したS31〜S32、S47及びS49の処理が行われる。
【0136】
このときのS49では、S51でターゲット制御テーブル31Tにキャッシュポインタが登録されたので、キャッシュヒットする(S50でY)。その場合、チャネル制御部13は、キャッシュヒットしたキャッシュスロット21(すなわち、ターゲット制御テーブル31Tに登録されたキャッシュポインタが示すキャッシュスロット21)に、上記受信した第2のサブコマンド19Bに含まれているライトデータを格納する(S53)。
【0137】
S53の後、図10に示すように、ディスク制御部19は、ターゲット制御テーブル31Tに登録されているキャッシュポインタが示すキャッシュポインタ21にライトデータがあることを検出してそのライトデータを読み出し、それを、ターゲット制御テーブル31Tに登録されているアクセスアドレス(つまりターゲットボリューム11Tのアクセスアドレス)にライトする。その後、そのディスク制御部19は、ライトデータの格納が完了したことをチャネル制御部13に通知する(S58)。
【0138】
ライトデータの格納が完了した通知を受けたチャネル制御部13は、正常にライト処理が行われた旨を示す正常ステータスをホスト1に通知すると共に、起動制御テーブル31K及びターゲット制御テーブル31T上のレコード(例えば、キャッシュポインタ、アクセスアドレス、アクセス種別等)を消去する(S59)。
【0139】
以上が、ライトコントロールの場合の動作流れである。
【0140】
(4)通常ライトの場合(起動ボリューム11Kにデータをライトする場合)。
【0141】
この場合、まず、ライトコントロールの場合と同様にS31〜S32及びS47が行われる。そして、この場合では、S47の結果として、起動制御テーブル31Kにライトが登録されていることが検出されるので、通常のライト処理が行われる(S48)。通常のライト処理の流れについては特別図示しないが、通常リード、リードコントロール、及びライトコントロールの場合の動作流れについての上記説明から、当業者であれば、通常のライト処理は下記のような流れで行なわれることを理解することができる。
【0142】
すなわち、チャネル制御部13は、起動制御テーブル31Kを参照して、キャッシュヒットしたか否かを確認する。その結果、キャッシュヒットしなければ、チャネル制御部13は、キャッシュメモリ15上に起動ボリューム11Kに専用のキャッシュスロット21を確保し、そのキャッシュスロット21のキャッシュポインタを起動制御テーブル31Kに登録する。その後、チャネル制御部13は、ホスト1に切り離し要求をする。
【0143】
起動ボリューム11Kが用意されている物理ディスク群9に対応のディスク制御部19が、起動制御テーブル31Kにキャッシュポインタ等が新たに登録されたことを検出したら、その制御テーブル31Kに登録されているアクセスアドレスからデータをリードし、そのリードデータを、起動制御テーブル31Kに登録されているキャッシュポインタが示すキャッシュポインタ21に格納する。そしてて、ディスク制御部19は、データ準備完了をチャネル制御部13に通知する。
【0144】
チャネル制御部13は、ディスク制御部19からデータ準備完了の通知を受けたときは、ホスト1に対し再接続を要求する。
【0145】
ホストOS7は、チャネル制御部13から再接続の要求を受けたときは、ディスクアレイ装置3に対して再接続を行なって、先に送信した第2のサブコマンド19Bを再送信する。そのため、再び、キャッシュヒットしたか否かが確認される。
【0146】
この場合の確認では、前述の通り、起動制御テーブル31Kにキャッシュポインタが登録されたので、キャッシュヒットする。その場合、チャネル制御部13は、キャッシュヒットしたキャッシュスロット21に、上記受信した第2のサブコマンド19Bに含まれているライトデータを格納する。
【0147】
その後、ディスク制御部19は、起動制御テーブル31Kに登録されているキャッシュポインタが示すキャッシュポインタ21にライトデータがあることを検出してそのライトデータを読み出し、それを、起動制御テーブル31Kに登録されているアクセスアドレス(つまり起動ボリューム11Kのアクセスアドレス)にライトする。その後、そのディスク制御部19は、ライトデータの格納が完了したことをチャネル制御部13に通知する。
【0148】
ライトデータの格納が完了した通知を受けたチャネル制御部13は、正常にライト処理が行われた旨を示す正常ステータスをホスト1に通知すると共に、起動制御テーブル31K上のレコードを消去する。
【0149】
以上が、通常ライトの場合の動作流れである。
【0150】
上述した実施形態によれば、ホスト1が、アクセスコマンド19を起動ボリューム(つまりそのコマンド19の対象となる論理ボリューム)11Kに送信するようになっており、その場合、アクセスしたいターゲットの論理ボリューム11に関するターゲット情報をアクセスコマンド19に含めて送信するようになっている。ディスクアレイ装置3は、アクセスコマンド19を受けると、そのアクセスコマンド19に含まれているターゲット情報が示すターゲットボリュームが起動ボリューム11Kとは別のボリューム11Tであっても、その別のボリューム11Tからデータをリードしてホスト1に提供したり、或いは、ホスト1が書き込みたいデータをその別のボリューム11Tにライトしたりする。このように、この実施形態によれば、オンライン状態になっている起動ボリュームに対してデータアクセスを行うのと同様の方法でそれとは別のターゲットボリュームに対してデータアクセスを行なうことができる。それ故、ユーザにとって便利である。なお、このことは、ターゲットボリュームがオフラインボリュームである場合には特に利便性が高い。
【0151】
ところで、上述した説明では、ホストAP5がどのようにしてターゲットボリュームをホストOS7に通知するかについては具体的に説明してないが、これについては幾つかの方法が考えられる。一例として、ユーザが、予め、ディスクアレイ装置3に対して直接的に又は遠隔から所定の操作を行なって、ディスクアレイ装置3が持つ全ての論理ボリュームと各論理ボリュームにはどのようなデータが格納されているかということ(以下、これを「ボリューム情報」と言う)をディスクアレイ装置3から通知してもらい、その通知されたボリューム情報に基づいて、ホストAP5に対し所望のターゲットボリュームを入力することで、ホストAP5がホストOS7にターゲットボリュームを通知する方法が考えられる。別の一例として、ディスクアレイ装置3が、ユーザからの要求に応答して或いは任意のタイミングで自発的に、上記ボリューム情報をホスト1に送信し、ホスト1がそのボリューム情報を所定の記憶領域に格納しておき、ユーザがホストAP5を操作してターゲットボリュームを入力するときは、ホストAP5が、そのボリューム情報を読み出してディスプレイ画面に表示し、ユーザに選択された論理ボリュームをターゲットボリュームとしてホストOS7に通知する方法も考えられる。
【0152】
また、起動ボリューム11Kは、例えば、ホスト1に対してオンライン状態である複数のオンラインボリュームの中から、ホスト1又はディスクアレイ装置3によって自動的に又はユーザによって任意に選択されたものである。
【0153】
さて、上述した実施形態には、幾つか応用例、例えば下記のような第1〜第3の応用例が考えられる。
【0154】
図11は、本発明の一実施形態に係るアクセスシステムの第1の応用例を示す。
【0155】
第1の応用例は、上述した実施形態を、正ボリューム(プライマリのボリューム)と副ボリューム(セコンダリのボリューム)とをペアで管理して二重化処理を行うことができるようになったディスクアレイ装置A1を有するデータアクセスシステム200に適用したものである。
【0156】
この第1の応用例では、起動ボリューム11Kは、正ボリュームであり、起動ボリューム11Kとは別のターゲットボリューム(例えばオフラインボリューム)11Tは、副ボリュームである。
【0157】
この第1の応用例によれば、ホスト1に対して正ボリューム11Kのみがオンライン状態になっていて副ボリューム11Tはオフライン状態でも、ホスト1は、正ボリューム11Kに対してデータアクセスする方法と同様の方法で副ボリューム11Tにデータアクセスすることができる。具体的には、図示のように、ホスト1は、正ボリューム11Kを対象とするアクセスコマンド19を発行しても、そのアクセスコマンド19に、リードコントロールを示す第1アクセス種別コードと、副ボリューム11TのID及びアクセスアドレスを含んだターゲット情報とを含めれば、副ボリューム11Tから所望のデータを取得することができる。また、ホスト1は、正ボリューム11Kを対象とするアクセスコマンド19を発行しても、そのアクセスコマンド19に、ライトコントロールを示す第1アクセス種別コードと、副ボリューム11TのID及びアクセスアドレスを含んだターゲット情報とを含めれば、副ボリューム11Tに所望のデータをライトすることができる。
【0158】
なお、この第1の応用例において、例えば、正ボリューム11K内の第1のデータと副ボリューム11T内の第2のデータ(第1のデータとペアになったもの)が互いに一致しない場合、ディスクアレイ装置3は、副ボリューム11Tから第2のデータをリードし、その第2のデータを正ボリューム11K内の第1のデータに上書きすることにより、第1のデータの回復を行なうことができる。この処理は、例えば、ディスクアレイ装置3が任意のタイミングで上記第1のデータと第2のデータの比較を行ない一致しないときに自動的に行なっても良いし、或いは、上記一致しないことをホスト1に通知し、ホスト1が、ユーザからの要求に応じて又は自発的に、副ボリューム11Tの上記第2のデータをターゲットとしたアクセスコマンド19を、正ボリューム11Kを起動ボリュームとして送信し、ディスクアレイ装置3が、ホスト1からのそのコマンド19に基づいて、上述の上書き処理をおこなっても良い。
【0159】
図12は、本発明の一実施形態に係るアクセスシステムの第2の応用例を示す。
【0160】
第2の応用例は、上述した実施形態を、複数のホスト1A、1Bと、それら複数のホスト1A、1Bに通信可能に接続されるディスクアレイ装置A2とを有するデータアクセスシステム300に適用したものである。
【0161】
この第2の応用例では、ホスト1Aにとっての起動ボリューム11Kは、ホスト1Aに対してオンライン状態になっている1又は複数のオンラインボリューム11KAの中から自動で又は手動で選択された一つの論理ボリュームである。一方、ホスト1Aにとってのターゲットボリューム(例えばオフラインボリューム)11Tは、ホスト1Aに対してはオンライン状態になっていないが別のホスト1Bに対してオンライン状態になっている1又は複数のオンラインボリューム11KBの中からホスト1Aで指定された論理ボリュームである。
【0162】
この第2の応用例によれば、ホスト1Aは、自機に対してオンライン状態になっている起動ボリューム11Kに対してデータアクセスする方法と同様の方法で、他のホスト1Bに対してオンライン状態になっている論理ボリューム11KBにデータアクセスすることができる。別の言い方をすれば、各ホスト1A、1B毎に論理ボリュームが割当てられている場合、各ホスト1A、1Bは、自機に割当てられているオンラインボリュームに対してデータアクセスする方法と同様の方法で、他のホストに対して割当てられている論理ボリュームにデータアクセスすることができる。このため、ホスト1A、1Bはホスト種類(例えば、ホストのメーカ、ホストのOSの種類)が異なっていて、ホスト1A、1Bがそれぞれ認識している論理ボリューム11KA、11KBのデータ形式が異なっていたとしても、各ホスト1A、1Bは、自機に割当てられているオンラインボリュームに対してデータアクセスする方法と同様の方法で、他のホストに割当てられているオンラインボリューム(オフラインボリュームでも良い)にデータアクセスすることができる。
【0163】
図13は、本発明の一実施形態に係るアクセスシステムの第3の応用例を示す。
【0164】
第3の応用例は、上記の第2の応用例を変形例であり、複数のホスト1A、1B、1Cと、それら複数のホスト1A、1B、1Cに通信可能に接続されるディスクアレイ装置A3とを有するデータアクセスシステム400に適用したものである。
【0165】
この第3の応用例において、ディスクアレイ装置A3のキャッシュメモリ15の記憶領域は、各ホスト毎に仕切られている。具体的に言えば、キャッシュメモリ15には、第1のホスト1Aに対して割当てられた第1のキャッシュ領域15Aと、第2のホスト1Bに対して割当てられた第2のキャッシュ領域15Bと、第3のホスト1Cに対して割当てられた第3のキャッシュ領域15Cとがある。
【0166】
この第3の応用例では、ホスト1Aにとっての起動ボリューム11Kは、第2の応用例と同様に、ホスト1Aに対してオンライン状態になっている1又は複数のオンラインボリューム11KAの中から自動で又は手動で選択された一つの論理ボリュームである。一方、ホスト1Aにとってのターゲットボリューム(例えばオフラインボリューム)11Tは、ホスト1Aに対してはオンライン状態になっていないが別のホスト1Cに対してオンライン状態になっている1又は複数のオンラインボリューム11KCの中からホスト1Aで指定された論理ボリュームである。
【0167】
この第3の応用例では、ホスト1Aからアクセスコマンド19を受けたチャネル制御部13は、そのコマンド19に含まれているターゲット情報が、第3のホスト1Cの或る一つのオンラインボリューム11KCを指しているので、その第3のホスト1Cのキャッシュ領域15C内にキャッシュスロット21を確保し、且つ、そのオンラインボリューム11KCに対応した制御テーブルに、そのキャッシュスロット21のキャッシュポインタを記入する。
【0168】
この第3の応用例によれば、各ホスト毎にキャッシュ領域が割当てられている場合、ホスト1Aが、他のホスト1Cのオンラインボリューム11KCに対してデータアクセスするときは、ホスト1Aと通信するチャネル制御部13は、ホスト1Aに対応したキャッシュ領域15Aではなく、ホスト1Aのターゲットボリューム11Tに対してオンライン状態になっている他のホスト1Cのキャッシュ領域15Cにキャッシュスロット21を確保し、そのキャッシュスロット21を介して、ホスト1Aと、他のホスト1Cに対するオンラインボリュームとの間でデータがやり取りされる。すなわち、各ホスト毎にキャッシュ領域が割当てられている場合であっても、各ホスト1A、1B、1Cは、自機に割当てられているオンラインボリュームに対してデータアクセスする方法と同様の方法で、他のホストに対して割当てられているオンラインボリューム(オフラインボリュームでも良い)にデータアクセスすることができる。
【0169】
以上、本発明の好適な実施形態及びそれの応用例を説明したが、これらは本発明の説明のための例示であって、本発明の範囲をこの実施形態及び応用例にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。例えば、ディスクアレイ装置3は、複数台存在してもよく、その場合、ホスト1の起動ボリューム11Kは、ホスト1に接続されている第1のディスクアレイ装置内にあり、ホスト1のターゲットボリューム11Tは、そのディスクアレイ装置とは別の第2のディスクアレイ装置内に存在しても良い。この場合、ホスト1は、自機が接続されているディスクアレイ装置内の所望の起動ボリュームに対してデータアクセスするのと同様の方法で、他のディスクアレイ装置内の論理ボリュームにデータアクセスすることができる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係るアクセスシステムの全体構成を示す。
【図2】ホスト1が発行するアクセスコマンドを示す。
【図3】制御メモリ17に用意される制御テーブルを示す。
【図4】本実施形態に係るデータアクセスシステムにおいて、ホスト1が起動ボリュームとは別の論理ボリュームをターゲットとしそこからデータをリードする場合の流れを示す。
【図5】ホストOS7の動作流れを示す。
【図6】ホスト1から第1のサブコマンド19Aを受信したときのディスクアレイ装置3の動作流れを示す。
【図7】ホスト1から第2のサブコマンド19Bを受信したときのディスクアレイ装置3の動作流れを示す。
【図8】ホスト1から第2のサブコマンド19Bを受信したときのディスクアレイ装置3の動作流れを示す。
【図9】ホスト1から第2のサブコマンド19Bを受信したときのディスクアレイ装置3の動作流れを示す。
【図10】ホスト1から第2のサブコマンド19Bを受信したときのディスクアレイ装置3の動作流れを示す。
【図11】本発明の一実施形態に係るアクセスシステムの第1の応用例を示す。
【図12】本発明の一実施形態に係るアクセスシステムの第2の応用例を示す。
【図13】本発明の一実施形態に係るアクセスシステムの第3の応用例を示す。
【符号の説明】
1 ホストシステム
3 ディスクアレイ装置
5 アプリケーションプログラム(ホストAP)
7 オペレーティングシステム(ホストOS)
9 物理ディスク群
11 論理ボリューム
11K 起動ボリューム
11T ターゲットボリューム
13 チャネル制御部
15 キャッシュメモリ
17 制御メモリ
19 ディスク制御部
21 スイッチング制御部
31 制御テーブル
31K 起動ボリュームの制御テーブル
31T ターゲットボリュームの制御テーブル

Claims (15)

  1. 記憶システムと、前記記憶システムと通信可能に接続されているホスト装置とを有するデータアクセスシステムにおいて、
    前記記憶システムは、
    前記ホスト装置に対してオンライン状態であるオンライン記憶領域を含む、物理的又は論理的な複数のデータ記憶領域と、
    前記ホスト装置をして、所望の又は所定の前記オンライン記憶領域を介して、前記オンライン記憶領域とは別のデータ記憶領域であって、前記ホスト装置がアクセスしたいターゲットであるターゲット記憶領域にアクセスすることを可能にせしめるアクセス制御手段と
    を備えるデータアクセスシステム。
  2. 前記ターゲット記憶領域は、前記ホスト装置に対しオフライン状態であるオフライン記憶領域である、
    請求項1記載のデータアクセスシステム。
  3. 前記ホスト装置は、前記ターゲット記憶領域を指すターゲット情報を含んだアクセス要求を、前記所望のオンライン記憶領域に対するアクセス要求として前記記憶システムに送信するアクセス要求手段を有し、
    前記アクセス制御手段は、前記ホスト装置から前記所望のオンライン記憶領域に対するアクセス要求を受信し、そのアクセス要求が持つターゲット情報に基づいて、前記ターゲット記憶領域からデータをリードして前記ホスト装置に提供する、又は、前記ホスト装置からデータを受けて前記ターゲット記憶領域にライトする、
    請求項1記載のデータアクセスシステム。
  4. 請求項1記載のデータアクセスシステムにおいて、
    前記アクセス制御手段は、
    前記ホスト装置に対する通信インターフェースであるホスト通信手段と、
    前記複数のデータ記憶領域に対してアクセスする記憶領域通信手段と、
    前記データ記憶領域からリードされたリードデータ又は前記ホスト装置から受信したライトデータを前記ホスト通信手段と前記記憶領域通信手段との間で受け渡すためのキャッシュメモリと
    備え、
    前記キャッシュメモリには、前記リードデータ又は前記ライトデータを一時的に格納するための記憶領域であるキャッシュスロットが確保されるようになっていて、
    前記キャッシュスロットは、一つのデータ記憶領域に対して専用に設けられるようになっており、
    前記ホスト通信手段は、前記ホスト装置から前記所望のオンライン記憶領域に対するアクセス要求を受信した場合、前記所望のオンライン記憶領域に対してではなく、前記受信したアクセス要求が持つターゲット情報が指すターゲット記憶領域に専用のターゲット用キャッシュスロットを前記キャッシュメモリ上に確保し、それにより、前記ターゲット記憶領域から読み出されたリードデータ又は前記ターゲット記憶領域にライトするライトデータが前記確保したターゲット用キャッシュスロットに一時的に格納されるようにする、
    データアクセスシステム。
  5. 請求項1記載のデータアクセスシステムにおいて、
    前記アクセス制御手段は、
    前記ホスト装置に対する通信インターフェースであるホスト通信手段と、
    前記複数のデータ記憶領域に対してアクセスする記憶領域通信手段と、
    前記複数のデータ記憶領域へのアクセスを制御するためのアクセス制御テーブルと
    を備えていて、
    前記アクセス制御テーブルには、どのデータ記憶領域にアクセスするかのアクセス対象を記録することができるようになっており、
    前記ホスト通信手段は、前記ホスト装置から前記アクセス要求を受信した場合、前記アクセス制御テーブルに、前記受信したアクセス要求が持つターゲット情報が指す前記ターゲット記憶領域を前記アクセス対象として登録し、
    前記記憶領域通信手段は、前記アクセス制御テーブルに登録された前記アクセス対象に基づいて、前記ターゲット記憶領域からデータをリードしそのリードデータが前記ホスト通信手段から前記ホスト装置に送信されるようにする、又は、前記ホスト通信手段が前記ホスト装置から受信したライトデータを前記ターゲット記憶領域にライトする、
    請求項1記載のデータアクセスシステム。
  6. 請求項3記載のデータアクセスシステムにおいて、
    前記ホスト装置が送信するアクセス要求には、第1のサブアクセス要求と、第2のサブアクセス要求とが含まれており、
    前記第1のサブアクセス要求は、前記所望のオンライン記憶領域に対する要求であって、前記ターゲット情報を含んでおり、
    前記第2のサブアクセス要求も、前記所望のオンライン記憶領域に対する要求であって、データのリードとライトのどちらを実行するのかを表すリード/ライト情報を含んでおり、
    前記アクセス制御手段は、前記第2のアクセス要求の前に前記第1のサブアクセス要求を受信することにより、前記ターゲット情報に基づいてリード/ライト準備処理を行い、続いて、前記第2のサブアクセス要求を受信することにより、前記ターゲット情報が指すターゲット記憶領域に対するデータのリード又はライトを実行する、
    データアクセスシステム。
  7. 前記リード/ライト準備処理には、前記ホスト通信手段が前記キャッシュメモリ上に前記キャッシュスロットを確保することが含まれる、
    請求項4及び6記載のデータアクセスシステム。
  8. 請求項1記載のデータアクセスシステムにおいて、
    前記記憶システムが、物理的な1又は複数の記憶装置上に、プライマリの論理的なデータ記憶領域であるプライマリ記憶領域と、セコンダリの論理的なデータ記憶領域であるセコンダリ記憶領域とのペアを用意し、前記プライマリ記憶領域と前記セコンダリ記憶領域の両方にデータをライトする二重化処理を行う場合、
    前記所望のオンライン記憶領域は前記プライマリ記憶領域であり、
    前記ターゲット記憶領域は前記セコンダリ記憶領域である、
    データアクセスシステム。
  9. 第1のホスト装置と第2のホスト装置が前記記憶システムに通信可能に接続されている場合、
    前記第1のホスト装置にとっての前記ターゲット記憶領域には、前記第2のホスト装置に対してオンライン状態になっているデータ記憶領域が含まれている、請求項1記載のデータアクセスシステム。
  10. 請求項4記載のデータアクセスシステムにおいて、
    第1のホスト装置と第2のホスト装置が前記記憶システムに通信可能に接続されている場合、
    前記キャッシュメモリには、第1のホスト装置用のキャッシュ領域である第1ホスト用領域と第2のホスト装置用のキャッシュ領域である第2ホスト用領域とが用意されており、
    前記第1のホスト装置にとっての前記ターゲット記憶領域には、前記第2のホスト装置に対してオンライン状態になっている第2ホストオンライン記憶領域が含まれており、
    前記ホスト通信手段は、前記第1のホスト装置から、前記第2ホストオンライン記憶領域をターゲット記憶領域とするターゲット情報を持ったアクセス要求を受けたときは、前記キャッシュメモリ上の前記第2ホスト用領域内に、前記第2ホストオンライン記憶領域用の前記キャッシュスロットを確保する、
    データアクセスシステム。
  11. ホスト装置と通信接続可能な記憶システムにおいて、
    前記ホスト装置に対してオンライン状態であるオンライン記憶領域を含む、物理的又は論理的な複数のデータ記憶領域と、
    前記ホスト装置をして、所望の又は所定の前記オンライン記憶領域を介して、前記オンライン記憶領域とは別のデータ記憶領域であって、前記ホスト装置がアクセスしたいターゲットであるターゲット記憶領域にアクセスすることを可能にせしめるアクセス制御手段と
    を備える記憶システム。
  12. 物理的又は論理的な複数のデータ記憶領域を持つ記憶システムに対してホスト装置がデータアクセスするための方法において、
    前記複数のデータ記憶領域には、前記ホスト装置に対してオンライン状態であるオンライン記憶領域が含まれている場合、
    前記ホスト装置をして、所望の又は所定の前記オンライン記憶領域を介して、前記オンライン記憶領域とは別のデータ記憶領域であって、前記ホスト装置がアクセスしたいターゲットであるターゲット記憶領域にアクセスすることを可能にせしめるステップを有する、
    データアクセス方法。
  13. 物理的又は論理的な複数のデータ記憶領域を持つ記憶システムに対して通信可能に接続することができるホスト装置において、
    前記複数のデータ記憶領域には、前記ホスト装置に対してオンライン状態であるオンライン記憶領域が含まれている場合、
    所望の又は所定の前記オンライン記憶領域を介して、前記オンライン記憶領域とは別のデータ記憶領域であって、前記ホスト装置がアクセスしたいターゲットであるターゲット記憶領域にアクセスする手段を備えるホスト装置。
  14. 請求項13記載のホスト装置において、
    各データ記憶領域がオンライン状態であるか、或いは、前記ホスト装置に対しオフライン状態であるかを示すオンライン/オフライン識別情報と、
    前記オンライン/オフライン識別情報に基づいて各データ記憶領域がオンライン状態であるかオフライン状態であるかを識別し、オンライン状態のときには前記アクセス要求手段を実行するようにし、オフライン状態のときにはエラーを出力する制御手段と、
    前記ターゲット記憶領域がオフライン記憶領域の場合には、前記制御手段に対してそのターゲット記憶領域をオンライン状態であると識別させるべく、そのターゲット記憶領域の状態をオンライン状態とするように前記オンライン/オフライン識別情報を更新する情報更新手段と
    を備え、
    前記制御手段が、前記情報更新手段によって更新された後の前記オンライン/オフライン識別情報に基づいて動作するようになっている、
    ホスト装置。
  15. 物理的又は論理的な複数のデータ記憶領域を持つ記憶システムに対して通信可能に接続することができるホスト装置として動作するためのコンピュータプログラムにおいて、
    前記複数のデータ記憶領域には、前記ホスト装置に対してオンライン状態であるオンライン記憶領域が含まれている場合、
    所望の又は所定の前記オンライン記憶領域を介して、前記オンライン記憶領域とは別のデータ記憶領域であって、前記ホスト装置がアクセスしたいターゲットであるターゲット記憶領域にアクセスするステップをコンピュータに実行させるためのコンピュータプログラム。
JP2003173347A 2003-06-18 2003-06-18 データアクセスシステム及び方法 Expired - Fee Related JP4433372B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2003173347A JP4433372B2 (ja) 2003-06-18 2003-06-18 データアクセスシステム及び方法
US10/769,806 US7058753B2 (en) 2003-06-18 2004-02-03 System and method for accessing an offline storage unit through an online storage unit
US11/357,152 US7366870B2 (en) 2003-06-18 2006-02-21 System and method for accessing an offline storage unit through an online storage unit
US12/073,823 US8078809B2 (en) 2003-06-18 2008-03-11 System for accessing an offline storage unit through an online storage unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003173347A JP4433372B2 (ja) 2003-06-18 2003-06-18 データアクセスシステム及び方法

Publications (3)

Publication Number Publication Date
JP2005010997A true JP2005010997A (ja) 2005-01-13
JP2005010997A5 JP2005010997A5 (ja) 2006-08-03
JP4433372B2 JP4433372B2 (ja) 2010-03-17

Family

ID=33516174

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003173347A Expired - Fee Related JP4433372B2 (ja) 2003-06-18 2003-06-18 データアクセスシステム及び方法

Country Status (2)

Country Link
US (3) US7058753B2 (ja)
JP (1) JP4433372B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008071209A (ja) * 2006-09-15 2008-03-27 Fujitsu Ltd ストレージ管理プログラム、ストレージ管理装置、およびストレージ管理方法
JP2008282345A (ja) * 2007-05-14 2008-11-20 Fuji Xerox Co Ltd ストレージシステム及びストレージ装置

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4433372B2 (ja) 2003-06-18 2010-03-17 株式会社日立製作所 データアクセスシステム及び方法
JP2006092124A (ja) * 2004-09-22 2006-04-06 Fujitsu Ltd 記憶装置、記憶制御方法および記憶制御プログラム
JP2007265001A (ja) * 2006-03-28 2007-10-11 Hitachi Ltd ストレージ装置
JP4475598B2 (ja) * 2007-06-26 2010-06-09 株式会社日立製作所 ストレージシステム及びストレージシステムの制御方法
US10210543B2 (en) * 2014-04-06 2019-02-19 Google Llc Customized loyalty notifications
US10438241B2 (en) 2014-06-04 2019-10-08 Comcast Cable Communications, Llc Multiple playback local ad rotation
US10163129B1 (en) 2014-09-05 2018-12-25 Groupon, Inc. Method and apparatus for providing promotion recommendations
US11308036B2 (en) * 2019-04-11 2022-04-19 EMC IP Holding Company LLC Selection of digest hash function for different data sets
KR20220052152A (ko) * 2020-10-20 2022-04-27 에스케이하이닉스 주식회사 스토리지 장치 및 그 동작 방법

Family Cites Families (100)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03127157A (ja) 1989-10-12 1991-05-30 Hitachi Ltd 記憶装置の負荷バランス制御方式
US5197055A (en) * 1990-05-21 1993-03-23 International Business Machines Corporation Idle demount in an automated storage library
US5193184A (en) * 1990-06-18 1993-03-09 Storage Technology Corporation Deleted data file space release system for a dynamically mapped virtual data storage subsystem
JP3127157B2 (ja) 1990-07-20 2001-01-22 マツダ株式会社 車両のサスペンション装置
US5745789A (en) * 1992-01-23 1998-04-28 Hitachi, Ltd. Disc system for holding data in a form of a plurality of data blocks dispersed in a plurality of disc units connected by a common data bus
US5394532A (en) * 1992-04-15 1995-02-28 Storage Technology Corporation Disk drive array memory system having instant format capability
JPH064979A (ja) 1992-06-18 1994-01-14 Ricoh Co Ltd バッテリにより駆動されるデータ機器のディスク記憶装置の 節電力駆動制御方法
US5404485A (en) * 1993-03-08 1995-04-04 M-Systems Flash Disk Pioneers Ltd. Flash file system
US5392244A (en) * 1993-08-19 1995-02-21 Hewlett-Packard Company Memory systems with data storage redundancy management
JP2858542B2 (ja) * 1994-06-03 1999-02-17 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータ用ディスク・ドライブの電力消費を節減する方法及び装置
KR0143529B1 (ko) * 1994-06-22 1998-07-15 김광호 디스크 회전 제어 장치 및 방법
US6195710B1 (en) * 1995-06-12 2001-02-27 International Business Machines Corporation Operating system having shared personality neutral resources
US5860137A (en) * 1995-07-21 1999-01-12 Emc Corporation Dynamic load balancing
US5901327A (en) * 1996-05-28 1999-05-04 Emc Corporation Bundling of write data from channel commands in a command chain for transmission over a data link between data storage systems for remote data mirroring
JP3202600B2 (ja) * 1996-06-27 2001-08-27 日本電気株式会社 磁気ディスク装置
US5815703A (en) * 1996-06-28 1998-09-29 Microsoft Corporation Computer-based uniform data interface (UDI) method and system using an application programming interface (API)
US6401138B1 (en) * 1996-10-28 2002-06-04 Koninklijke Philips Electronics N.V. Interface for patient context sharing and application switching
US6353929B1 (en) * 1997-06-23 2002-03-05 One River Worldtrek, Inc. Cooperative system for measuring electronic media
US6314470B1 (en) * 1997-07-25 2001-11-06 Hewlett Packard Company System and method for asynchronously accessing a graphics system for graphics application evaluation and control
US6253257B1 (en) * 1997-07-31 2001-06-26 Bea Systems, Inc. Software Interface for dynamic API mapping
US6304940B1 (en) * 1997-08-14 2001-10-16 International Business Machines Corporation Shared direct access storage system for MVS and FBA processors
US6038639A (en) * 1997-09-09 2000-03-14 Storage Technology Corporation Data file storage management system for snapshot copy operations
US6125373A (en) * 1997-09-19 2000-09-26 Microsoft Corporation Identifying a driver that is an owner of an active mount point
US5963971A (en) * 1997-10-09 1999-10-05 International Business Machines Corporation Method and apparatus for handling audit requests of logical volumes in a virtual media server
US6260077B1 (en) * 1997-10-24 2001-07-10 Sun Microsystems, Inc. Method, apparatus and program product for interfacing a multi-threaded, client-based API to a single-threaded, server-based API
US6145003A (en) * 1997-12-17 2000-11-07 Microsoft Corporation Method of web crawling utilizing address mapping
US6105103A (en) * 1997-12-19 2000-08-15 Lsi Logic Corporation Method for mapping in dynamically addressed storage subsystems
US6415373B1 (en) * 1997-12-24 2002-07-02 Avid Technology, Inc. Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner
US6078747A (en) * 1998-01-05 2000-06-20 Jewitt; James W. Application program interface to physical devices
US6725331B1 (en) * 1998-01-07 2004-04-20 Emc Corporation Method and apparatus for managing the dynamic assignment resources in a data storage system
AU3109399A (en) * 1998-03-23 1999-10-18 Claude Cajolet Application program interfaces in an operating system
US6279043B1 (en) * 1998-05-01 2001-08-21 Apple Computer, Inc. Method and system for script access to API functionality
US6591356B2 (en) * 1998-07-17 2003-07-08 Roxio, Inc. Cluster buster
JP2000112666A (ja) 1998-10-01 2000-04-21 Hitachi Ltd ディスク制御装置
JP2000112822A (ja) 1998-10-01 2000-04-21 Hitachi Ltd アーカイバル機能を有するディスク制御方式
US6167459A (en) * 1998-10-07 2000-12-26 International Business Machines Corporation System for reassigning alias addresses to an input/output device
US6323881B1 (en) * 1998-10-23 2001-11-27 Nortel Networks Limited Web based GUI server and method for a telecommunications node
US6542961B1 (en) * 1998-12-22 2003-04-01 Hitachi, Ltd. Disk storage system including a switch
US6356915B1 (en) * 1999-02-22 2002-03-12 Starbase Corp. Installable file system having virtual file system drive, virtual device driver, and virtual disks
JP4325817B2 (ja) 1999-04-05 2009-09-02 株式会社日立製作所 ディスクアレイ装置
US6701368B1 (en) * 1999-04-26 2004-03-02 Cisco Technology, Inc. Providing a stream of data to a browser to update properties on a page
JP3726559B2 (ja) 1999-06-01 2005-12-14 株式会社日立製作所 ダイレクトバックアップ方法および記憶装置システム
US6671705B1 (en) * 1999-08-17 2003-12-30 Emc Corporation Remote mirroring system, device, and method
US6854034B1 (en) * 1999-08-27 2005-02-08 Hitachi, Ltd. Computer system and a method of assigning a storage device to a computer
US6549941B1 (en) * 1999-11-22 2003-04-15 Alexa Internet Software system and methods for resubmitting form data to related web sites
US7035926B1 (en) * 1999-11-30 2006-04-25 International Business Machines Corporation Real-time monitoring of web activities
US6708170B1 (en) * 1999-12-14 2004-03-16 International Business Machines Corporation Method and system for usage of non-local data within a lightweight directory access protocol directory environment
US6557079B1 (en) * 1999-12-20 2003-04-29 Emc Corporation Remote data facility prefetch
US6415368B1 (en) * 1999-12-22 2002-07-02 Xerox Corporation System and method for caching
US6839827B1 (en) * 2000-01-18 2005-01-04 International Business Machines Corporation Method, system, program, and data structures for mapping logical blocks to physical blocks
US6760750B1 (en) * 2000-03-01 2004-07-06 Polycom Israel, Ltd. System and method of monitoring video and/or audio conferencing through a rapid-update web site
WO2001071512A1 (en) * 2000-03-23 2001-09-27 Fraunhofer Center For Research In Computer Graphics, Inc. Extensible information distribution mechanism for session management
US6880086B2 (en) * 2000-05-20 2005-04-12 Ciena Corporation Signatures for facilitating hot upgrades of modular software components
US6708265B1 (en) * 2000-06-27 2004-03-16 Emc Corporation Method and apparatus for moving accesses to logical entities from one storage element to another storage element in a computer storage system
US6622177B1 (en) * 2000-07-27 2003-09-16 International Business Machines Corporation Dynamic management of addresses to an input/output (I/O) device
US20020083178A1 (en) * 2000-08-11 2002-06-27 Brothers John David West Resource distribution in network environment
US6457109B1 (en) 2000-08-18 2002-09-24 Storage Technology Corporation Method and apparatus for copying data from one storage system to another storage system
US7792923B2 (en) * 2000-10-13 2010-09-07 Zhe Khi Pak Disk system adapted to be directly attached to network
US7039871B2 (en) * 2000-10-27 2006-05-02 Swiftknowledge, Inc. Secure data access in a multidimensional data environment
US6553390B1 (en) 2000-11-14 2003-04-22 Advanced Micro Devices, Inc. Method and apparatus for simultaneous online access of volume-managed data storage
US6880058B2 (en) * 2000-12-07 2005-04-12 Hitachi, Ltd. Computer system with storage system having re-configurable logical volumes
US20020073141A1 (en) * 2000-12-12 2002-06-13 Dewhurst Sebastian John Computational fluid dynamics software
US7349912B2 (en) * 2000-12-22 2008-03-25 Oracle International Corporation Runtime modification of entries in an identity system
US6829687B2 (en) 2000-12-28 2004-12-07 International Business Machines Corporation Volume data net backup
US6857059B2 (en) * 2001-01-11 2005-02-15 Yottayotta, Inc. Storage virtualization system and methods
US7007141B2 (en) * 2001-01-30 2006-02-28 Data Domain, Inc. Archival data storage system and method
US6949466B2 (en) * 2001-09-18 2005-09-27 Oriol Inc. CMP apparatus and method for polishing multiple semiconductor wafers on a single polishing pad using multiple slurry delivery lines
US6606690B2 (en) * 2001-02-20 2003-08-12 Hewlett-Packard Development Company, L.P. System and method for accessing a storage area network as network attached storage
JP2002288108A (ja) 2001-03-28 2002-10-04 Hitachi Ltd 外部記憶装置
US20030217333A1 (en) * 2001-04-16 2003-11-20 Greg Smith System and method for rules-based web scenarios and campaigns
JP4144727B2 (ja) * 2001-07-02 2008-09-03 株式会社日立製作所 情報処理システム、記憶領域提供方法、およびデータ保持管理装置
US7069330B1 (en) * 2001-07-05 2006-06-27 Mcafee, Inc. Control of interaction between client computer applications and network resources
US7017162B2 (en) * 2001-07-10 2006-03-21 Microsoft Corporation Application program interface for network software platform
US6519678B1 (en) * 2001-09-10 2003-02-11 International Business Machines Corporation Virtualization of data storage drives of an automated data storage library
WO2003034299A2 (en) * 2001-10-12 2003-04-24 Swiss Reinsurance Company System and method for reinsurance placement
JP4087097B2 (ja) * 2001-11-12 2008-05-14 株式会社日立製作所 データベース管理システム情報を考慮したデータ再配置方法およびデータ再配置を行う計算機システム
US7007152B2 (en) * 2001-12-28 2006-02-28 Storage Technology Corporation Volume translation apparatus and method
US6985914B2 (en) * 2002-02-20 2006-01-10 Emc Corporation Cluster meta file system of file system cells managed by respective data movers of a network file server
US20030156345A1 (en) * 2002-02-20 2003-08-21 Fayeulle Serge J. Data storage device and method for spindle power control
JP3993773B2 (ja) * 2002-02-20 2007-10-17 株式会社日立製作所 ストレージサブシステム、記憶制御装置及びデータコピー方法
US7185169B2 (en) * 2002-04-26 2007-02-27 Voom Technologies, Inc. Virtual physical drives
JP2003316522A (ja) * 2002-04-26 2003-11-07 Hitachi Ltd 計算機システムおよび計算機システムの制御方法
JP4014923B2 (ja) 2002-04-30 2007-11-28 株式会社日立製作所 共有メモリ制御方法および制御システム
US20030212859A1 (en) * 2002-05-08 2003-11-13 Ellis Robert W. Arrayed data storage architecture with simultaneous command of multiple storage media
JP4100968B2 (ja) * 2002-06-06 2008-06-11 株式会社日立製作所 データマッピング管理装置
US7114037B2 (en) * 2002-07-11 2006-09-26 Oracle International Corporation Employing local data stores to maintain data during workflows
US7103727B2 (en) 2002-07-30 2006-09-05 Hitachi, Ltd. Storage system for multi-site remote copy
JP2003157152A (ja) 2002-08-22 2003-05-30 Fujitsu Ltd ファイル制御装置およびファイルシステム
US7035972B2 (en) * 2002-09-03 2006-04-25 Copan Systems, Inc. Method and apparatus for power-efficient high-capacity scalable storage system
JP4124331B2 (ja) * 2002-09-17 2008-07-23 株式会社日立製作所 Dbms向け仮想ボリューム作成・管理方法
US6857057B2 (en) * 2002-10-03 2005-02-15 Hewlett-Packard Development Company, L.P. Virtual storage systems and virtual storage system operational methods
US6957303B2 (en) * 2002-11-26 2005-10-18 Hitachi, Ltd. System and managing method for cluster-type storage
JP2004178253A (ja) 2002-11-27 2004-06-24 Hitachi Ltd 記憶デバイス制御装置および記憶デバイス制御装置の制御方法
JP2004178337A (ja) * 2002-11-28 2004-06-24 Hitachi Ltd 記憶装置システム、記憶装置、計算機およびプログラム
JP4311532B2 (ja) 2003-03-12 2009-08-12 株式会社日立製作所 記憶システム及び同システムにおけるスナップショット管理方法
JP2004302751A (ja) * 2003-03-31 2004-10-28 Hitachi Ltd 計算機システムの性能管理方法、および、記憶装置の性能を管理する計算機システム
JP4433372B2 (ja) 2003-06-18 2010-03-17 株式会社日立製作所 データアクセスシステム及び方法
US7068455B2 (en) * 2003-07-21 2006-06-27 Matsushita Electric Industrial Co., Ltd. Method and system for reducing power consumption in a rotatable media data storage device
JP2005266933A (ja) * 2004-03-16 2005-09-29 Fujitsu Ltd ストレージ管理システム及びストレージ管理方法
JP4230410B2 (ja) * 2004-05-11 2009-02-25 株式会社日立製作所 仮想ストレージの通信品質制御装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008071209A (ja) * 2006-09-15 2008-03-27 Fujitsu Ltd ストレージ管理プログラム、ストレージ管理装置、およびストレージ管理方法
JP2008282345A (ja) * 2007-05-14 2008-11-20 Fuji Xerox Co Ltd ストレージシステム及びストレージ装置

Also Published As

Publication number Publication date
US7058753B2 (en) 2006-06-06
US8078809B2 (en) 2011-12-13
US20080183946A1 (en) 2008-07-31
US20060143381A1 (en) 2006-06-29
JP4433372B2 (ja) 2010-03-17
US20040260874A1 (en) 2004-12-23
US7366870B2 (en) 2008-04-29

Similar Documents

Publication Publication Date Title
US7650446B2 (en) Storage system for back-end communications with other storage system
US7467241B2 (en) Storage control method and storage control system
US7421550B2 (en) Storage system and storage system management method
US8285824B2 (en) Storage system and data replication method that refuses one or more requests for changing the first logical configuration information until the first storage apparatus and second storage apparatus are synchronized
JP3997061B2 (ja) 記憶サブシステムおよび記憶サブシステムの制御方法
JP4738941B2 (ja) ストレージシステム及びストレージシステムの管理方法
US7469289B2 (en) Storage system having virtualized resource
JP4252301B2 (ja) 記憶システム及びそのデータバックアップ方法
US7620794B2 (en) Storage system with storage apparatuses including virtual switches
US7669022B2 (en) Computer system and data management method using a storage extent for backup processing
JP5352132B2 (ja) 計算機システム及びそのi/o構成変更方法
JP4606711B2 (ja) 仮想化制御装置およびデータ移行制御方法
JP2004192105A (ja) 記憶装置の接続装置およびそれを含むコンピュータシステム
US8078809B2 (en) System for accessing an offline storage unit through an online storage unit
JP2007140601A (ja) 記憶制御システム
WO2001029647A1 (fr) Systeme de reseau de zone a memoire
JP4783076B2 (ja) ディスクアレイ装置及びその制御方法
JP2005190106A (ja) 論理ボリュームを管理する記憶制御サブシステム
US8255676B2 (en) Non-disruptive methods for updating a controller of a storage system
JP5409799B2 (ja) リモートコピーシステム及びリモートコピー制御方法
JP2008269469A (ja) ストレージシステム及びその管理方法
JP2009026091A (ja) 接続管理プログラム、接続管理方法および情報処理装置
JP4509089B2 (ja) 仮想化制御装置及びデータ移行制御方法
JP2010282324A (ja) ストレージ制御装置、ストレージシステムおよびストレージ制御方法
JP4874515B2 (ja) 記憶装置システム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060615

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060615

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20060615

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090519

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090609

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090807

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090908

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091106

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091217

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130108

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140108

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees