JP5996098B2 - ストレージデバイスの高速アクセス及びデータ保護を実現する計算機、計算機システム、及びi/o要求処理方法 - Google Patents

ストレージデバイスの高速アクセス及びデータ保護を実現する計算機、計算機システム、及びi/o要求処理方法 Download PDF

Info

Publication number
JP5996098B2
JP5996098B2 JP2015510544A JP2015510544A JP5996098B2 JP 5996098 B2 JP5996098 B2 JP 5996098B2 JP 2015510544 A JP2015510544 A JP 2015510544A JP 2015510544 A JP2015510544 A JP 2015510544A JP 5996098 B2 JP5996098 B2 JP 5996098B2
Authority
JP
Japan
Prior art keywords
raid
area
computer
logical
logical partition
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2015510544A
Other languages
English (en)
Other versions
JP2015531090A (ja
Inventor
恵介 畑崎
恵介 畑崎
和秀 愛甲
和秀 愛甲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of JP2015531090A publication Critical patent/JP2015531090A/ja
Application granted granted Critical
Publication of JP5996098B2 publication Critical patent/JP5996098B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • 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/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • 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/10Program control for peripheral devices
    • 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/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
    • 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/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
    • 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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Description

本発明は、ストレージデバイスのアクセス性能を引き出しつつデータ保護を実現する計算機、計算機システム、及びI/O要求処理方法に関する。
重要なデータに対するトランザクションなどの処理においては、高いデータ保護機能を備えるストレージシステムが必須である。一方で、リトライ処理が可能な一次処理や検索・分析処理などでは、高速性を重視する場合がある。
現在、サーバやストレージに搭載する高速なデバイスとしては、SSD (Solid State Drive)をPCIe (PCI Express)等の高速なプロトコルで接続するPCIe-SSDなどの製品や、SSDのみを搭載するAll Flash Storageなどの製品が登場している。
特開2008-97225号公報 米国特許2011/0289267号公報
特許文献1記載のように、HDD(Hard Disk Drive)などの低速デバイスとSSDなどの高速デバイスの両方を利用し、それぞれの特徴を活かした高性能なストレージシステムが提案されている。しかし、この場合、ストレージコントローラがボトルネックとなり、SSDなどの高速デバイスの性能が十分に引き出せないといった課題がある。一方、高速デバイスをサーバに直接接続することでストレージコントローラを経由せずに性能を引き出すことが可能であるが、ストレージコントローラが備えるデータ保護機能などのストレージ機能を活用できないといった課題がある。
また、特許文献2記載のように、高速デバイスを活用してアプリケーションのRead性能を向上させるために、高速デバイスをサーバに直接接続し、該当高速デバイスはキャッシュ用途として利用し、アプリケーションからのWriteについては外部に接続したストレージ装置に対してライトスルーにてデータを書き込み、高速アクセスとデータ保護とを両立する方法があるが、全てのwriteデータを必ずしもデータ保護する必要はなく、Write性能が十分に引き出せないという課題がある。
本発明の目的は、記憶デバイスに対するデータアクセスにおいて、ストレージコントローラの持つ機能性と、記憶デバイスの持つI/O性能を引出すことを両立することが可能なデータアクセス手段を提供することである。
本発明では、上記課題の少なくとも一つを解決するために、計算機を論理分割して、コンピュート用の論理区画とストレージ用の論理区画を準備する。コンピュート区画からのI/Oについて、I/Oの内容に応じてストレージ用の論理区画を経由するか否かを判断してI/Oの振り分けを行い、ストレージデバイス群にアクセスする。
また、本発明では、上記課題の少なくとも一つを解決するために、コンピュート用の計算機とストレージ用の計算機を準備し、コンピュート用の計算機からのI/Oについて、I/Oの内容に応じてストレージ用の計算機を経由するか否かを判断してI/Oの振り分けを行い、ストレージデバイス群にアクセスする。
本発明によれば、ストレージデバイスに対して高速でアクセスしたい場合と、データ保護したい場合とで、ユーザニーズに応じた柔軟な利用が可能な計算機を提供することができる。
実施例1における計算機システムの構成例を説明するブロック図。 実施例1におけるノードの論理構成例を模式的に示す図。 実施例1におけるストレージ制御プログラムの構成例を示す図。 実施例1における共有テーブルの構成例を示す図。 実施例1におけるデバイス構成テーブルの構成例を示す図。 実施例1におけるRAID構成テーブルの構成例を示す図。 実施例1におけるボリューム構成テーブルの構成例を示す図。 実施例1におけるI/O制御プログラムの構成例を示す図。 実施例1における仮想デバイス構成テーブルの構成例を示す図。 実施例1におけるストレージの論理構成例を模式的に示す図。 実施例1における仮想デバイス構成部の処理例を示すフローチャート。 実施例1におけるI/O振分部の処理例を示すフローチャート。 実施例1におけるストレージ制御プログラムの論理構成例を模式的に示す図。 実施例1におけるI/O処理のシーケンス図。 実施例1におけるモード切り替え部の処理例を示すフローチャート。 実施例1におけるデータ移行処理例を示すフローチャート。 実施例1におけるデータ移行処理を模式的に示す図。 実施例2における計算機システムの構成例を説明するブロック図。
以下、本発明の実施例を、図を用いて説明する。
なお、以下の実施例において、同一の構造部を持ち、同一の符号を付した部分は、原則として同一の動作を行うため、重複する説明を省略した。
以下、図1乃至図18を参照して本発明の第一の実施例を説明する。本実施例は本発明を実現するための一例に過ぎず、本発明の技術的範囲を限定するものではないことに注意すべきである。
図1は、本実施例における計算機システムの構成例を示すブロック図である。本実施例における計算機システムは、1つ以上のノード10を備える。ノード10は、ノード10に1つ以上のメモリ11、CPU(Central Processing Unit)12、I/O(Input/Output)デバイス13、NIC(Network Interface Card)14、ストレージデバイス群15及び16を備える。ここでストレージデバイス群15、16は、複数のストレージデバイスの集合である。また、ストレージデバイス群15と16とでは、種類が異なる。例えば、一方はHard Disk Drive(HDD)であり、一方はSolid State Drive(SSD)などである。また、I/Oデバイス13はHBA(Host Bus Adaptor)やCNA(Converged Network Adapter)、HCA(Host Channel Adaptor)、PCIeエクステンダなどである。なお、本実施例では、発明の好適な例として、高速なデバイスと低速なデバイスの2種類がノード10に接続する形で説明をするが、デバイスの種類は2種類に限られず、1種類でも3種類以上であっても良い。
ノード10のメモリ11には、論理分割プログラム100、I/O制御プログラム110、ストレージ制御プログラム120、共有テーブル130、1つ以上のOS(Operating System)/アプリ150を備える。論理分割プログラム100は、1つ以上の論理区画をノード上に構築し、各論理区画では独立してOSを稼働できる。I/O制御プログラム110は、OS/アプリ150からのI/O要求を制御する。ストレージ制御プログラム120は、ストレージデバイス群15、16の管理機能とノード内およびノード外からのストレージI/Oを受け付け応答する共有ストレージ機能、およびデータ保護やデータコピー等の機能を提供する。共有テーブル130は、I/O制御プログラム110とストレージ制御プログラム120とで共有する情報を保持する。すなわち、メモリ11は、共有テーブル130を含む共用部分、コンピュート区画用の部分およびストレージ区画用の部分から構成されることになる。
また、計算機システムには、ネットワーク20、および管理計算機30、管理計算機30のメモリ31、CPU32、NIC33、および管理プログラム35を備える。なお、管理計算機30およびネットワーク20は必須ではなく、例えばあるノード10に管理プログラム35を備え、計算機システム全体の管理を行っても良い。
管理プログラム35は、本計算機システム全体を管理する。管理計算機30は、ネットワーク20を介して、ノード10から必要な情報の取得とノード10の制御ができる。
また、ノード10には、ストレージ装置40が接続されている。ここでストレージ装置40とは、SAN(Storage Area Network)ストレージ装置40などの共有ストレージ装置である。なお、ストレージ装置40は必須でなない。なお、本実施例では、ストレージデバイスを記憶媒体として、ストレージ装置40を種々のストレージ機能を有する機器として用いる。
図2は、ノード10の論理的な構成例を示す。本実施例では、ノード10には、論理分割プログラム100により論理区画としてコンピュート区画101とストレージ区画102が構築される。なお、ここで論理分割プログラム100は、ノード10の
備えるCPU12,メモリ11、I/Oデバイス13、ストレージデバイス群15、16などのハードウェアリソースを論理的に分割して各論理区画に割り当てることができる。なお、割り当て方法として、特定の論理区画に特定のハードリソースを優先して割り当てることで、該当リソースの性能保証や障害影響範囲の限定ができる。また、ハードリソースの共有も可能であり、特定の物理ハードリソースを複数の論理区画に対して共有に割り当てることにより実現する。
本実施例では、コンピュート区画101においては、メモリ11上にI/O制御プログラム110およびOS/アプリ150を保持し、CPU12により実行される。ストレージ区画102にはストレージ制御プログラム120をメモリ11上に保持し、CPU12により実行される。また、ストレージ区画102には、ストレージデバイス群16が割り当てられている。また、コンピュート区画101、ストレージ区画102の両方に共有記憶部103およびストレージデバイス群15が割り当てられ、共有されている。ここで共有記憶部103はノード10のメモリ11の一部であり、共有テーブル130を保持する。なお、本実施例ではI/O制御プログラム110はコンピュート区画101に存在するが、I/O制御プログラム110が論理分割プログラム100の一部であっても良い。
図3は、本実施例のストレージ制御プログラム120のブロック図を示す。
デバイス管理部121は、ストレージ区画102に割り当てられたストレージデバイス群15及び16のデバイス構成とRAID(Redundant Array Inexpensive Disk)構成を管理する。ここでデバイス構成の管理とは、該当ストレージデバイスがストレージ区画102とコンピュート区画101とで共有可能か否か、該当ストレージデバイスをRAID構成で利用するか、及び直接アクセス(以下、Rawアクセスと呼ぶ)可能なデバイスとして利用するかを管理し、本管理情報はデバイス構成テーブル131に保持する。さらに、デバイス管理部121は、論理分割プログラム100に対して、ストレージデバイスの論理区画への割り当て変更を指示できる。また、RAID構成の管理とは、該当ストレージデバイスのRAIDレベルと構成を管理し、本管理情報はRAID構成テーブル132に保持する。なお、デバイス管理部121は、管理GUI(Graphical User Interface)やAPI(Application Programming Interface)を備える。
I/O処理部122は、ホストからのI/O要求に対するキャッシュ制御とRAID構成部123および外部ストレージ接続部124へのI/OアクセスI/O要求と、ホストへの応答を実施する。さらに、I/O処理部122は、コピーやスナップショット、バックアップ、ミラーリング、ティアリングなどのストレージ装置特有の機能を備える。ここでホストとは、ノード10内のコンピュート区画101、または当該ストレージ制御プログラムを備えるノード10外部の別ノードやサーバである。
RAID構成部123は、I/O要求に対して論理ブロックアドレスと物理ブロックアドレスへの変換処理を実施してストレージデバイスに対してI/O要求を実施する。
外部ストレージ接続部124は、ストレージデバイスおよびストレージ装置40に対してRawアクセスを実施するため、該当ストレージデバイスおよびストレージ装置40に対応する論理ボリュームを構成し、I/O要求を該当ストレージデバイスおよびストレージ装置40に対して実施する。
デバイスドライバ125は、ストレージデバイスのドライバ、コンピュート区画101との接続のためのドライバ、およびI/Oデバイス13のドライバである。
図4は、本実施例の共有テーブル130のブロック図を示す。ボリューム構成テーブル126、デバイス構成テーブル131、RAID構成テーブル132、仮想デバイス構成テーブル133についてはそれぞれ図7、図5、図6、および図9にて詳細を述べる。
図5は、本実施例のデバイス構成テーブル131を示す。カラム501は、ストレージデバイスの識別子501を保持する。ここでいうストレージデバイスは、たとえばSSD単位や、PCI-SSDボード単位、およびSR-IOV(Single Root I/O Virtualization)などでPCI-SSDボードを論理的に分割した単位である。ストレージデバイス識別子としては、たとえば該当デバイスのPCIのBus、Device、Functionなどの番号を利用する。もちろん識別が可能であれば、特定の識別子を付与しておき、これをストレージデバイス識別子としても良い。
カラム502は、該当ストレージデバイスがストレージ区画102とコンピュート区画101とで共有可能か否かを保持する。本情報は、該当ストレージデバイスの仕様に基づき保持したり、APIにより取得したりする。カラム503は、該当ストレージデバイスをRAID構成で利用するか、Rawアクセスで利用するかを識別する。ここで“RAID”であればRAID構成、“Raw”であればRawアクセスで利用する。なお、本テーブル131はストレージ制御プログラム120やI/O制御プログラム110、管理プログラム35によって作成されても良いし、あらかじめ保存されていても良い。
図6は、本実施例におけるRAID構成テーブル132を示す。カラム601は、アレイグループの識別子を保持する。カラム601は、該当アレイグループのRAIDレベル(RAID0,1,5,6等の情報)と、RAID構成としてデータドライブ数nとパリティドライブ数mを“nD+mP”として保持する。カラム603は、該当アレイグループに属するストレージデバイスの識別子を示す。このストレージデバイス識別子は、デバイス構成テーブル131のカラム501と対応する。なお、本テーブル132はストレージ制御プログラム120やI/O制御プログラム110、管理プログラム35によって作成されても良いし、あらかじめ保存されていても良い。
図7は、本実施例におけるボリューム構成テーブル126を示す。カラム701はボリュームの識別子を保持する。カラム702は該当ボリュームに対応するストレージデバイスを保持する。ここで、RAID構成したストレージデバイスの場合であれば、アレイグループの識別子として“AG1”などと記載している。Rawアクセスのストレージデバイスの場合はストレージデバイスの識別子として“ストレージデバイス1”などと記載している。また、Rawアクセスのストレージでかつノード外部のストレージ装置40であれば“ストレージ装置x”などと記載している。さらに、特定のボリュームと同じ内容を持つミラーボリュームを論理的に構成する場合には、たとえばボリューム“VOL a”のミラーであれば“VOL aミラー”などと記載している。
カラム703は割当先ホストの識別子を保持する。ここで割当とは、該当ボリュームが該当ホストからアクセス可能であることを示す。ここで、たとえばノード内のコンピュート区画101として、割当先の論理区画の識別子が“APP LPAR1”、さらに該当論理区画に対する論理的なボリュームの識別子(たとえばLUN(Logical Unit number)等)としてa,b,c…などの識別情報を組み合わせて、“APP LPAR1-a”などと記載している。また、ノード外のホストの場合は、WWNやSCSI Nameなどの識別子を保持する。さらに、割当先が存在しない場合は”なし”と記載している。なお、本テーブル126はストレージ制御プログラム120やI/O制御プログラム110、管理プログラム35によって作成されても良いし、あらかじめ保存されていても良い。
図8は、本実施例のI/O制御プログラム110のブロック図を示す。
仮想デバイス構成部111は、OS/アプリ150からアクセスするブロックデバイスとして、仮想デバイスを構成する。詳細フローは図11に述べる。
モード切り替え部112は、OS/アプリ150からストレージへのI/Oアクセスのパスを切り替える機能を備える。
I/O振分部113は、ストレージへのI/Oアクセスをモードによって振り分ける機能を備える。詳細フローは図12に述べる。
RAID構成部114は、I/O要求に対して論理ブロックアドレスと物理ブロックアドレスへの変換処理を実施してストレージデバイスに対してI/O要求を実施する。
デバイスドライバ115は、ストレージデバイスのドライバ、ストレージ区画102への接続のためのドライバ、およびストレージI/Oのドライバである。
図9は、本実施例における仮想デバイス構成テーブル133を示す。カラム901は識別子として、ノード内のコンピュート区画101の論理区画の識別子を保持する。カラム902は該当論理区画における対象仮想デバイスの識別子を示す。この識別子は、I/O制御プログラム110の仮想デバイス構成部111が構成した仮想デバイスの識別子である。複数存在する場合は“,”により列挙する。カラム903は、該当仮想デバイスが複数パスを備えるか否かを保持する。本実施例では、備える場合は“あり”、備えない場合は“なし”と記載している。カラム904は該当仮想デバイスのモードを示す。
ここで、“第一パス“とは、該当デバイスへのI/Oアクセスパスとして、ストレージ区画102のストレージ制御プログラム120を経由してストレージデバイスにアクセスする経路を利用する場合を示す。“第二パス”とは、コンピュート区画101から直接ストレージデバイスにアクセスする場合を示す。ここで、第一パスを利用する場合は、ストレージ制御プログラム120が備えるデータ保護機能やデータ制御機能などを活用できる。一方、第二パスを利用する場合は、ストレージ制御プログラム120をバイパスして直接ストレージデバイスにアクセスすることで、ストレージデバイスの性能を効果的に発揮できる。
また、カラム905は、カラム904のパスで接続されるデバイスの識別子をI/Oのアクセス先として保持する。例えば、仮想デバイスBのI/Oのカラム904が第二パスであるため、送信先905は2bで識別されるデバイスとなる。
カラム906は、該当仮想デバイスのRAIDレベルおよび構成を保持する。“Raw“であればRAID構成デバイスではない。RAIDが構成されているデバイスを対象とする場合、RAIDレベルと構成を”RAID5(4D+1P)”などと記載する。これはRAID構成テーブル132のカラム602と同等である。
図10は、本実施例のストレージの論理的な構成を示す。ストレージデバイス群15には、RAIDが構成されたストレージデバイスの組としてRAID領域942と、直接アクセスが可能なストレージデバイスの組としてRaw領域943を備える。ストレージデバイス群16においても、RAID領域941を備える。RAID領域941、942、およびRaw領域943は、ストレージ区画102のストレージ制御プログラム120によりそれぞれボリューム931、932、および933に対応づけられる。さらに、ボリューム931、932、933は、それぞれコンピュート区画101のI/O制御プログラム110が認識するデバイス911、912、913に対応づけられる。また、RAID領域942、およびRaw領域943は、さらにコンピュート区画101のデバイス922、および923に対応づけられる。ここでRAID領域942およびデバイス922は複数のストレージデバイスであってもよい。
I/O制御プログラム110が構成しOS/アプリ150に見せる仮想デバイス910はデバイス912、922が対応し、仮想デバイス920はデバイス913、923が対応し、仮想デバイス930はデバイス911が対応する。ここで、デバイス922が複数デバイスであった場合でも、I/O制御プログラム110のRAID構成部114により単一の仮想デバイス910へと変換される。仮想デバイス910と920は、第一パス1701、第二パス1702によるI/Oアクセス経路を備え、第一パスにおいてはI/O制御プログラム110はそれぞれデバイス912、913に対応づけたI/Oアクセスを実施し、第二パスにおいては、それぞれデバイス922、923に対応づけたI/Oアクセスを実施する。
なお、図示はしていないが、デバイス922からRAID領域942のI/Oアクセスについては、コンピュート区画101上で動作するRAID構成部を介してRAID制御を行う。
図11は、本実施例のI/O制御プログラム110における仮想デバイス構成部111の処理フローを示す。ステップ1001では、仮想デバイス構成部111は、デバイスの識別を実施する。ここでいう識別とは、該当コンピュート区画に対応づけられたデバイス(図10の911、912、913,922,923)が、ストレージ区画102のストレージ制御プログラム120により構成されたボリュームに対応するデバイス(図10の911、912、913)であるか、ストレージデバイスに直接対応づけられたデバイス(図10の922、923)であるかを識別することを指す。ここでは、仮想デバイス構成部111は、たとえばボリューム構成テーブル126を参照し、カラム703の論理的なボリュームの識別子(LUN等)とOSまたはデバイスドライバ125が認識するデバイス情報に基づいて、ストレージ区画102のストレージ制御プログラム120により構成されたボリュームに対応するデバイスを識別する。次に、ステップ1002では、仮想デバイス構成部111が各デバイスのストレージデバイス識別子を取得する。ここではまず、仮想デバイス構成部111は、ストレージ制御プログラム120により構成されたボリュームに対応するデバイス(図10の911、912、913)について、ボリューム構成テーブル126のカラム702と、RAID構成テーブル132のカラム601および603を参照し、ボリュームがアクセスするストレージデバイス識別子を特定する。たとえば、図7のボリューム“VOL c”の対象は“ストレージデバイス1”であり、ボリューム“VOL b”の対象“AG1”は図6のアレイグループ“AG1”に対応し、そのデバイス識別子は“ストレージデバイス3,4”である。次に、仮想デバイス構成部111は、ストレージデバイスに直接対応づけられたデバイス(図10の922、923)について、該当デバイスのストレージデバイス識別子を取得する。取得方法としては、たとえばデバイスドライバ経由や、OS経由、およびBIOSやEFIなどのファームウェア経由で取得する。
ステップ1003では、仮想デバイス構成部111は、複数パスで同一ストレージデバイスに対応するデバイスの組が存在するか判定する。ここでは、仮想デバイス構成部111は、ステップ1002にて取得したストレージデバイス識別子が、ストレージ制御プログラム120により構成されたボリュームに対応するデバイス(図10の911、912、913)と、ストレージデバイスに直接対応づけられたデバイス(図10の922、923)とで一致しているデバイスの組を取得する。図10の例では、デバイス912と922、および913と923の組が該当する。もし、デバイスの組が存在する場合にはステップ1004へ移り、存在しない場合、仮想デバイス構成部111は、ステップ1005へ移る。ステップ1004では、仮想デバイス構成部111は、仮想デバイスを構成する。ここでは、仮想デバイス構成部111は、ステップ1003にて取得したデバイスの組に対応した仮想デバイスを構成する。図10の例では、デバイス912と922の組に対しては仮想デバイス910を構成し、デバイス913と923の組に対しては仮想デバイス920を構成する。ステップ1005では、仮想デバイス構成部111は、該当デバイスに対応する仮想デバイスを構成する。図10ではデバイス911に対応する仮想デバイス930を構成する。ただし、本ステップにおける仮想デバイスの構成は必須ではなく、デバイス911を直接OS/アプリ150が利用しても良い。
ステップ1006では、仮想デバイス構成部111は、仮想デバイス構成テーブル133を更新する。ここで、カラム902には構成した仮想デバイスの識別子とし、ステップ1004にて仮想デバイスを構成した場合にはカラム903は“あり”、ステップ1005にて仮想デバイスを構成した場合にはカラム903は“なし”となる。また、カラム904および905については、ユーザ等が任意に設定するデフォルト設定に従ったパスを選択するものとする。カラム906にはRAIDレベル・構成を登録する。ステップ1004およびステップ1005で作成した仮想デバイスの対象デバイスに対してRAIDを構成している場合はRAIDレベルと構成を登録し、そうでない場合は“Raw“を登録する。ここでRAIDを構成しているか否かは、ステップ1001にて該当デバイスに対するボリューム構成テーブル126の対象(カラム702)がアレイグループ(“AG1”など)の場合である。ステップ1007では、仮想デバイス構成部111は、ステップ1001で検出したデバイスに対して、対応する仮想デバイスが構成されていない未構成のデバイスが存在する場合には、ステップ1002に移る。
図12に本実施例におけるI/O振分部113の処理フローを示す。ステップ1101では、I/O振分部113は、OS/アプリ150より仮想デバイスに対するI/O要求を受信する。ステップ1102では、I/O振分部113は、該当仮想デバイスに対するアクセスモードを判定する。ここでは、I/O振分部113は、仮想デバイス構成テーブル133を参照し、該当仮想デバイスのモード(図9のカラム904)が“第一パス”であればステップ1103へ、“第二パス”であればステップ1104へと移る。なお、カラム905を参照して、送信先の識別子から判定しても良い。ステップ1103では、I/O振分部113は、該当仮想デバイスに対応する第一パスのデバイスへとI/Oアクセスを振り分ける。ここで第一パスのデバイスとは、ストレージ区画102のストレージ制御プログラム120により構成されたボリュームに対応するデバイス(図10のデバイス912、913)である。ステップ1104では、I/O振分部113は、アクセス先の仮想デバイスに対応するデバイスがRAIDを構成しているか否かを取得する。これには、仮想デバイス構成テーブル133の該当ホストの該当仮想デバイスに対するカラム906が“Raw”で無い場合を示す。
なお、仮想デバイスに対するアクセスモードについて、システムの導入時はユーザがシステムのデータを利用するユースケースに応じてデータのアクセスパスを選択することが考えられる。“第一パス”を利用したい場合は、ユーザがストレージ制御プログラム120の備える機能を利用したい場合に選択する。ここでいう機能とは、主にスナップショット、バックアップ、ディザスタリカバリ、シンプロビジョニング、データ移行、及びストレージ階層の仮想化などが挙げられる。一方、“第二パス”を利用したい場合は、これら機能を利用せず、ユーザがデータアクセス機能を効果的に引出したい場合に選択する。
ステップ1105では、I/O振分部113は、ステップ1104で取得した情報をもとに、RAIDが構成されている場合はステップ1106へ、そうでない場合はステップ1107へ移る。ステップ1106では、I/O振分部113は、該当仮想デバイスに対応する第二パスのデバイスに対して、RAID構成部123によるRAID領域アクセス処理を実施する。ここで第二パスのデバイスとは、ストレージデバイスに直接対応づけられたデバイスである。また、RAID領域アクセス処理においては、仮想デバイス構成テーブル133の該当ホストの該当仮想デバイスのカラム906が示すRAIDレベル・構成をもとに、I/Oアクセス要求をストレージデバイスの物理アドレスと論理アドレスとの変換、対象デバイスへのアクセス処理を適宜分割・集約の実施、書き込みアクセス時のパリティ計算とデバイスへの書き込み等の処理を実施する。これにより、RAIDが構成されたデバイスへの読み書きを実現する。ステップ1107では、I/O振分部113は、該当仮想デバイスに対応する第二パスのデバイスに対してI/Oアクセス要求を振り分ける。
図13は、本実施例におけるストレージ制御プログラム120の論理的なブロック構成を示す。各ストレージデバイス群15、16に対応したデバイスドライバ125を経由して、RAIDを構成したストレージデバイス(図中941、942)に対してはRAID構成部123を経由してアクセスを実施し、Rawアクセスするストレージデバイス(図中943)や、外部のストレージ装置(図中ストレージ装置40)の場合は、外部ストレージ接続部124を経由してアクセスする。
RawアクセスするVOL C(933)は、ストレージデバイス上でRaw領域943のため、RAID構成がない。そのため、RAID構成部123を介してRaw領域943にアクセスすると、データを正しく認識することができない。そのため、Raw領域943にアクセスする場合は本図のように、外部ストレージ接続部124を経由してアクセスすることで、ストレージ区画102を利用しながら、Raw領域943を利用することが可能となる。
図14は、本実施例におけるI/Oアクセスのシーケンスを示す。OS/アプリ150からのI/O要求の対象仮想デバイスのモードが“第一パス”であり、RAID構成が“RAID“の場合(図中1301)はストレージ制御プログラム120を経由したストレージデバイスへのアクセスを実施する。一方I/O要求の対象仮想デバイスのモードが“第二パス”であり、RAID構成が“RAID”の場合(図中1302)は、ストレージ制御プログラム120を経由せず、I/O制御プログラム110のRAID構成部114を経由してストレージデバイスへのアクセスを実施する。また、I/O要求の対象仮想デバイスのモードが“第二パス”であり、RAID構成が“Raw”の場合(図中1303)は、ストレージ制御プログラム120やRAID構成部114を経由せずストレージデバイスにアクセスを実施する。これにより、I/Oアクセス性能は1301、1302、1303の順に高速となる一方、1301ではストレージ制御プログラム120の機能、1301,1302ではRAIDといった機能性を備える。
図15は、本実施例のモード切り替え部112の処理フローを示す。ステップ1401では、モード切り替え部112は、モード切り替え要求を受け付ける。モード切り替え要求は、たとえばユーザやアプリケーションへのインタフェイス(GUI、APIなど)をモード切り替え部112が備え、該当インターフェイスにより要求を受け付ける。受付内容としては、モードの切り替えを実施する対象となる仮想デバイスと、切り替え先のモードの種類である。ステップ1402では、モード切り替え部112は、受け付けた要求が第二パスへのアクセスモードへの切り替えであればステップ1403へ移り、第一パスへの切り替えであればステップ1406へ移る。なお、仮想デバイス構成テーブル133を参照し、該当仮想デバイスのモードがすでに切り替え先のモードと同一であれば、モード切り替え部112の処理を終了する。
ステップ1403では、モード切り替え部112は、コンピュート区画101におけるデバイスドライバ115のI/O完了をウエイトする。次に、ステップ1404では、モード切り替え部112は、ストレージ制御プログラム120において該当仮想デバイスに対応するボリュームに対するI/O要求の実行完了をウエイトする。ここで、完了通知はストレージ制御プログラム120とモード切り替え部112が情報交換インターフェイス等を通じて実施する。ステップ1405では、モード切り替え部112は、仮想デバイス構成テーブル133の該当仮想デバイスのモードを第二パスに変更する。一方、ステップ1406では、モード切り替え部112は、コンピュート区画101におけるデバイスドライバ115のI/O完了をウエイトする。次にステップ1407では、モード切り替え部112は、仮想デバイス構成テーブル133の該当仮想デバイスのモードを第一パスに変更する。
なお、アクセスモードの切り替えは、I/O制御プログラム110が判別プログラムを有し、動的に変更するようにしてもよい。この場合、I/O制御プログラム110は、OS/アプリ150から仮想デバイスへのアクセス頻度や、OS/アプリ150、ファイルシステム、ドライバまたはストレージ制御プログラム120から性能情報を収集し、I/OキューやI/O処理ネックとなっている部分の検出を行う。これにより、予め定めた閾値よりI/Oアクセス頻度が高いデータやOS/アプリ150、ファイルシステム、ドライバにてI/O処理待ちが他と比較して多く発生しているデータに対して、第一パスから第二パスへ切り替えを行う。一方、予め定めた閾値よりI/Oアクセス頻度が低いデータや、I/O処理待ちが他と比較して少ないデータに対して、第二パスから第一パスへの切り替えを行う。これにより、データに応じてアクセスパスを最適化し、より高い性能向上を実現することができる。
また、I/O制御プログラム110は、管理計算機30を介して、上記のパス切り替えを実施する閾値を指定するGUIをユーザに提供する。閾値の具体例としては、上記I/OキューやI/O処理ネックを判断する一指標としての閾値や、I/Oアクセス頻度の閾値である。
ここまで、ストレージデバイス群15、16について、RAID領域941とRaw領域943として使い分ける方法を説明してきた。次に、RAID領域941やRaw領域943に保存したデータを、データ移動を行って別の領域に移動し、ストレージ制御プログラム120の利用の有無だけではなく、さらにデータの利用用途に従ってRAID領域941とRaw領域943まで使い分ける方法を、図16及び図17を用いて説明する。
例えば、オンライントランザクション処理など、データ保護の重要性が高い処理や、コアシステムなどの重大処理のデータは、RAID領域941に保存し、これらのデータの一部を利用してデータ分析処理などを実施する場合に、データをRAID領域941からRaw領域943に移動するケースが考えられる。これにより、データの利用用途に応じた、さらに柔軟なシステムをユーザに提供することが可能となる。
ここで、移行にあたってRAID領域941からRaw領域943へのデータ移行をする際、データ移行のためにシステムの処理は停止できないという課題がある。図16及び図17で説明する方法では、I/O制御プログラム110において、一時的に移行のためのデバイスに保持したデータをアクセスパスとして選定することでデータを無停止で移行し、上記課題も解決することが可能となる。
図16は、本実施例における管理プログラム35において、データ移行処理を実施する処理フローである。ステップ1601では、管理プログラム35は、(1)ストレージ制御プログラム120に対して第一ボリュームのミラーボリュームとして第二ボリュームの作成を指示、ステップ1602では、管理プログラム35は、(2)I/O制御プログラム110に仮想デバイスを作成指示。ここで、該当仮想デバイスの第一パスとして第二ボリューム、第二パスとしてストレージデバイスのRaw領域943を対応付ける。ステップ1603では、管理プログラム35は、(3)ストレージ制御プログラム120にRaw領域943を外部ストレージとして接続した第三ボリュームを作成指示。ステップ1604では、管理プログラム35は、(4)ストレージ制御プログラム120に第二ボリュームと第三ボリュームの同期を指示。ステップ1605では、管理プログラム35は、(5)ステップ1604の同期完了後、I/O制御プログラム110に該当仮想デバイスの第一パスとして第三ボリュームへのマッピング変更を指示する。これにより、既存第一ボリュームに保存された内容をコンピュート区画101でアクセス可能としつつ、第二パスからアクセス可能な状態へと移行することができる。
図17は、図16に示したデータ移行処理のブロック図である。ここで、第一ボリュームは外部のストレージ装置40に対応するボリュームであっても良い。図中1701は図16のステップ1601、1702はステップ1602、1703はステップ1604、1704はステップ1604、1705はステップ1605に対応する。
また、Raw領域943からRAID領域941へデータを移行する場合も、同様の方法で実現が可能である。
なお、図示はしていないが、上記のシステム及び装置は、例えばディスプレイやキーボードを代表とする入出力装置など、情報処理装置として処理を行う上で必要となる構成を備え、各部による処理はそれぞれのハードウェアが連関して行う。また、各処理は、集積回路化などして、それを行う処理部としてハードウェアで実現する事もできる。これについては以下の実施例についても同様である。
実施例2では、論理分割を利用せず、コンピュート区画とした論理区画とストレージ区画とした論理区画のそれぞれについて、ノードを分離して別々の計算機で実現するシステムであり、実施例1と同様、ストレージデバイスに対して高速でアクセスしたい場合と、データ保護したい場合とで、ユーザニーズに応じた柔軟な利用が可能な計算機システムを説明する。
図18は、本発明の第二の実施例の構成例を示すブロック図である。実施例1と異なるのはストレージデバイス群15が、ノード間の共有バス1840を通じて、複数のノード10、1800で共有されている点と、ノード10にはストレージ制御プログラム120、ノード1800にはOS/アプリ150とI/O制御プログラム110、および各テーブルに実施例1の共有テーブル130と同等のテーブル1850を保持する点である。テーブル1850は、ノード間のネットワーク20、および共有バス1840を通じて内容を同期する。ここでノード1800は、実施例1のコンピュート区画101に相当する。
これにより、OS/アプリ150とストレージ制御プログラム120とでリソースを分離することによって、リソースの干渉をなくすことが可能となる。
なお、以上に記載した実施例では、I/O制御プログラム110がI/O振分手段を有するという形で説明したが、上記I/O振分手段を実現するプログラム及び関連する情報を、計算機に導入するという形をとっても良い。さらに、上記I/O振分手段を実現するプログラムは、あらかじめ計算機内の記憶装置や外部記憶装置に格納されていても良いし、着脱可能な記憶媒体や通信媒体(有線、無線、光などのネットワーク、又はそのネットワーク上の搬送波やデジタル信号)を介して、必要なときに外部記憶装置に導入されても良い。
10…ノード、11…メモリ、12…CPU、13…I/Oデバイス、14…NIC、15、16…ストレージデバイス群

Claims (17)

  1. アプリケーションが動作するOSを有する第1の論理区画と、
    RAID制御機能を有するストレージ制御部を有する第2の論理区画と、
    RAID領域及びRAID構成に依存しない記憶領域であるRaw領域を含む記憶媒体と
    を備える計算機であって、
    前記第1の論理区画は、
    前記アプリケーションからの第1のI/O要求に基づいて前記第2の論理区画を介さずに前記Raw領域にアクセスし、
    前記アプリケーションからの第2のI/O要求に基づいて、前記第2の論理区画前記第2のI/O要求を送信し、
    前記第2の論理区画は、
    前記RAID制御機能により前記第2のI/O要求を処理し、前記RAID領域にアクセスする
    ことを特徴とする計算機。
  2. 請求項1記載の計算機であって、
    前記第2の論理区画が、複数の論理ボリュームを提供し、
    前記複数の論理ボリュームが、前記第1のRAID領域に関連付いた論理ボリュームである第1の論理ボリュームと、前記Raw領域に関連付いた論理ボリュームである第2の論理ボリュームとを含み、
    前記第1の論理区画が、アプリケーションが動作するOSを有し、
    前記第1のRAID領域に関連付けられた領域は、前記第1の論理ボリュームが関連付けられたデバイスと、前記第1のRAID領域が前記第2の論理区画非経由で関連付けられたデバイスと、の両方が関連付けられ前記アプリケーション又は前記OSから認識される第1の仮想デバイスであり、
    前記Raw領域に関連付けられた領域は、前記第2の論理ボリュームが関連付けられたデバイスと、前記Raw領域が前記第2の論理区画非経由で関連付けられたデバイスと、の両方が関連付けられ前記アプリケーション又は前記OSから認識される第2の仮想デバイスである
    ことを特徴とする計算機。
  3. 請求項2記載の計算機であって、
    前記第1の論理区画は、管理情報を有し、
    前記第1の論理区画は、前記管理情報に基づき前記第2の論理区画を介して前記記憶媒体にアクセスするか、前記第2論理区画を介さずに前記記憶媒体にアクセスするかを判定し、
    前記管理情報が、前記第1及び第2の仮想デバイスの各々について、論理ボリュームが関連付けられたデバイスを経由するパスである第1パスと、前記第2の論理区画非経由のデバイスを経由するパスである第2パスとのうちのいずれのパスを使用するかを含む
    ことを特徴とする計算機。
  4. 請求項2又は3記載の計算機であって、
    前記複数の論理ボリュームが、RAID構成に依存した第2の記憶領域である第2のRAID領域が関連付いた論理ボリュームである第3の論理ボリュームを含み、
    前記第1及び前記第2の仮想デバイスを含みそれぞれが前記アプリケーション又は前記OSから認識される複数の仮想デバイスが、前記第3の論理ボリュームに関連付いたデバイスのみが関連付けられた第3の仮想デバイスを含む
    ことを特徴とする計算機。
  5. 請求項記載の計算機であって、
    前記1以上の記憶媒体は、第1の記憶媒体と、該第1の記憶媒体より低速かつ大容量の第2の記憶媒体を含み、
    前記第1の記憶媒体は、前記第1のRAID領域及び前記Raw領域を含み、
    前記第2の記憶媒体は、前記第2のRAID領域を含む
    ことを特徴とする計算機。
  6. 請求項1乃至5のうちのいずれか1項に記載の計算機であって、
    前記第2の論理区画は、第1のRAID制御機能及び外部ストレージ制御機能を有し、
    前記第2の論理区画は、
    受信したI/O要求が前記第1のI/O要求の場合、前記第1のRAID制御機能により前記第1のRAID領域へアクセスし、
    受信したI/O要求が前記第2のI/O要求の場合、前記外部ストレージ制御機能により前記Raw領域へアクセスする
    ことを特徴とする計算機。
  7. 請求項1乃至6のうちのいずれか1項に記載の計算機であって、
    前記第1の論理区画は、第2のRAID制御機能を有し、
    前記第1の論理区画は、前記第1のI/O要求について前記第1のRAID領域へ前記第2の論理区画非経由でアクセスする場合、前記第2のRAID制御機能により前記RAID領域へアクセスする
    ことを特徴とする計算機。
  8. 請求項記載の計算機であって、
    前記第1の論理区画は、I/O要求キューI/O要求処理とのうちの少なくとも1つの状態に基づいて、前記第1及び第2の仮想デバイスの少なくとも1つについて、使用するパスとして前記管理情報に設定されているパスを、前記第1パスから第2パスへ、又は、前記第2パスから前記第1パスへ変更する
    ことを特徴とする計算機。
  9. 請求項記載の計算機であって、
    前記I/O要求キュー及び前記I/O要求処理の各々の状態前記第1及び第2の仮想デバイスの少なくとも1つのアクセス頻度と、前記アプリケーション及び前記第2の論理区画の性能情報とに基づき算出される
    ことを特徴とする計算機。
  10. 請求項1乃至9のうちのいずれか1項に記載の計算機であって、
    前記第1の論理区画は、
    記第1のRAID領域に格納する前記I/O要求の対象のデータの一部にデータ分析の対象が含まれる場合、前記データ分析の対象を前記第1のRAID領域から前記Raw領域へ移行する
    ことを特徴とする計算機。
  11. 請求項1乃至10のうちのいずれか1項に記載の計算機であって、
    前記第2の論理区画は、前記第2のI/O要求で指定の論理ブロックアドレスを物理ブロックアドレスに変換して前記第1のRAID領域へアクセスする
    ことを特徴とする計算機。
  12. 請求項1乃至11のうちのいずれか1項に記載の計算機であって、
    前記1以上の記憶媒体は、第1の記憶媒体と、該第1の記憶媒体より低速かつ大容量の第2の記憶媒体とを含み、
    前記第1の記憶媒体は、前記第1のRAID領域及び前記Raw領域を含み、
    前記第2の記憶媒体は、第2のRAID領域を含み、
    前記第2のRAID領域へのアクセスは、前記第2の論理区画経由ならば可能であるが、前記第2の論理区画非経由ならば不可能である
    ことを特徴とする計算機。
  13. 請求項3に記載の計算機であって、
    前記第1の論理区画が、
    前記管理情報が、前記第1及び第2の論理区画から共有される情報である、
    ことを特徴とする計算機。
  14. 請求項1乃至13のうちのいずれか1項に記載の計算機であって、
    前記第2の論理区画が、第1の論理ボリュームを提供し、
    前記第1の論理ボリュームに、いずれかのRAID領域が関連付けられ、
    前記第1の論理ボリュームから前記Raw領域へデータが移行される場合、前記第2の論理区画が、
    前記第1の論理ボリュームのミラーボリュームとしての第2の論理ボリュームを生成し、
    いずれかのRaw領域が関連付けられる第3の論理ボリュームを生成し、
    前記第1の論理区画が、
    前記アプリケーション又は前記OSから認識される対象の仮想デバイスに対して、前記第2の論理ボリュームへのパスを前記第2の論理区画経由のパスである第1パスとして関連付け、前記いずれかのRaw領域へのパスを前記第2の論理区画非経由のパスである第2パスとして関連付け、
    前記第3の論理ボリュームの前記第2の論理ボリュームとの同期の完了後に、前記対象の仮想デバイスから前記第2の論理ボリュームへのパスを前記第2の論理ボリュームから前記第3の論理ボリュームへと張り替える
    ことを特徴とする計算機。
  15. アプリケーションが動作するOS及び前記アプリケーションから要求されるI/Oの送信先を有する管理情報を備える第1の論理区画、並びにRAID制御機能を有するストレージ機能を備える第2の論理区画に計算機を論理分割し、
    RAID領域及びRAID構成に依存しない記憶領域であるRaw領域を含む記憶媒体と接続され、
    前記アプリケーションから要求される第1のI/O要求に基づいて、前記管理情報を参照し、前記第2の論理区画を介さずに、前記第1の論理区画から前記Raw領域にアクセスし、
    前記アプリケーションから要求される第2のI/O要求に基づいて、前記管理情報を参照し、前記第1論理区画から前記第2論理区画に前記第2のI/O要求を送信し、
    前記第2論理区画が前記第2のI/O要求を受信した場合、前記RAID制御機能により前記第2のI/O要求を処理し、
    前記第2の論理区画から前記記憶媒体にアクセスする
    ことを特徴とする計算機のI/O要求処理方法。
  16. アプリケーションが動作するOS、及び第1のRAID構成情報を有するI/O制御部を備える第1の計算機と、
    第2のRAID構成情報を有するストレージ制御部を備える第2の計算機と、
    RAID領域及びRAID構成に依存しない記憶領域であるRaw領域を含む記憶媒体と
    を備える計算機システムであって、
    前記I/O制御部は、
    前記アプリケーションからI/O要求を受信し、
    前記I/O要求のアクセス先である前記RAID領域に、前記第2の計算機を介して前記記憶媒体にアクセスするか、前記ストレージ制御部を介さずに前記記憶媒体にアクセスするか、を決定し、
    前記第2の計算機を介して前記記憶媒体にアクセスする場合、前記ストレージ制御部に前記I/O要求を送信し、
    前記第2の計算機を介さずに前記記憶媒体にアクセスする場合、前記第1のRAID構成情報を用いて前記記憶媒体にアクセスし、
    前記ストレージ制御部は、
    前記I/O制御部から前記I/O要求を受信した場合、前記第1のRAID構成情報を用いて前記記憶媒体にアクセスする
    ことを特徴とする計算機システム。
  17. 請求項16記載の計算機システムであって、
    前記第1の計算機が、第1の管理情報を有し、
    前記第1の計算機が、前記第1の管理情報に基づき、前記I/O要求のアクセス先である前記RAID領域に、前記第2の計算機を介して前記記憶媒体にアクセスするか、前記ストレージ制御部を介さずに前記記憶媒体にアクセスするか、を決定し、
    前記第2の計算機が、前記第1の管理情報と同期する第2の管理情報を有する
    ことを特徴とする計算機システム。
JP2015510544A 2012-12-13 2012-12-13 ストレージデバイスの高速アクセス及びデータ保護を実現する計算機、計算機システム、及びi/o要求処理方法 Expired - Fee Related JP5996098B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/007983 WO2014091526A1 (en) 2012-12-13 2012-12-13 Computer realizing high-speed access and data protection of storage device, computer system, and i/o request processing method

Publications (2)

Publication Number Publication Date
JP2015531090A JP2015531090A (ja) 2015-10-29
JP5996098B2 true JP5996098B2 (ja) 2016-09-21

Family

ID=47521106

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015510544A Expired - Fee Related JP5996098B2 (ja) 2012-12-13 2012-12-13 ストレージデバイスの高速アクセス及びデータ保護を実現する計算機、計算機システム、及びi/o要求処理方法

Country Status (5)

Country Link
US (4) US8935448B2 (ja)
EP (1) EP2880520A1 (ja)
JP (1) JP5996098B2 (ja)
CN (1) CN104603737A (ja)
WO (1) WO2014091526A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10180809B2 (en) * 2006-05-17 2019-01-15 Richard Fetik Secure application acceleration system, methods and apparatus
US20170206091A1 (en) * 2016-01-20 2017-07-20 International Business Machines Corporation Sharing ownership of an input/output device with an existing partition
JP6786448B2 (ja) * 2017-06-28 2020-11-18 ルネサスエレクトロニクス株式会社 半導体装置
US10592155B2 (en) * 2018-04-10 2020-03-17 International Business Machines Corporation Live partition migration of virtual machines across storage ports
JP6878369B2 (ja) * 2018-09-03 2021-05-26 株式会社日立製作所 ボリューム配置管理装置、ボリューム配置管理方法、及びボリューム配置管理プログラム
CN110955382A (zh) * 2018-09-26 2020-04-03 华为技术有限公司 一种在分布式系统中写入数据的方法和装置
TWI704451B (zh) * 2019-01-02 2020-09-11 慧榮科技股份有限公司 用來進行關於容錯式磁碟陣列的動態復原管理之方法與裝置以及依據該方法來運作之儲存系統

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4012517B2 (ja) * 2003-04-29 2007-11-21 インターナショナル・ビジネス・マシーンズ・コーポレーション 仮想計算機環境におけるロックの管理
JP4933211B2 (ja) 2006-10-10 2012-05-16 株式会社日立製作所 ストレージ装置、制御装置及び制御方法
US8296337B2 (en) 2006-12-06 2012-10-23 Fusion-Io, Inc. Apparatus, system, and method for managing data from a requesting device with an empty data token directive
JP5091704B2 (ja) * 2008-02-06 2012-12-05 株式会社日立製作所 ストレージ構成回復方法及びストレージ管理システム
WO2010008707A1 (en) 2008-07-17 2010-01-21 Lsi Corporation Systems and methods for installing a bootable virtual storage appliance on a virtualized server platform
US8627312B2 (en) * 2008-08-28 2014-01-07 Netapp, Inc. Methods and systems for integrated storage and data management using a hypervisor
US9092337B2 (en) * 2011-01-31 2015-07-28 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for managing eviction of data
WO2012114384A1 (en) * 2011-02-25 2012-08-30 Hitachi, Ltd. Storage system and method of controlling the storage system

Also Published As

Publication number Publication date
US9354815B2 (en) 2016-05-31
WO2014091526A1 (en) 2014-06-19
US20140173145A1 (en) 2014-06-19
US9600185B2 (en) 2017-03-21
US20160259554A1 (en) 2016-09-08
US8935448B2 (en) 2015-01-13
EP2880520A1 (en) 2015-06-10
US20150121004A1 (en) 2015-04-30
US20150301745A1 (en) 2015-10-22
CN104603737A (zh) 2015-05-06
JP2015531090A (ja) 2015-10-29
US9075527B2 (en) 2015-07-07

Similar Documents

Publication Publication Date Title
JP5996098B2 (ja) ストレージデバイスの高速アクセス及びデータ保護を実現する計算機、計算機システム、及びi/o要求処理方法
US8886906B2 (en) System for data migration using a migration policy involving access frequency and virtual logical volumes
JP5512833B2 (ja) ストレージの仮想化機能と容量の仮想化機能との両方を有する複数のストレージ装置を含んだストレージシステム
US8639899B2 (en) Storage apparatus and control method for redundant data management within tiers
JP5502232B2 (ja) ストレージシステム、及びその制御方法
US9262087B2 (en) Non-disruptive configuration of a virtualization controller in a data storage system
JP5830599B2 (ja) 計算機システム及びその管理システム
US8578121B2 (en) Computer system and control method of the same
KR20200017363A (ko) 호스트 스토리지 서비스들을 제공하기 위한 NVMe 프로토콜에 근거하는 하나 이상의 호스트들과 솔리드 스테이트 드라이브(SSD)들 간의 관리되는 스위칭
US20140351545A1 (en) Storage management method and storage system in virtual volume having data arranged astride storage device
US9921781B2 (en) Storage system including multiple storage apparatuses and pool virtualization method
US9063661B1 (en) Automated updating of parameters and metadata in a federated storage environment
JP2020533694A (ja) クラウド・ベースのランクを使用するデータの動的再配置
US9304875B2 (en) Dynamically tracking logical units moving between input/output ports of a storage area network target
JP2015532734A (ja) 物理ストレージシステムを管理する管理システム、物理ストレージシステムのリソース移行先を決定する方法及び記憶媒体
US11768744B2 (en) Alerting and managing data storage system port overload due to host path failures
US11201788B2 (en) Distributed computing system and resource allocation method
US11481147B1 (en) Buffer allocation techniques
US11513690B2 (en) Multi-dimensional I/O service levels
US10268391B2 (en) Computer system including server storage system and management system

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160308

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160428

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160816

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160823

R150 Certificate of patent or registration of utility model

Ref document number: 5996098

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees