HotShot (0.1.0) | 2009-02-23 02:09 |
HotShotは、クライアントPC上のデータに強力なデータプロテクションを提供します。クライアントPC上にインストールされた軽量アプリケーションが自動的に対象ファイル群をデータサーバにバックアップ、そしてユーザはいつでも簡単にクライアントPC上から全データ復旧やリビジョンベースでの復旧を行えます。またHotShotは「デスクトップ指向データマネージメント(D3M: Desktop Driven Data Management)」に基づいた分散データ保護アーキテクチャを実現します。
HotShot を導入することで部門レベルや遠隔オフィス、モバイルユーザに対するデータプロテクションシステムをすぐに実現することができます。またHotShotはWindowsやLinux、UNIXシステムが稼働する汎用サーバをターゲットとているため専用機器を必要としません。このため無償でデータプロテクションシステムを実現することができます。
HotShotは様々な機能を提供する反面、インストールが大変に容易です。サーバ側ではIPアドレス等を設定した後、軽量サーバアプリケーションを起動するだけです。またクライアントPC上にはインストーラを用いてHotShotクライアントアプリケーションをインストールした後、サーバと認証情報を設定するだけです。 これら作業はプリンタの追加設定程度の簡単さですので一般ユーザでも簡単に行うことができます。
HotShotでは、ネィティブな通信をベースとしたクライアントサーバアーキテクチャを採用しています。バックアップデータを格納するサーバホストをデータセンタと呼び、データセンタではHotShotサーバアプリケーションが稼働します。また、データセンタにはPCクライアント上のデータを効率よく管理するためのホットショットリポジトリが配置されます。
一方のクライアントPCではHotShotクライアントが稼働します。HotShotクライアントにはあらかじめバックアップ監視対象としたいPCフォルダを登録しておきます。(この登録されたフォルダを「ホットショットフォルダ」と呼びます。) HotShotクライアントはホットショットフォルダを定期的に監視し、もしもそこでファイルシステムに対する変更を検知すると自動的に変更データを抽出してデータセンタへバックアップ送信します。
HotShotクライアントから変更データを受信したHotShotサーバは、それをホットショットリポジトリに高速に格納していきます。 HotShotでは、このように常に変更データだけをホットショットリポジトリに格納しているため、クライアントPCからいつでも過去に格納したデータを世代別に取り出すことができます。
データセンタではHotShotサーバを稼働させます。HotShotサーバはデータセンタ上にホットショットリポジトリというデータベースを作成し、そこにクライアントPCからバックアップされる各種データを格納、そして一括管理を行います。先に述べたようにホットショットリポジトリには差分データだけが格納されるため、長期に渡ってバックアップが行われてもホットショットリポジトリのデータ増加量は微量に留まります。
HotShotサーバはネィティブ通信をベースとした単一の軽量ネィティブ・アプリケーションサーバとして実装されているため、クライアントPCと HotShotサーバ間は最大の通信性能が確保されます。これによりクライアントPC側のユーザの使い勝手が大きく向上します。
HotShotサーバのカーネル部分ではスレッドプールベースのマルチスレッドエンジンを採用しており、マルチCPUやマルチCOREアーキテクチャを持ったホストの性能をスケーラブルに引き出すことができます。またWindow, Solaris, IBM/AIX, HP-UXなど各種商用OS上で利用することができます。
HotShotサーバはクライアントPCからバックアップ送信されるデータを「データベース」に格納し一括管理を行います。この「データベース」をホットショットリポジトリと呼びます。
ホットショットリポジトリは、ファイルシステム形式と組み込みデータベース形式(Berlkey DB)の2つをサポートします。これらはホットショットリポジトリ作成時に選択することができます。これらはどちらもトランザクションベースのデータ管理をサポートしているため、バックアップデータが中途状態になることがありません。例えばクライアントPCからのデータバックアップをしている最中にネットワーク障害が発生した場合でも、そのアクションに対してロールバックがかかり、そのバックアップアクション自体が無効となります。これによってバックアップデータが中途半端な状態でホットショットリポジトリに格納されることを防いでいます。
HotShotクライアントは、クライアントPC上のフォルダを定期的にデータセンタへバックアップするための軽量エージェントです。現在はWindowsプラットフォームのみがサポートされていますが、将来的にはMacOSやUNIXシステムへも対応する予定です。
まずクライアントPCのユーザは、HotShotクライアントを用いてデータセンタへホットショットバックアップを行うフォルダを「ホットショットフォルダ」として登録する必要があります。登録作業はウィザードを利用して簡単に行えます。(ホットショットフォルダは最大で4つまで登録可能) もしもデータが格納済みのフォルダを登録する場合は、それらデータは一旦データセンタにバックアップされることになります。以降HotShotクライアントは登録されたホットショットフォルダを定期的に監視し、もしもフォルダ内に変更が検出された場合にはその差分だけを圧縮して、データセンタにバックアップ送信します。
またHotShotクライアントには、データセンタのホットショットリポジトリを操作するビューも用意されています。これによって過去に格納した世代データをいつでも容易に取り出すことができます。
HotShotではデータの格納にバージョンニング機構を採用しています。これによりユーザは過去にバックアップされたデータを世代単位で取り出すことができます。またホットショットリポジトリには変更された差分だけが格納されますので、ホットショットリポジトリが爆発的にふくれあがる心配がありません。例えばクライアントPC上のホットショットフォルダに200MBのデータを作成します。HotShotクライアントが初回200MBのデータを全バックアップします。次にそのデータに10MBだけ追加/変更をしたとします。この場合、次回のHotShotクライアントによるバックアップでは追加 /変更された10MB分だけがバックアップされることになります。その結果ホットショットリポジトリには210MB(200MB + 10MB)のデータだけが保存されることになり、ユーザは世代1として管理される200MBのデータと世代2として管理される210MBのデータ両方にアクセスすることができます。
一方、世代管理をサポートしている他のバックアップ製品の中には、差分ではなくデータを丸ごと世代管理するものもあります。この場合、上記の例ではサーバ側には合計410MB(200MB + 210MB)のデータが保存されるとになります。
市場に提供される多くのクライアントPCバックアップツールはSOAP/HTTPをベースにしたWebサービスを採用していますが、 HotShotではWebサービスを採用していません。Webサービスを採用した場合、サーバ側ではWebサーバアプリケーション(Apache等)と Webコンテナ(Tomcat等)を稼働させる必要があります。
昨今のホストマシンのスペックを考えると、これらを稼働させることにそれほどリソース上の問題は発生しませんが、パフォーマンスの面では依然として問題が発生します。WebサービスはRPC型ベースの通信であるため短いトランザクションを扱うには十分な性能を発揮しますが、データバックアップなど大きなデータを扱うトランザクション通信では十分な性能が出ません。またアプリケーション構造が2つの層に分かれることも効率的な処理の実現を難しくします。
HotShotアーキテクチャではユーザの使い勝手を向上させるために最大の性能を提供することに重点が置かれています。そのためHotShotサーバは、単一の軽量ネィティブ・アプリケーションサーバとして実装されています。
現在のオフィス環境を考えてみれば、以前に比べネットワーク盗聴の可能性が高くなっています。これは無線LANや会議室に設置(放置)されたネットワーク接続口などの普及によるものです。(ある企業の会議室にて、業者の服装をした不審者が社内ネットワークにノートPCを接続していたなどという話を聞いたことはありませんか?) 一般にバックアップツールは社内で限定的に利用される場合が多いためセキュリティ面の配慮に欠けた製品が多いのですが、HotShotは違います。 HotShotは、全てのクライアントサーバ通信にSSL(Secure Socket Layer)を採用しています。これによりHotShotで管理される全ての企業データはネットワーク盗聴やデータ改ざんから完全に保護されます。
またHotShotではユーザ毎にパーティションが割り振られ、ユーザは自らのパーティションに対してログイン認証を行う必要があります。
HotShotではSSLを利用したセキュリティ機構が提供されます。これによりデータセンタをインターネット上に公開し、各種モバイル環境へ対応することができます。社内のPC上にあるデータを自宅のノートPCとホットショットフォルダを共有することでロケーションフリーな仕事環境を手に入れることができます。
HotShotではシステム管理のためのツールが提供されています。これらを利用することで新規ユーザの登録、削除、パスワード変更、ホットショットリポジトリのオンラインバックアップとオンラインリカバリをリモート経由で行うことができます。