PaaSはサービス内にアプリケーションの動作基盤まで含み、責任分界点がIaaSよりも上のレイヤーにある。その分、データ保全や可用性の確保はクラウド事業者に依存する面が大きい。
クラウド事業者は当然、品質確保に腐心しているが、障害は完全には避けられない。例えばSFDCは「trust.salesforce.com」というWebサイトで稼働状況を公開している(写真1)。マイクロソフトも同様の「Windows Azure サービス ダッシュボード」というサイトがある。両者を見ると、頻繁ではないがシステムのレスポンスが悪化したり一時停止したりする障害は発生している。「データが消失する事故を起こさないように対策をしているし、過去にデータ消失事故を起こしたことはない」(セールスフォース・ドットコムの内田仁史セールスエンジニアリング本部ソリューションアーキテクト)というものの、「約款上、完全にデータが消えないことを保証してはいない」(同)。
このため、ユーザー側で必要に応じてデータやアプリケーションの稼働を守る対策が求められる。IaaSの場合ほどではないが、ユーザーの判断で強化できる点もある。
実際のところ、PaaSの仕様はサービスごとに差異が大きく、その違いを認識したうえで対策を打つ必要がある。以下では、代表的なサービスであるSFDCの「Force.com」とマイクロソフトの「Windows Azure」を中心に取り上げ、PaaSごとの仕様の違いを踏まえた対策の考え方を見ていく。
Force.comは多くを標準サービスに含む
Force.comは営業支援SaaS「Salesforce」をベースにしたPaaSで、ユーザーにITリソースの存在を意識させない構成になっている(図6)。「標準サービス内でサーバーの冗長化やストレージのミラーリング、日次のテープバックアップを実施している」(セールスフォース・ドットコムの内田ソリューションアーキテクト)。冗長化は標準サービス内に含まれ、ユーザーが選択できる付加機能は存在しない。
これに対し、データ消失対策はユーザー側の作業ミス対策を含めて複数のバックアップ方法を用意している。すべて標準サービス内で提供されている機能で、利用するかどうかはユーザー次第である。
一つは、管理コンソールで操作してテーブル単位にCSV形式でデータをエクスポートする機能だ。特定時点でのデータをバックアップする機能となる。二つめは全データを週1回、ZIP形式で圧縮したファイルとして書き出す「Weekly Export Service」である。ZIPファイルにはCSV形式の全テーブルのデータのほか、アプリケーション上で添付した画像などのバイナリーファイルも含む。三つめはForce.comのAPIを使った、ユーザーが用意するデータベースシステムとのレプリケーションである。
これらのバックアップ機能のうち、標準的に使われるのはエクスポート機能とWeekly Export Service機能だ。重要なデータはエクスポート機能で必要に応じて保存して、日常的なバックアップはWeekly Export Serviceを使う。レプリケーションは特にミッションクリティカル性の高いシステムで利用する。
書き換えられたデータを保存しておく「ごみ箱」機能も用意する。データの書き換えが生じた場合に、レコード単位にデータを更新履歴付きで保存しておく機能だ。入力ミスがあった場合は、ごみ箱からデータを復元できる。
このほか、サードパーティー製品を使うとバックアップ機能を拡張できる。例えばテラスカイの「SkyOnDemand」などのデータ連携ツールを使えば、Weekly Export Serviceのようなバックアップを日次で実施できる。差分バックアップなども細かく指定できる。
サービス停止リスクについてはSFDCの仕様を受け入れるしかないが、「可用性が問題になったという話はない」(テラスカイの今岡純二取締役ソリューション部部長)という。ただし「メールなどサブ的なサービスの仕様は明言されていない」(TDCソフトの熊田統括部長)。例えばデータ登録があったら自動的に関係者にメールを送り、そこからビジネスプロセスが動き出すようなシステムの場合、メールの不達や遅配は事実上のシステム障害となる。そうした細かい点を確認しきれないのが注意点となる。