JP5202884B2 - 記憶ボリューム間でデータを移行する方法および装置 - Google Patents

記憶ボリューム間でデータを移行する方法および装置 Download PDF

Info

Publication number
JP5202884B2
JP5202884B2 JP2007167387A JP2007167387A JP5202884B2 JP 5202884 B2 JP5202884 B2 JP 5202884B2 JP 2007167387 A JP2007167387 A JP 2007167387A JP 2007167387 A JP2007167387 A JP 2007167387A JP 5202884 B2 JP5202884 B2 JP 5202884B2
Authority
JP
Japan
Prior art keywords
data
storage
storage device
computer
volume
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
JP2007167387A
Other languages
English (en)
Other versions
JP2008033911A (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
Publication of JP2008033911A publication Critical patent/JP2008033911A/ja
Application granted granted Critical
Publication of JP5202884B2 publication Critical patent/JP5202884B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/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/0647Migration 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
    • 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/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/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Description

本発明は、データ記憶技術に関し、より詳細には、異なる性能特性を有する記憶媒体を利用した記憶装置間のデータ移行に関する。
今日では、ほとんどすべての大容量データ記憶装置が、(1つまたは複数の)記憶コントローラとHDD(ハードディスクドライブ)に基づいて設計されている。記憶装置においてHDDが普及している主な理由は、他のランダムアクセス可能な記憶装置と比べて、これらの1ビット当たりのコストが低いことである。
当業者であれば理解するように、記憶装置の耐用年数には限界がある。一般に、データ記憶ユニットの寿命は、3年から5年の間である。記憶ユニットの耐用年数の終わりにかけて、記憶ユニット内のデータは、新しい記憶装置に移行されなければならない。データが新しい記憶装置に移行されない場合、そのデータは、失われることがある。例えば、データを10年間保存しようとする場合、データ移行が数回行われなければならない。
他方では、新しい記憶装置のデータアクセス性能特性を向上させることによって、高いデータ利用可能性を維持することが求められる。また、データ保存とデータ管理のコストを低減しようとすることも求められる。したがって、ストレージ管理者は、新しい記憶装置におけるボリューム構成を特別に設計しようとすることがある。
フラッシュメモリユニットの1記憶ビット当たりのコストは、着実に低下している。したがって、フラッシュメモリは、大容量記憶装置の記憶媒体として、ますます魅力的なものとなっている。しかしながら、現時点においては、フラッシュメモリの1ビット当たりのコストは、依然として、HDDのコストより高い。したがって、記憶装置の中には、HDDとフラッシュメモリデバイスの異なる性能特性を利用するものもある。前述の二重媒体データ記憶装置の記憶システム管理者は、記憶装置に記憶されているデータを、HDDとフラッシュメモリで構成されている新しい記憶装置にどのようにして移行すべきか、という問題に直面する。データを移行するに際しては、フラッシュメモリとHDDの異なる性能特性に留意しなければならない。
参照により本明細書に組み込まれる、「System for migrating data by selecting a first or second transfer means based on the status of a data element map initialized to a predetermined state」という名称の、米国特許第5680640号明細書には、2つの記憶装置間に確立されたデータ接続によって、旧い記憶装置から新しい記憶装置にデータを移行する技法が開示されている。しかしながら、既存のデータ移行の技法は、HDDユニットとフラッシュメモリユニットの両方を含む記憶装置へのデータ移行を扱わない。
したがって、既存の技術は、HDDで構成されている記憶装置からHDDとフラッシュメモリで構成されている記憶装置にデータを移行する手段を提供することができない。具体的には、既存の技術は、旧い記憶ユニットの編成に従って新しい記憶装置上のボリュームを割り振り、連結する手段を提供せず、ストレージ管理者が、この面倒な仕事を手作業で行うことが必要になる。
本発明の方法は、少なくとも2つの記憶装置を備える情報システムにおけるデータ移行の従来の技法に関連付けられる、上記その他の問題のうちの1つまたは複数を、実質的に未然に防ぐ方法およびシステムを対象とする。
本発明の概念の一態様によれば、データを記憶する第1の記憶ボリュームを含む第1の記憶装置と、ネットワークを介して第1の記憶装置に動作するように結合されており、データアクセスパターンに従ってデータにアクセスするように構成されているホストコンピュータとを備えるコンピュータによる記憶システムが提供される。本発明のコンピュータによる記憶システムは、第1の記憶装置に結合されており、記憶コントローラと、第1のメディアプールと、第2のメディアプールを含む第2の記憶装置をさらに含む。第1のメディアプールの特性は、第2のメディアプールの特性と異なる。第2の記憶装置は、データアクセスパターンを決定し、決定されたデータアクセスパターンに従って、第1のメディアプールの少なくとも一部分と第2のメディアプールの少なくとも一部分を含む第2の記憶ボリュームを割り振り、割り振られた第2の記憶ボリュームにおいてデータのコピーを作成するように構成されている。
本発明の概念の別の態様によれば、第1の記憶ボリュームに記憶されているデータを対象とするアクセス要求をログに記録してログ情報を作成すること、およびログ情報を分析してデータアクセスパターンを決定することを含む方法が提供される。本発明の方法は、決定されたデータアクセスパターンに従って、第1のメディアプールの少なくとも一部分と第2のメディアプールの少なくとも一部分を含む第2の記憶ボリュームを割り振ること、およびデータを第1の記憶ボリュームから第2の記憶ボリュームに移行することをさらに含む。
本発明の概念の別の態様によれば、コンピュータ可読媒体に実施されたコンピュータプログラミング製品が提供される。本発明のコンピュータプログラミング製品は、第1の記憶ボリュームに記憶されているデータを対象とするアクセス要求をログに記録してログ情報を作成するコードと、ログ情報を分析してデータアクセスパターンを決定するコードとを含む。本発明のコンピュータプログラミング製品は、決定されたデータアクセスパターンに従って、第1のメディアプールの少なくとも一部分と第2のメディアプールの少なくとも一部分を含む第2の記憶ボリュームを割り振るコードと、データを第1の記憶ボリュームから第2の記憶ボリュームに移行するコードとをさらに含む。
本発明に関連するさらに他の態様の一部は、以下の説明において示され、一部は、その説明を読めば明らかになり、または本発明を実施することによって知り得るものである。本発明の諸態様は、以下の詳細な説明および添付の特許請求の範囲において詳細に示す要素、および様々な要素と態様の組み合わせによって実現され、達成され得るものである。
以上の説明も以下の説明も例示と説明のためのものにすぎず、特許請求する発明またはその出願を、いかなるようにも限定しようとするものではないことを理解すべきである。
本明細書に組み込まれ、その一部を構成している添付の図面は、本発明の実施形態を例示するものであり、説明と併せて、本発明の技法の原理を説明し、図示するためのものである。
以下の詳細な説明では、添付の図面を参照する。図面において、同一の機能要素は類似の番号で示す。前述の添付の図面には、限定としてではなく例として、本発明の原理との整合性を有する具体的な実施形態および実現形態が示されている。これらの実現形態は、当業者が本発明を実施できるようにするのに十分な詳細度で説明されており、また、本発明の範囲および精神から逸脱することなく、他の実現形態が利用されてもよく、様々な要素の構造的変更および/または置換が行われてもよいことを理解すべきである。したがって、以下の詳細な説明は、狭い意味で解釈すべきではない。加えて、説明する本発明の様々な実施形態は、汎用コンピュータ上で実行されるソフトウェアの形でも、専用ハードウェアの形でも、ソフトウェアとハードウェアの組み合わせとしても実施され得る。
ハードディスクドライブ(HDD)における待ち時間は、ヘッドシーク動作とメディア回転によって生じる。順次アクセスは、短い待ち時間と高いスループットを特徴とする。ランダムアクセスは、長い待ち時間と低いスループットを特徴とする。書込みアクセス時間は、以下で詳細に説明する「書込みおよび検証」操作の場合を除いて、読取りアクセス時間と同じとすることができる。
フラッシュメモリ記憶装置における待ち時間は、プログラミング時間とページ消去時間によって生じる。読取り操作は、ヘッドシークとメディア回転を伴わないため、最小限の待ち時間で済む。ランダム読取り操作の待ち時間は、順次読取り操作の待ち時間と同じである。しかしながら、書込み操作の待ち時間は、読取り操作の待ち時間より大きい。フラッシュメモリ書込み操作を完了するには、時間のかかるメディアプログラミングを伴うため、より長時間を要する。また、フラッシュメモリユニットに頻繁にデータを上書きする際にも、「ページ消去時間」と「メディアプログラミング時間」両方を伴う。消去された空白ページがフラッシュチップ内に見つからない場合、記憶装置にデータが書き込まれる前にページ消去操作が行われなければならない。フラッシュメモリ記憶ユニットは、チップがアイドルモードにある間にページを消去する。したがって、書込み操作が高い頻度で行われなければ、ページは、フラッシュチップにおいて、書込み操作を遅延させることなく自動的に消去される。他方、書込みが頻繁に行われるときには、システムに消去操作を行うのに十分な時間がなく、消去操作が完了するまで書込みプロセスを延期する必要が生じることもある。
次に、システム構成例について説明する。図1(a)〜(e)に、本発明の概念の一実施形態が実施され得る情報記憶システム例の様々な側面を示す。本発明の概念の第1の例示的実施形態による情報システムは、以下で詳細に説明する構成要素を含む。
次に、ホストコンピュータ10について説明する。少なくとも1つのホストコンピュータ10が、データネットワーク50を介して記憶装置100に接続されている。データが旧い記憶装置から新しい記憶装置に移行された後で、ホストコンピュータは、移行されたデータにアクセスすることができるように、旧い記憶装置から新しい記憶装置に再接続されなければならない。
次に、管理コンピュータ500について説明する。少なくとも1つの管理コンピュータ500が、管理ネットワーク90を介して、ホストコンピュータ10と、移行コンピュータ300と、記憶装置100、200に接続されている。
次に、記憶装置100について説明する。本発明のシステムは、少なくとも1つの記憶装置100を含み、この記憶装置100は、記憶コントローラ150と、1つまたは複数のHDD101を組み込んでいる。記憶装置100は、記憶コントローラ150をさらに含んでいてもよく、この記憶コントローラ150は、記憶装置100にRAIDデータ保護機能を提供し得る。図1では、例示的記憶装置100が、データを記憶する1つのボリューム111を有するものとして示されている。データは、ホストコンピュータ10によってボリューム111に書き込まれ、ボリューム111から読み取られる。
次に、記憶装置200について説明する。情報記憶システムは、少なくとも1つの記憶装置200をさらに含み、この記憶装置200は、記憶コントローラ250と、1つまたは複数のHDD201と、1つまたは複数のフラッシュメモリユニット205とで構成されている。記憶装置200は、記憶コントローラ250をさらに含み、この記憶コントローラ250は、記憶装置200にRAIDデータ保護機能を提供し得る。図1に示す記憶装置200の実施形態は、2つの記憶プールを組み込んでいる。一方の記憶プールは(本明細書で「HDDプール210」と呼ぶ)HDDで構成されており、他方は、(本明細書で「フラッシュプール220」と呼ぶ)フラッシュメモリユニットで構成されている。
次に、データネットワーク50について説明する。ホストコンピュータ10と、記憶装置100、200とは、データネットワーク50を介して相互接続されている。本発明のシステムの一実施形態では、データネットワーク50は、ファイバチャネルネットワークである。しかしながら、イーサネット(登録商標)など、他の適切なネットワーク相互接続も、データネットワーク50を実施するのに使用され得る。データネットワーク50は、相互接続機能を実施する、適切な数のネットワークスイッチおよびハブを含んでいてもよい。図1では、(FCSW55という)ファイバチャネルスイッチを使って、前述の記憶システム構成要素が相互接続されている。このために、ホストコンピュータ10、移行コンピュータ300、管理コンピュータ500、および記憶装置100、200は、個々の装置をファイバチャネルデータネットワーク50に結合する(FCIFという)1つまたは複数のファイバチャネルインターフェースボードを備える。
次に、管理ネットワーク90について説明する。ホストコンピュータ10、管理コンピュータ500、および記憶装置100、200は、管理ネットワーク90を介しても接続されている。本発明の概念のこの実施形態における管理ネットワーク90は、イーサネット(登録商標)ネットワークである。しかしながら、他の適切なネットワーク相互接続も使用され得る。ネットワーク90は、適切なネットワークスイッチとハブを使って実施されてもよい。ホストコンピュータ10、移行コンピュータ300、管理コンピュータ500および記憶装置100、200は、個々の装置をイーサネット(登録商標)管理ネットワーク90に結合する(本明細書でイーサIFという)1つまたは複数のイーサネット(登録商標)インターフェースボードを備えていてもよい。
次に、ホストコンピュータ10について説明する。ホストコンピュータ10は、プログラムとデータを記憶するメモリ12と、メモリ12に記憶されたプログラムを実行するように構成されているCPU11を含む。加えて、ホストコンピュータ10は、ホストコンピュータ10をデータネットワーク50に接続するFCIF15と、ホストコンピュータ10を管理ネットワーク90に接続するイーサIF19も含む。
ホストコンピュータ10は、少なくとも2つのプログラムを走らせ、これらのプログラムは、メモリ12に記憶され、CPU11によって実行される(図1(b)参照)。本発明の一実施形態では、メモリ12は、ボリュームにデータを書き込み、かつ/またはボリュームからデータを読み取るアプリケーションプログラム13と、ホストコンピュータ10と記憶装置の間のアクセスパスを管理するアクセスパス管理プログラム14を記憶している。
次に、管理コンピュータ500について説明する。管理コンピュータ500は、プログラムとデータを記憶するメモリ520と、メモリ520に記憶されたプログラムを実行するCPU510を含む。管理コンピュータ500は、さらに、管理コンピュータ500をデータネットワーク50に接続するFCIF550と、管理コンピュータ500を管理ネットワーク90に接続するイーサIF590を含む。
管理コンピュータ500のメモリ520は、少なくとも7つのプログラムを記憶しており、これらは、CPU510によって実行される。記憶されるプログラムには、記憶装置の残存寿命を検出し、新しい記憶ユニットを探索する検出プログラム521が含まれる。また、記憶装置からログを収集するアクセスログ収集プログラム522、目標記憶装置にボリューム割り振りを要求するボリューム割り振り要求プログラム523、目標記憶装置にボリューム連結を要求するボリューム連結要求プログラム524、あるいはホストコンピュータまたはFCSW上のボリューム管理プログラムも記憶されている。メモリ520に記憶されるさらに別のプログラムには、移行モジュールにボリューム移行を要求するボリューム移行要求プログラム525、記憶装置内の(1つまたは複数の)フラッシュメモリユニットの有無を確認するフラッシュメモリユニット確認プログラム526、およびホストコンピュータからボリュームへのアクセスパスを交代させるパス交代要求プログラム527が含まれる。
次に、記憶装置100について説明する。記憶装置100は、1つまたは複数のHDD101と、データ記憶ボリュームを維持する記憶コントローラ150を含む。各データ記憶ボリュームは、1つまたは複数のHDDのチャンク(まとまり)で構成されている。当業者であれば理解するように、前述のHDDのチャンクは、データ信頼性を向上させるために冗長データを記憶してもよい。記憶装置100は、1つまたは複数のボリューム111にデータを記憶する。図1(d)に示す本発明の記憶装置100の実施形態は、1つのボリューム111を含む。しかしながら、本発明の概念は、このようなただ1つのボリュームだけに限定されない。
記憶コントローラ150は、メモリ152に記憶されたプログラムを実行するCPU151と、プログラムとデータを記憶するメモリ152と、データネットワーク50に接続するFCIF155と、HDD101に接続するSATA IF156を含む(図1(d)参照)。HDDが、FC、SCSI、SASなど別のインターフェースを有する場合、記憶コントローラは、HDDの記憶インターフェースにマッチする適切な記憶インターフェースを含む必要があることに留意すべきである。記憶コントローラ150は、さらに、記憶コントローラ150を管理ネットワーク90に接続するイーサIF159を含む。
記憶装置100のメモリ152は、少なくとも3つのプログラムを記憶しており、これらは、CPU151によって実行される。図1(d)に示す、本発明の記憶装置100の1つの例示的実施形態では、メモリ152は、記憶装置の残存寿命を報告する残存寿命報告プログラム160と、記憶装置と関連付けられるアクセスログを報告するアクセスログ報告プログラム161と、ホストコンピュータ10からの読取り/書込み照会または要求に応答する応答プログラム162を記憶している。
次に、記憶装置200について説明する。記憶装置200は、1つまたは複数のHDD201と、1つまたは複数のフラッシュメモリ205を含む(図1(e)参照)。HDD201は、1つまたは複数のHDDプール210にグループ化される。図1(e)に示す記憶システム200の実施形態は、ただ1つのHDDプール210を含む。各HDDプールは、1つまたは複数のHDDで構成されている。加えて、記憶装置200は、1つまたは複数のフラッシュプールも組み込んでいる。図1(e)に示す記憶装置200の実施形態は、ただ1つのフラッシュプール220を含み、これは、1つまたは複数のフラッシュメモリユニット205で構成されている。
記憶装置200は、さらに、データ記憶ボリューム211を維持する記憶コントローラ250を含む。かかる記憶ボリューム211は、それぞれ、前述のHDDプールおよび/またはフラッシュプールの一部分で構成されている。記憶ボリューム211を形成するHDDプールとフラッシュメモリプールの各部分は、データ信頼性を向上させるために冗長データを記憶していてもよい。
記憶コントローラ250は、プログラムとデータを記憶するメモリ252と、メモリ252に記憶されたプログラムを実行するCPU251を含む。記憶コントローラ250は、さらに、記憶コントローラ250をデータネットワーク50に接続するFCIF255と、記憶コントローラ250をHDD201とフラッシュメモリユニット205に接続するSATA IF256を含む。HDD/フラッシュメモリユニット201、205が、FC、SCSI、SAS、任意のフラッシュ特有のメモリインターフェースなど、別の種類のインターフェースを有する場合、記憶コントローラ250は、マッチするインターフェースを含む必要がある。
記憶コントローラ250は、さらに、記憶コントローラ250を管理ネットワーク90に接続するイーサIF259を含む。図1(e)に示す記憶コントローラ250の実施形態では、メモリユニット252は、少なくとも6つのプログラムを記憶しており、これらは、CPU251によって実行される。具体的には、メモリ252は、記憶の残存寿命を報告する残存寿命報告プログラム260と、アクセスログ情報を報告するアクセスログ報告プログラム261と、ホストコンピュータ10によって開始される読取り/書込み照会/要求に応答する応答プログラム262を記憶している。
メモリ252は、さらに、HDDプールまたはフラッシュプール内のボリュームを割り振るボリューム割り振りプログラム263と、各チャンクを連結して1つのボリュームにするボリューム連結プログラム264と、記憶装置内のフラッシュメモリユニットを検出し、検出操作の結果をホストコンピュータに報告するフラッシュメモリ検出報告プログラム265も記憶している。
次に、フラッシュメモリ検出報告プログラム265について説明する。フラッシュメモリ検出報告プログラム265は、これの記憶装置内のフラッシュメモリユニットを検出することができる。1つの例示的実施形態では、フラッシュメモリユニットが、HDDユニットと相互に交換可能である。この実施形態では、フラッシュメモリ検出報告プログラム265は、フラッシュメモリユニットおよび/またはHDDユニットに向けた照会コマンドを呼び出す。照会コマンドへの応答が、フラッシュメモリユニットに起因するベンダIDや装置IDなど、フラッシュメモリの存在を示す情報を含む場合、フラッシュメモリ検出報告プログラム265は、記憶装置内のフラッシュメモリユニットの存在を認識する。当業者であれば理解するように、他の記憶装置検出機構が使用されてもよい。
次に、移行コンピュータ300について説明する。図1(f)に示す本発明のシステムの実施形態では、移行モジュールが、移行プログラムを実行する移行コンピュータ300を使って実施される。移行コンピュータ300は、FCSW55を介してデータネットワークに接続されている。移行コンピュータ300は、プログラムとデータを記憶するメモリ320と、メモリ320に記憶されたプログラムを実行するCPU310を含む。移行コンピュータ300は、さらに、移行コンピュータ300をデータネットワーク50に接続するFCIF350と、移行コンピュータ300を管理ネットワーク90に接続するイーサIF390を含む。
メモリ320は、少なくとも1つのプログラムを記憶しており、これは、CPU310によって実行される。本発明のシステムの一実施形態では、メモリ320は、ある記憶ボリュームから別の記憶ボリュームにデータを移行するデータ移行プログラム321を記憶している。
次に、本発明のシステムの例示的実施形態のプロセスフローについて説明する。具体的には、説明する本発明のシステムの実施形態では、記憶装置100は、記憶ボリューム111を組み込んでいる。ボリューム111は、ホストコンピュータ10に接続されている。ホストコンピュータ10は、ボリューム111にデータを書き込み、このボリュームからデータを読み取ることができる。このために、ホストコンピュータ10からの適切な読取りおよび書込み要求が、データネットワーク50を介して記憶コントローラ150に送られる。記憶コントローラ150内で実行される応答プログラム162は、前述の要求を受け取り、それらを実行する。やはり記憶コントローラ150内で実行されるアクセスログ報告プログラム161は、ボリューム番号、コマンド情報(読取りまたは書込み)、コマンドと関連付けられるデータのLBA(論理ブロックアドレス)、コマンドのブロック長、コマンド受け取り時刻、コマンド応答時刻をログに記録する。図2に、前述のログ情報を記憶する表の例示的実施形態を示す。この表示記憶される情報の分析により、対応するデータのアクセスパターンに関する情報がもたらされる。アクセスパターン情報は、データアクセスがランダムであるか、それとも順次であるか、読取り操作と書込み操作の比率、ならびにアクセス頻度およびアクセスなし期間を示し得る。
図3に、図1に示すシステムの動作フローの例を示す。この動作フローは、記憶装置の寿命の終わりにかけて行われる。
ステップ3000:検出プログラム521が、各記憶装置を周期的にポーリングし、その残存寿命をチェックする。
ステップ3010:残存寿命報告プログラム160が、検出プログラム521に「残存寿命」を報告する。
ステップ3020:検出プログラム521が、寿命が終わりに近づいている記憶装置を検出した場合、プロセスは、ステップ3030に進む。
ステップ3030:検出プログラム521は、コンピュータによる記憶システム内の、長い残存寿命を有する記憶ユニットを探し出す。
ステップ3040:残存寿命報告プログラム260が、検出プログラム521に記憶ユニットの「残存寿命」を報告する。
ステップ3050:フラッシュメモリユニット確認プログラム526が、発見された記憶ユニット内のフラッシュメモリユニットの有無を判定する。図示の実施形態では、発見された記憶ユニットは、記憶装置200内にある。フラッシュメモリユニットが存在しない場合、プロセスはステップ3060に進む。フラッシュメモリユニットが存在する場合、プロセスは、ステップ3100に進む。
ステップ3060:ボリューム割り振り要求プログラム523が、発見された記憶装置内の新しいボリューム割り振りを要求する。本発明のシステムの図示の実施形態では、新しいボリューム割り振りは、管理ネットワーク90を介して記憶装置200内で要求される。
ステップ3070:ボリューム移行要求プログラム525が、寿命が尽きようとしている旧いボリュームから発見された記憶ユニット内の新しいボリュームへのデータ移行を要求する。データ移行要求は、管理ネットワーク90を介してボリューム移行プログラム321に送られる。
ステップ3080:パス交代要求プログラム527が、旧いボリューム111に関連付けられたアクセスパスから、新しいボリューム211に関連付けられたアクセスパスへのアクセスパスの交代を要求する。アクセスパスは、移行プロセスの完了時に変更される。
ステップ3100:アクセスログ収集プログラム522が、アクセスログ報告プログラム161からログ情報を収集する。
ステップ3110:ボリューム分析プログラム526が、ログ情報を分析し、アクセスログ分析から収集された情報に基づいて、ボリューム領域をいくつかの部分(チャンク)に分割する。ボリュームが正確にはどのようにしてチャンクに分割されるについては後述する。
ステップ3120:ボリューム割り振り要求プログラム523が、ボリューム領域の各部分ごとに、発見された記憶装置内の新しいボリューム割り振りを要求する。例えば、ボリュームが6つの部分に分割される場合、ボリューム割り振りが6回繰り返される。各チャンクが、HDDプールまたはフラッシュプールから割り振られる。前述のチャンクの割り振りは、ログ分析の結果に基づくものである。ボリューム割り振り要求は、ボリュームの特定の部分が、HDD記憶媒体上で割り振られるべきか、それともフラッシュ記憶媒体上で割り振られるべきかを示す識別子を含む。どちらのメディアプール(HDDまたはフラッシュ)が特定のデータにより好ましいかをシステムがどのようにして判定するかについては、以下で詳細に説明する。
ステップ3130:ボリューム連結要求プログラム524が、各チャンクを連結して1つの記憶ボリュームにする。連結されたボリュームには、ホストコンピュータ10上で実行されるアプリケーションプログラム13からのみアクセスすることができる。
ステップ3140:ボリューム移行要求プログラム525が、寿命が尽きようとしている記憶装置内のボリュームからステップ3130で連結されたボリュームへのデータの移行を要求する。
ステップ3150:パス交代要求プログラム527が、ボリューム111からボリューム211へのデータ記憶ボリュームの変更を反映するように、データアクセスパスの変更を要求する。
次に、ボリュームがどのようにしてチャンクに分割されるかについて、および好ましい記憶プールがどのようにして判定されるかについて詳細に説明する。記憶ボリュームは、ボリューム分析プログラム526によってチャンクに分割される。本発明の1つの例示的実施形態では、ボリュームは、6つのチャンクに分割され、各チャンクは同じサイズを有する。当業者であれば理解するように、このチャンクのサイズと数は、本発明の概念にとってあまり重要ではない。図4に、アクセスログ分析の結果を保持する表の例示的実施形態を示す。この表は、アクセスログ収集プログラム522によって作成される。
ボリューム分析プログラム526は、図5に示すマッピング表529を使用する。マッピング表529は、メモリ520に記憶されている。ボリューム分析プログラム526は、結果保持表528内のレコードで表される特定のボリュームチャンクの特性を、マッピング表529内の適切なレコードと比較する。前述の比較結果に基づき、ボリューム分析プログラム526は、特定のチャンクがHDDプールから割り振られるべきか、それともフラッシュプールから割り振られるべきか判定する。具体的には、表の「チャンク割り振りプール」の列に好ましい記憶プールの種類が示されている。
図6に、6つのチャンクに分割されている記憶ボリュームの例示的実施形態を示す。ボリューム分析プログラム526によるログ情報分析の結果として、特定のプールの種類(フラッシュまたはHDD)を有する特定のプールが各チャンクにリンクされる。ボリューム割り振り要求プログラム523は、ボリューム割り振りプログラム263にボリューム割り振り要求を送る。この要求は、所望のプールの種類情報を指定する。この情報は、割り振り要求に関連付けられる属性として指定されてもよい。プール属性情報は、HDDプールまたはフラッシュプールを示す属性を含む。受け取った割り振り要求に応答して、チャンクが記憶装置200内で割り振られる。チャンクが記憶ボリュームの部分であり、ボリューム自体ではない点に留意することは重要である。1つのボリュームは、いくつかのチャンクで構成されている。
図示の例では、それぞれのプールから6つのチャンクが割り振られた後で、ボリューム連結要求プログラム524は、ボリューム連結プログラム264にボリューム連結要求を送る。ボリューム連結プログラム264は、6つのチャンクを1つに連結する。この連結は特定の順序で行われる。連結の結果として、ボリューム211が作成される。図6に示すボリューム211の例は、3つのフラッシュチャンクと3つのHDDチャンクで構成されている。
その後、ボリューム移行要求プログラム525は、データ移行プログラム321に移行要求を送る。この要求に従って、ボリューム111に記憶されたデータが、ブロックごとのデータコピー操作によって、ボリューム211に移行される。
最後に、管理コンピュータ500内のパス交代要求プログラム527は、ホストコンピュータ10内のアクセスパス管理プログラム14にパス交代要求を送る。受け取った要求に応答して、アクセスパス管理プログラム14は、データアクセスパスを、ボリューム111からボリューム211に切り換える。ボリューム211は、HDDチャンクとフラッシュチャンクで構成されており、ホストコンピュータ10からデータアクセスパターンに従って最適化される。したがって、ボリューム211のデータアクセス性能は、ボリューム111のものより高いことが期待される。
フラッシュメディアの容量には限界があるため、本発明の一実施形態では、優先度システムを使って、フラッシュメモリプールからチャンクが割り振られてもよい。マッピング表529の列「優先度」は、フラッシュメモリの割り振りの優先度レベルを示す。当業者であれば理解するように、フラッシュメモリユニットの容量には限界がある。しかも、フラッシュメモリの容量は、しばしば、HDDユニットの容量より小さい。
例えば、フラッシュプールとHDDプールの容量比が2:4であり、管理者が、管理コンピュータ500に、この比を維持するように指示すると、ボリュームチャンクの割り振り時に、前述の「優先度」列が調べられる。図7に、各チャンクの優先度に基づく記憶ボリューム割り振りを示す。2:4の割り振り比率を維持するために、チャンク#4が、フラッシュプールにではなくHDDプールに割り振られる。というのは、チャンク#4の優先度が、チャンク#1または#2の優先度より低いからである。よって、チャンク#4は、HDDプールを使って割り振られる。
次に、本発明のシステムのいくつかの別の実施形態について説明する。図8に、本発明の概念を実施する情報システムの別の例を示す。図8に示す実施形態では、データ移行モジュールが、FCSW55上で実行されるデータ移行プログラム56によって実施される。加えて、ボリューム連結プログラム57とアクセスパス管理プログラム58も、FCSW55を使って実施される。イーサIF159が、管理コンピュータ500とのやりとりを可能にするために追加される。図8に示すシステムの他のすべての要素は、一般に、詳細に前述した、図1に示すシステムの対応する要素と等しい。



図9に、本発明の概念による情報システムの別の例示的実施形態を示す。図9に示すシステム例では、データ移行モジュールは、管理コンピュータ500上で実行されるデータ移行プログラム558として実施される。図9に示すシステムの他のすべての要素は、一般に、詳細に前述した、図1に示すシステムの対応する要素と等しい。
図10に、本発明の概念による情報システムの別の例示的実施形態を示す。図10に示すシステムでは、ボリューム連結プログラム16が、ホストコンピュータ10内に配置されている。図10に示すシステムの他のすべての要素は、一般に、詳細に前述した、図1に示すシステムの対応する要素と等しい。
図11に、本発明の概念による情報システムの別の例示的実施形態を示す。図11に示すシステムでは、記憶装置100が記憶装置200に接続されている。外部記憶管理プログラム266と外部記憶のための追加のFCIF256が配置されている。データ移行モジュールは、記憶装置200内で実行されるデータ移行プログラム267を使って実施される。図11に示すシステムの他のすべての要素は、一般に、詳細に前述した、図1に示すシステムの対応する要素と等しい。
図12は、本発明の方法の一実施形態が実施され得るコンピュータ/サーバシステム1200の一実施形態を示すブロック図である。システム1200は、コンピュータ/サーバプラットフォーム1201と、周辺装置1202と、ネットワークリソース1203を含む。
コンピュータプラットフォーム1201は、コンピュータプラットフォーム1201の様々な部分にまたがり、これらの間で情報をやりとりするデータバス1204またはその他の通信機構と、情報を処理し、その他の計算処理および制御タスクを実行する、データバス1204で結合されたプロセッサ1205を含んでいてもよい。また、コンピュータプラットフォーム1201は、プロセッサ1205によって実行される命令のみならず様々な情報も記憶する、バス1204に結合された、ランダムアクセスメモリ(RAM)やその他の動的記憶などの揮発性記憶1206も含む。また、揮発性記憶1206は、プロセッサ1205による命令実行時に、一時変数その他の中間情報を記憶するのにも使用され得る。コンピュータプラットフォーム1201は、さらに、基本入出力システム(BIOS)など、プロセッサ1205のための静的情報および命令、ならびに様々なシステム構成パラメータを記憶する、バス1204に結合された読取り専用メモリ(ROMまたはEPROM)1207またはその他の静的記憶装置を含んでいてもよい。情報と命令を記憶するために、磁気ディスク、光ディスク、ソリッドステートフラッシュメモリデバイスなどの永続的記憶装置1208が設けられ、バス1204に結合されている。
コンピュータプラットフォーム1201は、コンピュータプラットフォーム1201のシステム管理者またはユーザに情報を表示するために、バス1204を介して、ブラウン管(CRT)、プラズマディスプレイ、液晶ディスプレイ(LCD)などのディスプレイ1209に結合されていてもよい。プロセッサ1205に情報とコマンド選択を伝えるために、英数字その他のキーを含む入力装置1210が、バス1204に結合されている。別の種類のユーザ入力装置が、プロセッサ1205に方向情報とコマンド選択を伝え、ディスプレイ1209上のカーソルの動きを制御するための、マウス、トラックボール、カーソル方向キーなどのカーソル制御装置1211である。この入力装置は、通常、装置に平面内の位置を指定させる、2軸、すなわち、第1の軸(xなど)と第2の軸(yなど)の自由度を有する。
コンピュータプラットフォーム1201に追加の、または取り外し可能な記憶容量を提供するために、バス1204を介してコンピュータプラットフォーム1201に外部記憶装置1212が接続されてもよい。コンピュータシステム1200の一実施形態では、外部取り外し可能記憶装置1212を使って、他のコンピュータシステムとのデータ交換が円滑化され得る。
本発明は、本明細書で述べる技法を実施するコンピュータシステム1200の使用に関するものである。一実施形態では、本発明のシステムは、コンピュータプラットフォーム1201などのマシン上に存在し得る。本発明の一実施形態によれば、本明細書で述べる技法は、プロセッサ1205が、揮発性メモリ1206に含まれる1つまたは複数の命令の1つまたは複数のシーケンスを実行したことに応答して、コンピュータシステム1200によって実行される。かかる命令は、永続的記憶装置1208など別のコンピュータ可読媒体から揮発性メモリ1206に読み込まれてもよい。揮発性メモリ1206に含まれる命令シーケンスの実行が、プロセッサ1205に、本明細書で述べるプロセスステップを実行させる。別の実施形態では、配線で接続された回路を、ソフトウェア命令の代わりに、またはソフトウェアと組み合わせて使って、本発明が実施されてもよい。よって、本発明の実施形態は、ハードウェア回路とソフトウェアのどんな特定の組み合わせにも限定されない。
本明細書で使用する「コンピュータ可読媒体」という用語は、実行するためにプロセッサ1205に命令を提供することに関与する任意の媒体を指す。コンピュータ可読媒体は、本明細書で述べる方法および/または技法のいずれかを実施する命令を保持し得る機械可読媒体の一例にすぎない。かかる媒体は、それだけに限らないが、不揮発性メディア、揮発性メディア、および伝送媒体を含めて、多くの形を取り得る。不揮発性メディアには、例えば、記憶装置1208など、光ディスクや磁気ディスクが含まれる。揮発性メディアには、揮発性記憶1206など、動的メモリが含まれる。伝送媒体には、データバス1204を構成する配線を含め、同軸ケーブル、銅線、および光ファイバが含まれる。また、伝送媒体は、電波および赤外線データ通信時に生成されるものなど、音響または光波の形も取り得る。
コンピュータ可読媒体の一般的な形には、例えば、フロッピー(登録商標)ディスク、フレキシブルディスク、ハードディスク、磁気テープ、または他の任意の磁気媒体、CD−ROM、他の任意の光媒体、パンチカード、紙テープ、孔のパターンを有する他の任意の物理媒体、RAM、PROM、EPROM、フラッシュEPROM、フラッシュドライブ、メモリカード、他の任意のメモリチップまたはカートリッジ、以下で説明する搬送波、あるいはコンピュータが読み取ることのできる他の任意の媒体が含まれる。
様々な形のコンピュータ可読媒体が、実行のためにプロセッサ1205に1つまたは複数の命令の1つまたは複数のシーケンスを搬送するのに関与し得る。例えば、命令は、最初に、リモートコンピュータから磁気ディスクで搬送されてもよい。代替として、リモートコンピュータが、その動的メモリに命令をロードし、その命令を、モデムを使って電話回線で送ることもできる。コンピュータシステム1200にとってローカルのモデムが、電話回線でデータを受け取り、赤外線送信機を使ってこのデータを赤外線信号に変換することができる。赤外線検出器が、赤外線信号で搬送されたデータを受け取り、適切な回路がこのデータをデータバス1204に乗せることができる。バス1204は、データを揮発性記憶1206に搬送し、そこからプロセッサ1205が、命令を取り出して、実行する。揮発性メモリ1206によって受け取られる命令は、任意選択で、プロセッサ1205による実行の前または後に、永続的記憶装置1208に記憶されてもよい。また、命令は、当分野でよく知られている様々なネットワークデータ通信プロトコルを使って、インターネットを介して、コンピュータプラットフォーム1201にダウンロードされてもよい。
また、コンピュータプラットフォーム1201は、データバス1204に結合されたネットワークインターフェースカード1213など、通信インターフェースも含む。通信インターフェース1213は、ローカルネットワーク1215に接続されているネットワークリンク1214に結合する双方向データ通信を提供する。例えば、通信インターフェース1213は、対応する種類の電話回線へのデータ通信接続を提供する総合サービスディジタルネットワーク(ISDN)カードまたはモデムとすることができる。別の例として、通信インターフェース1213は、互換性を有するLANへのデータ通信接続を提供するローカルエリアネットワークカード(LAN NIC)とすることもできる。また、ネットワークの実現には、よく知られている802.11a、802.11b、802.11g、ブルートゥースといった無線リンクも使用され得る。かかる実現形態のいずれかとして、通信インターフェース1213は、様々な種類の情報を表すディジタルデータストリームを搬送する電気信号、電磁信号または光信号を送信し、受信する。
ネットワークリンク1214は、通常、1つまたは複数のネットワークを介して他のネットワークリソースへのデータ通信を提供する。例えば、ネットワークリンク1214は、ローカルネットワーク1215を介してホストコンピュータ1216、あるいはネットワーク記憶/サーバ1222への接続を提供し得る。加えて、または代替として、ネットワークリンク1213は、ゲートウェイ/ファイアウォール1217を介して、インターネットなど、広域またはグローバルネットワーク1218に接続してもよい。よって、コンピュータプラットフォーム1201は、リモートネットワーク記憶/サーバ1219など、インターネット1218上のどこかに位置するネットワークリソースにアクセスすることができる。他方、ローカルエリアネットワーク1215および/またはインターネット1218上のどこかに位置するクライアントから、コンピュータプラットフォーム1201にアクセスされてもよい。ネットワーククライアント1220および1221は、これら自体が、プラットフォーム1201に類似のコンピュータプラットフォームに基づいて実施されてもよい。
ローカルネットワーク1215もインターネット1218もディジタルデータストリームを搬送する電気信号、電磁信号または光信号を使用する。様々なネットワークを通る信号と、コンピュータプラットフォーム1201との間でディジタルデータを搬送するネットワークリンク1214上と通信インターフェース1213を通る信号は、情報を運ぶ搬送波の形の例である。
コンピュータプラットフォーム1201は、インターネット1218とローカルネットワーク1215を含む様々なネットワーク、ネットワークリンク1214および通信インターフェース1213を介して、メッセージを送信し、プログラムコードを含むデータを受信することができる。インターネットの例では、システム1201がネットワークサーバとして働くとき、システム1201は、インターネット1218、ゲートウェイ/ファイアウォール1217、ローカルネットワーク1215および通信インターフェース1213を介して、クライアント1220および/または1221上で走るアプリケーションプログラムのために、要求されたコードまたはデータを送信し得る。同様に、システム1201は、他のネットワークリソースからコードを受け取ってもよい。
受け取られるコードは、受け取られるときにプロセッサ1205によって実行され、かつ/または、永続的記憶装置1208または揮発性記憶装置1206にそれぞれ、あるいは後で実行するために他の不揮発性記憶に記憶される。このようにして、コンピュータシステム1201は、搬送波の形でアプリケーションコードを獲得してもよい。
最後に、本明細書で述べるプロセスおよび技法は、どんな特定の装置に固有に関連するものでもなく、構成要素の任意の適切な組み合わせによって実施され得ることを理解すべきである。さらに、様々な種類の汎用装置が、本明細書で述べる教示に従って使用され得る。また、本明細書で述べる方法ステップを実行する専用の装置を構築することが有利であることも分かる。本発明を、個々の例との関連で説明しているが、これらの例は、あらゆる点で、限定のためではなく例示のためのものである。ハードウェア、ソフトウェア、およびファームウェアの多様な組み合わせが、本発明を実施するのに適することを、当業者は理解するであろう。例えば、前述のソフトウェアは、アセンブラ、C/C++、Perl、Shell、PHP、Java(登録商標)などといった、多種多様なプログラミングまたはスクリプト言語で実施され得る。
さらに、本発明の他の実現形態も、本明細書で開示する本発明の仕様および手法を考察すれば、当業者には明らかになるであろう。前述の実施形態の様々な態様および/または構成要素は、コンピュータによる記憶システムにおいて、単独で、または任意の組み合わせとして使用され得る。仕様および各例は、単なる例示とみなすべきであり、本発明の厳密な範囲および精神は、添付の特許請求の範囲によって示されるものである。
本発明の概念の一実施形態が実施され得る情報記憶システムの例の様々な側面を示す図である。 本発明の概念の一実施形態が実施され得る情報記憶システムの例の様々な側面を示す図である。 本発明の概念の一実施形態が実施され得る情報記憶システムの例の様々な側面を示す図である。 本発明の概念の一実施形態が実施され得る情報記憶システムの例の様々な側面を示す図である。 本発明の概念の一実施形態が実施され得る情報記憶システムの例の様々な側面を示す図である。 本発明の概念の一実施形態が実施され得る情報記憶システムの例の様々な側面を示す図である。 アクセスログ情報を記憶する表299の例示的実施形態を示す図である。 図1に示すコンピュータによる記憶システムのプロセスフローの例を示す図である。 アクセスログ分析の結果を保持する表の例示的実施形態を示す図である。 マッピング表の例示的実施形態を示す図である。 記憶ボリュームの例示的実施形態を示す図である。 優先度に基づく記憶ボリューム割り振りを示す図である。 本発明の概念による情報システムの代替の例示的実施形態を示す図である。 本発明の概念による情報システムの代替の例示的実施形態を示す図である。 本発明の概念による情報システムの代替の例示的実施形態を示す図である。 本発明の概念による情報システムの代替の例示的実施形態を示す図である。 本発明のシステムが実施され得るコンピュータプラットフォームの例示的実施形態を示す図である。

Claims (33)

  1. コンピュータによるデータ記憶システムであって、
    データを記憶する第1の記憶ボリュームを備える第1の記憶装置と、
    ネットワークを介して前記第1の記憶装置に接続され、データアクセスパターンに従って前記データにアクセスするホストコンピュータと、
    前記第1の記憶装置に接続され、記憶コントローラと、第1のメディアプールと、前記第1のメディアプールとは異なる特性の第2のメディアプールとを備える第2の記憶装置と、
    前記データを前記第1の記憶装置から前記第2の記憶装置に移行させるデータ移行操作を開始する管理モジュールとを備え、
    前記管理モジュールは、
    前記データ移行操作の実行時に、
    前記ホストコンピュータから前記第1の記憶ボリュームに対するアクセスのログ情報を収集し、収集したログ情報を分析して分析結果を取得し、取得した分析結果に基づいて、前記第1の記憶ボリュームを複数のチャンクに分割し、分割した複数のチャンクに割り振るべきメディアプールの種類を前記第1のメディアプール又は前記第2のメディアプールのうちの何れかから判定し、判定した前記複数のチャンクに割り振るべきメディアプールの情報をボリューム割り振り要求に含ませて前記第2の記憶装置に送信し、
    前記第2の記憶装置は、
    前記管理モジュールからのボリューム割り振り要求を受け付けると、前記記憶コントローラにより、前記複数のチャンクに割り振るべきメディアプールを前記第1のメディアプール又は前記第2のメディアプールのうちの何れかから選択し、選択したメディアプールから前記複数のチャンクの数に対応する複数のボリュームを割り振り、割り振った複数のボリュームを連結することにより1つの第2の記憶ボリュームを作成し、作成した前記第2の記憶ボリューム前記データのコピーを記憶する
    ことを特徴とするコンピュータによるデータ記憶システム。
  2. 前記第1のメディアプールはHDDプールであり、
    前記第2のメディアプールはフラッシュメディアプールである
    請求項1に記載のコンピュータによるデータ記憶システム。
  3. 前記第2の記憶装置は、
    前記データを前記第1の記憶装置の前記第1の記憶ボリュームから前記第2の記憶装置の前記第2の記憶ボリュームに移行させる前記データ移行操作を開始する移行モジュールを備える
    請求項1に記載のコンピュータによるデータ記憶システム。
  4. 前記第2の記憶ボリュームは、
    少なくとも1つのフラッシュメモリチャンクと少なくとも1つのHDDチャンクとを備える
    請求項1に記載のコンピュータによるデータ記憶システム。
  5. 前記データアクセスパターンは、
    データアクセスがランダムであるか、それともシーケンシャルであるかを示す
    請求項1に記載のコンピュータによるデータ記憶システム。
  6. 前記データアクセスパターンは、
    データ書込みとデータ読取りの比率を含む
    請求項1に記載のコンピュータによるデータ記憶システム。
  7. 前記データアクセスパターンは、
    データアクセス頻度を含む
    請求項1に記載のコンピュータによるデータ記憶システム。
  8. 前記データアクセスパターンは、
    アクセスなし期間を含む
    請求項1に記載のコンピュータによるデータ記憶システム。
  9. 前記ホストコンピュータによる前記データの前記アクセスパターンを記述する情報を記憶するログ記憶装置を備え、
    前記第2の記憶装置は、
    前記ログ記憶装置の内容に基づいて前記データアクセスパターンを決定する
    請求項1に記載のコンピュータによるデータ記憶システム。
  10. 前記第1と第2の記憶装置は、
    それぞれ、前記第1のメディアプールと前記第2のメディアプールのうちの少なくとも1つのうちの記憶ユニットの残存寿命を決定する寿命報告モジュールを備える
    請求項1に記載のコンピュータによるデータ記憶システム。
  11. 前記ホストコンピュータは、
    前記ホストコンピュータの前記第1の記憶装置と前記第2の記憶装置へのアクセスを管理するアクセスパス管理モジュールを備える
    請求項1に記載のコンピュータによるデータ記憶システム。
  12. 前記アクセスパターンに対応するメディアプールの種類の指定を含むマッピング表を記憶するメモリモジュールを備える
    請求項1に記載のコンピュータによるデータ記憶システム。
  13. 前記第1のメディアプールの前記少なくとも一部分と前記第2のメディアプールの前記少なくとも一部分は、優先度に基づいて前記第2の記憶ボリュームに割り振られ、
    前記優先度は、前記データアクセスパターンに基づいて決定される
    請求項1に記載のコンピュータによるデータ記憶システム。
  14. 前記第1の記憶装置と、前記第2の記憶装置と、前記ホストコンピュータ接続されるネットワークスイッチを備え
    前記ネットワークスイッチは、
    前記データを前記第1の記憶装置の前記第1の記憶ボリュームから前記第2の記憶装置の前記第2の記憶ボリュームに移行させる移行モジュールを備える
    請求項1に記載のコンピュータによるデータ記憶システム。
  15. 前記ネットワークスイッチは、
    前記第1のメディアプールの前記少なくとも一部分と前記第2のメディアプールの前記少なくとも一部分を連結して前記第2の記憶ボリュームにするボリューム連結モジュールを備える
    請求項14に記載のコンピュータによるデータ記憶システム。
  16. 前記ネットワークスイッチは、
    前記ホストコンピュータの前記第1の記憶装置と前記第2の記憶装置へのアクセスを管理するアクセスパス管理モジュールを備える
    請求項14に記載のコンピュータによるデータ記憶システム。
  17. ネットワークスイッチを備え、
    前記第1の記憶装置は、
    前記ネットワークスイッチを介して前記第2の記憶装置に接続される
    請求項1に記載のコンピュータによるデータ記憶システム。
  18. 前記ネットワークスイッチは、
    前記データ移行操作を開始する
    請求項17に記載のコンピュータによるデータ記憶システム。
  19. 前記ネットワークスイッチは
    ファイバチャネルスイッチである
    請求項17に記載のコンピュータによるデータ記憶システム。
  20. 前記第1の記憶装置は、
    前記第2の記憶に直接接続される
    請求項1に記載のコンピュータによるデータ記憶システム。
  21. 前記データ移行操作は、
    前記第2の記憶装置によって開始される
    請求項1に記載のコンピュータによるデータ記憶システム。
  22. コンピュータによるデータ記憶システムの方法であって、
    前記データ記憶システムは、
    データを記憶する第1の記憶ボリュームを備える第1の記憶装置と、
    ネットワークを介して前記第1の記憶装置に接続され、データアクセスパターンに従って、前記データにアクセスするホストコンピュータと、
    前記第1の記憶装置に接続され、記憶コントローラと、第1のメディアプールと、前記第1のメディアプールとは異なる特性の第2のメディアプールとを備える第2の記憶装置と、
    前記データを前記第1の記憶装置から前記第2の記憶装置に移行させるデータ移行操作を開始する管理モジュールとを備え、
    前記管理モジュールが、
    前記データ移行操作の実行時に、
    前記ホストコンピュータから前記第1の記憶ボリュームに対するアクセスのログ情報を収集し、収集したログ情報を分析して分析結果を取得し、取得した分析結果に基づいて、前記第1の記憶ボリュームを複数のチャンクに分割し、分割した複数のチャンクに割り振るべきメディアプールの種類を前記第1のメディアプール又は前記第2のメディアプールのうちの何れかから判定し、判定した前記複数のチャンクに割り振るべきメディアプールの情報をボリューム割り振り要求に含ませて前記第2の記憶装置に送信する第1のステップと、
    前記第2の記憶装置が、
    前記管理モジュールからのボリューム割り振り要求を受け付けると、前記記憶コントローラにより、前記複数のチャンクに割り振るべきメディアプールを前記第1のメディアプール又は前記第2のメディアプールのうちの何れかから選択し、選択したメディアプールから前記複数のチャンクの数に対応する複数のボリュームを割り振り、割り振った複数のボリュームを連結することにより1つの第2の記憶ボリュームを作成し、作成した前記第2の記憶ボリュームに前記データのコピーを記憶する第2のステップと
    を備えることを特徴とする方法。
  23. 前記第1のメディアプールはHDDプールであり、
    前記第2のメディアプールはフラッシュメディアプールである
    請求項22に記載の方法。
  24. 前記データアクセスパターンは、
    データアクセスがランダムであるか、それともシーケンシャルであるかを示す
    請求項22に記載の方法。
  25. 前記データアクセスパターンは、
    データ書込みとデータ読取りの比率を含む
    請求項22に記載の方法。
  26. 前記データアクセスパターンは、
    データアクセス頻度を含む
    請求項22に記載の方法。
  27. 前記データアクセスパターンは、
    アクセスなし期間を含む
    請求項22に記載の方法。
  28. コンピュータに、
    データを記憶する第1の記憶ボリュームを備える第1の記憶装置と、
    ネットワークを介して前記第1の記憶装置に接続され、データアクセスパターンに従って、前記データにアクセスするホストコンピュータと、
    前記第1の記憶装置に接続され、記憶コントローラと、第1のメディアプールと、前記第1のメディアプールとは異なる特性の第2のメディアプールとを備える第2の記憶装置と、
    前記データを前記第1の記憶装置から前記第2の記憶装置に移行させるデータ移行操作を開始する管理モジュールとを備えたデータ記憶システムにおいて、
    前記管理モジュールが、
    前記データ移行操作の実行時に、
    前記ホストコンピュータから前記第1の記憶ボリュームに対するアクセスのログ情報を収集し、収集したログ情報を分析して分析結果を取得し、取得した分析結果に基づいて、前記第1の記憶ボリュームを複数のチャンクに分割し、分割した複数のチャンクに割り振るべきメディアプールの種類を前記第1のメディアプール又は前記第2のメディアプールのうちの何れかから判定し、判定した前記複数のチャンクに割り振るべきメディアプールの情報をボリューム割り振り要求に含ませて前記第2の記憶装置に送信する手順と、
    前記第2の記憶装置が、
    前記管理モジュールからのボリューム割り振り要求を受け付けると、前記記憶コントローラにより、前記複数のチャンクに割り振るべきメディアプールを前記第1のメディアプール又は前記第2のメディアプールのうちの何れかから選択し、選択したメディアプールから前記複数のチャンクの数に対応する複数のボリュームを割り振り、割り振った複数のボリュームを連結することにより1つの第2の記憶ボリュームを作成し、作成した前記第2の記憶ボリュームに前記データのコピーを記憶する手順と
    を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
  29. 前記第1のメディアプールはHDDプールであり、
    前記第2のメディアプールはフラッシュメディアプールである
    請求項28に記載の記録媒体。
  30. 前記データアクセスパターンは、
    データアクセスがランダムであるか、それともシーケンシャルであるかを示す
    請求項28に記載の記録媒体。
  31. 前記データアクセスパターンは、
    データ書込みとデータ読取りの比率を含む
    請求項28に記載の記録媒体。
  32. 前記データアクセスパターンは、
    データアクセス頻度を含む
    請求項28に記載の記録媒体。
  33. 前記データアクセスパターンは、
    アクセスなし期間を含む
    請求項28に記載の記録媒体。
JP2007167387A 2006-07-27 2007-06-26 記憶ボリューム間でデータを移行する方法および装置 Expired - Fee Related JP5202884B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/495,321 US7555575B2 (en) 2006-07-27 2006-07-27 Method and apparatus for migrating data between storage volumes of different data pattern
US11/495,321 2006-07-27

Publications (2)

Publication Number Publication Date
JP2008033911A JP2008033911A (ja) 2008-02-14
JP5202884B2 true JP5202884B2 (ja) 2013-06-05

Family

ID=38535246

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007167387A Expired - Fee Related JP5202884B2 (ja) 2006-07-27 2007-06-26 記憶ボリューム間でデータを移行する方法および装置

Country Status (3)

Country Link
US (1) US7555575B2 (ja)
EP (1) EP1873624A3 (ja)
JP (1) JP5202884B2 (ja)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8200887B2 (en) * 2007-03-29 2012-06-12 Violin Memory, Inc. Memory management system and method
US9384818B2 (en) 2005-04-21 2016-07-05 Violin Memory Memory power management
JP4749255B2 (ja) * 2006-07-03 2011-08-17 株式会社日立製作所 複数種類の記憶デバイスを備えたストレージシステムの制御装置
US7747813B2 (en) * 2006-11-24 2010-06-29 Sandforce, Inc. Multi-memory device system and method for managing a lifetime thereof
US7809900B2 (en) * 2006-11-24 2010-10-05 Sandforce, Inc. System, method, and computer program product for delaying an operation that reduces a lifetime of memory
US7904619B2 (en) 2006-11-24 2011-03-08 Sandforce, Inc. System, method, and computer program product for reducing memory write operations using difference information
US7904672B2 (en) 2006-12-08 2011-03-08 Sandforce, Inc. System and method for providing data redundancy after reducing memory writes
US8560760B2 (en) * 2007-01-31 2013-10-15 Microsoft Corporation Extending flash drive lifespan
US7657572B2 (en) 2007-03-06 2010-02-02 Microsoft Corporation Selectively utilizing a plurality of disparate solid state storage locations
US11010076B2 (en) 2007-03-29 2021-05-18 Violin Systems Llc Memory system with multiple striping of raid groups and method for performing the same
US9632870B2 (en) * 2007-03-29 2017-04-25 Violin Memory, Inc. Memory system with multiple striping of raid groups and method for performing the same
US20080244203A1 (en) * 2007-03-30 2008-10-02 Gorobets Sergey A Apparatus combining lower-endurance/performance and higher-endurance/performance information storage to support data processing
JP2008310762A (ja) * 2007-06-18 2008-12-25 Toshiba Corp 携帯型情報処理装置
JP2009043030A (ja) * 2007-08-09 2009-02-26 Hitachi Ltd ストレージシステム
US20090083021A1 (en) * 2007-09-25 2009-03-26 Chai Huat Gan Emulation of ahci-based solid state drive using nand interface
US7849275B2 (en) 2007-11-19 2010-12-07 Sandforce, Inc. System, method and a computer program product for writing data to different storage devices based on write frequency
US7903486B2 (en) 2007-11-19 2011-03-08 Sandforce, Inc. System, method, and computer program product for increasing a lifetime of a plurality of blocks of memory
JP2011515727A (ja) 2008-02-12 2011-05-19 ネットアップ,インコーポレイテッド ハイブリッド媒体ストレージシステムアーキテクチャ
JP4496265B2 (ja) * 2008-11-28 2010-07-07 株式会社東芝 情報処理装置及び故障予兆判定方法
US8195878B2 (en) * 2009-02-19 2012-06-05 Pmc-Sierra, Inc. Hard disk drive with attached solid state drive cache
US8266503B2 (en) 2009-03-13 2012-09-11 Fusion-Io Apparatus, system, and method for using multi-level cell storage in a single-level cell mode
WO2010144587A2 (en) 2009-06-12 2010-12-16 Violin Memory, Inc. Memory system having persistent garbage collection
US8516166B2 (en) 2009-07-20 2013-08-20 Lsi Corporation System, method, and computer program product for reducing a rate of data transfer to at least a portion of memory
JP5984118B2 (ja) 2009-12-04 2016-09-06 マーベル ワールド トレード リミテッド 格納デバイスの仮想化
US8555022B1 (en) 2010-01-06 2013-10-08 Netapp, Inc. Assimilation of foreign LUNS into a network storage system
US8661184B2 (en) 2010-01-27 2014-02-25 Fusion-Io, Inc. Managing non-volatile media
US8380915B2 (en) * 2010-01-27 2013-02-19 Fusion-Io, Inc. Apparatus, system, and method for managing solid-state storage media
US8854882B2 (en) 2010-01-27 2014-10-07 Intelligent Intellectual Property Holdings 2 Llc Configuring storage cells
WO2011094454A2 (en) 2010-01-27 2011-08-04 Fusion-Io, Inc. Apparatus, system, and method for determining a read voltage threshold for solid-state storage media
US9245653B2 (en) 2010-03-15 2016-01-26 Intelligent Intellectual Property Holdings 2 Llc Reduced level cell mode for non-volatile memory
US8903906B2 (en) * 2010-03-16 2014-12-02 Brother Kogyo Kabushiki Kaisha Information communications system, node device, method of communicating contents, computer readable recording medium storing a program
JP2010157266A (ja) * 2010-04-09 2010-07-15 Toshiba Corp 情報処理装置、故障予兆判定方法及びプログラム
US8700841B2 (en) 2010-04-19 2014-04-15 International Business Machines Corporation Sub-LUN input/output profiling for SSD devices
JP5641900B2 (ja) * 2010-11-29 2014-12-17 キヤノン株式会社 管理装置及びその制御方法、並びにプログラム
US20120254508A1 (en) 2011-04-04 2012-10-04 International Business Machines Corporation Using the Short Stroked Portion of Hard Disk Drives for a Mirrored Copy of Solid State Drives
US9619357B2 (en) * 2011-09-28 2017-04-11 International Business Machines Corporation Hybrid storage devices
US20130124674A1 (en) * 2011-11-15 2013-05-16 Hitachi, Ltd. Computer system and data migration method
US8914381B2 (en) 2012-02-16 2014-12-16 Apple Inc. Correlation filter
US9710397B2 (en) 2012-02-16 2017-07-18 Apple Inc. Data migration for composite non-volatile storage device
US8850152B2 (en) * 2012-05-17 2014-09-30 Hitachi, Ltd. Method of data migration and information storage system
US10073851B2 (en) 2013-01-08 2018-09-11 Apple Inc. Fast new file creation cache
JP6065695B2 (ja) 2013-03-26 2017-01-25 富士通株式会社 ストレージ制御方法、ストレージシステム、およびストレージ制御プログラム
US9547459B1 (en) * 2013-06-27 2017-01-17 EMC IP Holding Company LLC Techniques for data relocation based on access patterns
JP2016184310A (ja) 2015-03-26 2016-10-20 富士通株式会社 情報処理システム、制御装置および情報処理システムの制御方法
US10467096B2 (en) * 2015-07-31 2019-11-05 Pure Storage, Inc. Securely storing data in a dispersed storage network
US10353634B1 (en) * 2016-03-28 2019-07-16 Amazon Technologies, Inc. Storage tier-based volume placement
US10942844B2 (en) 2016-06-10 2021-03-09 Apple Inc. Reserved memory in memory management system
CN114442934B (zh) * 2021-12-27 2024-01-02 天翼云科技有限公司 数据处理方法、装置及存储引擎

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07219720A (ja) * 1993-10-01 1995-08-18 Hitachi Maxell Ltd 半導体メモリ装置ならびにその制御方法
US5491810A (en) * 1994-03-01 1996-02-13 International Business Machines Corporation Method and system for automated data storage system space allocation utilizing prioritized data set parameters
US5680640A (en) 1995-09-01 1997-10-21 Emc Corporation System for migrating data by selecting a first or second transfer means based on the status of a data element map initialized to a predetermined state
US5566348A (en) * 1995-10-22 1996-10-15 International Business Machines Corporation System for adaptively optimizing automated optical library management
US6164787A (en) * 1998-12-28 2000-12-26 Seki; Hoken S. Circadian clock seat
US6587970B1 (en) * 2000-03-22 2003-07-01 Emc Corporation Method and apparatus for performing site failover
JP4115093B2 (ja) * 2000-07-06 2008-07-09 株式会社日立製作所 計算機システム
JP2004145409A (ja) * 2002-10-22 2004-05-20 Hitachi Ltd 記憶装置および記憶装置サブシステム
US7979632B2 (en) * 2002-09-06 2011-07-12 Hewlett-Packard Development Company, L.P. Storage system including a fast storage device for storing redundant data
JP3983650B2 (ja) * 2002-11-12 2007-09-26 株式会社日立製作所 ハイブリッドストレージ、および、それを用いた情報処理装置
TW200415464A (en) * 2003-02-12 2004-08-16 Acard Technology Corp SATA flash memory device
JP4322031B2 (ja) * 2003-03-27 2009-08-26 株式会社日立製作所 記憶装置
AU2004227949B9 (en) * 2003-04-03 2010-07-22 Commvault Systems, Inc. System and method for dynamically performing storage operations in a computer network
JP4146380B2 (ja) * 2004-03-29 2008-09-10 東芝ソリューション株式会社 ストレージシステム、ブロック再配置制御方法及びプログラム
US7496736B2 (en) * 2004-08-27 2009-02-24 Siamack Haghighi Method of efficient digital processing of multi-dimensional data
JP2006072789A (ja) * 2004-09-03 2006-03-16 Hitachi Ltd ストレージシステム及びストレージシステムのデータ管理装置
WO2006037091A2 (en) * 2004-09-28 2006-04-06 Storagedna, Inc. Managing disk storage media
US7533230B2 (en) * 2004-10-13 2009-05-12 Hewlett-Packard Developmetn Company, L.P. Transparent migration of files among various types of storage volumes based on file access properties
JP4735100B2 (ja) * 2005-03-08 2011-07-27 ソニー株式会社 複合型記憶装置、データ処理方法及びプログラム

Also Published As

Publication number Publication date
US20080126673A1 (en) 2008-05-29
EP1873624A3 (en) 2010-02-24
JP2008033911A (ja) 2008-02-14
EP1873624A2 (en) 2008-01-02
US7555575B2 (en) 2009-06-30

Similar Documents

Publication Publication Date Title
JP5202884B2 (ja) 記憶ボリューム間でデータを移行する方法および装置
US9513810B2 (en) Fast accessible compressed thin provisioning volume
JP4843604B2 (ja) データ・ストレージ装置からデータ・ストレージ装置特有情報を得るための方法及びシステム
US7546413B2 (en) Apparatus and method for managing a plurality of kinds of storage devices
US7051121B2 (en) Method for controlling storage system, and storage control apparatus
US7660946B2 (en) Storage control system and storage control method
US20060004876A1 (en) Data migration in storage system
US20110066823A1 (en) Computer system performing capacity virtualization based on thin provisioning technology in both storage system and server computer
CN104423889A (zh) 一种多路径管理方法和系统
JP2007102760A (ja) ストレージエリアネットワークにおけるボリュームの自動割り当て
JP2016506578A (ja) データ・ストレージ方法およびストレージ・デバイス
JP2003316618A (ja) コンピュータシステム
US20140129770A1 (en) Storage system using real data storage area dynamic allocation method
JP2005276017A (ja) ストレージシステム
JP5226810B2 (ja) 論理パス・リソースを動的に管理する方法、装置、システム、及びコンピュータ・プログラム
JP2007034877A (ja) ストレージシステム、フォーマット方法及びコンピュータプログラム
JP2006139552A (ja) ストレージ装置及びストレージ装置のデータライフサイクル管理方法
JP2009199584A (ja) 階層型ストレージシステムにおけるhddのスピンダウンとスピンアップを管理する方法及び装置
JP2008065433A (ja) 計算機システム及び性能チューニング方法
US20070079060A1 (en) Method, apparatus and program storage device for providing virtual disk service (VDS) hints based storage
JP2004341994A (ja) プログラム、情報処理装置、及び情報処理装置の制御方法
US8117405B2 (en) Storage control method for managing access environment enabling host to access data
JP2003296154A (ja) ボリューム統合管理方法および統合管理システム
JP2006134049A (ja) ホスト装置が接続される制御装置の接続部とその制御装置が備える記憶デバイスとの間の論理パスを生成する装置及び方法
JP2009129261A (ja) ストレージシステム及びストレージシステムの外部ボリューム接続経路探索方法

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090219

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100208

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120523

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120529

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120723

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130213

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

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees