JP2008033921A - Distributed storage system with accelerated striping - Google Patents
Distributed storage system with accelerated striping Download PDFInfo
- Publication number
- JP2008033921A JP2008033921A JP2007172961A JP2007172961A JP2008033921A JP 2008033921 A JP2008033921 A JP 2008033921A JP 2007172961 A JP2007172961 A JP 2007172961A JP 2007172961 A JP2007172961 A JP 2007172961A JP 2008033921 A JP2008033921 A JP 2008033921A
- Authority
- JP
- Japan
- Prior art keywords
- data
- logical
- storage
- software system
- multiplexing
- 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.)
- Pending
Links
Images
Abstract
Description
(関連出願)
本出願は2005年6月3日提出の、本願の譲渡人に譲渡された米国特許出願番号第11/145、403号の一部継続出願である。
(Related application)
This application is a continuation-in-part of US patent application Ser. No. 11 / 145,403, filed Jun. 3, 2005, assigned to the assignee of the present application.
本発明は分散データ記憶システムの分野に一般的に関係し、特に、これには制限されないが、メモリに記憶したデータを再ストライプする方法と装置に関係する。 The present invention relates generally to the field of distributed data storage systems, and more particularly, but not exclusively, to methods and apparatus for restriping data stored in memory.
業界標準アーキテクチャのデータ転送速度がインテル社により製造された80386プロセッサのアクセス速度に合わせられなくなった時、コンピュータ網は増殖し始めた。ローカルエリア網(LAN)は網にデータ記憶能力を集約することによりストレージエリア網(SAN)へ進化した。直接接続の記憶装置では不可能なオーダー以上のより大きな記憶を処理する能力のような、SANの機器により処理される関連データと機器の集約により、ユーザーは顕著な利点を実現し、かつこれを管理可能なコストで実行できた。 Computer networks began to proliferate when the data transfer rate of industry standard architectures could not match the access rate of the 80386 processor manufactured by Intel. The local area network (LAN) has evolved into a storage area network (SAN) by consolidating data storage capabilities into the network. Aggregation of relevant data and equipment processed by SAN equipment, such as the ability to handle larger storage beyond the order of storage directly connected, allows users to realize significant benefits and We were able to do it at a manageable cost.
最近、データ記憶サブシステムを制御する網中心方式に動向が向いてきている。すなわち、記憶部を集約したのと同様に、記憶部の機能を制御するシステムもサーバーと網自体から切り離される。例えば、ホストベースのソフトウェアは保守及び管理タスクをインテリジェント・スイッチまたは特殊な網記憶サービス・プラットフォームに委託可能である。アプライアンスベースのソリューションはホストで実行するソフトウェアを不要とし、企業のノードとして配置されたコンピュータ内で動作する。いずれにせよ、インテリジェントな網ソリューションは、記憶割当てルーチン、バックアップ・ルーチン、及びフォールトトレラント方式のようなものをホストとは独立に集中化可能である。 Recently, there has been a trend toward network-centric methods for controlling data storage subsystems. That is, the system that controls the functions of the storage unit is also separated from the server and the network itself, just as the storage unit is integrated. For example, host-based software can delegate maintenance and management tasks to intelligent switches or special network storage service platforms. Appliance-based solutions do not require software to run on the host and operate in computers that are deployed as enterprise nodes. In any case, intelligent network solutions can centralize things like storage allocation routines, backup routines, and fault tolerant schemes independently of the host.
ホストから網へのインテリジェンスの移行はこのようないくつかの問題を解決したが、ホストへの仮想記憶の表現を変更する柔軟性は一般的に欠如しているので本質的な困難を解決できない。例えば、記憶したデータは信頼性の問題から移動する必要がある、または成長する網を収容するためより多くの記憶容量を追加する必要がある。これらの場合、ホストまたは網のどちらかを変更して新たなまたは変更した記憶空間の存在を知らせなければならない。必要なものは、その各々のデータ記憶容量を自己決定的に割当て、管理し、保護し、全体記憶要求を収容するため網へ仮想記憶空間としてその容量を提供するインテリジェントなデータ記憶サブシステムである。分散計算環境はこれらのインテリジェントな記憶装置を全体プロビジョニングと共に記憶データの全体ストライピングと再ストライピングに使用する。本発明の実施例が指向するのはこのソリューションである。 While the migration of intelligence from the host to the network has solved some of these problems, it does not solve the inherent difficulties because it generally lacks the flexibility to change the representation of virtual memory to the host. For example, stored data needs to be moved due to reliability issues, or more storage capacity needs to be added to accommodate the growing network. In these cases, either the host or the network must be changed to signal the presence of the new or changed storage space. What is needed is an intelligent data storage subsystem that self-determinably allocates, manages and protects its respective data storage capacity and provides that capacity as virtual storage space to the network to accommodate the entire storage request . A distributed computing environment uses these intelligent storage devices along with global provisioning for global striping and restriping of stored data. It is this solution to which embodiments of the present invention are directed.
本発明の実施例は、元々記憶されたデータのバックアップに付随する集中的なオーバーヘッドを避けて、これを再ストライプ構成に復元する再ストライピング能力を有する分散記憶システムを一般的に指向する。 Embodiments of the present invention are generally directed to distributed storage systems that have a re-striping capability that avoids the intensive overhead associated with backing up originally stored data and restores it to a restripe configuration.
ある実施例では、データを第2数の論理装置に記憶するために第1数の論理装置から読み出したデータを単一のチャネルにコード化するよう構成されるメモリ空間に常駐するソフトウェア・システムがデータ記憶装置に提供される。 In one embodiment, a software system residing in a memory space configured to encode data read from a first number of logical devices into a single channel for storing data in the second number of logical devices. Provided for data storage.
ある実施例では、第1数の論理装置上にストライプされたデータを単一のチャネルにコード化し、コード化データを第2数の論理装置にデコードする方法が提供される。 In one embodiment, a method is provided for encoding data striped on a first number of logical devices into a single channel and decoding the encoded data into a second number of logical devices.
ある実施例では、メモリ空間を有し、データをメモリ空間の論理装置に再ストライプする装置を有するインテリジェント記憶要素がデータ記憶システムに提供される。 In one embodiment, an intelligent storage element is provided to a data storage system having a memory space and having a device that restripes data to logical devices in the memory space.
本請求の発明を特徴付けるこれらの及び各種その他の機能と利点は以下の詳細な説明を読み、関連する図面を参照することにより明らかとなる。 These and various other features and advantages that characterize the claimed invention will become apparent upon reading the following detailed description and upon reference to the associated drawings.
図1は本発明の実施例が有用である例示のコンピュータシステム100である。1つ以上のホスト102がローカルエリア網(LAN)及び/または広域網(WAN)106を介して1つ以上の網接続サーバー104にネットワークされる。LAN/WAN106はワールドワイドウェブを通して通信するインターネット・プロトコル(IP)網インフラストラクチャを使用することが望ましい。ホスト102は、多数のインテリジェント記憶要素(「ISE」)108の1つ以上に記憶されたデータを日常的に必要とするサーバー104中に常駐するアプリケーションをアクセスする。従って、SAN110はサーバー104をISE108に接続して記憶データをアクセスする。ISE108は、企業またはデスクトップ・クラスの記憶媒体を中に有する、シリアルATA及びファイバチャネルのような各種の選択通信プロトコルを通してデータを記憶するデータ記憶容量109のブロックを提供する。
FIG. 1 is an
図2は図1のコンピュータシステムの簡略化線図である。ホスト102は網またはファブリック(fabric)110を介して互いにかつISE108の対(各々AとBと記載)と相互作用する。各ISE108は独立ドライブの冗長アレイ(RAID)として特徴付けられるデータ記憶装置の組としてデータ記憶容量109上で動作することが望ましい二重冗長制御器112(A1、A2とB1、B2と記載)を含む。制御器112とデータ記憶容量109は、各種の制御器112が並列の冗長リンクを利用し、システム100により記憶されたユーザー・データの少なくともあるものがデータ記憶容量109の少なくとも1つの組に記憶されるようフォールトトレラント配置を利用することが望ましい。
FIG. 2 is a simplified diagram of the computer system of FIG.
Aホスト・コンピュータ102とA ISE108は第1サイトに物理的に位置し、Bホスト・コンピュータ102とB ISE108は第2サイトに物理的に位置し、Cホスト・コンピュータ107はさらに第3サイトにいることも可能であるとさらに考えられるが、このようなことは単なる例示であり、制限ではない。分散コンピュータシステム上の全てのエンティティは何らかの型式のコンピュータ網を通して接続される。
A
図3は本発明の実施例に従って構成されたISE108を図示する。棚114はミッドプレーン116と電気的接続する制御器112と受容的に係合する空洞部を設ける。棚114はまた、キャビネット(図示せず)内に支持される。複数ディスク組立体(MDA)118の対がミッドプレーン116の同じ側で棚114と受容的に係合される。ミッドプレーン116の反対側には、緊急電源を与える二重電池122、二重交流電源124、二重インターフェース・モジュール126が接続される。二重部品はMDAのどちらかまたは同時に両方で動作するよう構成され、部品故障の場合のバックアップ保護を提供することが望ましい。
FIG. 3 illustrates an ISE 108 configured in accordance with an embodiment of the present invention. The
図4は本発明のある実施例に従って構成されたMDA118の拡大部分展開等角投影図である。MDA118は上部区画130と下部区画132を有し、各々が5台のデータ記憶装置128を支持する。区画130、132は、ミッドプレーン116(図3)と動作的に係合するコネクタ136を有する共通回路板134と接続するデータ記憶装置128と整合する。ラッパー138は電磁干渉シールドを提供する。MDA118のこの例示実施例は、本発明の譲渡人に譲渡され、引用により本明細書に包含される複数ディスクアレイのキャリア装置と方法という名称の特願第10/884、605号の主題事項である。MDAのその他の例示実施例は、本発明の譲渡人に譲渡され、引用により本明細書に包含される同一タイトルの特願第10/817、378号の主題事項である。別の等価な実施例では、MDA118は以下で説明するように密封筐体内で提供可能である。
FIG. 4 is an enlarged partial isometric view of
図5は本発明の実施例の使用に適する例示のデータ記憶装置128の等角投影図で、回転媒体ディスクドライブの形式である。移動データ記憶媒体を有する回転スピンドルを以下の説明に使用するが、別の等価な実施例では、固体メモリ素子のような非回転媒体装置を使用する。データ記憶ディスク140はモーター142により回転されてディスク140のデータ記憶位置を読取/書込ヘッド(「ヘッド」)143へ与える。ヘッド143は、ヘッド143をディスク140の内部及び外部トラック間で放射方向に移動可能な回転アクチュエータ144の遠心端で支持される。ヘッド143はフレックス回路146を介して回路板145へ電気的に接続される。回路板145はデータ記憶装置128の機能を制御する制御信号を送受信するようにされる。コネクタ148が回路板145に電気的に接続されて、データ記憶装置128をMDA118の回路板134(図4)と接続するようにする。
FIG. 5 is an isometric view of an exemplary
図6は本発明の実施例により構成されたISE108の線図である。制御器112はインテリジェント記憶プロセッサ(ISP)150と関連して動作して、データ一体性の管理された信頼性を提供する。ISP150は制御器112、MDA118、またはISE108内のどこかに常駐可能である。
FIG. 6 is a diagram of an
制御器112は各々、通信ポート155、157を介したデータパック151、153への遠隔アクセス指令に応答する。説明の都合上、図6の制御器112は、全てが記憶容量のホスト指令に応答する、データパック151から論理装置(「LUN」)1とLUN2を作成する。また、本説明の都合上、データパック151、153はデータ記憶用の八台のデータ記憶装置128と二台の予備データ記憶装置128を含むものと仮定する。
管理信頼性の特徴は、RAID戦略のような信頼可能なデータ記憶形式を起動することを含む。例えば、複数個の異なるRAID形式の内の選択されたものを選択的に使用するシステムを提供することにより、相対的により堅牢なデータ記憶用のシステムが生成され、MDA118を管理するために使用するソフトウェアの複雑性を減少するファームウェア・アルゴリズムの最適化を可能とすると共に、記憶障害状態からの相対的に迅速な復帰を可能とする。この複数RAID形式システムのこれらの及びその他の特徴は本譲渡人に譲渡され、引用により本明細書に包含される記憶媒体データ構造とその方法という名称の特願第10/817、264号に記載されている。
Management reliability features include invoking a reliable data storage format such as a RAID strategy. For example, by providing a system that selectively uses a selected one of a plurality of different RAID formats, a relatively more robust system for data storage is generated and used to manage the
管理信頼性はまたシステムの監視使用を基にした診断及び訂正ルーチンのスケジューリングを含む。データ復元操作はデータのコピーと再構成に実行される。ISP150は、データ損失なしに全体データ記憶容量の「自己修復(self−healing)」を容易にするようにMDA118に統合される。本明細書で考慮する管理信頼性機能のこれらの及びその他の特徴は、本譲渡人に譲渡され、引用により本明細書に包含される管理信頼性記憶システムとその方法という名称の特願第10/817、617号に記載されている。管理信頼性のその他の特徴は、例えば本譲渡人に譲渡され、引用により本明細書に包含される分散記憶システムの予測故障からの決定的予防回復という名称の特願第11/040、410号に開示されているような、所定の規則と関連する予防故障指示への応答を含む。
Administrative reliability also includes the scheduling of diagnostic and correction routines based on system monitoring usage. Data restoration operations are performed for data copying and reconstruction.
図7は冗長ISP150の対が常駐するISP回路板152の線図である。ISP150はデータ記憶容量109をSANファブリック110にインターフェースする。各ISP150はルーティング、ボリューム管理、及びデータ移行と複製のような各種の記憶サービスを管理可能である。ISP150はバス158により結合された2つのISPサブシステム154、156に板152を分割する。ISPサブシステム154は、各々リンク160、162によりファブリック110と記憶容量109に結合された「B」と記載されたISP150を含む。ISP154はまた実時間オペレーティングシステムを実行するポリシー・プロセッサ164も含む。ISP150とポリシー・プロセッサ164はバス166を介して通信し、かつ両者はメモリ168と通信する。
FIG. 7 is a diagram of an
図8は本発明の実施例に従って構成された例示のISPサブシステム154の線図である。ISP150は、交差点スイッチ(CSP)186メッセージ・クロスバーを介してリスト・マネージャ182、184と通信する多数の機能制御器(170−180)を含む。従って、制御器(170−180)はメモリ・モジュールにアクセスするため及び/またはISP動作を起動するため、各々特定の条件に応答してCSPメッセージを発生し、このメッセージをCPS186を通してリスト・マネージャ182、184に送信可能である。同様に、リスト・マネージャ182、184からの応答はCPS186を介して制御器(170−180)の任意のものと通信可能である。図8の配置と関連する説明は例示のものであり、本発明の考えられる実施例を限定するものではない。
FIG. 8 is a diagram of an
ポリシー・プロセッサ164はISP150を介して所要の動作を実行するようプログラム可能である。例えば、ポリシー・プロセッサ164は、CPS186を介してメッセージを送受信するリスト・マネージャ182、184と通信可能である。ポリシー・プロセッサ164への応答はメモリ168レジスタを読み出す信号への割り込みとしての役割を果たすことが可能である。
図9は、FC、iSCSI、またはSASのような、予め選択された複数個の通信プロトコルの内のいくつかでホスト102と通信するための、インテリジェント制御器112による、ISE108の柔軟性の利点を示す線図である。ISE109はホスト指令の抽象レベルを確定し、これにより指令と関係する物理記憶109に仮想記憶ボリュームをマップするようプログラム可能である。
FIG. 9 illustrates the flexibility advantage of
現在の目的には、用語「仮想記憶ボリューム」とは物理記憶の論理抽象化に一般的に対応する論理エンティティを意味する。「仮想記憶ボリューム」は、例えば、カウント・キー・データ・アーキテクチャで固定ブロックアーキテクチャまたはレコードで連続的にアドレスされるブロックであるかのように(論理的に)処理されるエンティティを含むことが可能である。仮想記憶ボリュームは1つ以上の記憶要素上に物理的に配置可能である。 For present purposes, the term “virtual storage volume” means a logical entity that generally corresponds to a logical abstraction of physical storage. A “virtual storage volume” can include entities that are processed (logically) as if they were, for example, a fixed block architecture with a count key data architecture or a block that is sequentially addressed with a record It is. A virtual storage volume can be physically located on one or more storage elements.
図10は任意のホスト102と独立のISE108により実行可能なデータ管理サービスの型式の線図である。例えば、RAID管理は、所要数のデータ記憶装置1281、1282、1283、…128n内で実行されるデータのストライピングにより、フォールトトレラントなデータ一体性のために局所的に制御可能である。仮想化サービスを局所的に制御して論理エンティティにメモリ容量を割り当て及び/または逆割り当てすることが可能である。上述した管理信頼性方式や同一ISE108内の論理ボリューム間のデータ移行のようなアプリケーション・ルーチンは、同様に局所的に制御可能である。
FIG. 10 is a diagram of a type of data management service that can be executed by an
図11で、ISE108はさらなる記憶容量のホスト指令に応答して他のLUN3を生成した。本実施例は、LUN1とLUN2に既に存在するデータを全3台のLUN上に再ストライプする加速の方法を考える。有利なことに、本実施例の加速再ストライピングは、既存のデータをバックアップし、ついでこれを新たに構成した記憶空間に復元する関連技術のソリューションでの比較的時間のかかる処理を必要としない。すなわち、本ソリューションでは、ISE108は、本明細書で記述した処理に従って、再ストライプ過程を開始した時と再ストライピングの速度のみを基にしてシステム100に利用可能である。開始した時間とデータを転送する速度は、システム100性能への再ストライピング過程の悪い影響を最小とするため、他のシステム100リソース要求の関係に関連して、変更可能である。また、再ストライピング・アプリケーションへの入力を簡略化し、遠隔ホスト102からアプリケーションをオフロードすることにより、本実施例は全体として分散システム100への少ないオーバーヘッドの支出で過程を加速する。
In FIG. 11, the
図12は説明の都合上、LUN1とLUN2が共に記憶データにより容量を充填されていることを示す。列A−Hはデータパック151内のデータ記憶装置128(または「ドメイン」)の各々を表す。「A1」と名付けられたような、各列と行の交差点は、ドメインの各々に割り当てた記憶容量の塊を表す。各行の複数個の塊が全てのドメイン上での記憶容量のストライプを形成する。従って、LUN1の第1ストライプは塊A1−H1から構成され、LUN2の第1ストライプは塊A5−H5から構成される。LUN1の終わりからLUN2の始まりとの間の空間は単に説明用のものである。これらのまたはその他の連続するLUNの間の記憶空間には事実何らの間隙もないものと想定される。
FIG. 12 shows that both LUN1 and LUN2 are filled with storage data for convenience of explanation. Columns AH represent each of the data storage devices 128 (or “domains”) in the
図13は、メモリに常駐し経路200を介して選択した複数個のLUNからデータを読み取り、経路202を介して単一チャネルに当該データをコード化するよう構成されたソフトウェア(またはファームウェア)システム199を実行するISP150を図式的に図示する。次いで、ソフトウェア・システム199は経路204を介して第2の複数個の論理装置にデータを再ストライプするためにコード化データをデコードする。
FIG. 13 illustrates a software (or firmware)
ソフトウェア・システム199は多重化操作(「マルチプレックス」)206を実行してデータをコード化し、逆多重化操作(「デマルチプレックス」)208を実行してコード化データをデコードすることが望ましい。現在の説明の都合上、元々LUN1とLUN2(図12)に記憶されたデータは本発明の実施例に従ってLUN1−3上に再ストライプされる。言い換えると、現在記憶されたデータは二台のLUNから三台のLUNに再ストライプされる。従って、図13ではn=2とm=3である。
図14は、LUN1(キャッシュ168から)からデータ・ストライプA1−H1を読み取り、これをLUN1に記憶することにより開始する多重化−逆多重化ソフトウェア制御回路を図示する。図15は多重化−逆多重化回路がいかに入力ソースと出力到達先上を同期的に連続して、次にデータ・ストライプA5−H5をキャッシュ168から読み取ってこれをLUN2に記憶するかを図示する。図16は多重化−逆多重化回路が入力ソースと出力到達先をシリアルにループする方法を十分図示している。すなわち、全ての入力ソースを順番に回った後、たとえ逆多重化操作が全ての出力到達先をまだ回っていなくとも、多重化操作はLUN1に復帰する。
FIG. 14 illustrates a multiplexing-demultiplexing software control circuit that begins by reading data stripe A1-H1 from LUN1 (from cache 168) and storing it in LUN1. FIG. 15 illustrates how the multiplexing-demultiplexing circuit is synchronously continuous on the input source and output destination, and then reads the data stripe A5-H5 from the
図17で、データ・ストライプA6−H6がキャッシュ168から読み取られてLUN1に記憶される。図18で、多重化―逆多重化回路はキャッシュ168からのデータ・ストライプA3−H3を次に読み取ってこれをLUN2に記憶するよう回る。図19で、データ・ストライプA7−H7はLUN3に記憶される。図20で、データ・ストライプA4−H4はLUN1に記憶される。最後に、図21で、データ・ストライプA8−H8がLUN2に記憶される。
In FIG. 17, data stripes A6-H6 are read from
図14−21に図示した再ストライピング・ユーティリティは基本的には同じ処理であるが、n=3とm=2である処理を実行することにより逆転可能である。図21に示すような状態にあるものとして元々記憶されたデータを考えると、図22はLUN1にデータ・ストライプA1−H1を記憶することにより復元過程を開始する。図23で、多重化−逆多重化回路はLUN2にデータ・ストライプA5−H5を記憶するために連続的に巡回する。図24はLUN1にデータ・ストライプA2−H2を次に記憶する回路を図示し、図25でデータ・ストライプA6−H6はLUN2に記憶され、図26でデータ・ストライプA3−H3はLUN1に記憶され、図27でデータ・ストライプA7−H7はLUN2に記憶され、図28でデータ・ストライプA4−H4がLUN1に記憶される。最後に、図29でデータ・ストライプA8−H8はLUN2に記憶される。 The restriping utility illustrated in FIGS. 14-21 is basically the same process, but can be reversed by executing processes where n = 3 and m = 2. Considering the data originally stored as being in the state as shown in FIG. 21, FIG. 22 starts the restoration process by storing data stripes A1-H1 in LUN1. In FIG. 23, the multiplexing-demultiplexing circuit cycles continuously to store data stripes A5-H5 in LUN2. FIG. 24 illustrates a circuit that next stores data stripes A2-H2 in LUN1, FIG. 25 shows data stripes A6-H6 stored in LUN2, and FIG. 26 shows data stripes A3-H3 stored in LUN1. 27, data stripes A7-H7 are stored in LUN2, and in FIG. 28, data stripes A4-H4 are stored in LUN1. Finally, in FIG. 29, data stripes A8-H8 are stored in LUN2.
図30は本発明の実施例に従って再ストライピングする方法250の流れ図である。方法250は、多重化−逆多重化操作用に入力ノードの数nと出力ノードの数mを選択することによりブロック252で開始する。例えば、図14−21の2つのLUNから3つのLUNへのデータのストライプに対しては、n=2とm=3である。ブロック254で、データは入力ノードから同期的にコード化され、出力ノードへデコードされる。ブロック256で、最後のデータ・ストライプを新たに構成した論理ボリュームに再ストライプしたかどうかを決定する。ブロック256の決定が「YES」の場合、方法250は終了し、そうでない場合、制御はブロック258に渡る。ブロック258で、多重化操作と逆多重化操作が次の各ノードに連続的にループされ、次のノードでデータがコード化されデコードされるブロック254へ制御が復帰する。
FIG. 30 is a flow diagram of a
最後に、図31は図4と同様であるが、基部190とこれに密封して取り付けたカバー192から作成された密封筐体内に含まれる複数個のデータ記憶装置128と回路板134を有する。MDA118Aを形成するデータ記憶装置128を密封して係合することは、データ記憶装置128の配置が所定の最適配置から変更されないことを保証することを含む多数の利点をユーザーに与える。このような配置は、MDA118A製造業者がシステムを最適性能に調整することも可能とし、データ記憶装置128の数、サイズおよび型式を与えることが、明確に定義可能である。
Finally, FIG. 31 is similar to FIG. 4 but includes a plurality of
密封MDA118Aはまた、製造業者が中の記憶媒体の群の信頼性とフォールトトレランスを最大することが可能である。これは、複数スピンドル配置のドライブを最適化することにより実行される。設計最適化は、コストを減少し、性能を増強し、信頼性を高め、一般的にMDA118A内のデータの寿命を延長する。さらに、MDA118Aの設計自体が殆どゼロの回転振動と高冷却効率環境を提供し、これは本願の譲渡人に譲渡された強化RVIの記憶アレイという名称の共願の米国特願第11/145、404号の主題事項である。これは、MDA118の信頼性、性能、または容量を妥協することなく内部の記憶媒体をよりコスト的な基準で製造可能とする。密封MDA118Aは従って、単一障害点ではなく、殆ど完全な回転振動の回避と冷却効率を提供する。これは、MDA118Aの設計を最適ディスク媒体特性とし、同時に信頼性と性能を増強しつつコストを削減することを可能とする。
Sealed
要約すると、記憶媒体に対してデータ記憶と読出し関係にある各独立に動作可能なアクチュエータに隣接する記憶媒体を各々支持する複数個の回転可能なスピンドルを含む、分散記憶システムの内蔵型ISEが提供される。ISEはさらに、分散記憶システムの遠隔装置により使用される複数個の媒体に仮想記憶ボリュームをマップするようにされているISPを含む。 In summary, a self-contained ISE for a distributed storage system is provided that includes a plurality of rotatable spindles each supporting a storage medium adjacent to each independently operable actuator that is in data storage and read relation to the storage medium. Is done. The ISE further includes an ISP adapted to map the virtual storage volume to a plurality of media used by the remote devices of the distributed storage system.
ある実施例では、ISEは複数個のスピンドルと共通密封ハウジング内に収めた媒体を有する。ISPは、RAID方法論のような、フォールトトレラント式にデータを記憶する仮想記憶ボリュームにメモリを割り当てることが望ましい。さらにISPは、観測した予測記憶故障に応答して原位置での決定的予防復元段階を開始するような、データ記憶過程の管理信頼性方法論を実行可能である。ISEは、2つ以上のディスクのデータ記憶媒体から構成されたディスク・スタックを各々が有する複数個のデータ記憶装置から構成されることが望ましい。 In one embodiment, the ISE has a plurality of spindles and a medium contained in a common sealed housing. It is desirable for an ISP to allocate memory to a virtual storage volume that stores data in a fault tolerant manner, such as a RAID methodology. Further, the ISP can implement a management reliability methodology for the data storage process that initiates an in-situ definitive preventive restoration phase in response to the observed predicted storage failure. The ISE is preferably composed of a plurality of data storage devices each having a disk stack composed of two or more disk data storage media.
他の実施例では、ISEは、内臓型の複数個の離散データ記憶装置と、データ記憶装置と通信して遠隔装置から受信した指令を抽象化するようにし、これにより関連メモリを関係付けるISPとを含む分散記憶システムと考えられる。ISPは、分散記憶システムの1つ以上の遠隔装置により使用される複数個のデータ記憶装置に仮想記憶ボリュームをマップするようにされていることが望ましい。以前と同様に、複数個のデータ記憶装置と媒体は共通の密封ハウジング内に収めることも可能である。ISPは、RAID方法論のようにフォールトトレラント的にデータを記憶する仮想記憶ボリュームにメモリを割り当てることが望ましい。ISPはさらに観測された予測記憶故障に応答してデータ記憶装置での原位置の決定的予防復元段階を開始可能である。 In another embodiment, the ISE includes a plurality of self-contained discrete data storage devices and an ISP that communicates with the data storage devices to abstract instructions received from a remote device, thereby associating associated memory with the ISP. A distributed storage system including The ISP is preferably adapted to map the virtual storage volume to a plurality of data storage devices used by one or more remote devices of the distributed storage system. As before, a plurality of data storage devices and media can be contained in a common sealed housing. It is desirable for an ISP to allocate memory to a virtual storage volume that stores data in a fault-tolerant manner like a RAID methodology. The ISP can further initiate an in-situ definitive preventive restoration phase in the data storage device in response to the observed predicted storage failure.
別の実施例では、ホストと、網を通してホストと通信するバックエンド記憶サブシステムとを含み、ホストとは独立に内蔵記憶容量を仮想化する装置を含む、分散記憶システムが提供される。 In another embodiment, a distributed storage system is provided that includes a host and a back-end storage subsystem that communicates with the host through a network, and includes a device that virtualizes internal storage capacity independent of the host.
仮想化の装置は、複数個の離散的な個別にアクセス可能なデータ記憶装置を特徴とすることが可能である。仮想化の装置は複数個のデータ記憶装置と関係する記憶容量の仮想ブロックをマップすることを特徴とすることが可能である。仮想化の装置は複数個のデータ記憶装置と関連制御部を密封的にコンテナ化することを特徴とすることが可能である。仮想化の装置はRAID方法論への制限なしのような、フォールトトレラント的にデータを記憶することを特徴とすることが可能である。仮想化の装置は観測された予測記憶故障に応答して原位置での決定的予防復元段階を開始することを特徴とすることが可能である。仮想化の装置は複数個のスピンドル・データ記憶アレイを特徴とすることが可能である。 The virtualization device can feature a plurality of discrete, individually accessible data storage devices. The virtualization device may be characterized by mapping a virtual block of storage capacity associated with a plurality of data storage devices. The virtualization device may be characterized by hermetically containerizing a plurality of data storage devices and associated control units. The virtualization device can be characterized by storing data in a fault-tolerant manner, such as without restrictions on RAID methodology. The virtualization device may be characterized by initiating a definitive preventive restoration phase in situ in response to the observed predictive memory failure. The virtualization device can feature a plurality of spindle data storage arrays.
本明細書の都合上、用語「仮想化の装置」は、各データ記憶サブシステム内以外のデータ記憶空間にマップするシステム・インテリジェンスに含まれる以前に試行したソリューションを明示的に考えていない。例えば、「仮想化の装置」はデータ記憶サブシステムの機能を制御する記憶マネージャの使用を考えておらず、またSANファブリック内またはホスト内のマネージャまたはスイッチの配置も考えていない。 For purposes of this specification, the term “virtualization device” does not explicitly consider previously tried solutions included in system intelligence that maps to data storage space other than within each data storage subsystem. For example, a “virtualization device” does not consider the use of a storage manager that controls the functions of the data storage subsystem, nor does it consider the placement of managers or switches within a SAN fabric or within a host.
本実施例は、メモリ空間に常駐して、第2数の論理装置にデータを記憶するために第1数の論理装置から読み出したデータを単一チャネルにコード化するよう構成されたソフトウェア・システムを有するデータ記憶装置をさらに考える。ソフトウェア・システムは、第2数の論理装置にデータを記憶する前にコード化データをデコードするよう構成されることが望ましい。 The present embodiment is a software system resident in a memory space and configured to encode data read from a first number of logical units into a single channel for storing data in the second number of logical units. Consider further a data storage device having: The software system is preferably configured to decode the encoded data prior to storing the data in the second number of logical devices.
例えば、ソフトウェア・システムはデータをコード化するために第1数の論理装置上に元々ストライプされたデータを多重化するよう構成可能である。この場合、ソフトウェア・システムは第2数の論理装置上にデータを再ストライプするためにコード化データを逆多重化するよう構成可能である。ソフトウェア・システムは1つ以上の入力ソースと1つ以上の出力到達先上で各々データ多重化とデータ逆多重化を同期的にループすることが望ましい。 For example, the software system can be configured to multiplex the originally striped data on a first number of logical units to encode the data. In this case, the software system can be configured to demultiplex the encoded data to restrip the data on the second number of logical units. The software system preferably loops data multiplexing and data demultiplexing synchronously on one or more input sources and one or more output destinations, respectively.
第1数の論理装置と第2数の論理装置は異なることも可能であり、すなわち、ある場合には第2数は第1数より大きく、他の場合には第1数は第2数より大きい。 The first number of logical units and the second number of logical units can also be different, i.e., in some cases the second number is greater than the first number and in other cases the first number is greater than the second number. large.
ソフトウェア・システムは、第2数の論理装置から再ストライプしたデータを多重化することにより第1数の論理装置上にデータの元のストライピングも復元可能である。 The software system can also restore the original striping of data on the first number of logical units by multiplexing the data that has been re-striped from the second number of logical units.
ある実施例では、ソフトウェア・システムは分散記憶システムのインテリジェントな記憶要素に常駐可能である。 In one embodiment, the software system can reside on intelligent storage elements of a distributed storage system.
他の実施例では、第1数の論理装置上のデータをコード化し、コード化データを第2数の論理装置上にデコードする方法が提供される。コード化段階は第1数の論理装置に元々ストライプされたデータを多重化することを特徴とし、デコード段階は第2数の論理装置上にデータを再ストライプするためにコード化データを逆多重化することを特徴とする。コード化段階とデコード段階は、1つ以上の入力ソースと1つ以上の出力の各々にデータ多重化とデータ逆多重化を同期的にループすることを特徴とする。本方法はまた、第2数の論理装置から再ストライプしたデータを多重化することにより第1数の論理装置上にデータの元のストライピングを復元することを考えることも可能である。 In another embodiment, a method is provided for encoding data on a first number of logical devices and decoding the encoded data on a second number of logical devices. The encoding stage is characterized by multiplexing the data originally striped onto the first number of logical units, and the decoding stage is demultiplexing the encoded data to re-strip the data onto the second number of logical units. It is characterized by doing. The encoding and decoding steps are characterized by synchronously looping data multiplexing and data demultiplexing to each of the one or more input sources and the one or more outputs. The method may also consider restoring the original striping of data on the first number of logical devices by multiplexing data that has been re-striped from the second number of logical devices.
他の実施例では、メモリ空間を有するインテリジェントな記憶要素と、メモリ空間の論理装置にデータを再ストライピングする装置とを有するデータ記憶システムが提供される。本説明と添付の請求の範囲の意味の都合上、「再ストライピングの装置」という句の意味は、これには限定されないが上述した多重化と逆多重化操作のような、上述したようなコード化/デコード操作を明白に必要とする。「再ストライピングの装置」の意味は、元の記憶されたデータをバックアップし、次いでこれを新たなストライプ配列に復元することを含む以前に試行されたソリューションを明らかに含まない。 In another embodiment, a data storage system is provided having an intelligent storage element having a memory space and a device for re-striping data to a logical device in the memory space. For the purposes of this description and the accompanying claims, the meaning of the phrase “re-striping device” is not limited thereto, but may be a code as described above, such as the multiplexing and demultiplexing operations described above. Obviously requires a digitization / decoding operation. The meaning of “re-striping device” clearly does not include a previously tried solution that includes backing up the original stored data and then restoring it to a new stripe arrangement.
本発明の各種の実施例の多数の特徴と利点を、本発明の各種の実施例の構造と機能の詳細と共に以上の説明に記載してきたが、この詳細な説明は単なる例示であり、特に添付の請求の範囲に表示される用語の広範囲な一般的意味により指示される最大の範囲で本発明の原理内で構造及び部品の配置に関して、変更を詳細部に加えてもよいことを理解すべきである。例えば、本発明の範囲と要旨から逸脱することなく特定の処理環境に応じて特定の要素を変更してもよい。 Although numerous features and advantages of various embodiments of the invention have been described in the foregoing description, together with details of the structure and function of the various embodiments of the invention, this detailed description is merely exemplary and particularly not restrictive. It should be understood that changes may be made to the details regarding the structure and arrangement of parts within the principles of the invention to the maximum extent indicated by the broad general meaning of the terms presented in the claims. It is. For example, specific elements may be changed according to a specific processing environment without departing from the scope and spirit of the present invention.
さらに、本明細書で記載した実施例はデータ記憶アレイに向けられているが、請求項の主題事項はこれには限定されず、請求の発明の範囲と要旨から逸脱することなく各種のその他の処理システムを利用可能であることが当業者には認められる。 Further, while the embodiments described herein are directed to data storage arrays, the claimed subject matter is not so limited, and various other arrangements may be used without departing from the scope and spirit of the claimed invention. One skilled in the art will recognize that a processing system can be used.
108 ISE
109 データ記憶
112 制御装置
118 MDA
128 データ記憶装置
150 ISP
154、156 ISPサブシステム
164 ポリシー・プロセッサ
170−180 機能制御器
182、184 リスト・マネージャ
186 CSP
199 ソフトウェア・システム
206 多重化操作
208 逆多重化操作
108 ISE
109
128
154, 156
199
Claims (20)
コード化データを第2数の論理装置上にデコードするステップと、
を含む方法。 Encoding data striped on a first number of logical units into a single channel;
Decoding the encoded data onto a second number of logic units;
Including methods.
メモリ空間を有するインテリジェント記憶要素と、
メモリ空間の論理装置にデータを再ストライプする装置と、
を含むデータことを特徴とする記憶装置。 In a data storage device,
An intelligent storage element having a memory space;
A device that restripes data to a logical unit of memory space; and
A storage device characterized by including data.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/477,967 US7913038B2 (en) | 2005-06-03 | 2006-06-29 | Distributed storage system with accelerated striping |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008033921A true JP2008033921A (en) | 2008-02-14 |
JP2008033921A5 JP2008033921A5 (en) | 2010-08-05 |
Family
ID=39123212
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007172961A Pending JP2008033921A (en) | 2006-06-29 | 2007-06-29 | Distributed storage system with accelerated striping |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008033921A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009205630A (en) * | 2008-02-29 | 2009-09-10 | Nec Corp | Fault tolerant server, full backup method, and full backup program |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003223284A (en) * | 2002-01-31 | 2003-08-08 | Toshiba Corp | Disk array device and dynamic storage capacity expansion method of the same |
US20030192005A1 (en) * | 2002-04-05 | 2003-10-09 | Seagate Technology Llc | Method and apparatus for error detection |
US20040133743A1 (en) * | 2002-12-26 | 2004-07-08 | Fujitsu Limited | RAID apparatus and logical device expansion method thereof |
US20060047908A1 (en) * | 2004-09-01 | 2006-03-02 | Hitachi, Ltd. | Disk array apparatus |
US20060268444A1 (en) * | 2005-05-31 | 2006-11-30 | Seagate Technology Llc | High speed and high capacity data storage array |
-
2007
- 2007-06-29 JP JP2007172961A patent/JP2008033921A/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003223284A (en) * | 2002-01-31 | 2003-08-08 | Toshiba Corp | Disk array device and dynamic storage capacity expansion method of the same |
US20030192005A1 (en) * | 2002-04-05 | 2003-10-09 | Seagate Technology Llc | Method and apparatus for error detection |
US20040133743A1 (en) * | 2002-12-26 | 2004-07-08 | Fujitsu Limited | RAID apparatus and logical device expansion method thereof |
JP2004213064A (en) * | 2002-12-26 | 2004-07-29 | Fujitsu Ltd | Raid device and logic device expansion method therefor |
US20060047908A1 (en) * | 2004-09-01 | 2006-03-02 | Hitachi, Ltd. | Disk array apparatus |
JP2006072636A (en) * | 2004-09-01 | 2006-03-16 | Hitachi Ltd | Disk array device |
US20060268444A1 (en) * | 2005-05-31 | 2006-11-30 | Seagate Technology Llc | High speed and high capacity data storage array |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009205630A (en) * | 2008-02-29 | 2009-09-10 | Nec Corp | Fault tolerant server, full backup method, and full backup program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7913038B2 (en) | Distributed storage system with accelerated striping | |
US7984258B2 (en) | Distributed storage system with global sparing | |
US11789831B2 (en) | Directing operations to synchronously replicated storage systems | |
US10606715B2 (en) | Efficient high availability for a SCSI target over a fibre channel | |
KR100952553B1 (en) | Virtual machine system and method for controlling the same | |
US7966449B2 (en) | Distributed storage system with global replication | |
US6732104B1 (en) | Uniform routing of storage access requests through redundant array controllers | |
US7181578B1 (en) | Method and apparatus for efficient scalable storage management | |
US6598174B1 (en) | Method and apparatus for storage unit replacement in non-redundant array | |
US6880101B2 (en) | System and method for providing automatic data restoration after a storage device failure | |
JP5026283B2 (en) | Collaborative shared storage architecture | |
US6757753B1 (en) | Uniform routing of storage access requests through redundant array controllers | |
TWI403891B (en) | Active-active failover for a direct-attached storage system | |
JP2009104236A (en) | Storage apparatus and data storage method using the same | |
US20140122816A1 (en) | Switching between mirrored volumes | |
WO2008103302A1 (en) | Method and apparatus for flexible access to storage facilities | |
JP4939205B2 (en) | Apparatus and method for reconfiguring a storage array located in a data storage system | |
US20120185643A1 (en) | Systems configured for improved storage system communication for n-way interconnectivity | |
JP2007257630A (en) | Method for generating parity value of raid storage system, and raid storage system with built-in adapter (enclosure-based raid parity assist mechanism) | |
US10768822B2 (en) | Increasing storage capacity in heterogeneous storage arrays | |
US8898514B2 (en) | SAS storage device drive system with failure information table | |
JP2008033921A (en) | Distributed storage system with accelerated striping | |
US10768834B2 (en) | Methods for managing group objects with different service level objectives for an application and devices thereof | |
WO2013043457A1 (en) | Storage drive virtualization in a data storage system | |
US20060288155A1 (en) | Storage-centric computer system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100622 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100622 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20100622 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120126 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120207 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120404 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120626 |