特許第6138275号(P6138275)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ホアウェイ・テクノロジーズ・カンパニー・リミテッドの特許一覧

特許6138275データ・ストレージ方法およびストレージ・デバイス
<>
  • 特許6138275-データ・ストレージ方法およびストレージ・デバイス 図000002
  • 特許6138275-データ・ストレージ方法およびストレージ・デバイス 図000003
  • 特許6138275-データ・ストレージ方法およびストレージ・デバイス 図000004
  • 特許6138275-データ・ストレージ方法およびストレージ・デバイス 図000005
  • 特許6138275-データ・ストレージ方法およびストレージ・デバイス 図000006
  • 特許6138275-データ・ストレージ方法およびストレージ・デバイス 図000007
  • 特許6138275-データ・ストレージ方法およびストレージ・デバイス 図000008
  • 特許6138275-データ・ストレージ方法およびストレージ・デバイス 図000009
  • 特許6138275-データ・ストレージ方法およびストレージ・デバイス 図000010
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6138275
(24)【登録日】2017年5月12日
(45)【発行日】2017年5月31日
(54)【発明の名称】データ・ストレージ方法およびストレージ・デバイス
(51)【国際特許分類】
   G06F 3/06 20060101AFI20170522BHJP
   G06F 13/12 20060101ALI20170522BHJP
   G06F 12/00 20060101ALI20170522BHJP
【FI】
   G06F3/06 301A
   G06F3/06 301X
   G06F13/12 330P
   G06F12/00 501A
【請求項の数】10
【全頁数】33
(21)【出願番号】特願2015-549925(P2015-549925)
(86)(22)【出願日】2012年12月28日
(65)【公表番号】特表2016-506578(P2016-506578A)
(43)【公表日】2016年3月3日
(86)【国際出願番号】CN2012087857
(87)【国際公開番号】WO2014101117
(87)【国際公開日】20140703
【審査請求日】2015年8月3日
(73)【特許権者】
【識別番号】504161984
【氏名又は名称】ホアウェイ・テクノロジーズ・カンパニー・リミテッド
(74)【代理人】
【識別番号】100091982
【弁理士】
【氏名又は名称】永井 浩之
(74)【代理人】
【識別番号】100091487
【弁理士】
【氏名又は名称】中村 行孝
(74)【代理人】
【識別番号】100105153
【弁理士】
【氏名又は名称】朝倉 悟
(74)【代理人】
【識別番号】100117787
【弁理士】
【氏名又は名称】勝沼 宏仁
(74)【代理人】
【識別番号】100082991
【弁理士】
【氏名又は名称】佐藤 泰和
(74)【代理人】
【識別番号】100152205
【弁理士】
【氏名又は名称】吉田 昌司
(72)【発明者】
【氏名】リー、シャオホワ
【審査官】 田中 啓介
(56)【参考文献】
【文献】 特開2006−309483(JP,A)
【文献】 特開2008−084253(JP,A)
【文献】 特開2007−004710(JP,A)
【文献】 特開2004−070403(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F3/06−3/08
12/00
13/10−13/14
(57)【特許請求の範囲】
【請求項1】
ストレージ・デバイスにパフォーマンス・レベル要求を送信することであって、前記パフォーマンス・レベル要求は前記ストレージ・デバイス内の1つまたは複数の論理装置番号(LUN)のパフォーマンス・レベルに関する情報にクエリを行なうために使用される、送信することと、
前記パフォーマンス・レベル要求に応答して前記ストレージ・デバイスによって送信される応答を受信することであって、前記応答は前記LUNのパフォーマンス・レベルに関する情報を含む、受信することと、
前記LUNのパフォーマンス・レベルに関する情報に従って前記LUNのパフォーマンス・レベルを取得することと
ホストから、格納されるべきデータおよび前記データが書き込まれるべきアドレスを含むデータ書き込み命令を受信することであって、前記データが書き込まれるべきアドレスは、前記ホストに可視であるストレージ・スペース管理デバイス内の前記LUNのアドレスである、受信することと、
格納されるべき前記データのアクセス頻度レベルを取得するために、前記アドレスのアクセス頻度レベルが事前設定されたホットデータしきい値よりも高い、または事前設定されたコールドデータしきい値よりも低いかどうかを判定することと、
格納されるべき前記データのアクセス頻度レベルと前記LUNの前記パフォーマンス・レベルとの間のマッピングに従って、前記ストレージ・デバイス内の前記LUNから対応するパフォーマンス・レベルのLUNを選択することと、
格納されるべき前記データを前記選択されたLUNに書き込むことと、を含む、データ・ストレージ方法。
【請求項2】
前記パフォーマンス・レベル要求はワールド・ワイド・ネーム(WWN)フィールドを含み、前記WWNフィールドは前記LUNを識別するために使用され、
前記パフォーマンス・レベル要求に応答して送信される応答は、論理装置番号リスト(LUN List)フィールドを含み、それにより、前記LUNのパフォーマンス・レベルに関する情報が前記LUN Listフィールドで搬送される、請求項1に記載の方法。
【請求項3】
前記ストレージ・デバイス内のすべてのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために、前記パフォーマンス・レベル要求の前記WWNフィールドに含まれる値は0であり、
前記パフォーマンス・レベル要求に応答して送信される前記応答内の前記LUN Listフィールドは、前記ストレージ・デバイス内の各LUNのWWNおよび各LUNのパフォーマンス・レベルに関する情報を含み、各LUNのパフォーマンス・レベルに関する前記情報は前記LUNのパフォーマンス値範囲を含む、請求項2に記載の方法。
【請求項4】
前記パフォーマンス・レベル要求の前記WWNフィールドは、前記ストレージ・デバイス内の少なくとも1つのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために、前記LUNのWWNであり、
前記パフォーマンス・レベル要求に応答して送信される前記応答内の前記LUN Listフィールドは、各LUNのWWNおよび各LUNのパフォーマンス・レベルに関する情報を含み、各LUNのパフォーマンス・レベルに関する前記情報は前記LUNのパフォーマンス値範囲を含む、請求項2に記載の方法。
【請求項5】
前記LUNのパフォーマンス・レベルに関する前記情報に従って前記LUNのパフォーマンス・レベルを前記取得するステップは、
前記LUNの前記パフォーマンス値範囲に従ってパフォーマンス・レベル・ラベルを前記LUNに添付すること、および前記LUNの前記パフォーマンス・レベルを識別するために前記パフォーマンス・レベル・ラベルを使用することを含む、請求項3または4に記載の方法。
【請求項6】
前記パフォーマンス・レベル要求は選択レポート・フィールドをさらに備え、前記選択レポート・フィールドは、前記ストレージ・デバイス内のすべてのLUNのパフォーマンス・レベルに関する情報にクエリが行なわれる必要があるか、または前記ストレージ・デバイス内の固有のLUNのパフォーマンス・レベルに関する情報にクエリが行なわれる必要があるかどうかを指示し、
前記パフォーマンス・レベル要求が、前記ストレージ・デバイス内のすべてのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用される場合、前記選択レポート・フィールドは00であり、
前記パフォーマンス・レベル要求が、前記ストレージ・デバイス内の固有のLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用される場合、前記選択レポート・フィールドは01である、請求項2ないし5のいずれか一項に記載の方法。
【請求項7】
ストレージ・デバイスにパフォーマンス・レベル要求を送信するように構成された送信モジュールであって、前記パフォーマンス・レベル要求は前記ストレージ・デバイス内の1つまたは複数の論理装置番号(LUN)のパフォーマンス・レベルに関する情報にクエリを行なうために使用される、送信モジュールと、
前記パフォーマンス・レベル要求に応答して前記ストレージ・デバイスによって送信される応答を受信するように構成された受信モジュールであって、前記応答は前記LUNのパフォーマンス・レベルに関する前記情報を含む、受信モジュールと、
前記LUNのパフォーマンス・レベルに関する前記情報に従って前記LUNのパフォーマンス・レベルを取得し、
ホストから、格納されるべきデータおよび前記データが書き込まれるべきアドレスを含むデータ書き込み命令を受信し、前記データが書き込まれるべき前記アドレスは、前記ホストに可視であるストレージ・スペース管理デバイス内の前記LUNのアドレスであり、
格納されるべき前記データのアクセス頻度レベルを取得するために、前記アドレスのアクセス頻度レベルが事前設定されたホットデータしきい値よりも高い、または事前設定されたコールドデータしきい値よりも低いかどうかを判定し、
格納されるべき前記データのアクセス頻度レベルと前記LUNの前記パフォーマンス・レベルとの間のマッピングに従って、前記ストレージ・デバイス内の前記LUNから対応するパフォーマンス・レベルのLUNを選択し、
格納されるべき前記データを前記選択されたLUNへ書き込む、ように構成された取得モジュールと、を備える、ストレージ・スペース管理デバイス。
【請求項8】
前記パフォーマンス・レベル要求はワールド・ワイド・ネーム(WWN)フィールドを含み、前記WWNフィールドは前記LUNを識別するために使用され、
前記パフォーマンス・レベル要求に応答して送信される前記応答は、論理装置番号リスト(LUN List)フィールドを含み、それにより、前記LUNのパフォーマンス・レベルに関する前記情報が前記LUN Listフィールドで搬送される、請求項に記載のデバイス。
【請求項9】
前記ストレージ・デバイス内のすべてのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために、前記パフォーマンス・レベル要求の前記WWNフィールドに含まれる値は0であり、
前記パフォーマンス・レベル要求に応答して送信される前記応答内の前記LUN Listフィールドは、前記ストレージ・デバイス内の各LUNのWWNおよび各LUNのパフォーマンス・レベルに関する情報を含み、各LUNのパフォーマンス・レベルに関する前記情報は前記LUNのパフォーマンス値範囲を含む、請求項に記載のデバイス。
【請求項10】
前記パフォーマンス・レベル要求の前記WWNフィールドは、前記ストレージ・デバイス内の少なくとも1つのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために、前記LUNのWWNであり、
前記パフォーマンス・レベル要求に応答して送信される前記応答内の前記LUN Listフィールドは、各LUNのWWNおよび各LUNのパフォーマンス・レベルに関する情報を含み、各LUNのパフォーマンス・レベルに関する前記情報は前記LUNのパフォーマンス値範囲を含む、請求項に記載のデバイス。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ストレージ技術に関し、特に、データ・ストレージ方法およびストレージ・デバイスに関する。
【背景技術】
【0002】
ストレージ・システムにおいて、ストレージ・パフォーマンスに対してさまざまなサービスがさまざまな要件モデルを有している。同一のデータについても、そのサービス・アクセス・パフォーマンスに対する要件モデルは時間の経過に伴っても変化する。したがって、サービス・アクセス要件に従ってさまざまなパフォーマンスのストレージ媒体を適応させて割り振ることが緊急に必要となっている。
【0003】
従来技術において、ストレージ・システムは、ストレージ媒体のタイプに従って階層的に管理される。たとえば、ソリッド・ステート・ドライブ(Solid State Drive、SSD)は、レベル1ストレージであり、シリアル結合SCSI(Serial Attached SCSI、SAS)またはファイバ・チャネル(Fiber Channel、FC)ハードディスク・ドライブ(Hard Disk Drive、HDD)はレベル2ストレージであって、SCSI(Small Computer System Interface)はスモール・コンピュータ・システム・インターフェイスの頭字語であり、シリアル・アドバンスド・テクノロジー・アタッチメント(Serial Advanced Technology Attachment、SATA)またはニアライン(Near Line、NL)シリアル結合SCSI(Serial Attached SCSI、SAS)HDDはレベル3ストレージである。システムが稼働中に、レベル1ストレージは、高パフォーマンス要件を満たすストレージ・スペースを提供することができ、レベル2ストレージは、一般のパフォーマンス要件を満たすストレージ・スペースを提供することができ、レベル3ストレージは、低パフォーマンス要件を満たすストレージ・スペースを提供することができる。データ・アクセス・サービス・モデルの変化に伴って、ストレージ・デバイスは、さまざまなタイプの媒体の間でデータを動的に移行し、ホット・スポット・データを高パフォーマンス媒体に移行し、非ホット・スポット・データを低パフォーマンス媒体に移行する。
【発明の概要】
【発明が解決しようとする課題】
【0004】
ストレージ媒体のタイプに基づく階層管理の方法は、ハードディスク管理モードに基づく階層ストレージを適切に達成する。しかし、既存のストレージ・システムの管理は、ストレージ管理者が対応するストレージ・スペースのパフォーマンス・レベルを指定することに依存する。それは、LUNのパフォーマンスをある程度識別する目的を果たし、システムが階層ストレージを実施することを補助するが、それはストレージ管理者が予めパフォーマンス・レベルを指定することに依存している。
【課題を解決するための手段】
【0005】
本発明の実施形態は、LUN固有の階層ストレージを実施するためのデータ・ストレージ方法、ストレージ・スペース管理デバイス、ストレージ・デバイスを提供する。
【0006】
第1の態様において、本発明の実施形態は、
ストレージ・デバイスにパフォーマンス・レベル要求を送信することであって、パフォーマンス・レベル要求はストレージ・デバイス内の1つまたは複数の論理装置番号LUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用される、送信することと、
パフォーマンス・レベル要求に応答してストレージ・デバイスによって送信される応答を受信することであって、応答はLUNのパフォーマンス・レベルに関する情報を含む、受信することと、
データ書き込み命令が受信されるときにデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータが対応するパフォーマンス・レベルのLUNに書き込まれるように、LUNのパフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得することとを含むデータ・ストレージ方法を提供する。
【0007】
第1の態様による第1の実現可能な実施方法において、パフォーマンス・レベル要求はワールド・ワイド・ネーム(World Wide Name)WWNフィールドを含み、WWNフィールドはLUNを識別するために使用され、
パフォーマンス・レベル要求に応答して送信される応答は、論理装置番号リストLUN Listフィールドを含み、それによりLUNのパフォーマンス・レベルに関する情報がLUN Listフィールドで搬送される。
【0008】
第1の態様による第1の実現可能な実施方法と組み合わせて、第1の態様の第2の実現可能な実施方法において、ストレージ・デバイスのすべてのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために、パフォーマンス・レベル要求のWWNフィールドに含まれる値は0であり、
パフォーマンス・レベル要求に応答して送信される応答内のLUN Listフィールドは、ストレージ・デバイス内の各LUNのWWNおよび各LUNのパフォーマンス・レベルに関する情報を含み、各LUNのパフォーマンス・レベルに関する情報はLUNのパフォーマンス値範囲を含む。
【0009】
第1の態様の第1の実現可能な実施方法と組み合わせて、第1の態様の第3の実現可能な実施方法において、パフォーマンス・レベル要求のWWNフィールドは、ストレージ・デバイスの少なくとも1つのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために、LUNのWWNであり、
パフォーマンス・レベル要求に応答して送信される応答内のLUN Listフィールドは、各LUNのWWNおよび各LUNのパフォーマンス・レベルに関する情報を含み、各LUNのパフォーマンス・レベルに関する情報はLUNのパフォーマンス値範囲を含む。
【0010】
第2の態様において、本発明の実施形態は、
ストレージ・スペース管理デバイスによって送信されるパフォーマンス・レベル要求を受信することであって、要求はストレージ・デバイス内の1つまたは複数のLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用される、受信することと、 パフォーマンス・レベル要求に従ってLUNのパフォーマンス・レベルに関する情報を取得することと、
パフォーマンス・レベル要求に応答してストレージ・スペース管理デバイスに応答を送信することであって、パフォーマンス・レベル要求に応答して送信される応答はLUNのパフォーマンス・レベルに関する情報を含み、ストレージ・スペース管理デバイスは、データ書き込み命令が受信されるときにデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータが対応するパフォーマンス・レベルのLUNに書き込まれるように、LUNのパフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得する、送信することとを含むデータ・ストレージ方法を提供する。
【0011】
第2の態様による第1の実現可能な実施方法において、パフォーマンス・レベル要求はワールド・ワイド・ネームWWNフィールドを含み、WWNフィールドはLUNを識別するために使用され、
パフォーマンス・レベル要求に応答して送信される応答は、論理装置番号リストLUN Listフィールドを含み、それにより、LUNのパフォーマンス・レベルに関する情報がLUN Listフィールドで搬送される。
【0012】
第2の態様による第1の実現可能な実施方法と組み合わせて、第2の態様の第2の実現可能な実施方法において、ストレージ・デバイスのすべてのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために、パフォーマンス・レベル要求のWWNフィールドに含まれる値は0であり、
パフォーマンス・レベル要求に応答して送信される応答内のLUN Listフィールドは、ストレージ・デバイス内の各LUNのWWNおよび各LUNのパフォーマンス・レベルに関する情報を含み、各LUNのパフォーマンス・レベルに関する情報はLUNのパフォーマンス値範囲を含む。
【0013】
第2の態様の第1の実現可能な実施方法と組み合わせて、第2の態様の第3の実現可能な実施方法において、
パフォーマンス・レベル要求のWWNフィールドは、ストレージ・デバイスの少なくとも1つのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために、LUNのWWNであり、
パフォーマンス・レベル要求に応答して送信される応答内のLUN Listフィールドは、各LUNのWWNおよび各LUNのパフォーマンス・レベルに関する情報を含み、各LUNのパフォーマンス・レベルに関する情報はLUNのパフォーマンス値範囲を含む。
【0014】
第3の態様において、本発明の実施形態は、
ストレージ・デバイスにパフォーマンス・レベル要求を送信するように構成された送信モジュールであって、要求はストレージ・デバイス内の1つまたは複数の論理装置番号LUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用される、送信モジュールと、
パフォーマンス・レベル要求に応答してストレージ・デバイスによって送信される応答を受信するように構成された受信モジュールであって、応答はLUNのパフォーマンス・レベルに関する情報を含む、受信モジュールと、
データ書き込み命令が受信されるときにデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータが対応するパフォーマンス・レベルのLUNに書き込まれるように、LUNのパフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得するように構成された取得モジュールとを含むストレージ・スペース管理デバイスを提供する。
【0015】
第3の態様による第1の実現可能な実施方法において、パフォーマンス・レベル要求はワールド・ワイド・ネームWWNフィールドを含み、WWNフィールドはLUNを識別するために使用され、
パフォーマンス・レベル要求に応答して送信される応答は、論理装置番号リストLUN Listフィールドを含み、それにより、LUNのパフォーマンス・レベルに関する情報がLUN Listフィールドで搬送される。
【0016】
第3の態様による第1の実現可能な実施方法と組み合わせて、第3の態様の第2の実現可能な実施方法において、ストレージ・デバイスのすべてのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために、パフォーマンス・レベル要求のWWNフィールドに含まれる値は0であり、
パフォーマンス・レベル要求に応答して送信される応答内のLUN Listフィールドは、ストレージ・デバイス内の各LUNのWWNおよび各LUNのパフォーマンス・レベルに関する情報を含み、各LUNのパフォーマンス・レベルに関する情報はLUNのパフォーマンス値範囲を含む。
【0017】
第3の態様による第1の実現可能な実施方法と組み合わせて、第3の態様の第3の実現可能な実施方法において、パフォーマンス・レベル要求のWWNフィールドは、ストレージ・デバイスの少なくとも1つのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために、LUNのWWNであり、
パフォーマンス・レベル要求に応答して送信される応答内のLUN Listフィールドは、各LUNのWWNおよび各LUNのパフォーマンス・レベルに関する情報を含み、各LUNのパフォーマンス・レベルに関する情報はLUNのパフォーマンス値範囲を含む。
【0018】
第4の態様において、本発明の実施形態は、
ストレージ・スペース管理デバイスによって送信されるパフォーマンス・レベル要求を受信するように構成された受信モジュールであって、要求はストレージ・デバイス内の1つまたは複数のLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用される、受信モジュールと、
パフォーマンス・レベル要求に従ってLUNのパフォーマンス・レベルに関する情報を取得するように構成された計算モジュールと、
パフォーマンス・レベル要求に応答してストレージ・スペース管理デバイスに応答を送信するように構成された送信モジュールであって、パフォーマンス・レベル要求に応答して送信される応答はLUNのパフォーマンス・レベルに関する情報を含み、ストレージ・スペース管理デバイスは、データ書き込み命令が受信されるときにデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータが対応するパフォーマンス・レベルのLUNに書き込まれるように、LUNのパフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得する、送信モジュールとを含むストレージ・デバイスを提供する。
【0019】
第4の態様による第1の実現可能な実施方法において、パフォーマンス・レベル要求はワールド・ワイド・ネームWWNフィールドを含み、WWNフィールドはLUNを識別するために使用され、
パフォーマンス・レベル要求に応答して送信される応答は、論理装置番号リストLUN Listフィールドを含み、それにより、LUNのパフォーマンス・レベルに関する情報がLUN Listフィールドで搬送される。
【0020】
第4の態様による第1の実現可能な実施方法と組み合わせて、第4の態様の第2の実現可能な実施方法において、ストレージ・デバイスのすべてのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために、パフォーマンス・レベル要求のWWNフィールドに含まれる値は0であり、
パフォーマンス・レベル要求に応答して送信される応答内のLUN Listフィールドは、ストレージ・デバイス内の各LUNのWWNおよび各LUNのパフォーマンス・レベルに関する情報を含み、各LUNのパフォーマンス・レベルに関する情報はLUNのパフォーマンス値範囲を含む。
【0021】
第4の態様による第1の実現可能な実施方法と組み合わせて、第4の態様の第3の実現可能な実施方法において、パフォーマンス・レベル要求のWWNフィールドは、ストレージ・デバイスの少なくとも1つのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために、LUNのWWNであり、
パフォーマンス・レベル要求に応答して送信される応答内のLUN Listフィールドは、各LUNのWWNおよび各LUNのパフォーマンス・レベルに関する情報を含み、各LUNのパフォーマンス・レベルに関する情報はLUNのパフォーマンス値範囲を含む。
【0022】
第5の態様において、本発明の実施形態は、第3の態様において提供されるストレージ・スペース管理デバイス、および第4の態様において提供されるストレージ・デバイスを含むストレージ・システムを提供する。
【0023】
第6の態様において、本発明の実施形態は、プロセッサ、通信インターフェイス、および通信バスを含むストレージ・スペース管理デバイスを提供し、
プロセッサは、通信バスを通じて通信インターフェイスと通信し、
プロセッサは、パフォーマンス・レベル要求をストレージ・デバイスに送信し、要求はストレージ・デバイス内の1つまたは複数の論理装置番号LUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用され、パフォーマンス・レベル要求に応答してストレージ・デバイスによって送信される応答を受信し、応答はLUNのパフォーマンス・レベルに関する情報を含み、データ書き込み命令が受信されるときにデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータが対応するパフォーマンス・レベルのLUNに書き込まれるように、LUNのパフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得するように構成される。
【0024】
第6の態様による第1の実現可能な実施方法において、パフォーマンス・レベル要求はワールド・ワイド・ネームWWNフィールドを含み、WWNフィールドはLUNを識別するために使用され、
パフォーマンス・レベル要求に応答して送信される応答は、論理装置番号リストLUN Listフィールドを含み、それにより、LUNのパフォーマンス・レベルに関する情報がLUN Listフィールドで搬送される。
【0025】
第6の態様による第1の実現可能な実施方法と組み合わせて、第6の態様の第2の実現可能な実施方法において、
ストレージ・デバイスのすべてのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために、パフォーマンス・レベル要求のWWNフィールドに含まれる値は0であり、
パフォーマンス・レベル要求に応答して送信される応答内のLUN Listフィールドは、ストレージ・デバイス内の各LUNのWWNおよび各LUNのパフォーマンス・レベルに関する情報を含み、各LUNのパフォーマンス・レベルに関する情報はLUNのパフォーマンス値範囲を含む。
【0026】
第6の態様による第1の実現可能な実施方法と組み合わせて、第6の態様の第3の実現可能な実施方法において、
パフォーマンス・レベル要求のWWNフィールドは、ストレージ・デバイスの少なくとも1つのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために、LUNのWWNであり、
パフォーマンス・レベル要求に応答して送信される応答内のLUN Listフィールドは、各LUNのWWNおよび各LUNのパフォーマンス・レベルに関する情報を含み、各LUNのパフォーマンス・レベルに関する情報はLUNのパフォーマンス値範囲を含む。
【0027】
第7の態様において、本発明の実施形態は、プロセッサ、通信インターフェイス、および通信バスを含むストレージ・デバイスを提供し、
プロセッサは、通信バスを通じて通信インターフェイスと通信し、
プロセッサは、ストレージ・スペース管理デバイスによって送信されるパフォーマンス・レベル要求を受信し、要求はストレージ・デバイス内の1つまたは複数のLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用され、パフォーマンス・レベル要求に従ってLUNのパフォーマンス・レベルに関する情報を取得し、パフォーマンス・レベル要求に応答してストレージ・スペース管理デバイスに応答を送信し、パフォーマンス・レベル要求に応答して送信される応答はLUNのパフォーマンス・レベルに関する情報を含むように構成され、ストレージ・スペース管理デバイスは、データ書き込み命令が受信されるときにデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータが対応するパフォーマンス・レベルのLUNに書き込まれるように、LUNのパフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得する。
【0028】
第7の態様による第1の実現可能な実施方法において、パフォーマンス・レベル要求はワールド・ワイド・ネームWWNフィールドを含み、WWNフィールドはLUNを識別するために使用され、
パフォーマンス・レベル要求に応答して送信される応答は、論理装置番号リストLUN Listフィールドを含み、それにより、LUNのパフォーマンス・レベルに関する情報がLUN Listフィールドで搬送される。
【0029】
第7の態様による第1の実現可能な実施方法と組み合わせて、第7の態様の第2の実現可能な実施方法において、
ストレージ・デバイスのすべてのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために、パフォーマンス・レベル要求のWWNフィールドに含まれる値は0であり、
パフォーマンス・レベル要求に応答して送信される応答内のLUN Listフィールドは、ストレージ・デバイス内の各LUNのWWNおよび各LUNのパフォーマンス・レベルに関する情報を含み、各LUNのパフォーマンス・レベルに関する情報はLUNのパフォーマンス値範囲を含む。
【0030】
第7の態様による第1の実現可能な実施方法と組み合わせて、第7の態様の第3の実現可能な実施方法において、
パフォーマンス・レベル要求のWWNフィールドは、ストレージ・デバイスの少なくとも1つのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために、LUNのWWNであり、
パフォーマンス・レベル要求に応答して送信される応答内のLUN Listフィールドは、各LUNのWWNおよび各LUNのパフォーマンス・レベルに関する情報を含み、各LUNのパフォーマンス・レベルに関する情報はLUNのパフォーマンス値範囲を含む。
【0031】
本発明の実施形態において、ストレージ・スペース管理デバイスは、ストレージ・デバイスに含まれるLUNのパフォーマンス・レベルに関する情報についてストレージ・デバイスにクエリを行ない、パフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得する。したがって、本発明の実施形態において、LUNのパフォーマンス・レベルは、ストレージ管理者が予めパフォーマンス・レベルを構成することに依存することなく取得される。したがって、データ書き込み命令が受信された後にデータがストレージ・デバイスに書き込まれる必要がある場合、ストレージ・スペース管理デバイスは、格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータをさまざまなパフォーマンス・レベルのLUNに書き込むことができ、それによりLUN固有の階層ストレージを実施することができる。
【0032】
本発明の実施形態または従来技術における技術的解決策をさらに明確に説明するため、後段において、実施形態または従来技術を説明するために必要な添付の図面を簡単に紹介する。明らかに、以下の説明における添付の図面は、本発明の一部の実施形態を示すものであり、当業者であれば、創造的な取り組みを伴うことなく、これらの添付の図面からその他の図面をさらに導き出すことができるであろう。
【図面の簡単な説明】
【0033】
図1】本発明の実施形態によるデータ・ストレージ方法のアプリケーションネットワークアーキテクチャを示す概略図である。
図2A】本発明の実施形態によるデータ・ストレージ方法を示す流れ図である。
図2B】本発明の実施形態によるデータ・ストレージ方法を示す流れ図である。
図2C】本発明の実施形態によるデータ・ストレージ方法を示すシグナリング図である。
図3】本発明の実施形態によるストレージ・スペース管理デバイスを示す概略構造図である。
図4】本発明の実施形態によるストレージ・デバイスを示す概略構造図である。
図5】本発明の実施形態によるストレージ・システムを示す概略構造図である。
図6】本発明の実施形態によるもう1つのストレージ・スペース管理デバイスを示す概略構造図である。
図7】本発明の実施形態によるもう1つのストレージ・デバイスを示す概略構造図である。
【発明を実施するための形態】
【0034】
本発明の実施形態の目的、技術的解決策、および利点をさらに理解可能なものにするため、後段では、本発明の実施形態の添付の図面を参照して、本発明の実施形態における技術的解決策を明確および完全に説明する。明らかに、説明される実施形態は、本発明の実施形態の一部分に過ぎず、実施形態の全体を示すものではない。創造的な取り組みを伴うことなく、本発明の実施形態に基づいて当業者によって得られるすべてのその他の実施形態は、本発明の保護適用範囲に含まれるものとする。
【0035】
本発明の実施形態において提供されるデータ・バックアップ方法は、ストレージ・システムで実施されてもよい。図1は、本発明の実施形態によるデータ・バックアップ方法のシステムアーキテクチャを示す概略図である。図1に示されるように、ストレージ・システムは、ホスト、ストレージ・スペース管理デバイス、およびストレージ・デバイスを含む。
【0036】
ホストは、たとえば、サーバ、デスクトップ・コンピュータなどのような、従来技術において知られている任意のコンピュータデバイスを含むことができる。オペレーティング・システムおよびその他のアプリケーションは、ホストにインストールされる。
【0037】
ストレージ・スペース管理デバイスは、ストレージ・ゲートウェイ・デバイスを含むことができる。本発明の実施形態におけるストレージ・ゲートウェイ・デバイスは、異機種の仮想化ストレージ・ゲートウェイ・デバイスに言及する。異機種の仮想化ストレージ・ゲートウェイ・デバイスは、ホストとストレージ・デバイス間の中間デバイスであり、マッピングまたは抽象化を用いてストレージ・デバイスのさまざまな物理ディスクの複雑さおよび差異を覆い隠す。したがって、ユーザは、ストレージ・デバイスに対して統一された管理およびリソーススケジューリングを実行することができる。
【0038】
ストレージ・デバイスは、たとえば、新磁気ディスク制御機構(redundant arrays of independent disks)(Redundant Arrays of Inexpensive Disks、RAID)、ディスクの束(Just a Bunch Of Disks、JBOD)、または直接アクセス・ストレージ・デバイス(Direct Access Storage Device、DASD)の、テープ・ライブラリのような1つのディスク・ドライブまたは複数の相互接続されたディスク・ドライブ、または1つまたは複数のストレージ・ユニットのテープ・ストレージ・デバイスなど、従来技術において知られているストレージ・デバイスであってもよい。
【0039】
多くのストレージ・デバイスの場合、ストレージ・デバイスに含まれている物理ディスクはオペレーティング・システムによって直接表示されていないが、各物理ディスクによって提供されるストレージ・スペースは論理領域、つまり、ユーザに使用可能な論理装置番号(Logical Unit Number、LUN)の範囲にマッピングされていることに留意されたい。したがって、ディスク上でオペレーティング・システムによって実行される読み取りおよび書き込み操作は、実際にはLUNに固有の操作である。加えて、オペレーティング・システムは、パーティショニングおよびフォーマッティングのような操作をLUNに実行することができる。
【0040】
図2Aに示されるように、データ格納の方法は、本発明の実施形態において提供される。方法は、ストレージ・スペース管理デバイスによって実行されてもよい。
【0041】
S101a.パフォーマンス・レベル要求をストレージ・デバイスに送信し、要求はストレージ・デバイス内の1つまたは複数の論理装置番号(LUN)のパフォーマンス・レベルに関する情報にクエリを行なうために使用される。
【0042】
オプションで、パフォーマンス・レベル要求はワールド・ワイド・ネーム(WWN)フィールドを含み、WWNフィールドはLUNを識別するために使用される。
【0043】
パフォーマンス・レベル要求のWWNフィールド内の値が0である場合、パフォーマンス・レベル要求は、ストレージ・デバイス内のすべてのLUNのパフォーマンス・レベルに関する情報にクエリを行なうよう求めるものであり、パフォーマンス・レベル要求のWWNフィールドがLUNのWWNである場合、要求は、ストレージ・デバイス内の少なくとも1つのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用される。
【0044】
S102a.パフォーマンス・レベル要求に応答してストレージ・デバイスによって送信される応答を受信し、応答はLUNのパフォーマンス・レベルに関する情報を含む。
【0045】
オプションで、応答は、論理装置番号リスト(LUN List)フィールドを含むことができ、それにより、LUNのパフォーマンス・レベルに関する情報がLUN Listフィールドで搬送される。特に、LUN Listフィールドは、各LUNのWWNおよび各LUNのパフォーマンス・レベルに関する情報を含むことができる。
【0046】
LUNのパフォーマンス・レベルに関する情報は、LUNのパフォーマンス値範囲を少なくとも含む。
【0047】
S103a.データ書き込み命令が受信されるときにデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータが対応するパフォーマンス・レベルのLUNに書き込まれるように、LUNのパフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得する。
【0048】
本発明の実施形態において、ストレージ・スペース管理デバイスは、ストレージ・デバイスに含まれる1つまたは複数のLUNのパフォーマンス・レベルに関する情報についてストレージ・デバイスにクエリを行ない、パフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得する。したがって、本発明の実施形態において、LUNのパフォーマンス・レベルは、ストレージ管理者が予めパフォーマンス・レベルを構成することに依存することなく取得され得る。したがって、データ書き込み命令が受信された後にデータがストレージ・デバイスに書き込まれる必要がある場合、ストレージ・スペース管理デバイスは、格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータをさまざまなパフォーマンス・レベルのLUNに書き込むことができ、それによりLUN固有の階層ストレージを実施することができる。
【0049】
図2Bに示されるように、データ格納の方法は、本発明の実施形態において提供される。方法は、ストレージ・デバイスによって実行されてもよい。
【0050】
S101b.ストレージ・スペース管理デバイスによって送信されるパフォーマンス・レベル要求を受信し、要求はストレージ・デバイス内の1つまたは複数の論理装置番号LUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用される。
【0051】
S102b.パフォーマンス・レベル要求に従ってLUNのパフォーマンス・レベルに関する情報を取得する。
【0052】
S103b.パフォーマンス・レベル要求に応答してストレージ・スペース管理デバイスに応答を送信し、応答はLUNのパフォーマンス・レベルに関する情報を含み、ストレージ・スペース管理デバイスは、データ書き込み命令が受信されるときにデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度に従って当該格納されるべきデータが対応するパフォーマンス・レベルのLUNに書き込まれるように、LUNのパフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得する。
【0053】
パフォーマンス・レベル要求、およびパフォーマンス・レベル要求に応答して送信される応答の詳細については、上記の実施形態の説明を参照されたい。
【0054】
本発明の実施形態において、ストレージ・デバイスに含まれる1つまたは複数のLUNのパフォーマンス・レベルに関する情報にクエリを行なうためにストレージ・スペース管理デバイスによって送信されるパフォーマンス・レベル要求を受信した後、ストレージ・デバイスは、ストレージ・デバイスに含まれるLUNのパフォーマンス・レベルに関する情報を取得して、それをストレージ・スペース管理デバイスに送信し、ストレージ・スペース管理デバイスがパフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得できるようにする。したがって、本発明の実施形態において、ストレージ・デバイスは、ストレージ管理者が予めパフォーマンス・レベルを構成することに依存することなくLUNのパフォーマンス・レベルを取得することができる。このようにして、データ書き込み命令が受信された後にデータがストレージ・デバイスに書き込まれる必要がある場合、ストレージ・スペース管理デバイスは、格納されるべきデータのアクセス頻度に従って当該格納されるべきデータをさまざまなパフォーマンス・レベルのLUNに書き込むことができ、それによりLUN固有の階層ストレージを実施することができる。
【0055】
後段では、LUNのパフォーマンス・レベルに関する情報がLUNのパフォーマンス値範囲であるという例をあげて、データ・ストレージ方法を詳細に説明する。
【0056】
図2Cを参照する。図2Cは、本発明の実施形態によるデータ・ストレージ方法を示すシグナリング図である。図2Cに示されるように、データ格納の方法は、本発明の実施形態において提供され、方法は、書き込まれるべきデータのアクセス頻度に従ってLUN固有の階層ストレージを実施することができる。方法は、以下のステップを含むことができる。
【0057】
S201.ストレージ・スペース管理デバイスは、パフォーマンス・レベル要求をストレージ・デバイスに送信し、要求は1つまたは複数のLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用され、LUNのパフォーマンス・レベルに関する情報はLUNのパフォーマンス値範囲である。
【0058】
パフォーマンス・レベル要求はREPORT LUN CACPABILITYと定義されてもよく、これはLUNのWWNフィールドを含み、このフィールドはLUNを識別するために使用される。各LUNは、異なるWWNを有する。
【0059】
本発明の実施形態において、パフォーマンス・レベル要求をストレージ・デバイスに送信することは、ストレージ・デバイスにパフォーマンス・レベル要求を送信することであって、要求はストレージ・デバイス内のすべてのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用され、パフォーマンス・レベル要求のWWNフィールドに含まれる値は0であることであってもよいか、または、ストレージ・デバイスの少なくとも1つのLUNにパフォーマンス・レベル要求を送信することであって、要求はストレージ・デバイス内の少なくとも1つのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用され、パフォーマンス・レベル要求のWWNフィールドは、クエリが行なわれるべきLUNのWWNであることであってもよい。
【0060】
S202.ストレージ・デバイスは、パフォーマンス・レベル要求に含まれるWWNフィールドに従って、LUNのパフォーマンス値範囲を取得する。
【0061】
特に、ストレージ・スペース管理デバイスによって送信されるパフォーマンス・レベル要求を受信した後、ストレージ・デバイスは、LUNの関連情報を取得するために、LUNのWWNに従ってLUNを見出すことができる。情報は、LUNに対応する物理ディスクのストレージ媒体タイプを少なくとも含むことができる。LUNは論理領域であり、物理ディスクからマップされるので、LUNに対応する物理ディスクのストレージ媒体タイプがLUNのパフォーマンスを決定することができる。たとえば、SSDのパフォーマンスはSAS/FC HDDのパフォーマンスよりも高く、SAS/FC HDDのパフォーマンスはSATA/NL SAS HDDのパフォーマンスよりも高い。したがって、SSDに対応するLUNのパフォーマンスはSAS/FC HDDに対応するLUNのパフォーマンスよりも高く、SAS/FC HDDに対応するLUNのパフォーマンスはSATA/NL SAS HDDに対応するLUNのパフォーマンスよりも高い。
【0062】
したがって、ストレージ・デバイスは、LUNの関連情報に従って、LUNのパフォーマンス値範囲を取得することができる。たとえば、SSDに対応するLUNのパフォーマンス値範囲は[80、100]であり、SAS/FC HDDに対応するLUNのパフォーマンス値範囲は[60、80]であり、SATA/NL SAS HDDに対応するLUNのパフォーマンス値範囲は[40、60]である。
【0063】
加えて、ストレージ・デバイスは、LUNのIOサービス圧力、LUNの現在の実行状態、およびLUNの複合パターンのようなその他の関連情報に従って、LUNのパフォーマンス値範囲を取得することができる。ストレージ・デバイスは、あらゆる種類の要因を考慮に入れた後、LUNのパフォーマンス値範囲を取得することができる。
【0064】
S203a.ストレージ・デバイスは、パフォーマンス・レベル要求に応答してストレージ・スペース管理デバイスに応答を送信し、応答はLUNのパフォーマンス値範囲を含む。
【0065】
S203b.ストレージ・スペース管理デバイスは、LUNのパフォーマンス値範囲に従って、LUNのパフォーマンス・レベルを取得する。
【0066】
パフォーマンス・レベル要求に応答して送信される応答は、論理装置番号リスト(LUN List)フィールドを含み、それにより、LUNのパフォーマンス値範囲がLUN
Listフィールドで搬送される。たとえば、LUN Listフィールドは、特に3つのサブフィールドを含むことができ、1つのサブフィールドはLUNのWWNであり、もう1つのサブフィールドはLUNのパフォーマンス値の上限であり、残りのサブフィールドはLUNのパフォーマンス値の下限である。
【0067】
本発明の実施形態において、パフォーマンス・レベル要求がストレージ・デバイスのすべてのLUNのパフォーマンス・レベルにクエリを行なうために使用される場合、パフォーマンス・レベル要求に応答して送信される応答内のLUN Listフィールドは、ストレージ・スペース管理デバイスがすべてのパフォーマンス値範囲に従ってLUNのパフォーマンス・レベルを取得できるように、ストレージ・デバイスのLUNのWWNおよびLUNのパフォーマンス値範囲であり、パフォーマンス・レベル要求がストレージ・デバイスの少なくとも1つのLUNのパフォーマンス・レベルにクエリを行なうために使用される場合、パフォーマンス・レベル要求に応答して送信される応答内のLUN Listフィールドは、ストレージ・スペース管理デバイスがパフォーマンス値範囲に従ってLUNのパフォーマンス・レベルを取得できるように、クエリが行なわれるべき各LUNのWWNおよび各LUNのパフォーマンス値範囲を含む。たとえば、ストレージ・スペース管理デバイスは、LUNのパフォーマンス値範囲に従って、LUNのパフォーマンス・レベルを識別することができる。たとえば、SSDに対応するLUNのパフォーマンス・レベルはレベル1であってもよく(対応するLUNのパフォーマンス値の範囲は[80、100])、SAS/FC HDDに対応するLUNのパフォーマンス・レベルはレベル2であってもよく(対応するLUNのパフォーマンス値の範囲は[60、80])、SATA/NL SAS HDDに対応するLUNのパフォーマンス・レベルはレベル3であってもよい(対応するLUNのパフォーマンス値の範囲は[40、60])。
【0068】
S204.ストレージ・スペース管理デバイスがデータ書き込み命令を受信した後にLUNのパフォーマンス・レベルおよびデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度レベルに従ってデータ書き込み命令に含まれる格納されるべきデータを対応するパフォーマンス・レベルのLUNに書き込む。
【0069】
図1に示されるように)本発明の実施形態のアプリケーション・シナリオにおいて、ストレージ・システムは、ホスト、ストレージ・スペース管理デバイス、およびストレージ・デバイスにより形成される。本発明の実施形態におけるストレージ・スペース管理デバイスは、異機種の仮想化ストレージ・ゲートウェイ・デバイスであり、マッピングまたは抽象化を用いてストレージ・デバイスのさまざまな物理ディスクの複雑さおよび差異を覆い隠し、したがって、ストレージ・スペース管理デバイス自身のみがホストに可視であり、ストレージ・デバイスはホストに透過的である。
【0070】
データ書き込み命令は、ホスト内のアプリケーションによってストレージ・スペース管理デバイスに搬送される。データ書き込み命令は、格納されるべきデータおよびデータが書き込まれる先のアドレスを含む。アプリケーションがデータ書き込み命令を搬送するとき、ストレージ・スペース管理デバイスのみがホストに可視であるので、格納されるべきデータは最終的にストレージ・デバイスに書き込まれるが、データが書き込まれる先のアドレスは、データが書き込まれるストレージ・スペース管理デバイスのLUNのアドレスである。データ書き込み命令を受信した後、ストレージ・スペース管理デバイスは、格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータをストレージ・デバイス内の対応するレベルのLUNに書き込む。
【0071】
特に、格納されるべきデータのアクセス頻度レベルは、アドレスがデータ書き込み命令で搬送されたアクセス頻度レベルに従ってストレージ・スペース管理デバイスによって判断されてもよく、ここで格納されるべきデータはアドレスに格納される。アドレスのアクセス頻度レベルが事前設定されたホットデータしきい値よりも高い場合、格納されるべきデータがホットデータであると判定することが適切であり、アドレスのアクセス頻度レベルが事前設定されたコールドデータしきい値よりも低い場合、格納されるべきデータがコールドデータであると判定することが適切である。
【0072】
その後、格納されるべきデータのアクセス頻度レベルおよびLUNのパフォーマンス・レベルに従って、当該格納されるべきデータはストレージ・デバイス内の対応するパフォーマンス・レベルのLUNに書き込まれる。特に、データ書き込み命令の実行中、ホットデータはレベル1パフォーマンスのLUNに書き込まれ(対応するパフォーマンス値の範囲は[80、100])、コールドデータはレベル3パフォーマンスのLUNに書き込まれ(対応するパフォーマンス値の範囲は[40、60])、ホットまたはコールドのいずれでもない格納されるべきデータはレベル2パフォーマンスのLUNに書き込まれる(対応するパフォーマンス値の範囲は[60、80])。
【0073】
格納されるべきデータのホットまたはコールドを判定するために使用される、データが書き込まれる先のアドレスが、格納されるべきデータが最終的に書き込まれるLUNアドレスとは異なることに留意されたい。前者は、ホストのアプリケーションに可視であるストレージ・スペース管理デバイス内のLUNのアドレスであり、後者はストレージ・デバイス内のLUNのアドレスである。ストレージ・スペース管理デバイス自身はLUNを含むことはなく、ストレージ・デバイスは、LUNの範囲をマップして、ストレージ・スペース管理デバイスが使用できるようにすることができる。それでもなお、前者のアドレスが、依然として後者のアドレスと異なることもある。
【0074】
さらに具体的には、格納されるべきデータのアクセス頻度とLUNのパフォーマンス・レベルとの間のマッピングは、マッピング・テーブルの形態によってストレージ・スペース管理デバイスに格納されてもよい。データ書き込み命令が受信されるとき、格納されるべきデータ書き込まれる先の固有のLUNは、マッピング・テーブルを検索することによって認識される。本明細書の実施形態が、マッピング・テーブルの形態に限定されないことに留意されたい。格納されるべきデータのアクセス頻度とLUNのパフォーマンス・レベルとの間のマッピングの格納に適切なその他のすべての形態は、本発明の実施形態の保護適用範囲に含まれるものとする。データ書き込み命令の格納されるべきデータがストレージ・デバイス内の対応するパフォーマンス・レベルのLUNに書き込まれた後、ストレージ・スペース管理デバイスは、データ書き込み命令を搬送するためのアプリケーションとLUNとの間のマッピングを作成して、格納されるべきデータを読み取るためのアプリケーションからのデータ読み取り命令が続いて受信されるとき、格納されるべきデータは、マッピングに従って格納されるべきデータをストレージ・デバイスに格納するためのLUNアドレスが認識された後に、読み取られるようにすることができる。
【0075】
本発明の実施形態において、ストレージ・デバイスに含まれるLUNのパフォーマンス・レベルに関する情報には、ストレージ・デバイスからクエリが行なわれ、LUNのパフォーマンス・レベルは、パフォーマンス・レベルに関する情報に従って取得される。したがって、本発明の実施形態において、LUNのパフォーマンス・レベルは、ストレージ管理者が予めパフォーマンス・レベルを構成することに依存することなく取得され得る。したがって、データ書き込み命令が受信された後にデータがストレージ・デバイスに書き込まれる必要がある場合、ストレージ・スペース管理デバイスは、格納されるべきデータのアクセス頻度に従って当該格納されるべきデータをさまざまなパフォーマンス・レベルのLUNに書き込むことができ、それによりLUN固有の階層ストレージに達することができる。
【0076】
上記の実施形態において、LUNのパフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得することは、応答に含まれるLUNのパフォーマンス値範囲に従って、パフォーマンス・レベル・ラベルをLUNに添付すること、およびLUNのパフォーマンス・レベルを識別するためにパフォーマンス・レベル・ラベルを使用することを特に含む。たとえば、レベル1パフォーマンス・レベル・ラベルはパフォーマンス値の範囲が[80、100]であるLUNに添付されてもよく、レベル2パフォーマンス・レベル・ラベルはパフォーマンス値の範囲が[60、80]であるLUNに添付されてもよく、レベル3パフォーマンス・レベル・ラベルはパフォーマンス値の範囲が[40、60]であるLUNに添付されてもよい。
【0077】
本発明のもう1つの実施形態において、パフォーマンス・レベル要求は、選択レポート(select report)フィールドを含むことができる。選択レポート・フィールドは、要求が、ストレージ・デバイス内のすべてのLUNのパフォーマンス・レベル、または固有のLUNのパフォーマンス・レベルのいずれにクエリを行なうために使用されるかを指示する。パフォーマンス・レベル要求が、ストレージ・デバイス内の固有のLUNのパフォーマンス・レベルにクエリを行なうために使用される場合、選択レポート・フィールドは01であり、パフォーマンス・レベル要求が、ストレージ・デバイス内のすべてのLUNのパフォーマンス・レベルにクエリを行なうために使用される場合、選択レポート・フィールドは00である。
【0078】
パフォーマンス・レベル要求に応答して送信される応答は、論理装置番号リスト長さ(LUN List Length)フィールドをさらに含み、LUN List LengthフィールドはLUN Listフィールドの長さを指示する。上記の実施形態から理解され得るように、パフォーマンス・レベル要求がストレージ・デバイス内の1つのLUNのパフォーマンス・レベルにクエリを行なうために使用される場合、パフォーマンス・レベル要求に応答して送信される応答のLUN Listフィールドは、LUNのWWNおよびLUNのパフォーマンス値範囲を含む。この場合、LUN List Lengthフィールドは8であり、LUN Listフィールドが8バイトを有することを指示する。特に、最初の4バイトはLUNのWWNであり、バイト5から6はLUNのパフォーマンス値の上限であり、バイト7から8はLUNのパフォーマンス値の下限である。パフォーマンス・レベル要求がストレージ・デバイス内のすべてのLUNのパフォーマンス・レベルにクエリを行なうために使用される場合、パフォーマンス・レベル要求に応答して送信される応答のLUN Listフィールドは、ストレージ・デバイス内のすべてのLUNのWWNおよびすべてのLUNのパフォーマンス値範囲である。この場合、LUN
List Lengthフィールドは、8に、ストレージ・デバイス内のLUNの数を乗算したものである。
【0079】
加えて、パフォーマンス・レベル要求は、オペレーション・コード(operation code)フィールドおよびその他の予約フィールドをさらに含むことができる。オペレーション・コード・フィールドは、たとえば、管理操作、または読み取り操作、または書き込み操作のような、パフォーマンス・レベル要求の操作タイプを識別するために使用される。
【0080】
パフォーマンス・レベル要求、およびパフォーマンス・レベル要求に応答して送信される応答は、一部の予約フィールドをさらに含むことができることが理解可能である。
【0081】
本発明のもう1つの実施形態において、方法は、ストレージ・リソース・プールを含むストレージ・システムに適用されてもよい。ストレージ・リソース・プールは、論理ストレージ・スペースのセグメントであり、すべてのLUNからマップされる。
【0082】
ストレージ・スペース管理デバイスは、LUNのパフォーマンス・レベルに従って、同じパフォーマンス・レベルのLUNを対応するパフォーマンス・レベルのストレージ・リソース・プールに入れることができる。各ストレージ・リソース・プールは、同じパフォーマンス・レベルの少なくとも2つのLUNを含む。
【0083】
特に、上記の実施形態によれば、LUNは異なるパフォーマンス・レベルに分割され得るので、同じパフォーマンス・レベルのLUNは対応するストレージ・リソース・プールにマップされてもよい。たとえば、レベル1パフォーマンスのLUNは、レベル1パフォーマンスのストレージ・リソース・プールに入れられてもよく、レベル2パフォーマンスのLUNは、レベル2パフォーマンスのストレージ・リソース・プールに入れられてもよい。各ストレージ・リソース・プールは、同じパフォーマンス・レベルの少なくとも2つのLUNを含む。
【0084】
この場合、S204、「データ書き込み命令が受信されるときにLUNのパフォーマンス・レベルおよびデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度に従って当該格納されるべきデータを対応するパフォーマンス・レベルのLUNに書き込む」ステップは、特に、データ書き込み命令が受信されるときにLUNのパフォーマンス・レベルおよびデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度に従って当該格納されるべきデータを対応するパフォーマンス・レベルのストレージ・リソース・プールに含まれるLUNに書き込むことである。データ書き込み命令の格納されるべきデータが対応するパフォーマンス・レベルのストレージ・リソース・プールに書き込まれた後、データ書き込み命令を搬送するためのアプリケーションとストレージ・リソース・プールとの間でマッピングが作成されて、アプリケーションがストレージ・リソース・プール内のデータを読み取るためにデータ読み取り命令を引き続き搬送できるようにする。
【0085】
上記の実施形態において、データ書き込み命令の格納されるべきデータがLUNに書き込まれるとき、データ書き込み命令を搬送するためのアプリケーションとLUNとの間でマッピングが作成される必要がある。したがって、LUNのパフォーマンス・レベルがその後低下される場合、データ書き込み命令が受信されるとき、格納されるべきデータは対応するパフォーマンス・レベルの別のLUNに書き込まれる必要があり、アプリケーションと元のLUNとの間のマッピングは削除される必要があり、アプリケーションと対応するパフォーマンス・レベルの新しいLUNとの間のマッピングが作成される必要がある。
本発明の実施形態において、同じパフォーマンス・レベルのLUNは、対応するパフォーマンス・レベルのストレージ・リソース・プールに入れられる。ストレージ・リソース・プール内の1つのLUNのパフォーマンス・レベルが低下される場合、データ書き込み命令が受信されるとき、格納されるべきデータはパフォーマンス・レベルがストレージ・リソース・プールで変化していない別のLUNに書き込まれてもよい。格納されるべきデータはその後もこのストレージ・リソース・プールに書き込まれるので、新しいマッピングが作成される必要はない。
【0086】
本発明のもう1つの実施形態において、以下のステップがさらに含まれてもよい。
【0087】
ストレージ・スペース管理デバイスは、ストレージ・スペース・スキャン要求をストレージ・デバイスに送信し、要求はストレージ・デバイス内のLUNの関連情報を取得するために使用される。ストレージ・デバイスによって送信されるストレージ・デバイスに含まれるすべてのLUNの情報が受信された後、ストレージ・スペースにアクセスしていない一部のLUNは、すべてのLUNの情報に従ってストレージ・スペース管理デバイスによって処理されて、ストレージ・スペースにアクセスできるようにされてもよい。
【0088】
特に、ストレージ・デバイスは、LUNリストをストレージ・スペース管理デバイスに送信することができる。ストレージ・デバイスに含まれるLUNの数、どのLUNがストレージ・デバイスにアクセスしたか、およびどのLUNがストレージ・スペースにアクセスしていないか(つまり、使用可能ではない)については、リストから知られ得る。加えて、各LUNのサイズについてもまた、知られ得る。
【0089】
LUNの関連情報を取得した後、ストレージ・スペース管理デバイスは、ストレージ・デバイスに含まれるLUNの数を知るために情報を解析して、ストレージ・スペースにアクセスしていないLUNをフォーマットするか、またはストレージ・スペースに正常にアクセスするようにそれらのLUNをその他の方法で処理する。ストレージ・スペース・スキャン要求をストレージ・デバイスに送信することにより、ストレージ・デバイスに含まれるすべてのLUNの情報が知られ、ストレージ・スペースにアクセスしていないLUNは、LUNがストレージ・スペースに正常にアクセスできるようにフォーマットされる。
このようにして、ストレージ・デバイス内のすべてのLUNは均一に管理され、LUNのパフォーマンス・レベルは引き続き識別され得る。
【0090】
本発明のもう1つの実施形態において、以下のステップがさらに含まれてもよい。
【0091】
ステップ205:ストレージ・スペース管理デバイスは、入出力IOコマンドの処理中にストレージ・デバイスによって費やされる時間を監視し、処理時間が、IOコマンドに対応するLUNのパフォーマンス・レベルに定義されているしきい値を超えるかどうかを判定する。
【0092】
本発明の実施形態において、各IOコマンドはLUNに対応する。たとえば、読み取り要求コマンドは、LUNからデータを読み取る命令であり、書き込み要求コマンドは、データをLUNに書き込む命令である。上記の実施形態によれば、各LUNは対応するパフォーマンス・レベルを有し、各々の異なるパフォーマンス・レベルに固有のしきい値はこのパフォーマンス・レベルのLUNに対して事前設定されてもよい。リアルタイムでIOコマンドの処理時間を監視することにより、処理時間が、IOコマンドに対応するLUNのパフォーマンス・レベルに定義されているしきい値を超えるかどうかが判定される。
【0093】
S206.処理時間が、IOコマンドに対応するLUNのパフォーマンス・レベルに定義されているしきい値を超える場合、ストレージ・スペース管理デバイスはパフォーマンス・レベル要求をストレージ・デバイスに送信する。
【0094】
パフォーマンス・レベル要求の詳細な内容は、上記で説明されている内容と類似しているので、ここでさらに繰り返されることはない。ここでパフォーマンス・レベル要求が、ストレージ・デバイス内のLUNのパフォーマンス・レベルにクエリを行なうために使用されることに留意されたい。
【0095】
実際には、LUNのパフォーマンスは、IO圧力、実行状態、およびシステム障害のような一部の要因により変化することがある。したがって、IOコマンドの処理時間が、LUNのパフォーマンス・レベルに定義されているしきい値を超えるとき、LUNのパフォーマンス・レベルについてストレージ・デバイスに再度クエリを行なうことが必要である。
【0096】
S207.パフォーマンス・レベル要求を受信した後、ストレージ・デバイスは、LUNの現在のIO圧力および実行状態、システム障害、およびLUNに対応する物理ディスクのストレージ媒体のような要因に従って、LUNのパフォーマンス・レベルに関する現在の情報を再計算することができる。特に、LUNのパフォーマンス・レベルに関する現在の情報は、LUNの現在のパフォーマンス値範囲を少なくとも含む。詳細な計算方法は、上記で説明されている方法と類似しているので、ここでさらに繰り返されることはない。
【0097】
S208.ストレージ・デバイスは、パフォーマンス・レベル要求に応答してストレージ・スペース管理デバイスに応答を送信し、パフォーマンス・レベル要求に応答して送信される応答はLUNのパフォーマンス・レベルに関する現在の情報を含み、ストレージ・スペース管理デバイスは、LUNのパフォーマンス・レベルに関する現在の情報に従って、LUNの現在のパフォーマンス・レベルを取得する。
【0098】
パフォーマンス・レベル要求に応答して送信される応答の詳細な内容は、上記で説明されている内容と類似しているので、ここでさらに繰り返されることはない。
【0099】
ストレージ・デバイスによって返されるLUNの現在のパフォーマンス値範囲を受信した後、ストレージ・スペース管理デバイスは、パフォーマンス値範囲に従ってLUNの現在のパフォーマンス・レベルを識別し、LUNのパフォーマンス・レベルが変化しているかどうかに応じてさまざまな操作を実行することができ、特に、LUNのパフォーマンス・レベルが変化している場合、LUNのパフォーマンス・レベルを調整することができる。LUNが対応するストレージ・リソース・プールに含まれることを仮定して、LUNはストレージ・リソース・プールから除去されてもよい。
【0100】
LUNのパフォーマンス・レベルが変化していない場合、ストレージ・スペース管理デバイスは、LUNのクレジット値にクエリを行なう要求をストレージ・デバイスに送信し、ストレージ・デバイスによって返されるLUNのクレジット値に従ってトラフィック制御を実行することができる。
【0101】
本発明の実施形態において、LUNのクレジット値は、LUNによって現在実行される秒あたりの読み取り/書き込み(I/O)操作の数と、LUNによって実行可能な秒あたりの読み取り/書き込み(I/O)操作の数の差であってもよい。たとえば、LUNによって実行可能な秒あたりの読み取り/書き込み(I/O)操作の数(Input/Output Operations Per Second、IOPS)が100であり、現在実行された秒あたりの読み取り/書き込み(I/O)操作の数、つまり実際のIOPS、が90である場合、LUNのクレジット値は10である。ストレージ・スペース管理デバイスは、クレジット値に従って、LUNのトラフィック制御を実行することができる。
【0102】
本発明の実施形態において、IOコマンドの処理時間は、リアルタイムで監視される。
したがって、ストレージ・スペース管理デバイスは、格納されるべきデータが、データのアクセス頻度レベルに正確に従ってさまざまなパフォーマンス・レベルのLUNに確実に格納されるように、LUNのパフォーマンス・レベルを動的に調整することができる。
【0103】
加えて、クレジット値にクエリを行なう要求に応答してストレージ・デバイスによってストレージ・スペース管理デバイスに送信される応答は、LUNの現在のパフォーマンス値範囲を含むことができ、したがって、ストレージ・スペース管理デバイスは、LUNの現在のパフォーマンス値範囲に従ってLUNの最新のパフォーマンス・レベルを取得することができる。ストレージ・デバイスは、LUNの現在のパフォーマンス値範囲をストレージ・スペース管理デバイスに先行してレポートし、ストレージ・デバイスとストレージ・スペース管理デバイスとの間の対話の数が低減され得るようにする。特に、クエリ要求に応答して送信される応答は、元のフィールドだけではなく、論理装置番号リスト(LUN List)フィールドも含むことができる。LUN Listフィールドは、LUNのパフォーマンス・レベルに関する情報を搬送するために使用される。たとえば、LUN Listフィールドは、特に3つのサブフィールドを含むことができ、1つのサブフィールドはLUNのWWNであり、もう1つのサブフィールドはLUNのパフォーマンス値の上限であり、残りのサブフィールドはLUNのパフォーマンス値の下限である。オプションで、応答は、論理装置番号リスト長さ(LUN List Length)フィールドをさらに含むことができ、LUN List LengthフィールドはLUN Listフィールドの長さを指示することができる。一般に、応答が1つのLUNのパフォーマンス・レベルを含む場合、LUN List Lengthフィールドは8であり、応答がストレージ・デバイスのすべてのLUNのパフォーマンス・レベルを含む場合、LUN List Lengthフィールドは、8に、ストレージ・デバイス内のLUNの数を乗算したものである。この場合、クレジット値にクエリを行なう要求は、以前の実施形態におけるパフォーマンス・レベル要求として理解されてもよい。
【0104】
本発明の実施形態において、元のクエリ要求に応答して送信される応答は、応答がクレジット値だけではなくストレージ・デバイス内のLUNの現在のパフォーマンス・レベルも搬送するように変更されて、それによりストレージ・スペース管理デバイスとストレージ・デバイスとの間の対話の数を低減する。
【0105】
本発明の実施形態は、ストレージ・スペース管理デバイスをさらに提供する。特に、図3を参照する。図3は、ストレージ・スペース管理デバイスを示す概略構造図である。
【0106】
ストレージ・スペース管理デバイス30は、送信モジュール301、受信モジュール302、および取得モジュール303を含む。
【0107】
送信モジュール301は、ストレージ・デバイスにパフォーマンス・レベル要求を送信するように構成され、要求はストレージ・デバイス内の1つまたは複数の論理装置番号(LUN)のパフォーマンス・レベルに関する情報にクエリを行なうために使用される。
【0108】
オプションで、パフォーマンス・レベル要求はワールド・ワイド・ネーム(WWN)フィールドを含むことができ、WWNフィールドはLUNを識別するために使用さる。
【0109】
パフォーマンス・レベル要求のWWNフィールド内の値が0である場合、パフォーマンス・レベル要求は、ストレージ・デバイスのすべてのLUNのパフォーマンス・レベルに関する情報にクエリを行なうよう求めるものであり、パフォーマンス・レベル要求のWWNフィールドがLUNのWWNである場合、要求は、ストレージ・デバイスの少なくとも1つのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用される。
【0110】
受信モジュール302は、パフォーマンス・レベル要求に応答してストレージ・デバイスによって送信される応答を受信するように構成され、応答はLUNのパフォーマンス・レベルに関する情報を含む。
【0111】
オプションで、応答は、論理装置番号リスト(LUN List)フィールドを含むことができ、それにより、LUNのパフォーマンス・レベルに関する情報がLUN Listフィールドで搬送される。特に、LUN Listフィールドは、各LUNのWWNおよび各LUNのパフォーマンス・レベルに関する情報を含むことができる。
【0112】
LUNのパフォーマンス・レベルに関する情報は、LUNのパフォーマンス値範囲を少なくとも含む。
【0113】
取得モジュール303は、データ書き込み命令が受信されるときにデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータが対応するパフォーマンス・レベルのLUNに書き込まれるように、LUNのパフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得するように構成される。
【0114】
本発明の実施形態において、ストレージ・スペース管理デバイス30は、ストレージ・デバイス40に含まれる1つまたは複数のLUNのパフォーマンス・レベルに関する情報についてストレージ・デバイス40にクエリを行ない、パフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得する。したがって、本発明の実施形態において、LUNのパフォーマンス・レベルは、ストレージ管理者が予めパフォーマンス・レベルを構成することに依存することなく取得され得る。したがって、データ書き込み命令が受信された後にデータがストレージ・デバイスに書き込まれる必要がある場合、ストレージ・スペース管理デバイス30は、格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータをさまざまなパフォーマンス・レベルのLUNに書き込むことができ、それによりLUN固有の階層ストレージを実施することができる。
【0115】
後段では、LUNのパフォーマンス・レベルに関する情報がLUNのパフォーマンス値範囲であるという例をあげて、ストレージ・スペース管理デバイスを詳細に説明する。
【0116】
上記の実施形態において、送信モジュール301によってストレージ・デバイスに送信されるパフォーマンス・レベル要求は、REPORT LUN CACPABILITYと定義されてもよく、これはLUNのワールド・ワイド・ネーム(World Wide
Name、WWN)フィールドを含み、このフィールドはLUNを識別するために使用される。各LUNは、異なるWWNを有する。
【0117】
本発明の実施形態において、パフォーマンス・レベル要求をストレージ・デバイスに送信することは、ストレージ・デバイスにパフォーマンス・レベル要求を送信することであって、要求はストレージ・デバイス内のすべてのLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用され、パフォーマンス・レベル要求のWWNフィールドに含まれる値は0であることであってもよいか、または、ストレージ・デバイスの少なくとも1つのLUNにパフォーマンス・レベル要求を送信することであって、要求はストレージ・デバイス内のLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用され、パフォーマンス・レベル要求のLUNのWWNフィールドは、クエリが行なわれるべきLUNのWWNであることであってもよい。上記の実施形態において、パフォーマンス・レベル要求に応答してストレージ・デバイスによって送信され、受信モジュール302によって受信される応答は、LUNのパフォーマンス値範囲を含み、次いで、取得モジュール303は、LUNのパフォーマンス値範囲に従って、LUNのパフォーマンス・レベルを取得する。
【0118】
パフォーマンス・レベル要求に応答して送信される応答は、論理装置番号リスト(LUN List)フィールドを含むことができ、それにより、LUNのパフォーマンス値範囲がLUN Listフィールドで搬送される。たとえば、LUN Listフィールドは、特に3つのフィールドを含むことができ、1つのサブフィールドはLUNのWWNであり、もう1つのサブフィールドはLUNのパフォーマンス値の上限であり、残りのサブフィールドはLUNのパフォーマンス値の下限である。
【0119】
本発明の実施形態において、パフォーマンス・レベル要求がストレージ・デバイスのすべてのLUNのパフォーマンス・レベルにクエリを行なうために使用される場合、パフォーマンス・レベル要求に応答して送信される応答内のLUN Listフィールドは、ストレージ・スペース管理デバイスがすべてのパフォーマンス値範囲に従ってLUNのパフォーマンス・レベルを取得できるように、ストレージ・デバイスのLUNのWWNおよびLUNのパフォーマンス値範囲であり、パフォーマンス・レベル要求がストレージ・デバイスの少なくとも1つのLUNのパフォーマンス・レベルにクエリを行なうために使用される場合、パフォーマンス・レベル要求に応答して送信される応答内のLUN Listフィールドは、ストレージ・スペース管理デバイスがパフォーマンス値範囲に従ってLUNのパフォーマンス・レベルを取得できるように、クエリが行なわれるべき各LUNのWWNおよび各LUNのパフォーマンス値範囲を含む。たとえば、ストレージ・スペース管理デバイスは、LUNのパフォーマンス値範囲に従って、LUNのパフォーマンス・レベルを識別することができる。たとえば、SSDに対応するLUNのパフォーマンス・レベルはレベル1であってもよく(対応するLUNのパフォーマンス値の範囲は[80、100])、SAS/FC HDDに対応するLUNのパフォーマンス・レベルはレベル2であってもよく(対応するLUNのパフォーマンス値の範囲は[60、80])、SATA/NL SAS HDDに対応するLUNのパフォーマンス・レベルはレベル3であってもよい(対応するLUNのパフォーマンス値の範囲は[40、60])。特に、取得モジュール303は、応答に含まれるLUNのパフォーマンス値範囲に従って、パフォーマンス・レベル・ラベルをLUNに添付して、LUNのパフォーマンス・レベルを識別するためにパフォーマンス・レベル・ラベルを使用することができる。たとえば、レベル1パフォーマンス・レベル・ラベルはパフォーマンス値の範囲が[80、100]であるLUNに添付されてもよく、レベル2パフォーマンス・レベル・ラベルはパフォーマンス値の範囲が[60、80]であるLUNに添付されてもよく、レベル3パフォーマンス・レベル・ラベルはパフォーマンス値の範囲が[40、60]であるLUNに添付されてもよい。
【0120】
ストレージ・スペース管理デバイス30がデータ書き込み命令を受信した後にLUNのパフォーマンス・レベルおよびデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度レベルに従ってデータ書き込み命令に含まれる格納されるべきデータは、対応するパフォーマンス・レベルのLUNに書き込まれる。本発明のもう1つの実施形態において、パフォーマンス・レベル要求は、選択レポート(select report)フィールドを含むことができる。選択レポート・フィールドは、メッセージが、ストレージ・デバイス内のすべてのLUNのパフォーマンス・レベル、または固有のLUNのパフォーマンス・レベルにクエリを行なうために使用されるかどうかを指示する。パフォーマンス・レベル要求が、ストレージ・デバイス内の固有のLUNのパフォーマンス・レベルにクエリを行なうために使用される場合、選択レポート・フィールドは01であり、パフォーマンス・レベル要求が、ストレージ・デバイス内のすべてのLUNのパフォーマンス・レベルにクエリを行なうために使用される場合、選択レポート・フィールドは00である。
【0121】
パフォーマンス・レベル要求に応答して送信される応答は、論理装置番号リスト長さ(LUN List Length)フィールドをさらに含み、LUN List LengthフィールドはLUN Listフィールドの長さを指示する。上記の実施形態から理解され得るように、パフォーマンス・レベル要求がストレージ・デバイス内の1つのLUNのパフォーマンス・レベルにクエリを行なうために使用される場合、パフォーマンス・レベル要求に応答して送信される応答のLUN Listフィールドは、LUNのWWNおよびLUNのパフォーマンス値範囲を含む。この場合、LUN List Lengthフィールドは8であり、LUN Listフィールドが8バイトを有することを指示する。特に、最初の4バイトはLUNのWWNであり、バイト5から6はLUNのパフォーマンス値の上限であり、バイト7から8はLUNのパフォーマンス値の下限である。パフォーマンス・レベル要求がストレージ・デバイス内のすべてのLUNのパフォーマンス・レベルにクエリを行なうために使用される場合、パフォーマンス・レベル要求に応答して送信される応答のLUN Listフィールドは、ストレージ・デバイス内の各LUNのWWNおよび各LUNのパフォーマンス値範囲である。この場合、LUN List Lengthフィールドは、8に、ストレージ・デバイス内のLUNの数を乗算したものである。
【0122】
加えて、パフォーマンス・レベル要求は、オペレーション・コード(operation code)フィールドおよびその他の予約フィールドをさらに含むことができる。オペレーション・コード・フィールドは、たとえば、管理操作、または読み取り操作、または書き込み操作のような、パフォーマンス・レベル要求の操作タイプを識別するために使用される。
【0123】
パフォーマンス・レベル要求、およびパフォーマンス・レベル要求に応答して送信される応答は、一部の予約フィールドをさらに含むことができることが理解可能である。
【0124】
本発明のもう1つの実施形態において、ストレージ・スペース管理デバイス30は、ストレージ・リソース・プールを含むストレージ・システムにさらに適用可能である。ストレージ・リソース・プールは、論理ストレージ・スペースのセグメントであり、すべてのLUNからマップされる。ストレージ・スペース管理デバイスは、LUNのパフォーマンス・レベルに従って、同じパフォーマンス・レベルのLUNを対応するパフォーマンス・レベルのストレージ・リソース・プールに入れるように構成された、ストレージ・リソース・プール入力モジュール(図には示されず)をさらに含み、ストレージ・リソース・プールは、同じパフォーマンス・レベルの少なくとも2つのLUNを含む。
【0125】
特に、上記の実施形態によれば、LUNは異なるパフォーマンス・レベルに分割され得るので、同じパフォーマンス・レベルのLUNは対応するストレージ・リソース・プールにマップされてもよい。たとえば、レベル1パフォーマンスのLUNは、レベル1パフォーマンスのストレージ・リソース・プールに入れられてもよく、レベル2パフォーマンスのLUNは、レベル2パフォーマンスのストレージ・リソース・プールに入れられてもよい。各ストレージ・リソース・プールは、同じパフォーマンス・レベルの少なくとも2つのLUNを含む。
【0126】
データ書き込み命令を受信した後、ストレージ・スペース管理デバイス30は、LUNのパフォーマンス・レベルおよびデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータを対応するパフォーマンス・レベルのストレージ・リソース・プールに含まれるLUNに書き込む。データ書き込み命令の格納されるべきデータが対応するパフォーマンス・レベルのストレージ・リソース・プールに書き込まれた後、データ書き込み命令を搬送するためのアプリケーションとストレージ・リソース・プールとの間でマッピングが作成されて、アプリケーションがストレージ・リソース・プール内のデータを読み取るために引き続きデータ読み取り命令を搬送できるようにする。
【0127】
上記の実施形態において、データ書き込み命令の格納されるべきデータがLUNに書き込まれるとき、データ書き込み命令を搬送するためのアプリケーションとLUNとの間でマッピングが作成される必要がある。したがって、LUNのパフォーマンス・レベルがその後低下される場合、データ書き込み命令が受信されるとき、格納されるべきデータは対応するパフォーマンス・レベルの別のLUNに書き込まれる必要があり、アプリケーションと元のLUNとの間のマッピングは削除される必要があり、アプリケーションと対応するパフォーマンス・レベルの新しいLUNとの間のマッピングが作成される必要がある。
本発明の実施形態において、同じパフォーマンス・レベルのLUNは、対応するパフォーマンス・レベルのストレージ・リソース・プールに入れられる。ストレージ・リソース・プール内の1つのLUNのパフォーマンス・レベルが低下される場合、データ書き込み命令が受信されるとき、格納されるべきデータはパフォーマンス・レベルがストレージ・リソース・プールで変化していない別のLUNに書き込まれてもよい。格納されるべきデータはその後もこのストレージ・リソース・プールに書き込まれるので、新しいマッピングが作成される必要はない。
【0128】
本発明のもう1つの実施形態において、ストレージ・スペース管理デバイス30は、入出力IOコマンドの処理中にストレージ・デバイスによって費やされる時間を監視し、処理時間が、IOコマンドに対応するLUNのパフォーマンス・レベルに定義されているしきい値を超えるかどうかを判定するように構成された監視モジュール304をさらに含むことができる。
【0129】
本発明の実施形態において、各IOコマンドはLUNに対応する。たとえば、読み取り要求コマンドは、LUNからデータを読み取る命令であり、書き込み要求コマンドは、データをLUNに書き込む命令である。上記の実施形態によれば、各LUNは対応するパフォーマンス・レベルを有し、各々の異なるパフォーマンス・レベルに固有のしきい値はこのパフォーマンス・レベルのLUNに対して事前設定されてもよい。リアルタイムでIOコマンドの処理時間を監視することにより、処理時間が、IOコマンドに対応するLUNのパフォーマンス・レベルに定義されているしきい値を超えるかどうかが判定される。
【0130】
送信モジュール301は、処理時間が、IOコマンドに対応するLUNのパフォーマンス・レベルに定義されているしきい値を超える場合、パフォーマンス・レベル要求をストレージ・デバイスに送信するようにさらに構成される。
【0131】
実際には、LUNのパフォーマンスは、IO圧力、実行状態、およびシステム障害のような一部の要因により変化することがある。したがって、IOコマンドの処理時間が、LUNのパフォーマンス・レベルに定義されているしきい値を超えるとき、LUNのパフォーマンス・レベルに関する情報についてストレージ・デバイスに再度クエリを行なうことが必要である。
【0132】
パフォーマンス・レベル要求の詳細な内容は、上記で説明されている内容と類似しているので、ここでさらに繰り返されることはない。ここでパフォーマンス・レベル要求が、ストレージ・デバイス内の固有のLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用されることに留意されたい。
【0133】
受信モジュール302は、パフォーマンス・レベル要求に応答してストレージ・デバイスによって送信される応答を受信するようにさらに構成される。
【0134】
パフォーマンス・レベル要求を受信した後、ストレージ・デバイスは、LUNの現在のIO圧力および実行状態、システム障害、およびLUNに対応する物理ディスクのストレージ媒体のような要因に従って、パフォーマンス・レベルに関する現在の情報を再計算することができる。特に、LUNのパフォーマンス・レベルに関する現在の情報は、LUNの現在のパフォーマンス値範囲を少なくとも含む。詳細な計算方法は、上記で説明されている方法と類似しているので、ここでさらに繰り返されることはない。
【0135】
パフォーマンス・レベル要求に応答して送信される応答は、LUNの現在のパフォーマンス値範囲を含む。応答の詳細な内容は、上記で説明されている内容と類似しているので、ここでさらに繰り返されることはない。
【0136】
取得モジュール303は、LUNのパフォーマンス・レベルに関する現在の情報に従って、LUNの現在のパフォーマンス・レベルを取得するようにさらに構成される。
【0137】
具体的な取得方法は、上記で説明されている方法と類似しているので、ここでさらに繰り返されることはない。
【0138】
ストレージ・スペース管理デバイス30は、
パフォーマンス値範囲に従ってLUNの現在のパフォーマンス・レベルを識別し、LUNのパフォーマンス・レベルが変化しているかどうかを判定するように構成された判定モジュール305と、
LUNのパフォーマンス・レベルが変化している場合、元の対応するストレージ・リソース・プールからLUNを除去するように構成された調整モジュール306とをさらに含むことができる。
【0139】
LUNの現在のパフォーマンス・レベルを識別した後、ストレージ・スペース管理デバイス30は、LUNのパフォーマンス・レベルが変化しているかどうかに応じて異なる操作を実行し、特にLUNのパフォーマンス・レベルが変化している場合にはLUNのパフォーマンス・レベルを調整することができる。LUNが対応するストレージ・リソース・プールを有することを仮定して、LUNは元の対応するストレージ・リソース・プールから除去されてもよい。
【0140】
本発明の実施形態において提供されるストレージ・スペース管理デバイス30の詳細については、方法の実施形態でのストレージ・スペース管理デバイスの説明が参照され得るので、詳細はここで繰り返されることはない。
【0141】
さらに、本発明の実施形態は、ストレージ・デバイス40を提供する。特に、図4を参照する。図4は、ストレージ・デバイス40を示す概略構造図である。
【0142】
ストレージ・デバイス40は、受信モジュール401、計算モジュール402、および送信モジュール403を含む。
【0143】
受信モジュール401は、ストレージ・スペース管理デバイスによって送信されるパフォーマンス・レベル要求を受信するように構成され、要求はストレージ・デバイス内の1つまたは複数のLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用される。
【0144】
計算モジュール402は、パフォーマンス・レベル要求に従ってLUNのパフォーマンス・レベルに関する情報を取得するように構成される。
【0145】
送信モジュール403は、パフォーマンス・レベル要求に応答してストレージ・スペース管理デバイスに応答を送信するように構成され、応答はLUNのパフォーマンス・レベルに関する情報を含み、ストレージ・スペース管理デバイスは、データ書き込み命令が受信されるときにデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータが対応するパフォーマンス・レベルのLUNに書き込まれるように、LUNのパフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得する。
【0146】
本発明の実施形態において、ストレージ・デバイス40に含まれるLUNのパフォーマンス・レベルに関する情報にクエリを行なうためにストレージ・スペース管理デバイス30によって送信される要求を受信した後、ストレージ・デバイス40は、ストレージ・デバイス40に含まれるLUNのパフォーマンス・レベルに関する情報を取り出して、それをストレージ・スペース管理デバイス30に送信し、ストレージ・スペース管理デバイス30がパフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得できるようにする。したがって、本発明の実施形態におけるストレージ・デバイスは、ストレージ管理者が予めパフォーマンス・レベルを構成することに依存することなくLUNのパフォーマンス・レベルを取得することができる。このようにして、データ書き込み命令が受信された後にデータがストレージ・デバイス40に書き込まれる必要がある場合、ストレージ・スペース管理デバイスは、格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータをさまざまなパフォーマンス・レベルのLUNに書き込むことができ、それによりLUN固有の階層ストレージを実施することができる。
【0147】
後段では、LUNのパフォーマンス・レベルに関する情報がLUNのパフォーマンス値範囲であるという例をあげて、ストレージ・デバイスを詳細に説明する。
【0148】
上記の実施形態において、パフォーマンス・レベル要求は、REPORT LUN CACPABILITYと定義されてもよい。これに含まれるフィールドは、図3に示される実施形態におけるフィールドと同じであるので、ここさらに繰り返し説明されることはない。パフォーマンス・レベル要求に応答して送信される応答に含まれるフィールドは、図3に示される実施形態におけるフィールドと同じであるので、ここさらに繰り返し説明されることはない。計算モジュール402は、パフォーマンス・レベル要求に含まれるLUNのWWNフィールドに従って、LUNのパフォーマンス値範囲を取得するように特に構成される。
【0149】
特に、ストレージ・スペース管理デバイス30によって送信されるパフォーマンス・レベル要求を受信した後、ストレージ・デバイス40は、LUNの関連情報を取得するために、LUNのWWNに従ってLUNを見出すことができる。情報は、LUNに対応する物理ディスクのストレージ媒体タイプを少なくとも含むことができる。LUNは論理領域であり、物理ディスクからマップされるので、LUNに対応する物理ディスクのストレージ媒体タイプがLUNのパフォーマンスを決定することができる。たとえば、SSDのパフォーマンスはSAS/FC HDDのパフォーマンスよりも高く、SAS/FC HDDのパフォーマンスはSATA/NL SAS HDDのパフォーマンスよりも高い。したがって、SSDに対応するLUNのパフォーマンスはSAS/FC HDDに対応するLUNのパフォーマンスよりも高く、SAS/FC HDDに対応するLUNのパフォーマンスはSATA/NL SAS HDDに対応するLUNのパフォーマンスよりも高い。
【0150】
したがって、ストレージ・デバイス40は、LUNの関連情報に従って、LUNのパフォーマンス・レベルを取得することができる。たとえば、LUNのパフォーマンス・レベルは、パフォーマンス値の範囲が反映されてもよい。たとえば、SSDに対応するLUNのパフォーマンス値の範囲は[80、100]であり、SAS/FC HDDに対応するLUNのパフォーマンス値の範囲は[60、80]であり、SATA/NL SAS HDDに対応するLUNのパフォーマンス値の範囲は[40、60]である。
【0151】
加えて、ストレージ・デバイス40は、LUNのIOサービス圧力、LUNの現在の実行状態、およびLUNの複合パターンのようなその他の関連情報に従って、LUNのパフォーマンス値範囲を取得することができる。ストレージ・デバイスは、あらゆる種類の要因を考慮に入れた後、LUNのパフォーマンス値範囲を取得することができる。
【0152】
送信モジュール403は、パフォーマンス・レベル要求に応答してストレージ・スペース管理デバイス30に応答を送信するように特に構成され、ストレージ・スペース管理デバイス30がLUNのパフォーマンス値範囲に従ってLUNのパフォーマンス・レベルを取得できるように応答はLUNのパフォーマンス値範囲を含む。
【0153】
本発明のもう1つの実施形態において、ストレージ・スペース管理デバイス30は、入出力IOコマンドの処理中にストレージ・デバイスによって費やされる時間を監視する。
処理時間が、IOコマンドに対応するLUNのパフォーマンス・レベルに定義されているしきい値を超える場合、ストレージ・スペース管理デバイス30はパフォーマンス・レベル要求をストレージ・デバイス40に送信して、LUNの現在のパフォーマンス・レベルにクエリを行なうことができる。
【0154】
したがって、受信モジュール401は、ストレージ・スペース管理デバイスによって送信されるパフォーマンス・レベル要求を受信するようにさらに構成される。パフォーマンス・レベル要求の詳細な内容は、上記で説明されている内容と類似しているので、ここでさらに説明されることはない。ここでパフォーマンス・レベル要求が、ストレージ・デバイス内の固有のLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用されることに留意されたい。
【0155】
計算モジュール402は、パフォーマンス・レベル要求で搬送されるLUN情報に従って、LUNのパフォーマンス・レベルに関する現在の情報を取得するようにさらに構成される。パフォーマンス・レベル要求を受信した後、ストレージ・デバイスは、LUNの現在のIO圧力および実行状態、システム障害、およびLUNに対応する物理ディスクのストレージ媒体のような要因に従って、パフォーマンス・レベルに関する現在の情報を再計算することができる。特に、LUNのパフォーマンス・レベルに関する現在の情報は、LUNの現在のパフォーマンス値範囲を少なくとも含む。詳細な計算方法は、上記で説明されている方法と類似しているので、ここでさらに繰り返されることはない。
【0156】
送信モジュール403は、パフォーマンス・レベル要求に応答してストレージ・スペース管理デバイス30に応答を送信するようにさらに構成され、パフォーマンス・レベル要求に応答して送信される応答はLUNのパフォーマンス・レベルに関する現在の情報を含み、ストレージ・スペース管理デバイス30は、LUNのパフォーマンス・レベルに関する現在の情報に従って、LUNの現在のパフォーマンス・レベルを取得する。
【0157】
LUNの現在のパフォーマンス・レベルを識別した後、ストレージ・スペース管理デバイス30は、LUNのパフォーマンス・レベルが変化しているかどうかに応じて異なる操作を実行し、特にLUNのパフォーマンス・レベルが変化している場合には、LUNのパフォーマンス・レベルを調整することができる。LUNが対応するストレージ・リソース・プールを有することを仮定して、LUNは元の対応するストレージ・リソース・プールから除去されてもよい。
【0158】
本発明の実施形態において提供されるストレージ・デバイス40の詳細については、方法の実施形態でのストレージ・デバイスの説明が参照され得るので、説明がここで繰り返されることはない。
【0159】
さらに、本発明の実施形態は、ストレージ・システム50を提供する。図5に示されるように、ストレージ・システムは、ストレージ・スペース管理デバイス30、およびストレージ・デバイス40を含む。
【0160】
ストレージ・スペース管理デバイス30は、パフォーマンス・レベル要求をストレージ・デバイス40に送信し、要求はストレージ・デバイス40内の1つまたは複数のLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用され、パフォーマンス・レベル要求に応答してストレージ・デバイス40によって送信される応答を受信し、応答はLUNのパフォーマンス・レベルに関する情報を含み、データ書き込み命令が受信されるときにデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータが対応するパフォーマンス・レベルのLUNに書き込まれるように、LUNのパフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得するように構成される。
【0161】
ストレージ・デバイス40は、ストレージ・スペース管理デバイス30によって送信されるパフォーマンス・レベル要求を受信し、パフォーマンス・レベル要求はストレージ・デバイス内のLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用され、パフォーマンス・レベル要求に従ってLUNのパフォーマンス・レベルに関する情報を取得し、パフォーマンス・レベル要求に応答してストレージ・スペース管理デバイス30に応答を送信するように構成され、パフォーマンス・レベル要求に応答して送信される応答はLUNのパフォーマンス・レベルに関する情報を含み、ストレージ・スペース管理デバイス30は、データ書き込み命令が受信されるときにデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータが対応するパフォーマンス・レベルのLUNに書き込まれるように、LUNのパフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得する。
【0162】
ストレージ・スペース管理デバイス30の各モジュールの詳細な機能については、図3に示される実施形態における対応するモジュールが参照され得るが、ストレージ・スペース管理デバイス40の各モジュールの詳細な機能については、図4に示される実施形態における対応するモジュールが参照され得るので、詳細はここで繰り返されることはない。
【0163】
図6は、本発明の実施形態によるストレージ・スペース管理デバイス600を示す概略構造図である。ストレージ・スペース管理デバイス600は、ストレージ・ゲートウェイ・デバイスを含むことができる。本発明の実施形態におけるストレージ・ゲートウェイ・デバイスは、異機種の仮想化ストレージ・ゲートウェイ・デバイスに言及する。本発明の実施形態は、ストレージ・スペース管理デバイス600の特定の形態を制約するものではない。ストレージ・スペース管理デバイス600は、
プロセッサ(processor)610、通信インターフェイス(Communications Interface)620、メモリ(memory)630、およびバス640を含む。
【0164】
プロセッサ610、通信インターフェイス620、およびメモリ630は、バス640を通じて相互に通信する。
【0165】
通信インターフェイス620は、ストレージ・デバイス700のようなネットワーク要素と通信するように構成される。
【0166】
プロセッサ610は、プログラム632を実行するように構成される。
【0167】
特に、プログラム632は、プログラム・コードを含むことができ、プログラム・コードはコンピュータの操作命令を含む。
【0168】
プロセッサ610は、中央演算処理装置CPU、または特殊用途向け集積回路ASIC(Application Specific Integrated Circuit)、または本発明の実施形態を実施するように構成された1つまたは複数の集積回路であってもよい。
【0169】
メモリ630は、プログラム632を格納するように構成される。メモリ630は、高速RAMを含むことができるか、または、たとえば少なくとも1つのディスク・メモリのような、不揮発性メモリ(non−volatile memory)をさらに含むことができる。
【0170】
プログラム632は、
ストレージ・デバイスにパフォーマンス・レベル要求を送信するように構成された送信モジュール301であって、要求はストレージ・デバイス内の1つまたは複数のLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用されるモジュールと、 パフォーマンス・レベル要求に応答してストレージ・デバイスによって送信される応答を受信するように構成された受信モジュール302であって、応答はLUNのパフォーマンス・レベルに関する情報を含むモジュールと、
データ書き込み命令が受信されるときにデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータが対応するパフォーマンス・レベルのLUNに書き込まれるように、LUNのパフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得するように構成された取得モジュール303とを特に含むことができる。
【0171】
プログラム632の各モジュールの詳細な実施態様については、図3に示される実施形態における対応するモジュールが参照され得るので、詳細はここで繰り返されることはない。
【0172】
図7は、本発明の実施形態によるストレージ・デバイス700を示す概略図である。ストレージ・デバイス700は、従来技術において知られているストレージ・デバイスであってもよく、本発明の実施形態は、ストレージ・デバイス700の特定の形態を制約するものではない。ストレージ・デバイス700は、
プロセッサ(processor)710、通信インターフェイス(Communications Interface)720、メモリ(memory)730、およびバス740を含む。
【0173】
プロセッサ710、通信インターフェイス720、およびメモリ730は、バス740を通じて相互に通信する。
【0174】
通信インターフェイス720は、ストレージ・スペース管理デバイス600のようなネットワーク要素と通信するように構成される。
【0175】
プロセッサ710は、プログラム732を実行するように構成される。
【0176】
特に、プログラム732は、プログラム・コードを含むことができ、プログラム・コードはコンピュータの操作命令を含む。
【0177】
プロセッサ710は、中央演算処理装置CPU、または特殊用途向け集積回路ASIC(Application Specific Integrated Circuit)、または本発明の実施形態を実施するように構成された1つまたは複数の集積回路であってもよい。
【0178】
メモリ730は、プログラム732を格納するように構成される。メモリ730は、高速RAMを含むことができるか、または、たとえば少なくとも1つのディスク・メモリのような、不揮発性メモリ(non−volatile memory)をさらに含むことができる。
【0179】
プログラム732は、
ストレージ・スペース管理デバイスによって送信されるパフォーマンス・レベル要求を受信するように構成された受信モジュール401であって、要求はストレージ・デバイス内の1つまたは複数のLUNのパフォーマンス・レベルに関する情報にクエリを行なうために使用されるモジュールと、
パフォーマンス・レベル要求に従ってLUNのパフォーマンス・レベルに関する情報を取得するように構成された計算モジュール402と、
パフォーマンス・レベル要求に応答してストレージ・スペース管理デバイスに応答を送信するように構成された送信モジュール403であって、パフォーマンス・レベル要求に応答して送信される応答はLUNのパフォーマンス・レベルに関する情報を含み、ストレージ・スペース管理デバイスは、データ書き込み命令が受信されるときにデータ書き込み命令に含まれる格納されるべきデータのアクセス頻度レベルに従って当該格納されるべきデータが対応するパフォーマンス・レベルのLUNに書き込まれるように、LUNのパフォーマンス・レベルに関する情報に従ってLUNのパフォーマンス・レベルを取得するモジュールとを特に含むことができる。
【0180】
プログラム732の各モジュールの詳細な実施態様については、図4に示される実施形態における対応するモジュールが参照され得るので、詳細はここで繰り返されることはない。
【0181】
簡便で簡潔な説明を目的として、前述のデバイスおよびモジュールの特定の機能プロセスに関しては、前述の方法の実施形態における対応するプロセスが参照され得るので、詳細はここで再度説明されないことが、当業者には明確に理解されるであろう。
【0182】
本願において提供される実施形態において、開示されるデバイスおよび方法がその他の方法で実施され得ることを理解されたい。たとえば、説明される装置の実施形態は、模範的なものに過ぎない。たとえば、モジュール部は、論理機能部に過ぎず、実際の実施態様においてその他の部分があってもよい。たとえば、複数のモジュールまたはコンポーネントは、別のデバイスに複合または統合されてもよいか、または一部の特徴が無視されるか、実行されなくてもよい。加えて、表示されるかまたは説明される相互結合もしくは直接結合または通信接続は、一部の通信インターフェイスを通じて実施されてもよい。装置またはモジュール管の間接結合または通信接続は、電気的、機械的、またはその他の形態で実施されてもよい。
【0183】
別個の部品として説明されるモジュールは、物理的に分離されていても、分離されていなくてもよく、モジュールとして表示される部品は、物理的なユニットであってもなくてもよく、1つの位置に配置されてもよいか、または複数のネットワーク・ユニット上に分散されてもよい。モジュールの一部または全部は、実施形態の解決策の目的を達成するための実際の必要に応じて選択されてもよい。
【0184】
加えて、本発明の実施形態の各々の機能モジュールは、1つの処理モジュールに統合されてもよいか、またはモジュールの各々が物理的に独立して存在してもよいか、または2つ以上のモジュールが1つのモジュールに統合されてもよい。
【0185】
最後に、前述の実施形態は、本発明の技術的解決策を説明することを単に意図されており、本発明を限定するものではないことに留意されたい。本明細書は、前述の実施形態を参照して詳細に説明されるが、当業者であれば、本発明の実施形態の技術的解決策の原理および範囲を逸脱することなく、前述の実施形態において説明される技術的解決策に変更をさらに加えることができること、またはその一部もしくは全部の技術的特徴に等価の置き換えを行なうことができることを、理解するはずである。
図1
図2A
図2B
図2C
図3
図4
図5
図6
図7