OSのバージョンアップといえば、OSそのものの機能に注目が集まるものだが、Mountain Lionでは明らかな潮流の変化が見て取れる。それは「iCloud」がいよいよ存在感を高め、Apple製デバイス共通のインフラとして重要な位置についたことにほかならない。今回は、iCloud周辺の動向に絞って見ていこう。

■奥の奥までMountain Lion
第1回 - 64ビット対応、スクリプト言語/サーバソフト、OpenCLをチェック

「Documents in the Cloud」の本質

Appleが開発/運営するクラウドサービス「iCloud」は、それまでのMobileMeに取って代わる形で登場した経緯から、両者のサービス内容は比較される運命にある。しかし、割り当てられるディスク容量やオンラインストレージサービス(iDisk)の有無など、単純に既存の機能/概念で比較してしまうと、その本質を見失ってしまう。実際、MobileMeとiCloudは「ファイル」という概念に関してはかなり異質だ。

iCloudは大きく分けて、「Document Storage」と「Key-Value Storage」(KVS)という2種類の型でデータが処理される。前者は従来どおり「ファイル」としての扱いであり、WebDAVなどのプロトコルで共有されたオンラインストレージをマウントして使うことと同じだ。Document StorageはiCloudでも引き続き利用されるが、やはり注目すべきは後者のKVS型といえる。

KVS型では、ID的な役割を果たす文字列「キー」にオブジェクト(データ)を関連づけ、iCloudとの間でデータをやり取りする。KVS型データはファイルとして独立した存在ではなく、それ自体はいわば"ファイルのかけら"だ。プッシュ通知で送信されてくる情報も、このKVS型が使用される。

KVS型の考え方は、iCloud独自のものではなく、クラウド向けデータベース技術のトレンドを踏まえたものだ。近年注目を集めているKVSに対応したソフトウェアとしては、HadoopやMemchached、MongoDBなどいくつかあるが、いずれも「サーバ側に配列状のデータをストックする」機能を備え、複数のサーバにデータを分散させることが可能になっている。

Appleは、iCloudが提供するこの機能にアクセスするために「iCloud Storage API」を用意した。このAPIを利用すれば、KVS型データを同時に複数デバイスへ、しかも回線種別に関係なくプッシュ通知できるため、データの不整合が生じないアプリケーションを開発できる。これが、同期処理と保存場所を意識することなく、複数の端末間で文書の共有を可能にする「Documents in the Cloud」の骨子なのだ。

iCloudにおける文書更新の概念図

システム環境設定の「iCloud」ペインでストレージ管理画面を開いたところ。ここからiCloud上の文書を削除することができる

次ページ:大きく変わった「開く」ダイアログ