(57)【要約】【課題】業務停止を防止し、データ移行量とコストの低減を図る。【解決手段】本発明のストレージシステムは、移行元ストレージ装置と移行先ストレージ装置とが、重複排除機能部と、データ移行機能部と、をそれぞれ備え、データ移行処理中にストレージシステムに記憶されているデータに対する更新が行われた際に、当該更新された更新データを複数の更新データチャンクに分割し、当該更新データチャンクと同一内容のチャンクがストレージシステムに記憶されている場合には、当該更新データチャンクとしてストレージシステム内のチャンクを参照し、同一内容のチャンクが記憶されていない場合には、更新データチャンクを移行先ストレージ装置内に設けられたキャッシュメモリに記憶するデータ更新管理機能部を備える。【選択図】図１０
2018142174.tif 000002
【特許請求の範囲】
【請求項１】
移行前のデータを記憶する移行元ストレージを有する移行元ストレージ装置と、移行後のデータを記憶する移行先ストレージを有する移行先ストレージ装置と、を備えたストレージシステムであって、
前記移行元ストレージ装置及び前記移行先ストレージ装置は、
データを分割したチャンクを記憶する際に、既に記憶されている同一内容の他のチャンクを参照することによって重複記憶を排除する重複排除機能部と、
前記移行元ストレージから前記移行先ストレージにデータ移行処理を行うデータ移行機能部と、をそれぞれ備え、
前記データ移行処理中に、前記ストレージシステムに記憶されているデータに対する更新が行われた際に、当該更新された更新データを複数の更新データチャンクに分割し、当該更新データチャンクと同一内容のチャンクが前記ストレージシステムに記憶されている場合には、当該更新データチャンクとして前記ストレージシステム内のチャンクを参照し、同一内容のチャンクが記憶されていない場合には、前記更新データチャンクを前記移行先ストレージ装置内に設けられたキャッシュメモリに記憶するデータ更新管理機能部を備えた、
ストレージシステム。
【請求項２】
請求項１に記載のストレージシステムであって、
前記データ更新管理機能部は、前記更新データチャンクとして参照されているチャンクである参照チャンクが前記移行元ストレージに記憶されている場合に、前記ストレージシステム内に同一内容のチャンクが記憶されていない前記更新データチャンクを差分チャンクとして前記キャッシュメモリに記憶する、
ストレージシステム。
【請求項３】
請求項２に記載のストレージシステムであって、
前記データ更新管理機能部は、前記参照チャンクが前記移行元ストレージから前記移行先ストレージに移行された後に、前記キャッシュメモリに記憶された前記差分チャンクを前記移行先ストレージに記憶する、
ストレージシステム。
【請求項４】
請求項３に記載のストレージシステムであって、
前記データ更新管理機能部は、前記移行先ストレージ内に記憶された前記参照チャンクと前記差分チャンクとを前記更新データとしてマージする、
ストレージシステム。
【請求項５】
請求項２乃至４のいずれかに記載のストレージシステムであって、
前記データ更新管理機能部は、前記参照チャンクが前記移行先ストレージに記憶されている場合に、前記差分チャンクを前記キャッシュメモリに記憶せず、当該差分チャンクを前記移行先ストレージに記憶する、
ストレージシステム。
【請求項６】
請求項２乃至５のいずれかに記載のストレージシステムであって、
前記データ移行処理中に、前記更新データの読み出しが行われた際に、当該更新データに対応する前記参照チャンクと前記差分チャンクとを前記ストレージシステムから読み出してマージするデータ読み出し機能部を備えた、
ストレージシステム。
【請求項７】
請求項６に記載のストレージシステムであって、
前記データ読み出し機能部は、前記移行元ストレージから前記参照チャンクを読み出すと共に、前記キャッシュメモリから前記差分チャンクを読み出してマージする、
ストレージシステム。
【請求項８】
移行前のデータを記憶する移行元ストレージを有する移行元ストレージ装置と、移行後のデータを記憶する移行先ストレージを有する移行先ストレージ装置と、を備えたストレージシステムの前記移行先ストレージ装置であって、
前記移行元ストレージ装置及び前記移行先ストレージ装置は、
データを分割したチャンクを記憶する際に、既に記憶されている同一内容の他のチャンクを参照することによって重複記憶を排除し、
前記移行元ストレージから前記移行先ストレージにデータ移行処理を行うと共に、
前記移行先ストレージ装置は、
前記データ移行処理中に、前記ストレージシステムに記憶されているデータに対する更新が行われた際に、当該更新された更新データを複数の更新データチャンクに分割し、当該更新データチャンクと同一内容のチャンクが前記ストレージシステムに記憶されている場合には、当該更新データチャンクとして前記ストレージシステム内のチャンクを参照し、同一内容のチャンクが記憶されていない場合には、前記更新データチャンクを前記移行先ストレージ装置内に設けられたキャッシュメモリに記憶するデータ更新管理機能部を備えた、
移行先ストレージ装置。
【請求項９】
移行前のデータを記憶する移行元ストレージを有する移行元ストレージ装置と、移行後のデータを記憶する移行先ストレージを有する移行先ストレージ装置と、を備えたストレージシステムによる情報処理方法であって、
前記移行元ストレージ装置及び前記移行先ストレージ装置は、
データを分割したチャンクを記憶する際に、既に記憶されている同一内容の他のチャンクを参照することによって重複記憶を排除し、
前記移行元ストレージから前記移行先ストレージにデータ移行処理を行い、
前記データ移行処理中に、前記ストレージシステムに記憶されているデータに対する更新が行われた際に、当該更新された更新データを複数の更新データチャンクに分割し、当該更新データチャンクと同一内容のチャンクが前記ストレージシステムに記憶されている場合には、当該更新データチャンクとして前記ストレージシステム内のチャンクを参照し、同一内容のチャンクが記憶されていない場合には、前記更新データチャンクを前記移行先ストレージ装置内に設けられたキャッシュメモリに記憶する、
情報処理方法。
【請求項１０】
請求項９に記載の情報処理方法であって、
前記更新データチャンクとして参照されているチャンクである参照チャンクが前記移行元ストレージに記憶されている場合に、前記ストレージシステム内に同一内容のチャンクが記憶されていない前記更新データチャンクを差分チャンクとして前記キャッシュメモリに記憶する、
情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージシステムにかかり、特に、データ移行を行うストレージシステムに関する。
【背景技術】
【０００２】
近年、様々な情報サービスが、サーバや業務アプリケーションを用いて提供されている。サーバや業務アプリケーションは、利用するデータが記憶されたストレージを利用することとなるが、機器の保守や交換などに応じて、ストレージの移行が行われる。
【０００３】
ストレージを移行する方法としては、まず、ストレージを利用するサーバおよび業務アプリケーションを停止させ、ストレージに対するアクセスを一旦静止させる。その後、移行元ストレージ上のデータを移行先ストレージにコピーし、さらにサーバおよび業務アプリケーションのアクセス先を移行先ストレージに変更したうえで、アクセスを再開させることで移行が完了する。
【０００４】
ところが、上述したストレージの移行方法では、業務停止時間が発生する。このため、基幹システムの場合には、業務を停止することなくストレージのデータ移行を行う技術が求められる。
【０００５】
ここで、上述した要求への対応策として、データ移行中のアクセス要求の発行先を、移行元ストレージのデバイスノードから移行先ストレージのデバイスノードに切り替えることにより、移行中のアクセスを許容しつつ、移行元ストレージのデータを移行先ストレージへ複製する方法がある。
【０００６】
また、別の対応策として、シンプロビジョニング機能を有する２つのストレージ間のデータ移行について、データ移行中の移行先ストレージに対する書き込み要求をキャッシュメモリ上に配置し、スナップショット用差分データとして利用することでデータを高速に複製する方法がある。なお、同様に、特許文献１にも、書き込みデータをキャッシュに書き込む技術が記載されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特表平１０−５０８９６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、前者の対応策では、データの複製中に発行されたストレージ格納データに対する読み出し処理又は書き込み処理の要求は、デバイスノードを通じて移行元ストレージに対して行われる。このため、移行元ストレージで実行された書き込み処理の対象データが既に複製済みだった場合、対象データを再転送する必要があり、転送量が増加する、という問題が生じる。
【０００９】
また、後者の対応策では、既に複製済みのデータに対する更新があった場合に、データ再転送の必要はないが、更新データが膨大な場合、キャッシュメモリの容量を拡張するためのコストが増加する、という問題がある。
【００１０】
このため、本発明の目的は、上述した課題である、ストレージ間でデータ移行を行うストレージシステムにおいて、業務が停止するという問題を解決すると共に、データ移行量とコストが増加することを解決することにある。
【課題を解決するための手段】
【００１１】
本発明の一形態であるストレージシステムは、
移行前のデータを記憶する移行元ストレージを有する移行元ストレージ装置と、移行後のデータを記憶する移行先ストレージを有する移行先ストレージ装置と、を備えたストレージシステムであって、
前記移行元ストレージ装置及び前記移行先ストレージ装置は、
データを分割したチャンクを記憶する際に、既に記憶されている同一内容の他のチャンクを参照することによって重複記憶を排除する重複排除機能部と、
前記移行元ストレージから前記移行先ストレージにデータ移行処理を行うデータ移行機能部と、をそれぞれ備え、
前記データ移行処理中に、前記ストレージシステムに記憶されているデータに対する更新が行われた際に、当該更新された更新データを複数の更新データチャンクに分割し、当該更新データチャンクと同一内容のチャンクが前記ストレージシステムに記憶されている場合には、当該更新データチャンクとして前記ストレージシステム内のチャンクを参照し、同一内容のチャンクが記憶されていない場合には、前記更新データチャンクを前記移行先ストレージ装置内に設けられたキャッシュメモリに記憶するデータ更新管理機能部を備えた、
という構成をとる。
【００１２】
また、本発明の一形態である移行先ストレージ装置は、
移行前のデータを記憶する移行元ストレージを有する移行元ストレージ装置と、移行後のデータを記憶する移行先ストレージを有する移行先ストレージ装置と、を備えたストレージシステムの前記移行先ストレージ装置であって、
前記移行元ストレージ装置及び前記移行先ストレージ装置は、
データを分割したチャンクを記憶する際に、既に記憶されている同一内容の他のチャンクを参照することによって重複記憶を排除し、
前記移行元ストレージから前記移行先ストレージにデータ移行処理を行うと共に、
前記移行先ストレージ装置は、
前記データ移行処理中に、前記ストレージシステムに記憶されているデータに対する更新が行われた際に、当該更新された更新データを複数の更新データチャンクに分割し、当該更新データチャンクと同一内容のチャンクが前記ストレージシステムに記憶されている場合には、当該更新データチャンクとして前記ストレージシステム内のチャンクを参照し、同一内容のチャンクが記憶されていない場合には、前記更新データチャンクを前記移行先ストレージ装置内に設けられたキャッシュメモリに記憶するデータ更新管理機能部を備えた、
という構成をとる。
【００１３】
また、本発明の一形態である移行元ストレージ装置は、
移行前のデータを記憶する移行元ストレージを有する移行元ストレージ装置と、移行後のデータを記憶する移行先ストレージを有する移行先ストレージ装置と、を備えたストレージシステムの前記移行元ストレージ装置であって、
前記移行元ストレージ装置及び前記移行元ストレージ装置は、
データを分割したチャンクを記憶する際に、既に記憶されている同一内容の他のチャンクを参照することによって重複記憶を排除し、
前記移行元ストレージから前記移行先ストレージにデータ移行処理を行うと共に、
前記移行元ストレージ装置は、
前記データ移行処理中に、前記ストレージシステムに記憶されているデータに対する更新が行われた際に、当該更新された更新データを複数の更新データチャンクに分割し、当該更新データチャンクと同一内容のチャンクが前記ストレージシステムに記憶されている場合には、当該更新データチャンクとして前記ストレージシステム内のチャンクを参照し、同一内容のチャンクが記憶されていない場合には、前記更新データチャンクを前記移行先ストレージ装置内に設けられたキャッシュメモリに記憶するデータ更新管理機能部を備えた、
という構成をとる。
【００１４】
また、本発明の一形態であるプログラムは、
移行前のデータを記憶する移行元ストレージを有する移行元ストレージ装置と、移行後のデータを記憶する移行先ストレージを有する移行先ストレージ装置と、を備え、
前記移行元ストレージ装置及び前記移行先ストレージ装置は、データを分割したチャンクを記憶する際に、既に記憶されている同一内容の他のチャンクを参照することによって重複記憶を排除し、前記移行元ストレージから前記移行先ストレージにデータ移行処理を行うストレージシステムの前記移行先ストレージ装置に、
前記データ移行処理中に、前記ストレージシステムに記憶されているデータに対する更新が行われた際に、当該更新された更新データを複数の更新データチャンクに分割し、当該更新データチャンクと同一内容のチャンクが前記ストレージシステムに記憶されている場合には、当該更新データチャンクとして前記ストレージシステム内のチャンクを参照し、同一内容のチャンクが記憶されていない場合には、前記更新データチャンクを前記移行先ストレージ装置内に設けられたキャッシュメモリに記憶するデータ更新管理機能部、
を実現させる、
という構成をとる。
【００１５】
また、本発明の一形態であるプログラムは、
移行前のデータを記憶する移行元ストレージを有する移行元ストレージ装置と、移行後のデータを記憶する移行先ストレージを有する移行先ストレージ装置と、を備え、
前記移行元ストレージ装置及び前記移行先ストレージ装置は、データを分割したチャンクを記憶する際に、既に記憶されている同一内容の他のチャンクを参照することによって重複記憶を排除し、前記移行元ストレージから前記移行先ストレージにデータ移行処理を行うストレージシステムの前記移行元ストレージ装置に、
前記データ移行処理中に、前記ストレージシステムに記憶されているデータに対する更新が行われた際に、当該更新された更新データを複数の更新データチャンクに分割し、当該更新データチャンクと同一内容のチャンクが前記ストレージシステムに記憶されている場合には、当該更新データチャンクとして前記ストレージシステム内のチャンクを参照し、同一内容のチャンクが記憶されていない場合には、前記更新データチャンクを前記移行先ストレージ装置内に設けられたキャッシュメモリに記憶するデータ更新管理機能部、
を実現させる、
という構成をとる。
【００１６】
また、本発明の一形態である情報処理方法は、
移行前のデータを記憶する移行元ストレージを有する移行元ストレージ装置と、移行後のデータを記憶する移行先ストレージを有する移行先ストレージ装置と、を備えたストレージシステムによる情報処理方法であって、
前記移行元ストレージ装置及び前記移行先ストレージ装置は、
データを分割したチャンクを記憶する際に、既に記憶されている同一内容の他のチャンクを参照することによって重複記憶を排除し、
前記移行元ストレージから前記移行先ストレージにデータ移行処理を行い、
前記データ移行処理中に、前記ストレージシステムに記憶されているデータに対する更新が行われた際に、当該更新された更新データを複数の更新データチャンクに分割し、当該更新データチャンクと同一内容のチャンクが前記ストレージシステムに記憶されている場合には、当該更新データチャンクとして前記ストレージシステム内のチャンクを参照し、同一内容のチャンクが記憶されていない場合には、前記更新データチャンクを前記移行先ストレージ装置内に設けられたキャッシュメモリに記憶する、
という構成をとる。
【発明の効果】
【００１７】
本発明は、以上のように構成されることにより、ストレージ間でデータ移行を行うストレージシステムにおいて、業務を停止することなく、データ移行量とコストの低減を図ることができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態１における情報処理システムの構成を示すブロック図である。
【図２】図１に開示した情報処理システムによるデータ移行処理の動作を示すフローチャートである。
【図３】図１に開示した情報処理システムによるデータ更新処理の動作を示すフローチャートである。
【図４】図１に開示した情報処理システムによるデータ参照処理の動作を示すフローチャートである。
【図５】図１に開示した情報処理システムによるデータ更新処理の様子を示す図である。
【図６】図１に開示した情報処理システムによるデータ更新処理の様子を示す図である。
【図７】図１に開示した情報処理システムによるデータ更新処理の様子を示す図である。
【図８】図１に開示した情報処理システムによるデータ参照処理の様子を示す図である。
【図９】図１に開示した情報処理システムによるデータ参照処理の様子を示す図である。
【図１０】本発明の実施形態２におけるストレージシステムの構成を示すブロック図である。
【発明を実施するための形態】
【００１９】
＜実施形態１＞
本発明の第１の実施形態を、図１乃至図１０を参照して説明する。図１は、情報処理システムの構成を説明するための図である。図２乃至図９は、情報処理システムの動作を説明するための図である。
【００２０】
［構成］
本発明における情報処理システムは、業務サーバ３０と、移行元ストレージ装置１０と、移行先ストレージ装置２０と、を備えており、これらがネットワークを介して接続されている。そして、移行元ストレージ装置１０と移行先ストレージ装置２０とは、業務サーバ３０で利用するデータを、移行元ストレージ装置１０から移行先ストレージ装置２０に移行する処理を行うストレージシステム１を構成している。さらに、ストレージシステム１は、データ移行処理中にデータの更新があった場合であっても、業務を停止することなくデータの読み書きを可能とし、さらにデータ移行量とコストが増加することを抑制する、というものである。
【００２１】
上記業務サーバ３０は、演算装置と記憶装置とを備えた１台又は複数台の情報処理装置にて構成されている。そして、業務サーバ３０は、業務アプリケーション３１を演算装置で実行することにより、サービスを提供する情報処理が実行される。この業務アプリケーションで利用されるデータは、移行元ストレージ装置１０に記憶されていることとする。
【００２２】
上記移行元ストレージ装置１０は、演算装置と記憶装置とを備えた１台又は複数台の情報処理装置にて構成されている。そして、移行元ストレージ装置１０は、演算装置でプログラムが実行されることで構築された、データ参照管理機能部１１、データ復元機能部１２、データ更新管理機能部１３、重複排除機能部１４、データ移行機能部１５、を備えている。また、記憶装置は移行元ストレージ１６を形成している。
【００２３】
上記移行先ストレージ装置２０は、演算装置と記憶装置とを備えた１台又は複数台の情報処理装置にて構成されている。そして、移行先ストレージ装置２０は、上記移行元ストレージ装置１０とほぼ同様の構成を備えており、演算装置でプログラムが実行されることで構築された、データ参照管理機能部２１、データ復元機能部２２、データ更新管理機能部２３、重複排除機能部２４、データ移行機能部２５、を備えている。また、記憶装置は移行先ストレージ２６を形成している。さらに、移行先ストレージ装置２０は、キャッシュメモリ２７を備えている。
【００２４】
上記移行元ストレージ装置１０及び移行先ストレージ装置２０は、それぞれ重複排除機能部１４，２４にて重複記憶を排除する。つまり、新たにデータを格納する際に既に同一内容の他のデータが記憶されている場合には、当該同一内容の他のデータを参照することで、新たに格納するデータの実データを記憶することなく、重複記憶を排除する。
【００２５】
例えば、移行元ストレージ装置１０の重複排除機能部１４は、業務アプリケーション３１からデータの書き込み要求があると、まず、新たに記憶するデータを複数のチャンクに分割する。そして、各チャンクと同一内容の他のチャンクが、既に移行元ストレージ１６内に記憶されているかどうかを調べる。このとき、新たに記憶するチャンクのデータ内容に基づくハッシュ値を利用して、既に記憶されているか否かの判断を行う。
【００２６】
新たなデータのチャンクが移行元ストレージ１６内にまだ記憶されていない場合には、当該新たなデータのチャンクの実データを移行元ストレージ１６に記憶する。このとき、チャンクの実データの格納先は、当該チャンクのデータ内容をハッシュ計算して得られる値を利用したコンテンツアドレスにて設定する。
【００２７】
一方、重複排除機能部１４は、新たに記憶するデータのチャンクが、移行元ストレージ１６に既に記憶されている場合には、新たなチャンクの実データを移行元ストレージ１６に新たに記憶することなく、当該新たなチャンクとして、同一内容のデータを参照する。このとき、同一内容のチャンクの参照は、新たなデータを構成するチャンクの格納先として、同一内容のチャンクの格納先を表す同一のコンテンツアドレスを利用することで実現される。このようにして、データ内容が同一のチャンクは重複して記憶することなく、重複記憶を排除している。
【００２８】
また、データ参照管理機能部１１及びデータ復元機能部１２は、読み出し対象となるデータを構成する各チャンクを、移行元ストレージ１６からコンテンツアドレスを利用してそれぞれ読み出す。そして、データ参照管理機能部１１及びデータ復元機能部１２は、全てのチャンクをマージして読み出し対象となるデータを復元して読み出す。
【００２９】
なお、上記では、移行元ストレージ装置１０の重複排除機能部１４、データ参照管理機能部１１、データ復元機能部１２の構成を説明したが、移行先ストレージ装置２０に装備されている同一名称の各機能部１４，１１，１２も同様に、重複排除機能とこれに伴うデータ読み出し機能を有する。
【００３０】
また、移行元ストレージ装置１０及び移行先ストレージ装置２０が備えるデータ移行機能部１５，２５は、協働して、移行元ストレージ１６に記憶されている業務アプリケーション３１で利用されるデータを、移行先ストレージ２６に移行する処理を行う。
【００３１】
そして、上記データ移行機能部１５，２５によるデータ移行処理中に、データの書き込み要求、特に、データを更新する要求があった場合には、移行先ストレージ装置２０のデータ更新管理機能部２３及び重複排除機能部２４（データ更新管理機能部）は、以下のように作動する。なお、以下では、データ更新要求が移行先ストレージ装置２０に対して行われた場合を示しているが、データ更新要求が移行元ストレージ装置１０に対して行われた場合には、当該移行元ストレージ装置１０のデータ更新管理機能部１３及び重複排除機能部１４が同様に作動する。
【００３２】
データ更新管理機能部２３及び重複排除機能部２４は、データ移行処理中に、ストレージシステム１に記憶されているデータに対する更新が行われた際には、まず、更新された更新データ自体を複数の更新データチャンクに分割する。そして、更新データチャンクのハッシュ値を計算して、当該ハッシュ値を用いて、更新データチャンクと同一内容のチャンクが既にストレージシステム１内に記憶されているか否かを調べる。
【００３３】
更新データを分割した更新データチャンクのうち、同一内容のチャンクが既にストレージシステム１内に記憶されている場合には、当該更新データチャンクの実データは新たにストレージシステム１内に記憶しない。そして、更新データチャンクとして、既にストレージシステム１内に記憶されている同一内容の他のチャンクを参照する。なお、更新データチャンクとして参照する他のチャンクを、参照チャンクと呼ぶこととする。
【００３４】
このとき、参照チャンクがデータ移行前であり移行元ストレージ１６内に存在する場合には、当該移行元ストレージ１６内の参照チャンクを更新データチャンクとして参照するようにする。一方、参照チャンクがデータ移行後であり移行先ストレージ２６内に存在する場合には、当該移行先ストレージ２６内の参照チャンクを更新データチャンクとして参照するようにする。なお、このように参照チャンクを参照する更新データチャンクは、更新される前の更新データと同一のチャンク部分で起こりうる。
【００３５】
一方、更新データチャンクのうち、同一内容のチャンクがストレージシステム１内に格納されてない更新データチャンクについては、以下のようにして移行先ストレージ装置２０に記憶する。なお、このような更新データチャンクは、更新データに対する更新された後の差分データ部分に該当しうるため、かかるチャンクを差分チャンクと呼ぶ。
【００３６】
具体的に、データ更新管理機能部２３及び重複排除機能部２４は、差分チャンクの分割元となる更新データを構成する他の更新データチャンクとして参照した上記参照チャンクが、移行元ストレージ１６内に記憶されている場合には、差分チャンクをキャッシュメモリ２７に記憶する。そして、参照チャンクが移行元ストレージ１６から移行先ストレージ２６に移行された後に、キャッシュメモリ２７に記憶された差分チャンクを移行先ストレージ２６に記憶する。このとき、移行先ストレージ２６に移行された参照チャンクと、キャッシュメモリ２７から移行先ストレージ２６に記憶した差分チャンクと、を更新データとしてマージする。
【００３７】
なお、データ更新管理機能部２３及び重複排除機能部２４は、上記参照チャンクが移行先ストレージ２６内に既に移行されて記憶されている場合には、差分チャンクをキャッシュメモリ２７に記憶せず、移行先ストレージ２６に記憶する。このとき、移行先ストレージ２６に移行されている参照チャンクと、移行先ストレージ２６に記憶した差分チャンクと、を更新データとしてマージする。
【００３８】
また、上記データ移行機能部１５，２５によるデータ移行処理中に、上述したようにデータ更新があり、さらに、かかる更新データに対する参照要求があった場合には、移行先ストレージ装置２０のデータ参照管理機能部２１及びデータ復元機能部２２（データ読み出し機能部）は、以下のように作動する。なお、以下では、データ参照要求が移行先ストレージ装置２０に対して行われた場合を示しているが、データ参照要求が移行元ストレージ装置１０に対して行われた場合には、当該移行元ストレージ装置１０のデータ参照管理機能部１１及びデータ復元機能部１２が同様に作動する。
【００３９】
データ参照管理機能部２１は、まず、参照対象である更新データを、当該更新データを構成する更新データチャンク毎に読み出す。つまり、更新データチャンクである参照チャンクと差分チャンクとをストレージシステム１内から読み出す。そして、データ復元機能部２２が、読み出した参照チャンクと差分チャンクとを更新データとしてマージする。
【００４０】
データ参照管理機能部２１は、更新データチャンクを読み出す際に、上述した参照チャンクが移行元ストレージ１６内に記憶されている場合には、当該移行元ストレージ１６から参照チャンクを読み出し、移行先ストレージ装置２０内のキャッシュメモリ２７から差分チャンクを読み出す。なお、参照チャンクが移行先ストレージ２６内に記憶されている場合には、差分チャンクも移行先ストレージ２６内に記憶されているため、当該移行先ストレージ２６から参照チャンクと差分チャンクとを読み出す。
【００４１】
［動作］
次に、上述した構成の情報処理システムの動作を、図２乃至図４のフローチャート、及び、図５乃至図９の図を参照して説明する。なお、以下では、データ移行処理、データ更新処理、データ参照処理、に分けて説明する。
【００４２】
＜データ移行処理＞
まず、図２を参照して、業務サーバ３０上の業務アプリケーション３１から移行元ストレージ装置１０に対してデータ移行を要求し、移行元ストレージ１６のデータを移行先ストレージ２６に移行するときの動作を説明する。
【００４３】
移行元ストレージ装置１０のデータ移行機能部１５は、業務サーバ３０上の業務アプリケーション３０からデータ移行要求を受信し（ステップＳ１）、移行先ストレージ装置２０の接続確認を行う（ステップＳ２）。接続が確立できなかった場合は（ステップＳ３でＹｅｓ）、処理を終了し、結果（移行不可）を業務アプリケーション３１へ返却する（ステップＳ９）。
【００４４】
移行先ストレージ装置２０と接続可能な場合（ステップＳ３でＮｏ）、移行対象データの容量を確認し（ステップＳ４）、移行先ストレージ２６の空き容量を超過しないか確認する（ステップＳ５）。移行先ストレージ２６の容量を超過していた場合は（ステップＳ５でＹｅｓ）、処理を終了し、結果（移行不可）を業務アプリケーションへ返却する（ステップＳ９）。
【００４５】
移行対象データの容量が移行先ストレージ２６の容量を超過しない場合は（ステップＳ５でＮｏ）、見かけ上、移行先ストレージ２６上に移行対象データが存在するように、移行元ストレージ１６のディスクイメージを作成する（ステップＳ６）。そして、その結果（移行完了）を業務アプリケーション３１へ返却し（ステップＳ７）、移行元ストレージ１６上に存在する実際のデータの転送を、バックグラウンドで開始する（ステップＳ８）。以降、業務アプリケーション３１は、移行先ストレージ２６に対して更新／参照を行う。
【００４６】
＜データ移行中（バックグラウンド処理）のデータ更新処理＞
次に、図３、図５乃至図７を参照して、上述したデータ移行中（バックグラウンド処理）にデータ更新処理が行われたときの動作を説明する。
【００４７】
移行先ストレージ装置２０のデータ更新管理機能部２３は、業務サーバ３０上の業務アプリケーション３１からデータ更新要求を受信する（ステップＳ１１）。すると、重複排除機能部２４は、更新データを更新データチャンクに分割して（ステップＳ１２）、各更新データチャンクのハッシュ値を計算する（ステップＳ１３）。そして、ハッシュテーブルを元に既にストレージシステム１内に格納されているか、重複判定を行う（ステップＳ１４）。
【００４８】
続いて、更新データチャンクがストレージシステム１内のチャンクと重複していると判断した場合には、かかる更新データチャンクの実データを書き込みすることなく、ストレージシステム１内の同一内容のチャンクである参照チャンクを参照する。このとき、全ての更新データチャンクが重複している場合には（ステップＳ１５でＹｅｓ）、全ての更新データチャンクとしてストレージシステム１内の参照チャンクを参照して、上位に更新完了を返却する（ステップＳ２２）。
【００４９】
また、更新データチャンクのうち、一部の更新データチャンクのみストレージシステム１内のチャンクと重複している場合には、重複している更新データチャンクのみ、ストレージシステム１内の参照チャンクを参照する。一方で、更新データチャンクのうち、重複していないと判断されたユニークなチャンクは、差分チャンクとして、移行先ストレージ装置２０内に記憶する。
【００５０】
具体的に、重複している更新データチャンクとして参照させた参照チャンクが、既に移行先ストレージ２６へ転送済みだった場合には（ステップＳ１６でＹｅｓ）、差分チャンクを移行先ストレージ２６に記憶し、参照チャンクと差分チャンクとを更新データとしてマージする（ステップＳ１７）。なお、このときの様子を図７に示す。符号ａ，ｂ，ｃが参照チャンクであり、符号ｄ，ｅが差分チャンクである。
【００５１】
一方、参照チャンクがまだ移行先に転送されておらず、移行元ストレージ１６上に存在している場合には（ステップＳ１６でＮｏ、ステップＳ１８、ステップＳ１９でＮｏ）、差分チャンクを移行先ストレージ装置２０のキャッシュメモリ２７に記憶する（ステップＳ２０）。そして、更新完了を返却する（ステップＳ２２）。なお、このときの様子を図５に示す。
【００５２】
その後、参照データが移行先ストレージ２６へ転送完了後、キャッシュメモリ２７内の差分チャンクを移行先ストレージ２６に記憶する。そして、転送後の参照データと差分チャンクとを、更新データとしてマージする。このときの様子を図６に示す。なお、移行元ストレージ装置１０に接続できず（ステップＳ１８、ステップＳ１９でＹｅｓ）、参照チャンクが移行元ストレージ１６に存在していることを確認できない場合には、結果（接続不可）を上位に通知する（ステップＳ２１）。
【００５３】
＜データ移行中（バックグラウンド処理）のデータ参照処理＞
次に、図４、図８、図９を参照して、上述したデータ移行中（バックグラウンド処理）に、更新データの参照処理が行われたときの動作を説明する。
【００５４】
移行先ストレージ装置２０のデータ参照管理機能部２１は、業務サーバ３０上の業務アプリケーション３１からデータ参照要求を受信する（ステップＳ３１）。すると、データ参照管理機能部２１は、参照対象データをチャンク毎に読み出す。
【００５５】
このとき、各チャンクの中で、既に移行元ストレージ１６から移行先ストレージ２６に転送されているチャンクがあるかを確認する（ステップＳ３２）。つまり、参照対象データである更新データうち、上述した参照チャンクについては、移行先ストレージ２６に移行済みであるかどうかを確認する。参照対象データを構成する参照チャンクが移行先ストレージ２６に移行済みである場合には（ステップＳ３２でＹｅｓ）、既に移行先ストレージ２６内で差分チャンクもマージされているため、当該移行先ストレージ２６上から各チャンクを読み出して（ステップＳ３３）、参照対象データである更新データを読み出す。その後、参照結果を業務アプリケーション３１へ返却する（ステップＳ４０）。このときの様子を図９に示す。
【００５６】
一方、参照対象データである更新データを構成するチャンクの中で、まだ移行元ストレージ１６上に存在する参照チャンクについては（ステップＳ３２でＮｏ）、移行元ストレージの接続確認を行い（ステップＳ３４）、接続されていれば（ステップＳ３５でＮｏ）、移行元ストレージ１６から参照チャンクを読み出す（ステップＳ３７）。なお、移行元ストレージ装置１０に接続できない場合には（ステップＳ３４、ステップＳ３５でＹｅｓ）、結果（接続不可）を上位に通知する（ステップＳ３６）。
【００５７】
そして、データ復元機能部２２は、移行元ストレージ１６上から読み込んだ参照チャンクに対する差分情報つまり差分チャンクが存在しているかを確認する。そして、差分チャンクが存在している場合には（ステップＳ３８でＹｅｓ）、当該差分チャンクを移行先ストレージ装置２０のキャッシュメモリ２７内から読み出し、移行元ストレージ１６から読み込んだ参照チャンクとマージする（ステップＳ３９）。そして、参照結果を業務アプリケーションへ返却する（ステップＳ４０）。
【００５８】
以上のように、本発明では、まず、データ移行処理は、見かけ上、移行先ストレージ２６上に移行対象データが存在するように、移行元ストレージ１６のディスクイメージを作成している。そして、業務アプリケーション３１へ即時移行完了を返却させ、実際のデータ転送をバックグラウンド処理で行っているため、業務停止することなくデータ移行が可能となる。
【００５９】
また、データ移行中にデータの更新があった場合には、更新データをチャンク（更新データチャンク）に分割し、重複するチャンクについては参照し、非重複の差分チャンクは、移行先ストレージ２６のキャッシュメモリ２７に記憶する。そしてその後、重複する参照チャンクが移行元ストレージ１６から移行先ストレージ２６に移行完了後に、差分チャンクをキャッシュメモリから移行先ストレージ２６に反映させる。また、データ参照時にも、キャッシュメモリから差分チャンクを参照可能としている。
【００６０】
このため、移行元ストレージ１６と移行先ストレージ２６間のネットワークに流れるデータ量を極力減らすことができ、バックグラウンドのデータ移行のデータ通信に影響を与えることなく、データ更新可能である。また、重複排除によりキャッシュメモリに記憶するデータ容量を低減でき、当該キャッシュメモリを効率よく利用することができる。
【００６１】
このように、本発明によると、データ移行中にデータの更新、参照要求が行われた場合であっても、データ転送処理に影響なく、データ更新及び参照処理が可能となる。
【００６２】
＜実施形態２＞
次に、本発明の第２の実施形態を、図１０を参照して説明する。図１０は、実施形態２におけるストレージシステムの構成を示すブロック図である。なお、本実施形態におけるストレージシステムは、実施形態１で説明したストレージシステムの構成の概略を示している。
【００６３】
図１０に示すように、本実施形態おけるストレージシステムは、
移行前のデータを記憶する移行元ストレージを有する移行元ストレージ装置１００と、移行後のデータを記憶する移行先ストレージを有する移行先ストレージ装置１１０と、を備えている。
前記移行元ストレージ装置１００及び前記移行先ストレージ装置１１０は、
データを分割したチャンクを記憶する際に、既に記憶されている同一内容の他のチャンクを参照することによって重複記憶を排除する重複排除機能部１０１，１１１と、
前記移行元ストレージから前記移行先ストレージにデータ移行処理を行うデータ移行機能部１０２，１１２と、をそれぞれ備えている。
【００６４】
そしてさらに、情報処理システムは、
前記データ移行処理中に、前記ストレージシステムに記憶されているデータに対する更新が行われた際に、当該更新された更新データを複数の更新データチャンクに分割し、当該更新データチャンクと同一内容のチャンクが前記ストレージシステムに記憶されている場合には、当該更新データチャンクとして前記ストレージシステム内のチャンクを参照し、同一内容のチャンクが記憶されていない場合には、前記更新データチャンクを前記移行先ストレージ装置１１０内に設けられたキャッシュメモリ１１３に記憶するデータ更新管理機能部１２０を備える。
【００６５】
上記構成のストレージシステムによると、データ移行中のデータ更新であっても、更新データをチャンクに分割して重複排除を行い、非重複チャンクはキャッシュメモリに記憶しておく。このため、ネットワークやキャッシュメモリといったリソースを効率よく利用して、データ移行の業務を停止することなく、データ更新が可能となる。
【００６６】
＜付記＞
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明におけるストレージシステム、移行先ストレージ装置、移行元ストレージ装置、プログラム、情報処理方法の構成の概略を説明する。但し、本発明は、以下の構成に限定されない。
【００６７】
（付記１）
移行前のデータを記憶する移行元ストレージを有する移行元ストレージ装置と、移行後のデータを記憶する移行先ストレージを有する移行先ストレージ装置と、を備えたストレージシステムであって、
前記移行元ストレージ装置及び前記移行先ストレージ装置は、
データを分割したチャンクを記憶する際に、既に記憶されている同一内容の他のチャンクを参照することによって重複記憶を排除する重複排除機能部と、
前記移行元ストレージから前記移行先ストレージにデータ移行処理を行うデータ移行機能部と、をそれぞれ備え、
前記データ移行処理中に、前記ストレージシステムに記憶されているデータに対する更新が行われた際に、当該更新された更新データを複数の更新データチャンクに分割し、当該更新データチャンクと同一内容のチャンクが前記ストレージシステムに記憶されている場合には、当該更新データチャンクとして前記ストレージシステム内のチャンクを参照し、同一内容のチャンクが記憶されていない場合には、前記更新データチャンクを前記移行先ストレージ装置内に設けられたキャッシュメモリに記憶するデータ更新管理機能部を備えた、
ストレージシステム。
【００６８】
（付記２）
付記１に記載のストレージシステムであって、
前記データ更新管理機能部は、前記更新データチャンクとして参照されているチャンクである参照チャンクが前記移行元ストレージに記憶されている場合に、前記ストレージシステム内に同一内容のチャンクが記憶されていない前記更新データチャンクを差分チャンクとして前記キャッシュメモリに記憶する、
ストレージシステム。
【００６９】
（付記３）
付記２に記載のストレージシステムであって、
前記データ更新管理機能部は、前記参照チャンクが前記移行元ストレージから前記移行先ストレージに移行された後に、前記キャッシュメモリに記憶された前記差分チャンクを前記移行先ストレージに記憶する、
ストレージシステム。
【００７０】
（付記４）
付記３に記載のストレージシステムであって、
前記データ更新管理機能部は、前記移行先ストレージ内に記憶された前記参照チャンクと前記差分チャンクとを前記更新データとしてマージする、
ストレージシステム。
【００７１】
（付記５）
付記２乃至４のいずれかに記載のストレージシステムであって、
前記データ更新管理機能部は、前記参照チャンクが前記移行先ストレージに記憶されている場合に、前記差分チャンクを前記キャッシュメモリに記憶せず、当該差分チャンクを前記移行先ストレージに記憶する、
ストレージシステム。
【００７２】
（付記６）
付記２乃至５のいずれかに記載のストレージシステムであって、
前記データ移行処理中に、前記更新データの読み出しが行われた際に、当該更新データに対応する前記参照チャンクと前記差分チャンクとを前記ストレージシステムから読み出してマージするデータ読み出し機能部を備えた、
ストレージシステム。
【００７３】
（付記７）
付記６に記載のストレージシステムであって、
前記データ読み出し機能部は、前記移行元ストレージから前記参照チャンクを読み出すと共に、前記キャッシュメモリから前記差分チャンクを読み出してマージする、
ストレージシステム。
【００７４】
（付記８）
移行前のデータを記憶する移行元ストレージを有する移行元ストレージ装置と、移行後のデータを記憶する移行先ストレージを有する移行先ストレージ装置と、を備えたストレージシステムの前記移行先ストレージ装置であって、
前記移行元ストレージ装置及び前記移行先ストレージ装置は、
データを分割したチャンクを記憶する際に、既に記憶されている同一内容の他のチャンクを参照することによって重複記憶を排除し、
前記移行元ストレージから前記移行先ストレージにデータ移行処理を行うと共に、
前記移行先ストレージ装置は、
前記データ移行処理中に、前記ストレージシステムに記憶されているデータに対する更新が行われた際に、当該更新された更新データを複数の更新データチャンクに分割し、当該更新データチャンクと同一内容のチャンクが前記ストレージシステムに記憶されている場合には、当該更新データチャンクとして前記ストレージシステム内のチャンクを参照し、同一内容のチャンクが記憶されていない場合には、前記更新データチャンクを前記移行先ストレージ装置内に設けられたキャッシュメモリに記憶するデータ更新管理機能部を備えた、
移行先ストレージ装置。
【００７５】
（付記８．１）
移行前のデータを記憶する移行元ストレージを有する移行元ストレージ装置と、移行後のデータを記憶する移行先ストレージを有する移行先ストレージ装置と、を備えたストレージシステムの前記移行元ストレージ装置であって、
前記移行元ストレージ装置及び前記移行元ストレージ装置は、
データを分割したチャンクを記憶する際に、既に記憶されている同一内容の他のチャンクを参照することによって重複記憶を排除し、
前記移行元ストレージから前記移行先ストレージにデータ移行処理を行うと共に、
前記移行元ストレージ装置は、
前記データ移行処理中に、前記ストレージシステムに記憶されているデータに対する更新が行われた際に、当該更新された更新データを複数の更新データチャンクに分割し、当該更新データチャンクと同一内容のチャンクが前記ストレージシステムに記憶されている場合には、当該更新データチャンクとして前記ストレージシステム内のチャンクを参照し、同一内容のチャンクが記憶されていない場合には、前記更新データチャンクを前記移行先ストレージ装置内に設けられたキャッシュメモリに記憶するデータ更新管理機能部を備えた、
移行元ストレージ装置。
【００７６】
（付記８．２）
移行前のデータを記憶する移行元ストレージを有する移行元ストレージ装置と、移行後のデータを記憶する移行先ストレージを有する移行先ストレージ装置と、を備え、
前記移行元ストレージ装置及び前記移行先ストレージ装置は、データを分割したチャンクを記憶する際に、既に記憶されている同一内容の他のチャンクを参照することによって重複記憶を排除し、前記移行元ストレージから前記移行先ストレージにデータ移行処理を行うストレージシステムの前記移行先ストレージ装置に、
前記データ移行処理中に、前記ストレージシステムに記憶されているデータに対する更新が行われた際に、当該更新された更新データを複数の更新データチャンクに分割し、当該更新データチャンクと同一内容のチャンクが前記ストレージシステムに記憶されている場合には、当該更新データチャンクとして前記ストレージシステム内のチャンクを参照し、同一内容のチャンクが記憶されていない場合には、前記更新データチャンクを前記移行先ストレージ装置内に設けられたキャッシュメモリに記憶するデータ更新管理機能部、
を実現させるためのプログラム。
【００７７】
（付記８．３）
移行前のデータを記憶する移行元ストレージを有する移行元ストレージ装置と、移行後のデータを記憶する移行先ストレージを有する移行先ストレージ装置と、を備え、
前記移行元ストレージ装置及び前記移行先ストレージ装置は、データを分割したチャンクを記憶する際に、既に記憶されている同一内容の他のチャンクを参照することによって重複記憶を排除し、前記移行元ストレージから前記移行先ストレージにデータ移行処理を行うストレージシステムの前記移行元ストレージ装置に、
前記データ移行処理中に、前記ストレージシステムに記憶されているデータに対する更新が行われた際に、当該更新された更新データを複数の更新データチャンクに分割し、当該更新データチャンクと同一内容のチャンクが前記ストレージシステムに記憶されている場合には、当該更新データチャンクとして前記ストレージシステム内のチャンクを参照し、同一内容のチャンクが記憶されていない場合には、前記更新データチャンクを前記移行先ストレージ装置内に設けられたキャッシュメモリに記憶するデータ更新管理機能部、
を実現させるためのプログラム。
【００７８】
（付記９）
移行前のデータを記憶する移行元ストレージを有する移行元ストレージ装置と、移行後のデータを記憶する移行先ストレージを有する移行先ストレージ装置と、を備えたストレージシステムによる情報処理方法であって、
前記移行元ストレージ装置及び前記移行先ストレージ装置は、
データを分割したチャンクを記憶する際に、既に記憶されている同一内容の他のチャンクを参照することによって重複記憶を排除し、
前記移行元ストレージから前記移行先ストレージにデータ移行処理を行い、
前記データ移行処理中に、前記ストレージシステムに記憶されているデータに対する更新が行われた際に、当該更新された更新データを複数の更新データチャンクに分割し、当該更新データチャンクと同一内容のチャンクが前記ストレージシステムに記憶されている場合には、当該更新データチャンクとして前記ストレージシステム内のチャンクを参照し、同一内容のチャンクが記憶されていない場合には、前記更新データチャンクを前記移行先ストレージ装置内に設けられたキャッシュメモリに記憶する、
情報処理方法。
【００７９】
（付記１０）
付記９に記載の情報処理方法であって、
前記更新データチャンクとして参照されているチャンクである参照チャンクが前記移行元ストレージに記憶されている場合に、前記ストレージシステム内に同一内容のチャンクが記憶されていない前記更新データチャンクを差分チャンクとして前記キャッシュメモリに記憶する、
情報処理方法。
【００８０】
（付記１１）
付記１０に記載の情報処理方法であって、
前記参照チャンクが前記移行元ストレージから前記移行先ストレージに移行された後に、前記キャッシュメモリに記憶された前記差分チャンクを前記移行先ストレージに記憶する、
情報処理方法。
【００８１】
（付記１２）
付記１１に記載の情報処理方法であって、
前記移行先ストレージ内に記憶された前記参照チャンクと前記差分チャンクとを前記更新データとしてマージする、
情報処理方法。
【００８２】
（付記１３）
付記１０乃至１２のいずれかに記載の情報処理方法であって、
前記参照チャンクが前記移行先ストレージに記憶されている場合に、前記差分チャンクを前記キャッシュメモリに記憶せず、当該差分チャンクを前記移行先ストレージに記憶する、
情報処理方法。
【００８３】
（付記１４）
付記１０乃至１３のいずれかに記載の情報処理方法であって、
前記データ移行処理中に、前記更新データの読み出しが行われた際に、当該更新データに対応する前記参照チャンクと前記差分チャンクとを前記ストレージシステムから読み出してマージする、
情報処理方法。
【００８４】
（付記１５）
付記１４に記載の情報処理方法であって、
前記移行元ストレージから前記参照チャンクを読み出すと共に、前記キャッシュメモリから前記差分チャンクを読み出してマージする、
情報処理方法。
【００８５】
なお、上述したプログラムは、記憶装置に記憶されていたり、コンピュータが読み取り可能な記録媒体に記録されている。例えば、記録媒体は、フレキシブルディスク、光ディスク、光磁気ディスク、及び、半導体メモリ等の可搬性を有する媒体である。
【００８６】
以上、上記実施形態等を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明の範囲内で当業者が理解しうる様々な変更をすることができる。
【符号の説明】
【００８７】
１  ストレージシステム
１０  移行元ストレージ装置
１１  データ参照管理機能部
１２  データ復元機能部
１３  データ更新管理機能部
１４  重複排除機能部
１５  データ移行機能部
１６  移行元ストレージ
２０  移行先ストレージ装置
２１  データ参照管理機能部
２２  データ復元機能部
２３  データ更新管理機能部
２４  重複排除記憶部
２５  データ移行機能部
２６  移行先ストレージ
２７  キャッシュメモリ
３０  業務サーバ
３１  業務アプリケーション
１００  移行元ストレージ装置
１０１  重複排除機能部
１０２  データ移行機能部
１１０  移行先ストレージ装置
１１１  重複排除機能部
１１２  データ移行機能部
１１３  キャッシュメモリ
１２０  データ更新管理機能部
【図１】
2018142174.tif 000003
【図２】
2018142174.tif 000004
【図３】
2018142174.tif 000005
【図４】
2018142174.tif 000006
【図５】
2018142174.tif 000007
【図６】
2018142174.tif 000008
【図７】
2018142174.tif 000009
【図８】
2018142174.tif 000010
【図９】
2018142174.tif 000011
【図１０】
2018142174.tif 000012