JP5756379B2 - データ転送システム、転送元システム及び転送先システム並びにプログラム - Google Patents
データ転送システム、転送元システム及び転送先システム並びにプログラム Download PDFInfo
- Publication number
- JP5756379B2 JP5756379B2 JP2011204805A JP2011204805A JP5756379B2 JP 5756379 B2 JP5756379 B2 JP 5756379B2 JP 2011204805 A JP2011204805 A JP 2011204805A JP 2011204805 A JP2011204805 A JP 2011204805A JP 5756379 B2 JP5756379 B2 JP 5756379B2
- Authority
- JP
- Japan
- Prior art keywords
- transfer
- data
- file
- virtual machine
- information
- 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.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
図1に、実施例に係るデータ転送システムのネットワーク構成例を説明する。なお、以下の説明では、データの転送元となるコンピュータシステムを転送元システムと呼び、データの転送先となるコンピュータシステムを転送先システムと呼ぶ。
実施例と従来例との違いを明らかにするために、まず、高速ファイル転送技術の従来例を説明する。
図4に、実施例に係る高速ファイル転送技術の具体例を示す。図4も、本社(16)から海外事業所1(32)に対し、仮想マシンのイメージを高速転送する場合に使用するファイル転送技術の概要を表している。
図5に、本実施例に係る転送元システムに実装されるプログラムの構成例を示す。転送元である本社(16)の端末(211)には、オペレーティングシステム(501)、仮想マシンマウントプログラム(502)、データ抽出プログラム(503)がインストールされている。
図6に、本実施例に係る転送先システムに実装されるプログラムの構成例を示す。転送先である海外事業所1(32)の端末(212)には、オペレーティングシステム(601)、仮想マシンマウントプログラム(602)、仮想マシン構成プログラム(603)、モジュール抽出プログラム(604)がインストールされている。
図7に、仮想マシンメタ情報(504)の構成例を示す。仮想マシンメタ情報(504)は、仮想マシンイメージのヘッダ部に登録されている情報を抽出したファイルであり、仮想マシンの雛型を構築する場合に用いられる。
図8に、空きクラスタビットマップ(505)の構成例を示す。空きクラスタビットマップ(505)は、仮想マシンイメージにおける仮想ディスクのビットマップ情報を抽出したファイルである。ビットマップ情報とは、ディスク上における各クラスタの利用状況を表すデータであり、ビット値の「1」はクラスタの使用中を示し、ビット値の「0」はクラスタが未使用であることを示している。図8の場合、仮想ディスクの先頭から192クラスタ(=8×24)までが使用中、その後24クラスタ(8*3)が未使用であることを示している。
図9に、ファイルハッシュ表(506)の構成例を示す。ファイルハッシュ表(506)は、仮想マシンイメージにおける仮想ディスク内にあるファイルのハッシュ値の情報を抽出したファイルであり、転送の必要があるファイルの判別に用いられる。図9は、“AUTOEXEC.BAT”というファイルのハッシュ値が“0f3a597266321ba”であることを示している。
図10に、ファイルクラスタ表(507)の構成例を示す。ファイルクラスタ表(507)は、仮想マシンイメージにおける仮想ディスク内にあるファイルのクラスタ情報(ファイルがどのクラスタに格納されているか)を抽出したファイルであり、転送の必要があるファイルの判別に用いられる。図10は、“bootfont.bin”というファイルが、“35164”クラスタから、”33”クラスタ長分格納されていることを示している。
図11に、転送クラスタビットマップ(508)の構成例を示す。転送クラスタビットマップ(508)は、仮想マシンイメージにおける仮想ディスクで、転送の必要なクラスタのビットマップ情報を抽出したファイルであり、ビット値の「1」は転送の必要なクラスタを示し、ビット値の「0」は転送不要なクラスタであることを示している。図11は、仮想ディスクの先頭から136クラスタ(8*17)までは転送が必要であるが、それ以外のクラスタは転送の必要がないことを示している。特に、図中の太字で示した斜体文字部分は、使用中のクラスタであり、転送の必要がないものを示している。
図12に、転送データ(509)の構成例を示す。転送データ(509)は、転送が必要なクラスタのデータを1ファイルにまとめたファイルである。
図13に、モジュールハッシュ表(605)の構成例を示す。モジュールハッシュ表(605)は、モジュールDB(606)のキャッシュ情報(どのモジュールがキャッシュされているか)を転送元と共有するために、キャッシュDB内のファイルのハッシュ値をリスト化したファイルである。なお、本実施例ではハッシュ値を用いているが、モジュールの特定が可能であればその他の情報を用いてもよい。
図14に、モジュールDB(606)の構成例を示す。モジュールDB(606)は、モジュールファイルのハッシュ値と実データをデータベース化したものである。本実施例では、“AAA.sys” というファイルが、ハッシュ値“da39a3ee5e6b4b0d3255bfef95601890afd80709”を持ち、データが“4d 5a 90 00 03 00 00 00 04 00 00 00 ff ff 00 00 … 0e 1f ba 0e 00 b4 09 cd 21 b8 01 4c cd 21 54 68”であることを示している。
以下、本実施例を構成する各部において実行される処理の流れをフローチャートを用いて具体的に説明する。
図15に、仮想マシンマウントプログラムの処理内容をフローチャートで示す。仮想マシンマウントプログラム(502、602)は、仮想マシンマウント要求を待ち(ステップ1501)、仮想マシンマウント要求を受信すると(ステップ1502)、仮想マシンイメージをローカルファイルシステムのボリュームとしてマウントする(ステップ1503)。
図16に、データ抽出プログラム(503)の処理内容をフローチャートで示す。本実施例における仮想マシンイメージの転送は、図17に示す仮想マシン基本情報抽出処理(ステップ1601)、図18に示す転送データ抽出処理(ステップ1602)の後、開始される。仮想マシンイメージの転送は、ステップ1601及び1602の生成データである、仮想マシンメタ情報(504)、空きクラスタビットマップ(505)、ファイルハッシュ表(506)、ファイルクラスタ表(507)、転送クラスタビットマップ(508)、転送データ(509)の転送により実行される。
図17に、ステップ1601として実行される仮想マシン基本情報抽出処理の詳細内容を示す。最初に、データ抽出プログラム(503)は、転送先システムに対し、モジュールハッシュ表(605)の転送を要求する(ステップ1701)。
図18に、ステップ1602として実行される転送データ抽出処理の詳細内容を示す。最初に、データ抽出プログラム(503)は、空きクラスタビットマップ(505)を転送クラスタビットマップ(508)にコピーする(ステップ1801)。
図19に、仮想マシン構成プログラム(603)によるモジュールハッシュ表転送処理のフローチャートを示す。仮想マシン構成プログラム(603)は、転送元システムからのモジュールハッシュ表(605)の転送要求の受信を待ち受ける(ステップ1901)。仮想マシン構成プログラム(603)は、モジュールハッシュ表転送を受信すると(ステップ1902)、モジュールハッシュ表(605)を仮想マシンイメージの転送元システムに送信する(ステップ1903)。
図20に、仮想マシン構成プログラム(603)により実行される仮想マシン作成処理の詳細内容を示す。最初に、仮想マシン構成プログラム(603)は、仮想マシンメタ情報(504)を入力し、仮想マシンの雛型を作成する(ステップ2001)。
図21に、モジュール抽出プログラム(604)の処理内容をフローチャートで示す。モジュール抽出プログラム(604)は、最初に、仮想マシンマウントプログラム(602)に、アプリケーション・ソフトウェア、ミドル・ソフトウェア、OSのインストール媒体やマスタとなる仮想マシンイメージを、ローカルファイルシステムのボリュームとしてマウントすることを要求する処理を実行する(ステップ2101)。
以上説明したように、本実施例に係る転送先システムには、任意の仮想マシンにおいて共通に使用されるアプリケーション・ソフトウェア、ミドル・ソフトウェア、OSの構成ファイル(402)等のファイルが予めファイル単位でキャッシュされ、転送先システム内で管理されている。なお、キャッシュデータのファイルを共通に利用する仮想マシンの数が多いほど、仮想マシンの転送に利用するキャッシュデータの数が少なく済む。もっとも、転送先システムが転送時点でキャッシュしているファイルを、本実施例におけるキャッシュデータと考えてもよい。
Claims (5)
- ネットワーク経由で接続された転送元システムと転送先システムで構成されるデータ転送システムにおいて、
前記転送元システムは、転送する仮想マシンイメージを構成する第1のビットマップと、前記仮想マシンイメージにおける仮想ディスク内にあるファイルのハッシュ値と、前記仮想ディスク内のクラスタと前記ファイルとの対応関係を示すファイルクラスタ表とを特定する第1の情報を取得する仮想マシンイメージ情報取得部と、前記転送先システムにキャッシュされているファイルのハッシュ値を特定する第2の情報を前記転送先システムから取得するキャッシュ情報取得部と、前記第1の情報と前記第2の情報を照合し、前記第2の情報以外のハッシュ値を有するファイルの前記仮想ディスク上のクラスタの位置を示す第2のビットマップと、前記第2のビットマップで示される位置のクラスタのデータと、前記第1の情報とを転送データとして抽出するデータ抽出部とを有し、
前記転送先システムは、前記第2の情報をネットワーク経由で前記転送元システムに転送するデータ転送部と、ネットワーク経由で受信した前記転送データのうち前記第2のビットマップで示される位置のクラスタのデータと自システム内にキャッシュされている前記データとを組み合わせて前記仮想マシンイメージを再構築する仮想マシン構成部とを有する
ことを特徴とするデータ転送システム。 - ネットワーク経由で転送先システムと接続される転送元システムにおいて、
転送する仮想マシンイメージを構成する第1のビットマップと、前記仮想マシンイメージにおける仮想ディスク内にあるファイルのハッシュ値と、前記仮想ディスク内のクラスタと前記ファイルとの対応関係を示すファイルクラスタ表とを特定する第1の情報を取得する仮想マシンイメージ情報取得部と、
前記転送先システムにキャッシュされているファイルのハッシュ値を特定する第2の情報を前記転送先システムから取得するキャッシュ情報取得部と、
前記第1の情報と前記第2の情報を照合し、前記第2の情報で特定される前記ハッシュ値以外のハッシュ値を有するファイルの前記仮想ディスク上のクラスタの位置を示す第2のビットマップと、前記第2のビットマップで示される位置のクラスタのデータと、前記第1の情報とを転送データとして抽出するデータ抽出部と
を有することを特徴とする転送元システム。 - ネットワーク経由で転送元システムと接続される転送先システムにおいて、
自システムにキャッシュされているファイルのハッシュ値を特定する第2の情報をネットワーク経由で前記転送元システムに転送するデータ転送部と、
ネットワーク経由で前記転送元システムから受信した転送データのうち前記第2のビットマップで示される位置のクラスタのデータと自システム内にキャッシュされている前記データとを組み合わせて仮想マシンイメージを再構築する仮想マシン構成部と
を有し、
前記転送データは、転送する仮想マシンイメージを構成する第1のビットマップと、前記仮想マシンイメージにおける仮想ディスク内にあるファイルのハッシュ値と、前記仮想ディスク内のクラスタと前記ファイルとの対応関係を示すファイルクラスタ表とを特定する第1の情報と、前記第2の情報で特定される前記ハッシュ値以外のハッシュ値を有するファイルの前記仮想ディスク上のクラスタの位置を示す第2のビットマップと、前記第2のビットマップで示される位置のクラスタのデータとで与えられる
ことを特徴とする転送先システム。 - ネットワーク経由で転送先システムと接続される転送元システムを構成するコンピュータを、
前記転送元システムは、転送する仮想マシンイメージを構成する第1のビットマップと、前記仮想マシンイメージにおける仮想ディスク内にあるファイルのハッシュ値と、前記仮想ディスク内のクラスタと前記ファイルとの対応関係を示すファイルクラスタ表とを特定する第1の情報を取得する仮想マシンイメージ情報取得部、
前記転送先システムにキャッシュされているファイルのハッシュ値を特定する第2の情報を前記転送先システムから取得するキャッシュ情報取得部、
前記第1の情報と前記第2の情報を照合し、前記第2の情報以外のハッシュ値を有するファイルの前記仮想ディスク上のクラスタの位置を示す第2のビットマップと、前記第2のビットマップで示される位置のクラスタのデータと、前記第1の情報とを転送データとして抽出するデータ抽出部
として機能させるプログラム。 - ネットワーク経由で転送元システムと接続される転送先システムを構成するコンピュータを、
自システムにキャッシュされているファイルのハッシュ値を特定する第2の情報をネットワーク経由で前記転送元システムに転送するデータ転送部、
ネットワーク経由で前記転送元システムから受信した転送データのうち前記第2のビットマップで示される位置のクラスタのデータと自システム内にキャッシュされている前記データとを組み合わせて仮想マシンイメージを再構築する仮想マシン構成部
として機能させるプログラムであり、
前記転送データは、転送する仮想マシンイメージを構成する第1のビットマップと、前記仮想マシンイメージにおける仮想ディスク内にあるファイルのハッシュ値と、前記仮想ディスク内のクラスタと前記ファイルとの対応関係を示すファイルクラスタ表とを特定する第1の情報と、前記第2の情報で特定される前記ハッシュ値以外のハッシュ値を有するファイルの前記仮想ディスク上のクラスタの位置を示す第2のビットマップと、前記第2のビットマップで示される位置のクラスタのデータとで与えられる
ことを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011204805A JP5756379B2 (ja) | 2011-09-20 | 2011-09-20 | データ転送システム、転送元システム及び転送先システム並びにプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011204805A JP5756379B2 (ja) | 2011-09-20 | 2011-09-20 | データ転送システム、転送元システム及び転送先システム並びにプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013065259A JP2013065259A (ja) | 2013-04-11 |
JP5756379B2 true JP5756379B2 (ja) | 2015-07-29 |
Family
ID=48188681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011204805A Active JP5756379B2 (ja) | 2011-09-20 | 2011-09-20 | データ転送システム、転送元システム及び転送先システム並びにプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5756379B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110297728A (zh) * | 2019-06-20 | 2019-10-01 | 暨南大学 | 基于起源数据的文件重建过程中选择性数据重建方法 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105531678A (zh) * | 2014-08-18 | 2016-04-27 | 华为技术有限公司 | 虚拟机数据的同步方法和装置 |
US9983796B2 (en) * | 2015-09-17 | 2018-05-29 | Veritas Technologies Llc | Systems and methods for provisioning frequently used image segments from caches |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8073926B2 (en) * | 2005-01-07 | 2011-12-06 | Microsoft Corporation | Virtual machine image server |
US7447854B1 (en) * | 2005-12-30 | 2008-11-04 | Vmware, Inc. | Tracking and replicating changes to a virtual disk |
JP2008226167A (ja) * | 2007-03-15 | 2008-09-25 | Toshiba Corp | データ配布システム及びデータ配布プログラム |
WO2009081527A1 (ja) * | 2007-12-26 | 2009-07-02 | Nec Corporation | 情報処理装置、仮想計算機構成方法、並びに、プログラムを記録したコンピュータ読み取り可能な記録媒体 |
WO2009154272A1 (ja) * | 2008-06-20 | 2009-12-23 | 日本電気株式会社 | 版管理システム、方法、及び、プログラム |
WO2010052999A1 (ja) * | 2008-11-06 | 2010-05-14 | 日本電気株式会社 | メンテナンスシステム、メンテナンス方法、及びメンテナンス用プログラム |
JP2010231661A (ja) * | 2009-03-27 | 2010-10-14 | Nec Corp | 仮想マシンシステム、仮想マシンシステムの動作方法、及び仮想マシンシステムの動作プログラム |
-
2011
- 2011-09-20 JP JP2011204805A patent/JP5756379B2/ja active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110297728A (zh) * | 2019-06-20 | 2019-10-01 | 暨南大学 | 基于起源数据的文件重建过程中选择性数据重建方法 |
CN110297728B (zh) * | 2019-06-20 | 2021-07-23 | 暨南大学 | 基于起源数据的文件重建过程中选择性数据重建方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2013065259A (ja) | 2013-04-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10764045B2 (en) | Encrypting object index in a distributed storage environment | |
CN106294585B (zh) | 一种云计算平台下的存储方法 | |
US10659225B2 (en) | Encrypting existing live unencrypted data using age-based garbage collection | |
TWI476610B (zh) | 同級間冗餘檔案伺服器系統及方法 | |
CN103379159B (zh) | 一种分布式Web站点数据同步的方法 | |
US11068499B2 (en) | Method, device, and system for peer-to-peer data replication and method, device, and system for master node switching | |
CN101808127B (zh) | 数据备份方法、系统和服务器 | |
CN105095364A (zh) | 一种数据同步系统和方法 | |
JP2005502096A (ja) | ファイルスイッチ及び交換ファイルシステム | |
CN106657169B (zh) | 一种Redis中主从节点数据同步方法 | |
CN112199427A (zh) | 一种数据处理方法和系统 | |
CN102523234A (zh) | 一种应用服务器集群实现方法及系统 | |
US20180052858A1 (en) | Methods and procedures for timestamp-based indexing of items in real-time storage | |
WO2016095149A1 (zh) | 一种数据压缩存储方法、装置,及分布式文件系统 | |
CN111225003B (zh) | 一种nfs节点配置方法和装置 | |
CN103023996A (zh) | 一种云数据存储系统 | |
JP5756379B2 (ja) | データ転送システム、転送元システム及び転送先システム並びにプログラム | |
CN115150410A (zh) | 多集群访问方法和系统 | |
CN111382132A (zh) | 医学影像数据云存储系统 | |
CN111459416B (zh) | 一种基于分布式存储的热迁移系统及其迁移方法 | |
CN106855869B (zh) | 一种实现数据库高可用的方法、装置和系统 | |
CN113641763B (zh) | 一种分布式时序数据库系统以及电子设备和存储介质 | |
CN103064929A (zh) | 一种网络文件系统中服务器写数据的方法 | |
KR20050026306A (ko) | 비공유 구조의 데이터베이스 클러스터 서버 시스템과온라인 확장 방법 | |
WO2023241116A1 (zh) | 数据处理方法及相关装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140109 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140724 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140819 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20150203 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150325 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20150403 |
|
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: 20150507 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150529 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5756379 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |