JP2010287212A - 任意のコントローラから任意のコントローラにn通りに直接接続されるアーキテクチャ - Google Patents

任意のコントローラから任意のコントローラにn通りに直接接続されるアーキテクチャ Download PDF

Info

Publication number
JP2010287212A
JP2010287212A JP2010017550A JP2010017550A JP2010287212A JP 2010287212 A JP2010287212 A JP 2010287212A JP 2010017550 A JP2010017550 A JP 2010017550A JP 2010017550 A JP2010017550 A JP 2010017550A JP 2010287212 A JP2010287212 A JP 2010287212A
Authority
JP
Japan
Prior art keywords
sas
array
ports
storage array
storage
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
Application number
JP2010017550A
Other languages
English (en)
Inventor
Rodney A Dekoning
エー. デコーニング ロドニー
Kenneth F Day
エフ. デイ ケネス
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.)
LSI Corp
Original Assignee
LSI Corp
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 LSI Corp filed Critical LSI Corp
Publication of JP2010287212A publication Critical patent/JP2010287212A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2007Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media
    • G06F11/201Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media between storage system components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • 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/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • 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/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2089Redundant storage control functionality

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)
  • Hardware Redundancy (AREA)
  • Information Transfer Systems (AREA)

Abstract

【課題】ストレージ・PLT・システム及びストレージ・PLT・アーキテクチャを提供する。
【解決手段】ストレージ・システム・アーキテクチャが開示される。アレイ・コントローラが少なくとも2M個のポートを備えて構成され、この場合、Mはシステム内のSAS領域またはJBODユニットの数に対応する3以上の整数である。シリアル・アタッチトSCSI(SAS)領域またはJBODユニットが少なくとも2N個のポートを備えて構成され、この場合、Nはシステム内のアレイ・コントローラの数に対応する。2N個のポートのそれぞれの少なくとも2つが、N個のアレイ・コントローラのそれぞれの2M個のポートのそれぞれの対応する少なくとも2つに直接接続され、それによってN個のアレイ・コントローラのそれぞれとM個のSAS領域またはJBODユニットのそれぞれとの間に直接の冗長接続を確立する。
【選択図】図1

Description

本発明は、ストレージ・PLT・システム及びストレージ・PLT・アーキテクチャを提供する。
大容量記憶システムは、ユーザの需要に応えるために、増大された記憶容量を提供し続けている。写真および動画の保存、ならびに写真および動画の共有は、ますます大きなストレージ・システムを求める需要の増加を助長する利用形態の例である。
これらの増大する需要に対する解決策は、複数の安価なディスクのアレイの使用である。これらのアレイは、データのいかなる損失もなしに冗長性およびエラー回復を提供するように構成することができる。これらのアレイはまた、複数のディスクドライブに対して、データを同時に読み出させる、または書き込ませることにより、読出しおよび書込み性能を向上させるように構成することができる。これらのアレイはまた、アレイのストレージ・サービスを中断することなく故障したディスクを交換することができる「ホットスワッピング」を可能にするように構成することができる。冗長性が提供されるか否かにかかわらず、これらのアレイは、一般に、独立ディスク冗長アレイと(または、より一般的には、頭字語RAIDで)呼ばれる。「A Case for Redundant Arrays of Inexpensive Disks(RAID)」という表題の、カリフォルニア大学バークレー校のDavid A.Patterson等による1987年の刊行物は、RAID技術の基本概念およびレベルについて論じている。
RAIDストレージ・システムは、通常、ユーザまたはホストシステムをストレージ・アレイ管理の詳細から遮蔽するコントローラを利用する。コントローラは、ストレージ・アレイが1つまたは複数のディスクドライブ(またはボリューム)として見えるようにする。これは、特定のボリュームに関するデータ(または冗長データ)が複数のディスクドライブに分散される可能性があるにもかかわらず達成される。
「A Case for Redundant Arrays of Inexpensive Disks(RAID)」という表題の、カリフォルニア大学バークレー校のDavid A.Patterson等による1987年の刊行物
したがって、本発明の一実施形態は、少なくとも2M個のポートを備えて構成されたN個のアレイ・コントローラであって、この場合、NおよびMは3以上である、N個のアレイ・コントローラと、少なくとも2N個のポートを備えて構成されたM個のシリアル・アタッチトSCSI(SAS)領域であって、2N個のポートのそれぞれの少なくとも2つが、N個のアレイ・コントローラのそれぞれの2M個のポートのそれぞれの対応する少なくとも2つに直接接続され、それによってN個のアレイ・コントローラのそれぞれとM個のSAS領域のそれぞれとの間に直接の冗長接続を確立するSAS領域とを備える、ストレージ・アレイ・システムを備えることができる。
したがって、本発明の一実施形態は、少なくとも3つのアレイ・コントローラと、少なくとも3つのJBODユニットであって、少なくとも3つのJBODユニットのそれぞれが、ストレージ・アレイ内にあるアレイ・コントローラの数の少なくとも2倍の数のポートを有し、少なくとも3つのJBODユニットのそれぞれが、少なくとも3つのアレイ・コントローラのそれぞれに少なくとも2回直接接続され、それによって少なくとも3つのアレイ・コントローラのそれぞれと少なくとも3つのJBODユニットのそれぞれとの間に少なくとも2つの直接接続を確立する少なくとも3つのJBODユニットとを備える、ストレージ・アレイ・アーキテクチャをさらに備えることができる。
したがって、本発明の一実施形態は、複数のポートを備えて構成された複数のアレイ・コントローラであって、この場合、複数のアレイ・コントローラは3個以上であり、複数のポートは3個以上である、複数のアレイ・コントローラと、アレイ・コントローラの少なくとも2倍の数のSASポートがあるように複数のSASポートを備えて構成された複数のシリアル・アタッチトSCSI(SAS)領域であって、複数のSASポートのそれぞれの少なくとも2つは、複数のアレイ・コントローラの複数のポートのそれぞれの対応する少なくとも2つに直接接続され、それによって複数のアレイ・コントローラのそれぞれと複数のSAS領域のそれぞれとの間に直接の冗長接続を確立するSAS領域とを備える、ストレージ・アレイ・システムをさらに備えることができる。
ストレージ・アレイ・システムのブロック図である。 ストレージ・システムのブロック図である。 コンピュータシステムのブロック図である。
図1は、ストレージ・アレイ・システムのブロック図である。図1では、ストレージ・アレイ・システム100は、アレイ・コントローラ110、アレイ・コントローラ111、アレイ・コントローラ112、アレイ・コントローラ113、シリアル・アタッチトSCSI(SAS)領域ユニット120、SAS領域ユニット121、およびSAS領域ユニット122を備える。アレイ・コントローラ110は、2M個のポート115を含む。アレイ・コントローラ111は、2M個のポート116を含む。アレイ・コントローラ112は、2M個のポート117を含む。アレイ・コントローラ113は、2M個のポート118を含む。SAS領域ユニット120は、2N個のポート125を含む。SAS領域ユニット121は、2N個のポート126を含む。SAS領域ユニット122は、2N個のポート127を含む。
アレイ・コントローラ110〜113は、例えば、インフィニバンド、RAID(Redundant Array of Inexpensive Disks)、ネットワーク・アタッチト・ストレージ(NAS)、ストレージ・アレイ・ネットワーク(SAN)、iSCSI SAN、またはバーチャル・テープ・ライブラリ(VTL)などに適合する、またはそれらによって説明されるコントローラでもよく、あるいはそのようなコントローラを備えてもよい。SAS領域ユニット120〜122は、エンクロージャ内の1つまたは複数のジャスト・ア・バンチ・オブ・ディスクスまたはジャスト・ア・ボックス・オブ・ドライブズ(JBOD)、およびSASポート・エキスパンダなど他のハードウェアでもよく、あるいはそれらを備えてもよい。
一実施形態では、アレイ・コントローラ110〜113は、パリティおよびECC生成、バッテリ・バックアップ式データメモリ、NVRAM、ならびにコントローラ間書込みキャッシュ・ミラーリングを含んでもよい。例えば、アレイ・コントローラ110〜113は、書込みデータの不揮発性キャッシングを可能にすることができる。このデータは、アレイ・コントローラ110〜113の間でミラーリングされることができ、それによって、このキャッシュされたデータの冗長ストレージを提供する。アレイ・コントローラ110〜113は、ディスク機能をコミットする(provide commit to)ことができる。
アレイ・コントローラ110〜113内の不揮発性メモリは、停電、システムのシャットダウンなどの後で機能し続けるストレージを提供することができる。このメモリは、フラッシュメモリ、バッテリ・バックアップ式メモリなどでもよい。アレイ・コントローラ110〜113は、書込みキャッシュI/O処理を行うために不揮発性メモリを含んで、停電またはI/O中断の場合にデータが保護されることを保証することができる。
ストレージ・アレイ・システム100は、書込みキャッシュ・データを複数のアレイ・コントローラ110〜113にミラーリングして、データがアレイ・コントローラ110〜113の故障に耐えて存続することを保証することができる。そのような場合には、第1のコントローラが故障した場合、代替アレイ・コントローラ110〜113が、冗長フェイルオーバ機構の一部分としてそれにミラーリングされたデータを再利用することができる。
アレイ・コントローラ110〜113内の不揮発性メモリはまた、ストレージ・アレイ・システム100が初期化中にどのように構成されるべきかを記述する構成メタデータのために使用することができる。これは、電源投入シーケンスを速めることができる、あるいは特定の動作環境(例えば、ホスト・タイプ、デフォルト設定など)を示すことができる。
一実施形態では、ストレージ・アレイ・システム100は、N個のアレイ・コントローラ110〜113を有する。ストレージ・アレイ・システム100は、M個のSAS領域ユニット120〜122を有する。図1から分かるように、各アレイ・コントローラ110〜113は、各SAS領域ユニット120〜122に2回接続される。これらの2つの接続は、アレイ・コントローラ110〜113のそれぞれとSAS領域ユニット120〜122のそれぞれとの間に直接の冗長接続を確立している。これは、例えば、アレイ・コントローラ110とSAS領域ユニット120との間の2つの接続によって例示されている。これはまた、アレイ・コントローラ111とSAS領域ユニット120との間の2つの接続によって例示されている。これらの接続は、直接接続であり、スイッチング・ファブリックまたは他の中間装置を通らないことを理解されたい。他の実施形態では、各アレイ・コントローラ110〜113が、各SAS領域ユニット120〜122に3回以上接続されることができる。
図2は、ストレージ・システムの例示図である。図2は、1つのストレージ・アレイ210と1組のJBODユニット220〜221との間の接続を示す。他のストレージ・アレイおよびJBODユニット(図示せず)がストレージ・アレイ210およびJBODユニット220〜221に直接接続されることを理解されたい。これらは簡潔にするために省略されている。ストレージ・アレイ210とJBODユニット220〜221との間の接続は、図1に示されているものと同様でもよく、あるいはそれらと同一でもよい。
図2では、ストレージ・アレイ210は、アレイ・コントローラ250およびアレイ・コントローラ251を含む。アレイ・コントローラ250は、ポート・エキスパンダ230を含む。アレイ・コントローラ251は、ポート・エキスパンダ231を含む。ストレージ・アレイ210はまた、ディスクドライブを含んでもよい。これらのディスクドライブは、ポート・エキスパンダ230およびポート・エキスパンダ231に接続されることができる。ポート・エキスパンダ230およびポート・エキスパンダ231はそれぞれ、SASポートを含む。図2では、ポート・エキスパンダ230およびポート・エキスパンダ231はそれぞれ、6つの4−ワイドSASポートを有する。これは例示のためだけであり、ポート・エキスパンダ230およびポート・エキスパンダ231は、通常、少なくとも2M個のポートを有するはずであり、この場合、Mはストレージ・システム200内のJBODファンアウト・ユニット220の数であることを理解されたい。ポート・エキスパンダ230のSASポートは、ポート・エキスパンダ232のSASポートに直接接続される。ポート・エキスパンダ231のSASポートは、ポート・エキスパンダ233のSASポートに直接接続される。ポート・エキスパンダ230〜231および232〜233の他のSASポートは、それぞれ、他のファンアウトJBODユニットおよびアレイ・コントローラのポート・エキスパンダに接続される。
ストレージ・アレイ210は、例えば、インフィニバンド、RAID(Redundant Array of Inexpensive Disks)、ネットワーク・アタッチト・ストレージ(NAS)、ストレージ・アレイ・ネットワーク(SAN)、iSCSI SAN、またはバーチャル・テープ・ライブラリ(VTL)などに適合する、あるいはそれによって説明されるコントローラでもよく、あるいはそのようなコントローラを備えてもよい。ファンアウトJBODユニット220およびJBODユニット221は、エンクロージャ内の1つまたは複数のジャスト・ア・バンチ・オブ・ディスクスまたはジャスト・ア・ボックス・オブ・ドライブズ(JBOD)、およびSASポート・エキスパンダなど他のハードウェアでもよく、あるいはそれらを備えてもよい。
一実施形態では、アレイ・コントローラ210は、パリティおよびECC生成、バッテリ・バックアップ式データメモリ、NVRAM、ならびにコントローラ間書込みキャッシングを含んでもよい。例えば、アレイ・コントローラ210は、書込みデータの不揮発性キャッシングを可能にすることができる。このデータは、アレイ・コントローラ210と他のアレイ・コントローラ(図示せず)との間でミラーリングされることができ、それによって、このキャッシュされたデータの冗長ストレージを提供する。アレイ・コントローラ210は、ディスク機能をコミットすることができる。
アレイ・コントローラ210内の不揮発性メモリは、停電、システムのシャットダウンなどの後で機能し続けるストレージを提供することができる。このメモリは、フラッシュメモリ、バッテリ・バックアップ式メモリなどでもよい。アレイ・コントローラ210は、書込みキャッシュI/O処理を行うために不揮発性メモリを含んで、停電またはI/O中断の場合にデータが保護されることを保証することができる。
ストレージ・アレイ・システム200は、書込みキャッシュ・データを複数のアレイ・コントローラ210にミラーリングして、データがストレージ・アレイ・コントローラの故障に耐えて存続することを保証することができる。そのような場合には、第1のコントローラが故障した場合、代替コントローラが、冗長フェイルオーバ機構の一部分としてそれにミラーリングされたデータを再利用することができる。
アレイ・コントローラ210内の不揮発性メモリはまた、ストレージ・アレイ・システム200が初期化中にどのように構成されるべきかを記述する構成メタデータのために使用することができる。これは、電源投入シーケンスを速めることができる、あるいは特定の動作環境(例えば、ホスト・タイプ、デフォルト設定など)を示すことができる。
ファンアウトJBODユニット220は、ESM240およびESM241を含む。ESM240は、ポート・エキスパンダ232を含む。ESM241は、ポート・エキスパンダ233を含む。ファンアウトJBODユニット220およびJBODユニット221はまた、ディスクドライブを含んでもよい。ポート・エキスパンダ232およびポート・エキスパンダ233は、それぞれSASポートを含む。図2では、ポート・エキスパンダ232およびポート・エキスパンダ233は、例えば、6つの4−ワイドSASポートを有してもよい。これは例示のためだけであり、ポート・エキスパンダ232およびポート・エキスパンダ233は、通常、少なくとも2N個のポートを有するはずであり、この場合、Nはストレージ・システム200内のアレイ・コントローラ210の数であることを理解されたい。ポート・エキスパンダ232およびポート・エキスパンダ233はまた、ディスクドライブに接続された1xポートなど、追加のSASポートを含んでもよい。ファンアウトJBODユニット220はまた、さらに少なくとも2つのSASポートを含む。これらのSASポートは、JBODユニット221に接続される。これらの追加のSASポートは、ポート・エキスパンダ232およびポート・エキスパンダ233によって提供されることができる。
JBODユニット221は、ESM242およびESM243を含む。ESM242およびESM243は、ポート・エキスパンダを含んでもよい。JBODユニット221はまた、ESM242およびESM243を介して追加のJBODユニット(図示せず)に接続されることができる。ESM242〜243は、JBODユニット221内のディスクドライブに接続されることができる。
一実施形態では、ポート・エキスパンダ230のSASポートは、ポート・エキスパンダ232のSASポートに直接接続される。ポート・エキスパンダ231のSASポートは、ポート・エキスパンダ233のSASポートに直接接続される。したがって、ファンアウトJBODユニット220は、アレイ・コントローラ210に直接かつ冗長的に接続される。同様に、ファンアウトJBODユニット220はまた、ストレージ・システム200内の他の全てのアレイ・コントローラ210(図示せず)に少なくとも2つの直接接続によって直接接続される。したがって、ストレージ・システム200内の各JBODユニット220〜221は、ストレージ・システム200内の各アレイ・コントローラ210に冗長的に接続される。ファンアウトJBODユニット220、JBODユニット221、ならびにポート・エキスパンダおよびディスクドライブなどの他の装置は、単一のあるいは複数のエンクロージャまたはラックに配置されてもよい。
図1および図2から分かるように、複数のアレイ・コントローラ110〜113および210は、外部スイッチングを使用せずに複数のSAS JBOD領域に直接かつ冗長的に接続されることができ、一方、それでもなお、任意のコントローラから任意のストレージ装置への冗長接続を提供する。ストレージ・アレイ・システム100および200の性能は、アレイ・コントローラが追加されるにつれて向上する。同様に、ストレージ・アレイ・システム100および200の1つまたは複数の要素が故障した、あるいはサービスのために除去された場合、性能は直線的に低下するだけである。例えば、N=6であり(すなわち、システム内に6つのアレイ・コントローラ110〜113があり)、1つのアレイ・コントローラが故障した場合、ストレージ・アレイ・システム100または200の性能は、その前のレベルの約5/6に低下するだけである。これを、1つのコントローラが故障した場合、その性能がその前のレベルの約1/2に低下する2つのアレイ・コントローラ110〜113しか有しないシステムと比較されたい。さらに、各アレイ・コントローラ110〜113または210の間に直接接続があるので、コントローラ110〜113および210ならびにディスク、またはJBODユニット120〜122または220の間の別々のSASスイッチが、それぞれ不要になる。これらの別々のSASスイッチは、コストを増加させ、パッケージング・スペースを必要とする。
さらに、各アレイ・コントローラ110〜113がSAS領域ユニット120〜122を介して他の各アレイ・コントローラと相互接続されるので、アレイ・コントローラ110〜113からアレイ・コントローラ110〜113への専用データ転送が可能である。同様に、各ストレージ・アレイ210が他の各ストレージ・アレイ(図示せず)と相互接続されるので、各ストレージ・アレイ210から他の各ストレージ・アレイへの専用データ転送が可能である。
前述のシステム、ユニット、ドライブ、装置、機器、および機能は、1つまたは複数のコンピュータシステムを備えて実装されてもよく、あるいは1つまたは複数のコンピュータシステムによって実行されてもよい。前述の方法はまた、コンピュータ可読媒体上に記憶されることができる。ストレージ・アレイ・システム100およびストレージ・アレイ・システム200の要素の多くは、コンピュータシステムでもよく、それらを備えても、または含んでもよい。これは、アレイ・コントローラ110、アレイ・コントローラ111、アレイ・コントローラ112、アレイ・コントローラ113、SAS領域ユニット120、SAS領域ユニット121、SAS領域ユニット122、アレイ・コントローラ210、ファンアウトJBODユニット220、JBODユニット221、ポート・エキスパンダ230、ポート・エキスパンダ231、ポート・エキスパンダ232、ポート・エキスパンダ233、およびストレージ・アレイ・システム100またはストレージ・アレイ・システム200に含まれる任意のディスクドライブを含むがそれらに限定されない。
図3は、コンピュータシステムのブロック図を示す。コンピュータシステム300は、通信インターフェース320、処理システム330、ストレージ・システム340、およびユーザインターフェース360を含む。処理システム330は、ストレージ・システム340に動作可能に結合される。ストレージ・システム340は、ソフトウェア350およびデータ370を記憶する。処理システム330は、通信インターフェース320およびユーザインターフェース360に動作可能に結合される。コンピュータシステム300は、プログラムされた汎用コンピュータを備えてもよい。コンピュータシステム300は、マイクロプロセッサを含んでもよい。コンピュータシステム300は、プログラマブル回路または専用回路を備えてもよい。コンピュータシステム300は、まとめて要素320〜370を備える複数の装置、プロセッサ、ストレージ、および/またはインターフェースに分散されてもよい。
通信インターフェース320は、ネットワークインターフェース、モデム、ポート、バス、リンク、トランシーバ、または他の通信装置を備えてもよい。通信インターフェース320は、複数の通信装置に分散されてもよい。処理システム330は、マイクロプロセッサ、マイクロコントローラ、論理回路、または他の処理装置を備えてもよい。処理システム330は、複数の処理装置に分散されてもよい。ユーザインターフェース360は、キーボード、マウス、音声認識インターフェース、マイクロホンおよびスピーカ、グラフィカル・ディスプレイ、タッチスクリーン、または他のタイプのユーザインターフェース装置を備えてもよい。ユーザインターフェース360は、複数のインターフェース装置に分散されてもよい。ストレージ・システム340は、ディスク、テープ、集積回路、RAM、ROM、ネットワークストレージ、サーバ、または他のメモリ機能を備えてもよい。ストレージ・システム340は、コンピュータ可読媒体でもよい。ストレージ・システム340は、複数のメモリ装置に分散されてもよい。
処理システム330は、ストレージ・システム340からソフトウェア350を取り出し、実行する。処理システムは、データ370を取り出し、記憶することができる。処理システムはまた、通信インターフェース320を介してデータを取り出し、記憶することができる。処理システム350は、有形の結果を達成するために、ソフトウェア350またはデータ370を作成または変更することができる。処理システムは、有形の結果を達成するために、通信インターフェース320またはユーザインターフェース370を制御することができる。処理システムは、通信インターフェース320を介して、リモートに記憶されているソフトウェアを取り出し、実行することができる。
ソフトウェア350およびリモートに記憶されているソフトウェアは、オペレーティングシステム、ユーティリティ、ドライバ、ネットワーキング・ソフトウェア、および、通常はコンピュータシステムによって実行される他のソフトウェアを備えてもよい。ソフトウェア350は、アプリケーションプログラム、アプレット、ファームウェア、または、通常はコンピュータシステムによって実行される他の形態の機械可読処理命令を備えてもよい。処理システム330によって実行された場合、ソフトウェア350、またはリモートに記憶されているソフトウェアは、コンピュータシステム300に本明細書に記載されているように動作するよう指図することができる。
本発明の上記の記述は、例示および説明のために提示されてきた。網羅的であること、または、本発明を開示された厳密な形態に限定することを意図するものではなく、他の変更形態および変形形態が上記の教示にかんがみて可能であり得る。実施形態は、本発明の原理およびその実用的な適用形態を最もわかりやすく説明し、それによって、他の当業者が本発明を企図された特定の用途に適するように様々な実施形態および様々な変更形態において最もうまく利用することができるようにするために選択され記述された。添付の特許請求の範囲は、従来技術によって制限されない限り、本発明の他の代替実施形態を含むと解釈されるものとする。

Claims (18)

  1. 少なくとも2M個のポートを備えて構成されたN個のアレイ・コントローラであって、NおよびMは3以上の整数である、N個のアレイ・コントローラと、
    少なくとも2N個のポートを備えて構成されたM個のシリアル・アタッチトSCSI(SAS)領域であって、前記2N個のポートのそれぞれの少なくとも2つが前記N個のアレイ・コントローラのそれぞれの前記2M個のポートのそれぞれの対応する少なくとも2つに直接接続され、それによって前記N個のアレイ・コントローラのそれぞれとM個のSAS領域のそれぞれとの間に直接の冗長接続を確立するSAS領域と
    を備えるストレージ・アレイ・システム。
  2. 前記N個のアレイ・コントローラのそれぞれが、前記少なくとも2M個のポートを提供するために少なくとも2つのSASポート・エキスパンダを含む、請求項1に記載のストレージ・アレイ・システム。
  3. 前記M個のSAS領域のそれぞれが、前記少なくとも2N個のポートを提供するために少なくとも2つのSASポート・エキスパンダを含む、請求項1に記載のストレージ・アレイ・システム。
  4. 前記M個のSAS領域のうちの少なくとも1つが、前記少なくとも2N個のポートを提供する、ディスクドライブに結合され、前記少なくとも2つのSASポート・エキスパンダに結合された追加のSASポート・エキスパンダをさらに含む、請求項1に記載のストレージ・アレイ・システム。
  5. 前記M個のSAS領域のうちの少なくとも1つが、環境サービス・モジュールおよびJBODユニットを備える、請求項1に記載のストレージ・アレイ・システム。
  6. 前記N個のアレイ・コントローラのうちの少なくとも1つが、少なくとも1つのディスクドライブをさらに含む、請求項1に記載のストレージ・アレイ・システム。
  7. ストレージ・アレイのためのストレージ・アレイ・アーキテクチャであって、
    少なくとも3つのアレイ・コントローラと、
    少なくとも3つのJBODユニットであって、少なくとも3つのJBODユニットのそれぞれが、前記ストレージ・アレイ内にあるアレイ・コントローラの数の少なくとも2倍の数のポートを有し、少なくとも3つのJBODユニットのそれぞれが前記少なくとも3つのアレイ・コントローラのそれぞれに少なくとも2回直接接続され、それによって前記少なくとも3つのアレイ・コントローラのそれぞれと少なくとも3つのJBODユニットのそれぞれとの間に少なくとも2つの直接接続を確立する少なくとも3つのJBODユニットと
    を備える、ストレージ・アレイ・アーキテクチャ。
  8. 前記少なくとも3つのアレイ・コントローラのそれぞれが、前記少なくとも3つのJBODユニットへの直接接続のためのポートを提供するためにSASポート・エキスパンダを含む、請求項7に記載のストレージ・アレイ・アーキテクチャ。
  9. 前記少なくとも3つのJBODユニットのそれぞれが、前記少なくとも3つのJBODユニットへの直接接続のためのポートを提供するためにSASポート・エキスパンダを含む、請求項7に記載のストレージ・アレイ・アーキテクチャ。
  10. 前記JBODユニットの少なくとも1つが、ディスクドライブに結合された追加のSASポート・エキスパンダをさらに含む、請求項7に記載のストレージ・アレイ・アーキテクチャ。
  11. 前記JBODユニットの少なくとも1つが環境サービス・モジュールに含まれる、請求項7に記載のストレージ・アレイ・アーキテクチャ。
  12. 前記アレイ・コントローラのうちの少なくとも1つが、少なくとも1つのディスクドライブをさらに含む、請求項7に記載のストレージ・アレイ・アーキテクチャ。
  13. 複数のポートを備えて構成された複数のアレイ・コントローラであって、複数のアレイ・コントローラが3個以上であり、前記複数のポートが3個以上である、複数のアレイ・コントローラと、
    アレイ・コントローラの少なくとも2倍の数のSASポートがあるように複数のSASポートを備えて構成された複数のシリアル・アタッチトSCSI(SAS)領域であって、前記複数のSASポートのそれぞれの少なくとも2つが、前記複数のアレイ・コントローラのそれぞれの前記複数のポートのそれぞれの対応する少なくとも2つに直接接続され、それによって前記複数のアレイ・コントローラのそれぞれと複数のSAS領域のそれぞれとの間に直接の冗長接続を確立する複数のSAS領域と
    を備える、ストレージ・アレイ・システム。
  14. 前記複数のアレイ・コントローラのそれぞれが、前記複数のポートを提供するために少なくとも2つのSASポート・エキスパンダを含む、請求項13に記載のストレージ・アレイ・システム。
  15. 前記複数のSAS領域のそれぞれが、前記複数のSASポートを提供するために少なくとも2つのSASポート・エキスパンダを含む、請求項13に記載のストレージ・アレイ・システム。
  16. 前記複数のSAS領域のうちの少なくとも1つが、前記複数のSASポートを提供する、ディスクドライブに結合され、前記少なくとも2つのSASポート・エキスパンダに結合された追加のSASポート・エキスパンダをさらに含む、請求項13に記載のストレージ・アレイ・システム。
  17. 前記複数のSAS領域のうちの少なくとも1つが環境サービス・モジュールおよびJBODユニットを備える、請求項13に記載のストレージ・アレイ・システム。
  18. 前記複数のアレイ・コントローラのうちの少なくとも1つが、少なくとも1つのディスクドライブをさらに含む、請求項13に記載のストレージ・アレイ・システム。
JP2010017550A 2009-06-09 2010-01-29 任意のコントローラから任意のコントローラにn通りに直接接続されるアーキテクチャ Pending JP2010287212A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/480,893 US20100312962A1 (en) 2009-06-09 2009-06-09 N-way directly connected any to any controller architecture

Publications (1)

Publication Number Publication Date
JP2010287212A true JP2010287212A (ja) 2010-12-24

Family

ID=42671680

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010017550A Pending JP2010287212A (ja) 2009-06-09 2010-01-29 任意のコントローラから任意のコントローラにn通りに直接接続されるアーキテクチャ

Country Status (6)

Country Link
US (1) US20100312962A1 (ja)
EP (1) EP2264584A3 (ja)
JP (1) JP2010287212A (ja)
KR (1) KR20100132412A (ja)
CN (1) CN101923444A (ja)
TW (1) TW201044160A (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8656058B2 (en) * 2008-09-05 2014-02-18 Lsi Corporation Back-off retry with priority routing
US8806123B1 (en) * 2009-09-29 2014-08-12 Emc Corporation Expandable data storage system
CN102184154B (zh) * 2011-04-15 2013-07-10 浪潮(北京)电子信息产业有限公司 一种实现设备热插拔的系统及方法
CN103076869A (zh) * 2013-01-18 2013-05-01 浪潮电子信息产业股份有限公司 一种rack机柜系统带电维护的设计方法
US20150163072A1 (en) * 2013-12-05 2015-06-11 Broadcom Corporation Virtual Port Extender
CN105279095B (zh) * 2014-06-26 2019-09-13 南京中兴新软件有限责任公司 创建jbod文件系统的方法及装置
CN104216805B (zh) * 2014-08-26 2016-03-23 浪潮(北京)电子信息产业有限公司 一种高端磁盘阵列后端磁盘柜链路失效保护系统和方法
CN104657316B (zh) * 2015-03-06 2018-01-19 北京百度网讯科技有限公司 服务器
CN105045336A (zh) * 2015-06-25 2015-11-11 北京百度网讯科技有限公司 Jbod
TWI587217B (zh) * 2016-03-07 2017-06-11 威聯通科技股份有限公司 電子裝置及擴增其儲存容量的方法
US10261690B1 (en) * 2016-05-03 2019-04-16 Pure Storage, Inc. Systems and methods for operating a storage system
US20180150256A1 (en) 2016-11-29 2018-05-31 Intel Corporation Technologies for data deduplication in disaggregated architectures
US10761738B2 (en) 2018-07-13 2020-09-01 Seagate Technology Llc Raid performance by offloading tasks to expanders
US11868309B2 (en) 2018-09-06 2024-01-09 Pure Storage, Inc. Queue management for data relocation

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7434107B2 (en) * 2004-07-19 2008-10-07 Dell Products L.P. Cluster network having multiple server nodes
US7437462B2 (en) * 2006-01-06 2008-10-14 Dell Products L.P. Method for zoning data storage network using SAS addressing
US7644304B2 (en) * 2006-08-28 2010-01-05 Dell Products L.P. Using SAS address zoning to add/replace hot spares to RAID set
US8244793B2 (en) * 2007-05-14 2012-08-14 International Business Machines Corporation Resetting a HyperTransport link in a blade server
US8074105B2 (en) * 2007-10-08 2011-12-06 Dot Hill Systems Corporation High data availability SAS-based RAID system

Also Published As

Publication number Publication date
US20100312962A1 (en) 2010-12-09
EP2264584A3 (en) 2012-08-22
CN101923444A (zh) 2010-12-22
KR20100132412A (ko) 2010-12-17
TW201044160A (en) 2010-12-16
EP2264584A2 (en) 2010-12-22

Similar Documents

Publication Publication Date Title
JP2010287212A (ja) 任意のコントローラから任意のコントローラにn通りに直接接続されるアーキテクチャ
EP1674980B1 (en) Redundant SAS storage virtualization subsystem and system using the same, and controller and method therefor
US9411764B2 (en) Optimized redundant high availability SAS topology
US7941602B2 (en) Method, apparatus and program storage device for providing geographically isolated failover using instant RAID swapping in mirrored virtual disks
US7444541B2 (en) Failover and failback of write cache data in dual active controllers
US7673167B2 (en) RAID array data member copy offload in high density packaging
US20180341419A1 (en) Storage System
KR100553145B1 (ko) 고장 발생 시 완전한 성능을 유지하는 컴퓨터 파일 시스템, 컴퓨터 파일 시스템을 포함하는 컴퓨터 시스템, 컴퓨터 파일 서버의 유지 방법, 컴퓨터 파일 시스템의 완전한 성능을 유지하기 위한 프로그램을 수록한 컴퓨터 판독 가능한 기록 매체 및 프로그램 스토리지 디바이스
US20150268883A1 (en) Managing metadata and data for a logical volume in a distributed and declustered system
US9361262B2 (en) Redundant storage enclosure processor (SEP) implementation for use in serial attached SCSI (SAS) environment
US8595397B2 (en) Storage array assist architecture
WO2017162177A1 (zh) 冗余存储系统、冗余存储方法和冗余存储装置
US20100049919A1 (en) Serial attached scsi (sas) grid storage system and method of operating thereof
US8775867B2 (en) Method and system for using a standby server to improve redundancy in a dual-node data storage system
JP2010287209A (ja) 組込み専用スケール・アウト・ネットワーク
US20130132766A1 (en) Method and apparatus for failover and recovery in storage cluster solutions using embedded storage controller
JP2007200299A (ja) データ記憶システムに配置された記憶アレイを再構成するための装置及び方法
US20140195731A1 (en) Physical link management
US20120226935A1 (en) Virtual raid-1 drive as hot spare
JP6930153B2 (ja) パス切替装置、パス切替方法及びパス切替プログラム、並びに、コンピュータシステム
US11016901B2 (en) Storage system de-throttling to facilitate emergency cache destage
Terao Technologies of ETERNUS 6000 and ETERNUS 3000 Mission-Critical Disk Arrays
WO2010015610A1 (en) A method, apparatus and software for providing redundancy in a set of storage modules each comprising a set of one or more storage elements connected to a storage controller by connection means