JP4080227B2 - データ検証方法およびディスクアレイ装置 - Google Patents

データ検証方法およびディスクアレイ装置 Download PDF

Info

Publication number
JP4080227B2
JP4080227B2 JP2002092685A JP2002092685A JP4080227B2 JP 4080227 B2 JP4080227 B2 JP 4080227B2 JP 2002092685 A JP2002092685 A JP 2002092685A JP 2002092685 A JP2002092685 A JP 2002092685A JP 4080227 B2 JP4080227 B2 JP 4080227B2
Authority
JP
Japan
Prior art keywords
data
storage
host computer
area
application program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002092685A
Other languages
English (en)
Other versions
JP2003288270A5 (ja
JP2003288270A (ja
Inventor
和伸 大橋
孝夫 佐藤
喜一郎 占部
俊夫 中野
静生 横畑
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2002092685A priority Critical patent/JP4080227B2/ja
Priority to EP03003689A priority patent/EP1349059B1/en
Priority to DE60333322T priority patent/DE60333322D1/de
Priority to DE60334037T priority patent/DE60334037D1/de
Priority to EP07002280A priority patent/EP1785867B1/en
Priority to US10/377,898 priority patent/US6842793B2/en
Priority to CN03107743.9A priority patent/CN1241098C/zh
Publication of JP2003288270A publication Critical patent/JP2003288270A/ja
Priority to US11/025,471 priority patent/US20050122788A1/en
Publication of JP2003288270A5 publication Critical patent/JP2003288270A5/ja
Application granted granted Critical
Publication of JP4080227B2 publication Critical patent/JP4080227B2/ja
Priority to US12/173,650 priority patent/US7725611B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • 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/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • 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/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • 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
    • G06F2003/0697Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers device management, e.g. handlers, drivers, I/O schedulers
    • 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

Description

【0001】
【発明の属する技術分野】
この発明は、データ検証方法およびディスクアレイ装置に関する。
【0002】
【従来の技術】
ストレージの集約的運用などを目的として、ホストコンピュータとディスクアレイ装置などの記憶制御装置とを、SAN(Storage Area Network)などのネットワークで結んだ形態のストレージシステムが注目されており、IDC(Internet Data Center)などの多くの場所でこのような形態での運用が行われている。また、最近ではネットワークにLAN(Local Area Network)を利用し、ファイルシステムを搭載したNAS(Network Attached Storage)と呼ばれる記憶制御装置を用いるものも注目されている。
【0003】
このような形態で運用されるストレージシステムにおいて、ホストコンピュータ上で稼働する、例えば、データベースソフトウエアなどのアプリケーションプログラムなどは、データが規定の仕様を具備していること(以下、「適合性」と呼ぶ)を要求するものが少なくない。そこで、アプリケーションプログラムの中には、処理の対象となるデータの適合性を検証するアルゴリズムを備えるものがある。
【0004】
【発明が解決しようとする課題】
ところで、アプリケーションプログラムが前記のようなアルゴリズムを備えていたとしても、ホストコンピュータと記憶制御装置とを結ぶ、例えば、前述したSANなどの通信路や、記憶制御装置内部の処理によりデータの適合性が失われてしまうことがある。また、記憶制御装置は、複数のホストコンピュータに共用されていることも多く、この場合、他のホストコンピュータ上で動作するアプリケーションプログラムが誤って他のホストコンピュータ上で動作するアプリケーションプログラムのデータにアクセスしてしまい、データの適合性が損なわれてしまうということもある。
【0005】
ここで、例えば、記憶制御装置への書き込み対象のデータについての適合性が、このようにアプリケーションプログラムが関知しないところで損なわれてしまったような場合には、記憶制御装置側では適合性が失われているかどうかを認知することができず、そのデータはそのまま記憶制御装置側に記憶されてしまうことになる。そして、この場合、アプリケーションプログラムはそのデータを読み込んだ際に初めて適合性が失われていることを事後的に認知することになり、そのデータの書き込み時から読み出し時までのタイムラグが長い場合には、修復が困難となることもある。
【0006】
また、記憶制御装置側でバックアップ運用が行われている場合でも、バックアップされているデータが、既に適合性が損なわれているデータであった場合には、データを修復することもできない。さらに、このようにアプリケーションプログラムが関知しない範囲でデータの適合性が失われてしまった場合には、事後的な原因追求が難しいことが多く、障害復旧等の作業を困難にさせる要因ともなる。
【0007】
そこで、記憶制御装置側でデータ検証を行うようにすることが考えられるが、一般にストレージシステムにおいては、アプリケーションプログラムが記憶制御装置に記憶するデータには、ホストコンピュータ上で稼働するオペレーティングシステム(以下、「OS」と記載する)が付加する情報やホストコンピュータ上で論理的に編成されたボリュームに関する情報などが付帯されている。また、アプリケーションプログラムが記憶制御装置に記憶するデータは、OSやボリューム管理プログラムの都合などにより、ホストコンピュータ上でアプリケーションプログラムが参照する配置とは異なった配置で記憶されているが、記憶制御装置側では、前述のような情報や配置を知ることができない。つまり、現状のストレージシステムの仕組みでは、アプリケーションプログラムが行っているデータ検証を、記憶制御装置側では行うことができず、実施する場合には記憶制御装置は必要な情報を、アプリケーションプログラム及びOSやボリューム管理プログラムから取得する仕組みが必要である。
【0008】
ところで、例えば、特開平8−263223号公報には、アプリケーションプログラムから磁気ディスクに対するデータの読み出し書き込みの際に行うRAS(Reliability Availability Serviceability)、すなわちデータの信頼性向上のためのデータチェックを容易に行えるようにする仕組みとして、アプリケーションプログラムからのI/Oを契機としてCPUがRASデータを作成し、これを磁気ディスクに書き込もうとするデータに付帯させ、これにより磁気ディスク入出力チャネルおよび磁気ディスクコントローラがデータチェックを行うようにした仕組みが開示されている。
【0009】
しかしながら、この公報の仕組みでは、前記のRASデータはあくまでCPUによって独自に作成されてデータに付加されるものであるし、また、RASデータはアプリケーションプログラムが要求するデータの適合性に関するものでは無い。また、前記の公報の仕組みは、このような情報や配置を認知するものでもなく、ホストコンピュータ上で稼働する個々のアプリケーションプログラムが要求する前記の適合性を検証するものでも無い。
【0010】
この発明は、以上の観点からなされたもので、ストレージシステムにおいて、データの適合性を、より確実に検証し確保することができる、データ検証方法およびディスクアレイ装置を提供することを目的とする。
【0011】
【課題を解決するための手段】
この目的を達成する、本発明の主たる発明は、ホストコンピュータと、このホストコンピュータと通信手段を介して接続し、前記ホストコンピュータから送信された入出力要求を受信してこの要求に対応するデータ入出力処理を記憶手段に対して実行する記憶制御装置と、を含んで構成されるストレージシステムにおけるデータ検証方法であって、
ホストコンピュータが、記憶制御装置に記憶するデータを規定の仕様に従って編成し管理するアプリケーションプログラムを実行する工程と、
ホストコンピュータが、前記アプリケーションプログラムが使用する前記記憶手段の記憶領域の範囲を特定する領域管理データを記憶制御装置に送信する工程と、
記憶制御装置が、前記領域管理データを受信する工程と、
記憶制御装置が、前記アプリケーションプログラムの処理に起因してホストコンピュータから送信されるデータ入出力要求を受信して、そのデータ入出力要求の処理対象となるデータのうち前記領域指定データに基づいて特定される前記アプリケーションプログラムが使用する記憶領域に対して入出力されるデータについて、そのデータが前記規定の仕様に従って編成されているかどうかを検証する工程と、
を有することを特徴とする。
【0012】
【発明の実施の形態】
===開示の概要===
以下の開示により、少なくとも次のことが明らかにされる。
ホストコンピュータと、このホストコンピュータと通信手段を介して接続し、前記ホストコンピュータから送信された入出力要求を受信してこの要求に対応するデータ入出力処理を記憶手段に対して実行する記憶制御装置と、を含んで構成されるストレージシステムにおけるデータ検証方法であって、ホストコンピュータが、記憶制御装置に記憶するデータを規定の仕様に従って編成し管理するアプリケーションプログラムを実行する工程と、ホストコンピュータが、前記アプリケーションプログラムが使用する前記記憶手段の記憶領域の範囲を特定する領域管理データを記憶制御装置に送信する工程と、記憶制御装置が、前記領域管理データを受信する工程と、記憶制御装置が、前記アプリケーションプログラムの処理に起因してホストコンピュータから送信されるデータ入出力要求を受信して、そのデータ入出力要求の処理対象となるデータのうち前記領域指定データに基づいて特定される前記アプリケーションプログラムが使用する記憶領域に対して入出力されるデータについて、そのデータが前記規定の仕様に従って編成されているかどうかを検証する工程と、を有することを特徴とするストレージシステムにおけるデータ検証方法。
【0013】
ここで前記ホストコンピュータから送信された入出力要求とは、例えば、記憶制御装置に含まれ、もしくは、外部接続するディスクドライブなどの前記記憶手段に対する、データ書き込み要求やデータ読み出し要求である。また、前記領域管理データとは、具体的には、後述する領域管理テーブルに登録されているデータである。このデータ検証方法では、アプリケーションプログラムが取り扱うデータが規定の仕様に従って編成されているかどうかを、記憶制御装置においても検証する。これにより、データの適合性を、より確実に検証し確保することができる。
【0014】
また、前記データ検証方法は、前記記憶制御装置が、前記ホストコンピュータで稼働する複数の前記アプリケーションプログラムのそれぞれについての前記検証を行う複数の前記アルゴリズムを記憶する工程と、前記ホストコンピュータから送信されてくる前記領域管理データに基づいて前記各アプリケーションプログラムのそれぞれが使用する記憶領域を特定する工程と、前記各アプリケーションプログラムの処理に起因してホストコンピュータから送信されるデータ入出力要求を受信して、前記領域指定データに基づいて前記データ入出力要求に関わる前記アプリケーションプログラムを特定する工程と、前記データ入出力要求の処理対象となるデータのうち前記領域指定データで特定される記憶領域に入出力されるデータについて、そのデータが前記規定の仕様に従って編成されているかどうかを、前記特定したアプリケーションプログラムに対応する前記アルゴリズムにより検証する工程と、を有していてもよい。
【0015】
これにより、複数のアプリケーションプログラムがホストコンピュータ上で稼働する場合にも、それぞれのアプリケーションプログラムが取り扱うデータについて記憶制御装置側でデータ検証を行うことができる。
【0016】
また、前記データ検証方法は、前記ホストコンピュータが、前記アルゴリズムを前記ホストコンピュータから前記記憶制御装置に送信する工程と、前記記憶制御装置が前記アルゴリズムを受信して記憶する工程と、を有していてもよい。これによりデータ検証用のアルゴリズムの記憶制御装置への登録を簡便に行うことができる。
【0017】
また、前記データ検証方法は、前記ホストコンピュータが前記範囲が変更された場合にその変更内容が反映された前記領域管理データを前記記憶制御装置に送信する工程を有していてもよい。これにより記憶制御装置側においても、アプリケーションプログラムが使用する前記記憶手段の記憶領域の範囲についての最新の情報を把握することができる。
【0018】
また、前記アプリケーションプログラムが使用する前記記憶手段の記憶領域は、例えば、前記ホストコンピュータ上で稼働する前記アプリケーションプログラムとは異なるソフトウエアにより付加される制御情報の使用領域を除いた領域であってもよい。
【0019】
また、前記領域管理データには、前記記憶手段の前記記憶領域を用いて論理的に編成されたボリュームを単位として前記アプリケーションプログラムに提供される前記記憶領域の範囲を指定するデータが含まれていてもよい。
【0020】
また、前記ボリュームは、前記記憶手段の前記記憶領域をRAID方式で運用することにより編成されていてもよい。
【0021】
また、前記記憶手段は、前記記憶制御装置に一体に設けられていてもよい。また、前記検証の結果記載したデータを前記ホストコンピュータに送信するようにしてもよい。また、例えば、前記記憶領域は、ディスクドライブなどの物理的な記憶デバイスにより提供される記憶領域上に編成される論理的な記憶デバイスとして提供される。また、規定の仕様は例えば、前記データの規定位置に規定のデータが挿入されていることである。また、前記ホストコンピュータと前記記憶制御装置とを通信可能に接続する手段は、例えば、SCSI規格に準拠した通信方式によるも、SAN、LANなどである。
【0022】
また、前記ホストコンピュータによる前記領域管理データの前記記憶制御装置への前記送信は、前記通信手段を提供する通信路とは別の通信路を介して行われる構成としてもよい。これにより、例えば、通信負荷の分散が図られる。
【0023】
===実施例===
図1に本発明の一実施例として説明するストレージシステムの構成を示す。 この図の記憶制御装置10は、例えばディスクアレイ装置であり、ホストコンピュータ20は、記憶制御装置10を記憶資源として利用する汎用機やパソコンなどである。記憶制御装置10とホストコンピュータ20とは、通信手段40を介して接続する。通信手段40は、例えば、SCSI規格のインタフェースに準拠した通信線やLAN(Local Area Network)、もしくは、SAN(Storage Area Network)である。
【0024】
記憶制御装置10は、当該装置10内の各部の制御や各種処理プログラムの実行制御に用いられるCPU11、各種の情報記憶用として利用される制御メモリ12、記憶手段であるディスクドライブなどの物理デバイス(不図示)、ホストコンピュータ20と接続するためのホストインタフェース13、ホストコンピュータ20から受信したデータ入出力要求に従い、物理デバイスに対するデータ入出力を制御するデータコントローラ14、キャッシュメモリ15、キャッシュメモリ15に登録するデータを一時的に記憶しておくためのデータバッファ16、データコントローラ14からの命令に応じて物理デバイスを制御するディスクインタフェース17などを備える。なお、ホストインタフェース13は、一以上の接続ポート131を備える。また、ホストコンピュータ20側の外部インタフェース26は、例えば、チャネルインタフェースとしてのホストベースアダプタである。
【0025】
記憶制御装置10は、物理デバイスが提供する記憶領域上に、一以上の論理デバイス18を編成している。編成した論理デバイスのそれぞれには固有の論理デバイスIDが付与され、ホストコンピュータ20から記憶制御装置10の記憶領域の指定を、この論理デバイスIDを用いてすることができる。なお、この実施例では、記憶制御装置10にそれぞれA,A',B,C,Xの論理デバイスIDで指定される5つ論理デバイス18が編成されているものとする。
【0026】
ホストコンピュータ20では、OS21が稼働する。そして、このOS21上で、論理ボリューム管理プログラム22、アプリケーションプログラム23、領域管理プログラム24が稼働する。
【0027】
このうち論理ボリューム管理プログラム22は、記憶制御装置10の論理デバイス18の記憶領域上に一以上の論理ボリューム27を編成し、この論理ボリューム27で指定される記憶領域をアプリケーションプログラム23に提供している。論理ボリューム管理プログラム22の具体例としては、記憶制御装置10の論理デバイスが提供する記憶領域をソフトウエア的にRAID(Redundant Array of Inexpensive Disks)方式で運用し、これにより編成される論理ボリューム27をアプリケーションプログラム23に提供するいわゆるソフトレイドプログラムがあげられる。以下では、論理ボリューム管理プログラム22はソフトレイドプログラムであるとして説明する。
【0028】
アプリケーションプログラム23は、例えば、データベースソフトウエアであり、記憶制御装置10に記憶するデータを規定の仕様に従って編成し管理する仕組み、すなわち、データの適合性を検証する仕組みを備えたプログラムである。またアプリケーションプログラム23は、処理対象となるデータが規定の仕様に従って編成されているか、すなわち、データが適合性を具備しているかどうかを検証するアルゴリズムを備える。
【0029】
領域管理プログラム24は、ホストコンピュータ20のメモリ28上に記憶される後述の領域管理テーブル25を管理する。また、後述するように、領域管理プログラム24は、領域管理テーブル25を、適宜なタイミングで記憶制御装置10に送信する機能を備える。
【0030】
===領域管理テーブル===
図2は領域管理テーブル25の一例である。領域管理テーブル25は、論理ボリューム管理プログラム22が編成する論理ボリューム27ごとに生成される。領域管理プログラム24は、例えば、論理ボリューム管理プログラム22が論理デバイス18と論理ボリューム27との対応を変更した場合などにおいて、論理ボリューム管理プログラム22やアプリケーションプログラム23などから取得した情報に基づいて、適宜に領域管理テーブル25を更新する。
【0031】
図2において、論理ボリュームID210は、各論理ボリューム27に固有に割り当てられる識別子であり、その領域管理テーブル25がどの論理ボリューム27についてのものであるかを示す。OS制御情報オフセット211およびOS制御情報オフセットサイズ212は、論理デバイス18や論理ボリューム27の管理のためにOS21が付与するOS制御情報の論理デバイス18上の格納位置を示す。OS制御情報の具体例としては、ファイル制御情報などがあげられる。
【0032】
論理ボリューム制御情報オフセット213および論理ボリューム制御情報オフセットサイズ214は、論理ボリューム27の管理のために論理ボリューム管理プログラム22が生成する論理ボリューム制御情報の論理デバイス18上の格納位置を示す。論理ボリューム制御情報とは、論理ボリューム管理プログラム22が論理デバイス18の管理に用いる情報であり、その具体例としては、論理ボリューム管理プログラム22が論理デバイス18をRAID方式で運用している場合に必要となるストライプ構成情報などがあげられる。
【0033】
論理デバイスID215は、その論理ボリューム27を構成している論理デバイス18のIDである。アプリケーションID216は、その論理ボリューム27を使用しているアプリケーションプログラム23のIDである。アプリケーションIDは、例えば、ユーザが、ホストコンピュータ20のユーザインタフェースを操作して登録する。
【0034】
アプリケーション取扱データサイズ217は、この論理ボリューム27を使用するアプリケーションプログラム23が、論理ボリューム27に対してデータ入出力を行う際のデータサイズである。ストライプサイズ218は、論理ボリューム管理プログラム22が論理デバイス18にRAID方式でデータをストライピングして書き込む際のデータサイズである。また、全データサイズ219は、その論理ボリューム27の総記憶容量を示す。
【0035】
===領域管理テーブルの送信===
領域管理テーブル25は、領域管理プログラム24により適宜なタイミングでホストコンピュータ20から記憶制御装置10に送信される。ここで適宜なタイミングとは、例えば、ホストコンピュータ20が起動された時や、領域管理テーブル25が更新された時、領域管理プログラム24のスケジュール機能に設定された時刻などである。
【0036】
記憶制御装置10は、ホストコンピュータ20から送られてくる領域管理テーブル25を受信すると、これを論理デバイス18に記憶する。なお、この実施例では、領域管理テーブル25は、論理デバイスIDが「X」の論理デバイス18に記憶されるものとするが、制御メモリ12などに記憶してもよい。
【0037】
図3は、ホストコンピュータ20から記憶制御装置10に領域管理テーブル25を送信する際に行われる処理を説明するフローチャートである。この処理には、大別して、領域管理プログラム24が最新ポジションの領域管理テーブル25を取得する処理と、取得した領域管理テーブル25を送信する処理とが含まれる。
【0038】
領域管理プログラム24は、まず、処理中に使用するフラグ等の内容を初期化し(S310)、最新のOS制御情報オフセット211およびOS制御情報サイズ212をOS21に要求して取得する(S311)。つぎに、ホストコンピュータ20のメモリ28上に領域管理テーブル25が既に存在しているかどうかを調べる(S312)。
【0039】
ここで領域管理テーブル25がメモリ上に存在しない場合には、メモリ28上に領域管理テーブル25を生成する(S313)。一方、既に領域管理テーブル25がメモリ28上に存在する場合には、領域管理テーブル25のOS制御情報オフセット211およびOS制御情報サイズ212と、取得したOS制御情報オフセット211および前記OS制御情報サイズ212とを比較し(S314)、領域管理テーブル25のそれぞれの内容と異なっていれば、前記取得した内容に更新する(S315)。そして、更新を行った場合には、領域管理プログラム24は更新フラグをオンにする(S316)。
【0040】
つぎに、領域管理プログラム24は、論理ボリューム制御情報オフセット213および論理ボリューム制御情報サイズ214についてもOS21から情報を取得してOS制御情報の場合と同様の比較処理を行い、メモリ上の領域管理テーブル25の内容と比較を行い(S317,S318)、その内容が異なっていればその内容に領域管理テーブル25を更新し(S319)、更新を行った場合は更新フラグをオンにする(S320)。
【0041】
以上により、メモリ28上に最新の状態の領域管理テーブル25が生成される。つぎに領域管理プログラム24は、更新フラグを調べ(S321)、オンである場合には、メモリ28に記憶している領域管理テーブル25の内容を記憶制御装置10に送信する(S322)。記憶制御装置10は、領域管理テーブル25を受信して、これを論理デバイスXに記憶する。
【0042】
以上に説明した、ホストコンピュータ20から記憶制御装置10への領域管理テーブル25の送信に関する処理は、OS21の起動時などにおいて、OS制御情報または論理ボリューム制御情報に変更があった場合や、論理ボリューム27を構成する論理デバイス18の増減されるなど論理ボリューム27の構成要素が変更された場合に適宜に実行される。これにより記憶制御装置10には、常に最新の状態の領域管理テーブル25がセットアップされることになる。
【0043】
===論理デバイス管理テーブル===
記憶制御装置10の制御メモリ12には、論理デバイス管理テーブル121が記憶されている。図4はその一例である。このテーブルには、論理デバイスID411に対応づけて、これに一意に対応するLUN(Logical Unit Number)412と、各論理デバイス18の記憶容量413、各論理デバイス18が接続するホストインタフェース13のポート131のIDであるポートID414などが管理されている。論理デバイス管理テーブル121の内容は、例えば、記憶制御装置10に接続する管理端末(不図示)に対するオペレータ操作により更新されたり、記憶制御装置10が記憶している情報もしくはホストコンピュータ20から送信されてくる情報などによる自動更新などにより最新の状態に維持される。
【0044】
===データの状態===
つぎに、ホストコンピュータ20上で稼働するアプリケーションプログラム23から出力されたデータが、記憶制御装置10の論理デバイス18にどのようにして記憶されるかについて、データの構成に着目して説明する。
【0045】
図5(a)は、アプリケーションプログラム23が論理ボリューム27にデータを入出力する際のデータ単位を示している。データ単位51のデータサイズは、図2におけるアプリケーションプログラム取扱データサイズに一致する。
図5(b)は、論理ボリューム管理プログラム22が、記憶制御装置10に対して入出力に際し、図5(a)のデータ単位51をどのようにして分割するかを示しており、この図の例では、データ単位51は、データ52、データ53、データ54に3分割されている。
図5(c)は、データ52,データ53、データ54が、それぞれ論理デバイス18上に記憶されている様子を示している。この図では、アプリケーションプログラム23が指定する論理ボリュームID215が「001h」である論理ボリューム27が、論理デバイスID215が「A」および「A'」の論理デバイス18により編成されている場合である。分割されたデータのうち、データ52,53は、論理デバイスID215が「A」の論理デバイス18に、データ54は、論理デバイスID215が「A'」の論理デバイス18にそれぞれ記憶されている。また、これら各論理デバイス18の固定領域には、前述したOS制御情報55,56や、論理ボリューム制御情報57,58が記憶されている。
【0046】
一方、図6(a)は、図5(a)のデータ単位をSCSI規格におけるデータフォーマットとして示したものであり、図6(b)は、図5(b)に示すデータについてのSCSI規格レベルでのデータフォーマットを示したものである。
【0047】
図6(b)に示すように、コマンドフレームのオペコード欄611〜613には、この処理要求の種類を示すコマンドがセットされる。この例では書き込みコマンドがセットされる。LUN621〜623の欄には、処理対象となる論理デバイスID215もしくはLUN(Logical Unit Number)がセットされる。この例では、LUN621,622には「0001h」が、LUN623には「0002h」がそれぞれセットされている。論理アドレス631〜633には、各データ52〜54が書き込まれる論理デバイス18上の格納開始位置に対応するアドレスがセットされる。データ長641〜643には、各コマンドフレームに付帯する書き込みデータ52〜54のそれぞれに対応するデータ長がセットされる。
【0048】
なお、以上はアプリケーションプログラム23からのデータ書き込み要求が出力された場合であるが、データ読み出し要求が出力された場合には、前述のオペコード欄611〜613に読み出しコマンドがセットされる。また論理アドレス631〜633には、論理デバイス18上のデータ読み出し開始位置を指定するアドレスがセットされ、データ長に読み出し対象となるデータのサイズがセットされることになる。
【0049】
===データ検証処理===
つぎに、ホストコンピュータ20から記憶制御装置10にSCSIデータが送信された場合に記憶制御装置10において行われる、データ検証処理について説明する。
【0050】
データ検証処理は、記憶制御装置10が制御メモリ12に記憶している、データ検証用のプログラム122(アルゴリズム)を実行することで行われる。データ検証用プログラムは、ホストコンピュータ20で動作するアプリケーションプログラム23ごとに用意される。データ検証用プログラム122は、処理対象となるデータについての処理の実行に際し、事前に処理対象となるデータが規定の仕様を具備しているかどうかを検証する、ホストコンピュータ20で稼働するアプリケーションプログラム23が備える前述のアルゴリズムと同等以上の処理を実行する機能を備える。
【0051】
データ検証用プログラム122は、例えば、ホストコンピュータ20から送信されたり、記憶制御装置10の管理端末(不図示)に対するオペレータ操作などにより、制御メモリ12に記憶される。記憶される各データ検証用プログラム122には、それぞれ対応するアプリケーションプログラム23のIDが付与される。
【0052】
なお、データ検証処理は、処理対象となるデータが、アプリケーションプログラム23が要求する規定の仕様を満たしているかどうかを検証するものであるから、論理デバイス18の記憶領域に記憶されるデータのうち、アプリケーションプログラム23から入出力されるデータが格納される領域のみを対象として行う
【0053】
つぎに、ホストコンピュータ20上で稼働するアプリケーションプログラム23から図6(a)に示すデータ51を書き込みデータとするデータ書き込み要求が送信され、このデータ書き込み要求に対応する図6(b)に示す書き込みコマンドの一つが記憶制御装置10に送信された場合を例として、図7のフローチャートを用い、記憶制御装置10において行われるデータ検証処理について説明する。なお、この処理は、例えば、記憶制御装置10の制御メモリ12などに記憶されているマイクロプログラムなどにより実行される。
【0054】
記憶制御装置10は、ホストコンピュータ20から送られてくる書き込みコマンドのコマンドフレームを受信すると(S711)、そのコマンドフレームをデータバッファ16に記憶する(S712)。つぎに、記憶制御装置10は、論理デバイスIDが「X」である論理デバイス18に記憶している領域管理テーブル25を参照し、受信した前記データ書き込み要求にセットされている論理デバイスIDのOS制御情報オフセット211およびOS制御情報サイズ212、論理ボリューム制御情報オフセット213および論理ボリューム制御情報サイズ214を取得する(S713)。また、記憶制御装置10は、論理デバイス管理テーブル121を参照し、前記論理デバイスIDに対応する論理デバイス18の記憶容量413を取得する(S714)。
【0055】
つぎに記憶制御装置10は、前記論理デバイスIDに対応する論理デバイス18の記憶領域のうち、前記OS制御情報オフセット211およびOS制御情報サイズ212、および論理ボリューム制御情報オフセット213、論理ボリューム制御情報サイズ214で指定される領域を除いた領域を指定するアドレス(例えば、一以上のスタートアドレスとエンドアドレス)を記憶する(S715)。なお、以下、このアドレスで指定される記憶領域を検証対象候補領域と称することとする。
【0056】
つぎに、記憶制御装置10は、前記検証対象候補領域を指定するアドレスと、受信したコマンドフレームの論理アドレス631〜633の欄にセットされているアドレスとを比較する(S716)。ここでこのアドレスが前記検証対象候補領域に含まれない場合には、データ検証処理を終了する(S717)。一方、前記アドレスが検証対象候補領域内に含まれる場合には、記憶制御装置10は、さらに、このアドレスと前記コマンドフレームのデータ長641〜643にセットされているデータ長とにより定まる、当該書き込みデータの書き込み先として指定される記憶領域の全体が、前記検証対象候補領域に含まるかどうかを調べる(S718)。ここで含まれる場合には、前記書き込み先として指定される記憶領域の全体をデータ検証の対象領域に設定し、この領域を指定するアドレス(例えば、この領域を指定するスタートアドレスとエンドアドレス)を記憶する(S719)。
【0057】
一方、検証対象候補領域内に収まらない場合には、前記論理アドレスから前記検証対象候補の領域のエンドアドレスまでの領域をデータ検証の対象領域に設定し、この領域を指定するアドレス(例えば、この領域を指定するスタートアドレスとエンドアドレス)を記憶する(S720)。
【0058】
以上のようにしてデータ検証の対象領域が設定されると、つぎに記憶制御装置10は、書き込み対象となる論理デバイス18に対応づけられているアプリケーションIDを調べる。ここで記憶制御装置10は、アプリケーションIDと、各アプリケーションプログラム23についてのデータ検証用プログラム122との対応付けを記憶しており、調べた前記アプリケーション IDに対応するデータ検証用プログラム122を起動する(S721)。
【0059】
記憶制御装置10は、データ検証用プログラム122の起動に伴い、データ検証用プログラム122に前記データ検証の対象領域を指定するアドレスを引き渡し、データ検証用プログラム122は、引き渡された前記アドレスで指定される論理デバイス18上の記憶領域を対象として、データ検証処理を開始する(S722)。
【0060】
ここでデータ検証用プログラムによるデータ検証処理において異常が検知された場合(S723)には、記憶制御装置10は、その旨を記載したメッセージ(例えば、イリーガルリクエストやライトエラー等が記載されたもの)をホストコンピュータ20に送信する(S724)。一方、異常が検知されない場合には、記憶制御装置10は、データバッファ16に記憶されているコマンドフレームの書き込み対象データをキャッシュメモリ15に送信し、このデータを論理デバイス18に書き込む(S725)。
【0061】
ところで、以上の説明は、記憶制御装置10が、ホストコンピュータ20からデータ書き込み要求を受信した場合であったが、データ読み出し要求を受信した場合には、コマンドフレームのデータを検証する代わりに、読み出し対象のデータを記憶手段から読み出してデータバッファ16に記憶し、書き込みコマンドの場合と同様の処理にてデータ検証を行う。ここでこのようにデータ読み出し要求が送られてきた場合にもデータ検証処理を行って、これにより異常が検知された場合にはその旨のメッセージがホストコンピュータ20に通知されるようにすることで、例えば、読み出されたデータがアプリケーションプログラム23に引き渡される前に、データの適合性が確保されていないことをアプリケーションプログラム23に通知することができ、アプリケーションプログラム23の誤動作や、データ喪失、破壊などを防ぐことができる。
【0062】
以上のように、本発明によれば、データ検証を行うために必要な情報を記憶制御装置10側でも取得する。従って、アプリケーションプログラム23が行っているデータ検証処理を、記憶制御装置10側でも実施することが可能となる。そして、記憶制御装置10側でもデータ検証処理を実行することで、アプリケーションプログラム23が要求するデータの適合性を満たすよう、より確実にデータが管理されることとなる。
【0063】
===その他===
ところで、以上の説明において、論理ボリューム管理プログラム22は必ずしも必須の構成要素では無い。
【0064】
領域管理テーブル25は、ホストコンピュータ20から記憶制御装置10に常にその全ての内容を送信する必要は無く、変更差分データのみを送信するようにしていもよい。
【0065】
また、領域管理プログラム24が初めて実行される際は、ホストコンピュータ20上の領域管理テーブル25は何も書き込まれていないが、この場合には、例えば、領域管理テーブ25ルに対する変更があったものとして領域管理テーブル25を記憶制御装置10に送信するようにする。
【0066】
また、ホストコンピュータ20と記憶制御装置10とを、例えば、LANなどで接続し、領域管理テーブル25の送信をLAN経由で行うことで、ホストコンピュータ20から記憶制御装置10に高速に送信できる。
【0067】
【発明の効果】
本発明によれば、ストレージシステムにおいて、データの適合性を、より確実に検証し確保することができる、データ検証方法およびホストコンピュータおよび記憶制御装置を提供することができる。
【図面の簡単な説明】
【図1】本発明の一実施例として説明するストレージシステムの構成を示す図である。
【図2】本発明の一実施例として説明する領域管理テーブルを示す図である。
【図3】本発明の一実施例による、ホストコンピュータから記憶制御装置に領域管理テーブルを送信する際に行われる処理を説明するフローチャートを示す図である。
【図4】本発明の一実施例として説明する論理デバイス管理テーブルを示す図である。
【図5】(a)は、本発明の一実施例による、アプリケーションプログラムが論理ボリュームにデータを入出力する際のデータ単位を示す図であり、(b)は、論理ボリューム管理プログラムが、記憶制御装置に対して入出力に際し(a)のデータ単位をどのようにして分割するかを示す図であり、(c)は、分割されたデータが論理デバイス上に記憶されている様子を示す図である。
【図6】(a)は、図5(a)のデータ単位をSCSI規格におけるデータフォーマットとして示した図であり、(b)は図5(b)のデータをSCSI規格におけるデータフォーマットとして示した図である。
【図7】本発明の一実施例による、記憶制御装置におけるデータ検証処理を説明するフローチャートである。
【符号の説明】
10 記憶制御装置
12 制御メモリ
15 キャッシュメモリ
16 データバッファ
18 論理デバイス
20 ホストコンピュータ
23 アプリケーションプログラム
24 領域管理プログラム
25 領域管理テーブル
27 論理ボリューム
40 通信手段
121 論理デバイス管理テーブル
122 データ検証用プログラム
211 OS制御情報オフセット
212 OS制御情報オフセットサイズ
213 論理ボリューム制御情報オフセット
214 論理ボリューム制御情報オフセットサイズ

Claims (13)

  1. ホストコンピュータと、このホストコンピュータと通信手段を介して接続し、前記ホストコンピュータから送信された入出力要求を受信してこの要求に対応するデータ入出力処理を記憶手段に対して実行する記憶制御装置と、を含んで構成されるストレージシステムにおけるデータ検証方法であって、
    ホストコンピュータが、記憶制御装置に記憶するデータを規定の仕様に従って編成し管理するアプリケーションプログラムを実行する工程と、
    ホストコンピュータが、前記アプリケーションプログラムが使用する前記記憶手段の記憶領域の範囲を特定する領域管理データを記憶制御装置に送信する工程と、
    記憶制御装置が、前記領域管理データを受信する工程と、
    記憶制御装置が、前記アプリケーションプログラムの処理に起因してホストコンピュータから送信されるデータ入出力要求を受信して、そのデータ入出力要求の処理対象となるデータのうち前記領域管理データに基づいて特定される前記アプリケーションプログラムが使用する記憶領域に対して入出力されるデータについて、そのデータが前記規定の仕様に従って編成されているかどうかを検証する工程と、
    を有することを特徴とするストレージシステムにおけるデータ検証方法。
  2. 前記記憶制御装置が、前記ホストコンピュータで稼働する複数の前記アプリケーションプログラムのそれぞれについての前記検証を行う複数のプログラムを記憶する工程と、
    前記記憶制御装置が、前記ホストコンピュータから送信されてくる前記領域管理データに基づいて前記各アプリケーションプログラムのそれぞれが使用する記憶領域を特定する工程と、
    前記記憶制御装置が、前記各アプリケーションプログラムの処理に起因してホストコンピュータから送信されるデータ入出力要求を受信して、前記領域管理データに基づいて前記データ入出力要求に関わる前記アプリケーションプログラムを特定する工程と、
    前記記憶制御装置が、前記データ入出力要求の処理対象となるデータのうち前記領域管理データで特定される記憶領域に入出力されるデータについて、そのデータが前記規定の仕様に従って編成されているかを、前記特定したアプリケーションプログラムに対応する前記プログラムにより検証する工程と、
    を有することを特徴とする請求項1に記載のストレージシステムにおけるデータ検証方法。
  3. 前記ホストコンピュータが、前記プログラムを前記ホストコンピュータから前記記憶制御装置に送信する工程と、
    前記記憶制御装置が前記プログラムを受信して記憶する工程と、
    を有することを特徴とする請求項2に記載のストレージシステムにおけるデータ検証方法。
  4. 前記ホストコンピュータが、前記範囲が変更された場合に、その変更内容が反映された前記領域管理データを前記記憶制御装置に送信する工程を有することを特徴とする請求項1に記載のストレージシステムにおけるデータ検証方法。
  5. 前記アプリケーションプログラムが使用する前記記憶手段の記憶領域は、前記ホストコンピュータ上で稼働する前記アプリケーションプログラムとは異なるソフトウエアにより付加される制御情報の使用領域を除いた領域であることを特徴とする請求項1に記載のストレージシステムにおけるデータ検証方法。
  6. 前記領域管理データには、前記記憶手段の前記記憶領域を用いて論理的に編成されたボリュームを単位として前記アプリケーションプログラムに提供される前記記憶領域の範囲を指定するデータが含まれることを特徴とする請求項1に記載のストレージシステムにおけるデータ検証方法。
  7. 前記ボリュームは、前記記憶手段の前記記憶領域をRAID方式で運用することにより編成されることを特徴とする請求項6に記載のストレージシステムにおけるデータ検証方法。
  8. 前記記憶手段は、前記記憶制御装置に一体に設けられることを特徴とする請求項1に記載のストレージシステムにおけるデータ検証方法。
  9. 前記記憶領域は、ディスクドライブなどの物理的な記憶デバイスにより提供される記憶領域上に編成される論理的な記憶デバイスとして提供されることを特徴とする請求項1に記載のストレージシステムにおけるデータ検証方法。
  10. 前記通信手段は、SCSI規格に準拠した通信方式によるものであることを特徴とする請求項1に記載のストレージシステムにおけるデータ検証方法。
  11. 前記通信手段は、SANであることを特徴とする請求項1に記載のストレージシステムにおけるデータ検証方法。
  12. 前記通信手段は、LANであることを特徴とする請求項1に記載のストレージシステムにおけるデータ検証方法。
  13. ホストコンピュータと通信手段を介して接続し、前記ホストコンピュータから送信される入出力要求を受信して、前記入出力要求に対応するデータ入出力処理をディスクドライブに対して実行するディスクアレイ装置であって、
    前記ディスクドライブが提供する記憶領域上に論理デバイスが編成され、
    前記ホストコンピュータで動作するアプリケーションプログラムのIDであるアプリケーションIDと、前記アプリケーションプログラムが使用する前記論理デバイスのIDである論理デバイスIDとを対応付ける領域管理テーブルを前記ホストコンピュータから受信し、受信した前記領域管理テーブルを前記ディスクドライブに記憶し、
    前記アプリケーションIDに対応付けて、前記論理デバイスに記憶されているデータが、前記アプリケーションプログラムに規定の仕様に従って編成されているかどうかを検証するデータ検証用プログラムを前記ディスクドライブに記憶し、
    前記アプリケーションプログラムの処理に起因して前記ホストコンピュータから送信されるデータ入出力要求を受信し、
    受信した前記データ入出力要求にセットされている前記論理デバイスIDに対応づけられているアプリケーションIDを調べ、調べた前記アプリケーションIDに対応する前記データ検証用プログラムを起動すること、
    を特徴とするディスクアレイ装置。
JP2002092685A 2002-03-28 2002-03-28 データ検証方法およびディスクアレイ装置 Expired - Fee Related JP4080227B2 (ja)

Priority Applications (9)

Application Number Priority Date Filing Date Title
JP2002092685A JP4080227B2 (ja) 2002-03-28 2002-03-28 データ検証方法およびディスクアレイ装置
EP03003689A EP1349059B1 (en) 2002-03-28 2003-02-18 Method and apparatus for verifying data in a storage system
DE60333322T DE60333322D1 (de) 2002-03-28 2003-02-18 Verfahren und Gerät um Daten eines Speichersystems zu prüfen
DE60334037T DE60334037D1 (de) 2002-03-28 2003-02-18 Verfahren und Vorrichtung zur Überprüfung von Daten in einem Speichersystem
EP07002280A EP1785867B1 (en) 2002-03-28 2003-02-18 Method and apparatus for verifying data in a storage system
US10/377,898 US6842793B2 (en) 2002-03-28 2003-02-28 Method and apparatus for verifying data in a storage system
CN03107743.9A CN1241098C (zh) 2002-03-28 2003-03-28 存储系统中检验数据的方法及设备
US11/025,471 US20050122788A1 (en) 2002-03-28 2004-12-28 Method and apparatus for verifying data in a storage system
US12/173,650 US7725611B2 (en) 2002-03-28 2008-07-15 Method and apparatus for verifying data in a storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002092685A JP4080227B2 (ja) 2002-03-28 2002-03-28 データ検証方法およびディスクアレイ装置

Publications (3)

Publication Number Publication Date
JP2003288270A JP2003288270A (ja) 2003-10-10
JP2003288270A5 JP2003288270A5 (ja) 2005-08-18
JP4080227B2 true JP4080227B2 (ja) 2008-04-23

Family

ID=27800528

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002092685A Expired - Fee Related JP4080227B2 (ja) 2002-03-28 2002-03-28 データ検証方法およびディスクアレイ装置

Country Status (5)

Country Link
US (3) US6842793B2 (ja)
EP (2) EP1349059B1 (ja)
JP (1) JP4080227B2 (ja)
CN (1) CN1241098C (ja)
DE (2) DE60333322D1 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6886160B1 (en) * 2000-11-29 2005-04-26 Hyung Sup Lee Distribution of mainframe data in the PC environment
US6968479B2 (en) * 2002-03-06 2005-11-22 Hewlett-Packard Development Company, L.P. Verifying data in a data storage device
JP2003330762A (ja) * 2002-05-09 2003-11-21 Hitachi Ltd ストレージシステムの制御方法、ストレージシステム、スイッチ、及びプログラム
US7062605B2 (en) * 2003-04-28 2006-06-13 Lsi Logic Corporation Methods and structure for rapid background initialization of a RAID logical unit
US7082447B2 (en) * 2004-06-16 2006-07-25 Hitachi, Ltd. Method and apparatus for archive data validation in an archive system
JP2006227856A (ja) * 2005-02-17 2006-08-31 Hitachi Ltd アクセス制御装置及びそれに搭載されるインターフェース
KR100777282B1 (ko) * 2005-12-15 2007-11-20 엘지전자 주식회사 방송 프로그램 저장방법 및 장치
JP2007179156A (ja) * 2005-12-27 2007-07-12 Hitachi Ltd 記憶制御装置及び方法
JP2008040842A (ja) * 2006-08-07 2008-02-21 Hitachi Ltd 記憶システム及びデータ管理設定方法
US20100180182A1 (en) * 2009-01-09 2010-07-15 Seagate Technology Llc Data memory device and controller with interface error detection and handling logic
US8214621B2 (en) * 2009-04-29 2012-07-03 Microsoft Corporation Storage optimization across media with differing capabilities
TWI408688B (zh) * 2009-10-12 2013-09-11 Phison Electronics Corp 用於快閃記憶體的資料寫入方法及其控制器與儲存系統
KR101833464B1 (ko) * 2010-02-02 2018-02-28 시게이트 테크놀로지 인터내셔날 디스크 장치와 외부 저장 매체 사이의 데이터 전송 방법 및 그 방법을 이용하는 시스템
TWI455144B (zh) * 2010-07-22 2014-10-01 Silicon Motion Inc 使用於快閃記憶體的控制方法與控制器
US8874696B1 (en) * 2010-12-17 2014-10-28 Emc Corporation Common cache service
US9069719B2 (en) * 2012-02-11 2015-06-30 Samsung Electronics Co., Ltd. Method and system for providing a smart memory architecture
WO2015041701A1 (en) * 2013-09-23 2015-03-26 Hewlett-Packard Development Company, L.P. Validate written data
WO2017054182A1 (zh) * 2015-09-30 2017-04-06 华为技术有限公司 一种数据校验方法和装置
CN110134572B (zh) * 2018-02-02 2023-08-08 伊姆西Ip控股有限责任公司 验证存储系统中的数据
US10846190B2 (en) * 2019-03-29 2020-11-24 Lenovo (Singapore) Pte. Ltd. Connected device activation

Family Cites Families (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US617036A (en) * 1899-01-03 John mitchell
JPS6361320A (ja) 1986-09-02 1988-03-17 Nec Corp 事前検証機構付き補助記憶処理装置
US5155845A (en) * 1990-06-15 1992-10-13 Storage Technology Corporation Data storage system for providing redundant copies of data on different disk drives
US5285456A (en) * 1991-05-15 1994-02-08 International Business Machines Corporation System and method for improving the integrity of control information
JP2855019B2 (ja) * 1992-02-10 1999-02-10 富士通株式会社 外部記憶装置のデータ保証方法及び外部記憶装置
US5548788A (en) * 1994-10-27 1996-08-20 Emc Corporation Disk controller having host processor controls the time for transferring data to disk drive by modifying contents of the memory to indicate data is stored in the memory
JPH08263223A (ja) 1995-03-23 1996-10-11 Toshiba Corp 計算機システム
JPH08272625A (ja) 1995-03-29 1996-10-18 Toshiba Corp マルチプログラム実行制御装置及び方法
US5870537A (en) * 1996-03-13 1999-02-09 International Business Machines Corporation Concurrent switch to shadowed device for storage controller and device errors
US5867736A (en) * 1996-03-29 1999-02-02 Lsi Logic Corporation Methods for simplified integration of host based storage array control functions using read and write operations on a storage array control port
US6185634B1 (en) * 1996-09-27 2001-02-06 Emc Corporation Address triggered DMA controller with an indicative signal including circuitry for calculating a new trigger address value based on the sum of the current trigger address and the descriptor register data with a trigger address register
US6073209A (en) * 1997-03-31 2000-06-06 Ark Research Corporation Data storage controller providing multiple hosts with access to multiple storage subsystems
US6157485A (en) * 1997-07-18 2000-12-05 Cheng; Yihao Lens arrangement for enhancing the coupling of light shifted by an optical element
US5951658A (en) * 1997-09-25 1999-09-14 International Business Machines Corporation System for dynamic allocation of I/O buffers for VSAM access method based upon intended record access where performance information regarding access is stored in memory
US6195761B1 (en) * 1997-12-31 2001-02-27 Emc Corporation Method and apparatus for identifying and repairing mismatched data
US6167485A (en) * 1997-12-31 2000-12-26 Emc Corporation On-line data verification and repair in redundant storage systems
US6360330B1 (en) * 1998-03-31 2002-03-19 Emc Corporation System and method for backing up data stored in multiple mirrors on a mass storage subsystem under control of a backup server
US6151685A (en) * 1998-05-15 2000-11-21 International Business Machines Corporation System and method for recovering a segment directory for a log structured array
US6295575B1 (en) * 1998-06-29 2001-09-25 Emc Corporation Configuring vectors of logical storage units for data storage partitioning and sharing
US6393540B1 (en) * 1998-06-30 2002-05-21 Emc Corporation Moving a logical object from a set of source locations to a set of destination locations using a single command
US7165152B2 (en) 1998-06-30 2007-01-16 Emc Corporation Method and apparatus for managing access to storage devices in a storage system with access control
US6883063B2 (en) 1998-06-30 2005-04-19 Emc Corporation Method and apparatus for initializing logical objects in a data storage system
JP4252139B2 (ja) * 1998-12-16 2009-04-08 株式会社日立製作所 記憶装置システム
US6311240B1 (en) * 1998-12-17 2001-10-30 Compaq Computer Corporation Hardware assisted formatted data transfer system having a source storage controller and a formatting storage controller receiving on-media structure definition and a data definition
JP2000267254A (ja) 1999-03-17 2000-09-29 Fujitsu Ltd パターンデータ検証方法及び記憶媒体
US6467023B1 (en) * 1999-03-23 2002-10-15 Lsi Logic Corporation Method for logical unit creation with immediate availability in a raid storage environment
JP2000287254A (ja) 1999-03-31 2000-10-13 Matsushita Electric Ind Co Ltd 無線通信装置および無線通信方法
US6629199B1 (en) * 1999-08-20 2003-09-30 Emc Corporation Digital data storage system including directory for efficiently providing formatting information for stored records and utilization of a check value for verifying that a record is from a particular storage location
JP2001167040A (ja) * 1999-12-14 2001-06-22 Hitachi Ltd 記憶サブシステム及び記憶制御装置
US6629273B1 (en) * 2000-01-24 2003-09-30 Hewlett-Packard Development Company, L.P. Detection of silent data corruption in a storage system
JP2001331323A (ja) 2000-05-18 2001-11-30 Canon Inc ダウンロード方法、装置およびシステム
US6766430B2 (en) * 2000-07-06 2004-07-20 Hitachi, Ltd. Data reallocation among storage systems
US6715036B1 (en) * 2000-08-01 2004-03-30 International Business Machines Corporation Method, system, and data structures for transferring blocks of data from a storage device to a requesting application
JP4611502B2 (ja) 2000-09-19 2011-01-12 サンデン株式会社 紙幣識別装置
US7020835B2 (en) * 2000-10-19 2006-03-28 Oracle International Corporation Enhancements to data integrity verification mechanism
JP4068798B2 (ja) * 2000-10-31 2008-03-26 株式会社日立製作所 記憶サブシステム及びi/oインタフェースの制御方法ならびに情報処理システム
JP3435400B2 (ja) * 2000-12-08 2003-08-11 株式会社東芝 ディスクアレイ装置におけるデータ修復方法及びディスクアレイコントローラ
US6886171B2 (en) * 2001-02-20 2005-04-26 Stratus Technologies Bermuda Ltd. Caching for I/O virtual address translation and validation using device drivers
JP4105398B2 (ja) * 2001-02-28 2008-06-25 株式会社日立製作所 情報処理システム
US6928578B2 (en) * 2001-05-10 2005-08-09 International Business Machines Corporation System, method, and computer program for selectable or programmable data consistency checking methodology
US6718447B2 (en) * 2001-06-28 2004-04-06 Hewlett-Packard Development Company, L.P. Method and system for providing logically consistent logical unit backup snapshots within one or more data storage devices
JP4144727B2 (ja) * 2001-07-02 2008-09-03 株式会社日立製作所 情報処理システム、記憶領域提供方法、およびデータ保持管理装置
JP4060552B2 (ja) * 2001-08-06 2008-03-12 株式会社日立製作所 記憶装置システム、および、記憶装置システムの構成方法
US6728855B2 (en) * 2001-09-27 2004-04-27 Seagate Technology Llc Method and system for data path verification
US6772289B1 (en) * 2001-12-17 2004-08-03 Lsi Logic Corporation Methods and apparatus for managing cached CRC values in a storage controller
JP3526452B2 (ja) 2001-12-18 2004-05-17 株式会社東芝 ディスクアレイ装置及びデータバックアップ方法
JP3702231B2 (ja) * 2002-01-31 2005-10-05 株式会社東芝 ディスクアレイ装置及び同装置における動的記憶容量拡張方法
US6687799B2 (en) * 2002-01-31 2004-02-03 Hewlett-Packard Development Company, L.P. Expedited memory dumping and reloading of computer processors
US6968479B2 (en) * 2002-03-06 2005-11-22 Hewlett-Packard Development Company, L.P. Verifying data in a data storage device

Also Published As

Publication number Publication date
US20030188058A1 (en) 2003-10-02
CN1241098C (zh) 2006-02-08
EP1785867A2 (en) 2007-05-16
US20080288829A1 (en) 2008-11-20
DE60333322D1 (de) 2010-08-26
EP1785867A3 (en) 2007-08-29
EP1349059B1 (en) 2010-07-14
JP2003288270A (ja) 2003-10-10
CN1448827A (zh) 2003-10-15
EP1785867B1 (en) 2010-09-01
US6842793B2 (en) 2005-01-11
US7725611B2 (en) 2010-05-25
DE60334037D1 (de) 2010-10-14
EP1349059A3 (en) 2007-09-12
US20050122788A1 (en) 2005-06-09
EP1349059A2 (en) 2003-10-01

Similar Documents

Publication Publication Date Title
JP4080227B2 (ja) データ検証方法およびディスクアレイ装置
US8086896B2 (en) Dynamically tracking virtual logical storage units
US6574709B1 (en) System, apparatus, and method providing cache data mirroring to a data storage system
US7107320B2 (en) Data mirroring between controllers in an active-active controller pair
US5802345A (en) Computer system with a reduced number of command end interrupts from auxiliary memory unit and method of reducing the number of command end interrupts
US6877011B2 (en) System and method for host based storage virtualization
US6098190A (en) Method and apparatus for use of a host address to validate accessed data
US6728791B1 (en) RAID 1 read mirroring method for host adapters
US7849258B2 (en) Storage apparatus and data verification method for the same
JP2006134064A (ja) 記憶メディアへの書込みエラーを検出する記憶制御装置及び方法
KR20070015185A (ko) 데이터 저장 디바이스 및 이로부터의 정보 획득 방법과시스템
JPH03129552A (ja) ホストプロセッサによりアクセスされるシャドーセットの管理方法及び装置
JP2006146833A (ja) ディスク装置の整合性検査支援方法およびディスクアレイ装置の整合性検査方法
JP4884721B2 (ja) 記憶装置のフォーマットを不要としたストレージシステム及び記憶制御方法
US11137918B1 (en) Administration of control information in a storage system
JP2008225616A (ja) ストレージシステム、リモートコピーシステム、及びデータ復元方法
JP2005165516A (ja) ストレージ制御装置、ストレージシステム、及びストレージシステムの制御方法
JP2002244933A (ja) チェックサムを異なるメモリ位置へ動的に移動させるシステムおよび方法
JP2004178253A (ja) 記憶デバイス制御装置および記憶デバイス制御装置の制御方法
JP4394533B2 (ja) ディスクアレイシステム
US6701385B1 (en) Raid 1 write mirroring method for host adapters
US6665830B2 (en) System and method for building a checksum
JP6318769B2 (ja) ストレージ制御装置、制御プログラム、および制御方法
JP2002328850A (ja) ディスクアレイ装置のパトロールによるデータパス異常検出方法及びディスクアレイ装置を備えたコンピュータシステム
US6317857B1 (en) System and method for utilizing checksums to recover data

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20040928

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050204

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050204

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20050204

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20050204

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071211

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080115

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080206

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

Free format text: PAYMENT UNTIL: 20110215

Year of fee payment: 3

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120215

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120215

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130215

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130215

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees