iTunes Matchの事とか、ストリーミングに関しての話もあって、もっぱら音楽周りの話が注目されがちですが、 僕は、iCloud の本質は、同期不整合解決にあると思っています。

Lionのリリースノートである、What's New in Mac OS X Lion というデベロッパ向けの文書があります。 これの一番最初に書かれているのは、iCloud Storage APIの説明です。 一番最初に書いてあるぐらいなので、Appleが一番大事だと思っているフィーチャはiCloud Storage APIだと言うこともできるでしょう。

それで、iCloud Storage APIでできるのは、簡単にいうと、

  • Dropboxに類した情報同期を
  • アプリケーション毎のSandboxの中で、
  • アプリケーション毎に同期不整合の解決できる仕掛け

を実現してるところです。 (これに加えて、Key-Value storeもありますが、これについては、今回は置いておきます。)

これのどこにインパクトがあるかというと、同期の不整合解決です。

Dropbox含めて、いろいろな形で「ファイルの同期」する仕掛けは提供されているし、先に、VMwareもProject Octopusを発表したぐらいで、ファイル同期が情報共有のための仕掛けとして重要なのは、誰もが知っているところです。

しかし、分散している端末それぞれでコピーをもっている以上、様々な理由で同期は失敗します。実際、Dropboxで同期が失敗すると、タイムスタンプ入りのファイルができてしまいます。これらのファイルの間の不整合を解決するのは、簡単にできる場合もありますが、 うっかり二箇所でExcelファイルをいじっていたりすると、目に手も当てられない状況になりますよね。 さらに、複数のファイルから構成される情報等の場合、ファイル同期にトランザクションみたいな概念もないわけですから、大変なことになります。

iCloud Storage APIの場合、同期の不整合解決をアプリケーション側でコントロールできるようになっています。ファイル、という、一種の「バイナリデータ」ではなく、 意味を持った情報として中身を統合することができるのは、そのファイルを読み書きできるアプリケーションだけなわけですから、自然な方法と言えると思います。

これができると、 ユーザは、自分の作ったファイルであれば、全く同期を意識せず、 ファイルは手元にあるのに関わらず、端末間で完全に共有され、ストレージが見えなくなると思います。 さらに、履歴もTimeMachineで保存されますから、遡ることも可能。 これがAppleの狙いだと思います。 iPadもそうだったという人もいますが、Appleやろうとしているコンセプトの一つは「見えなくすること」だとも思ってます。

一方、モバイルデバイスとクラウドの間での情報同期が容易であるということのインパクトは他にもあります。 昨今いわれている回線品質とかの関係でいうと、どうしてもラストホップの太さは期待出来ないわけで、 なんでもかんでもクラウドにおいてブラウザで叩くというのは、通信帯域が確保できていれば快適ですが、 そうでない場合は厳しいわけです。そんなこともあいまって、ここいらの技術が今後重要になるんじゃないでしょうか。

アプリケーションの対応ということでは、少なくとも、OmniOutliner 等で有名な Omni Group1Password の AgileBitsは間違い無く対応してくるでしょう。1Passwordは3.9がAppStore向けにでたところですが、4.0を開発中ということで、iCloudがリリースされたら、4.0が出で来るのではないかと。

蛇足ですが、個人的には、Documentあるいはファイルやフォルダという抽象化がベストかどうか前から疑問持っていて、 もっと良い形はとれないものかと、常日頃考えています。そんなわけで、この動きは注目しています。


blog comments powered by Disqus