Inside iCloud: Apple's new Documents & Data cloud service

In place of the simple cloud storage and web hosting services in today's MobileMe, including iDisk, iWeb and Gallery, Apple is preparing an innovative new cloud-based Documents & Data service. Here's how it works.

The road to iCloud: the host without the most

Beginning over ten years ago with iTools, Apple's online services for Mac users have morphed through a variety of incarnations, perpetually being a mixed bag of success and failure. After a false start as a variety of general purpose web apps ranging from iCards for postcards and iReview for discussing other websites, the most successful aspects of Apple's online efforts have turned out to be email and messaging services.

These were enhanced in the move to .Mac, which eventually began to offer web client access, and further improved upon during the transition to MobileMe, when Apple added push messaging features targeted toward its new audience of mobile users.

Among the least successful aspects of Apple's online web service experiments have been the web hosting and virtual disk features associated with iDisk. In part, this has been because what Apple has offered in these areas has never been competitive in price or performance with services dedicated to blogging or online file sharing.

While the company attempted to differentiate its iDisk-related hosting offerings with desktop Finder integration on the Mac, native clients for iOS devices, and easy to use publishing tools integrated into iWeb and iPhoto, few users were sold on the idea of paying for MobileMe principally or even significantly because of its online sharing aspects.

Rethinking document cloud services

In the planning process to develop its next generation of cloud services, Apple decided to radically rethink its offerings in the area of file sharing. The result has been two separate but functionally similar features of the new iCloud: Photo Stream, a way to automatically push photos taken on one mobile device to every other Mac and iOS device the user has, and Documents & Data, a parallel solution to enable applications to do something similar for the files and data they use.

Photo Stream solves real problems for users without requiring them to think about how to use the new service. All they need to do is configure their devices and computers once with their iCloud account, something they're likely to do anyway to use messaging and sync services.

Once their equipments is all tied to the same iCloud account, Apple automatically pushes new photos up to the cloud when captured, and down to the user's various photo libraries on iOS, Mac and Windows PCs. No more cables for manual syncing, no more manual media imports, and no more looking for what device is storing the photos you want to access.

Essentially, Photo Stream is push messaging for media, with the same kind of effortless management afforded by IMAP-style email as opposed to the confusion of having various computers each set up with manual POP-style email, where messages end up stuck on one system and missing from another.

iClouds' Documents & Data delivers the same kind of genius level of simplicity for every other app that uses files. Apple outlined to developers how the new system would work at its Worldwide Developer Convention this summer under strict NDA. Fortunately for the curious rest of us, word quickly leaked out about how Documents & Data would work.

How iCloud's Documents & Data feature works

Apple outlined publically in general terms what Documents & Data does: it propagates changes made to a file on one device across every other. Similar to Photo Stream, creating a new Keynote presentation on your Mac will result in a magical multiplying of the document and an immediate background delivery of the new document on your iPad, on your iPhone or iPod touch, and within the iWorks web app so you can access it remotely from any browser.

There's no need to manually save the document to something like iDisk, or to look for where it might be stored in the file system, and no need to perform any manual sync between devices. It just happens. When you edit that presentation on your iPhone, all the changes you make similarly appear in every other instance of that file across your devices, again without needing any sort of thinking or involvement on your behalf.

The concept is deceptively simple, but it involves quite a bit of thoughtful engineering on Apple's behalf. There needs to be support built into both the desktop and mobile operating system, as well as a web interface for the cloud-based storage. Third parties also have to incorporate support for iCloud's Documents & Data in their apps. Apple has demonstrated how to do with with its iWork apps, the first to incorporate support for the new feature.

Rather than just throwing up a way to copy around files automatically, Apple took an carefully considered approach that borrows from its experience in curating the iOS and Mac App Stores. This isn't just a network-synced iDisk. Instead. each app that opts in to the iCloud Documents & Data feature is accorded a secure storage space of its own, just as iOS apps each live in their own secure sandbox, inaccessible from other apps.

Using iCloud-aware apps therefore won't eat up users' free storage on iCloud, just as Photo Stream or iTunes' media, apps and iBooks use won't count against the free 5GB of storage every iCloud user gets.

More importantly, a rogue app created to prey upon Mac users won't be able to destroy or corrupt the documents or data stored by iCloud-savvy apps, adding a new level of security within the user realm of the computing model. Currently, any piece of malware (or simply a buggy app) that a user installs has the capacity to stomp all over that user's files and any network shares he or she has mounted. With iCloud, that huge vulnerability is now possible to contain in a way that hasn't been possible before in mainstream desktop computing. Under iCloud, only the app that creates the data can change the data, and must do so securely.

Apple has also indicated that it will be relatively easy for third parties to add support for iCloud Documents & Data. In fact, it appears that Apple is leveraging the existing Versions and Auto Save mechanisms new in Mac OS X Lion to also enable iCloud to efficiently deliver updates to the cloud as you make them and subsequently push those incremental changes down to all your other devices to keep them all on the same page.

Within a week of iCloud's announcement at WWDC, prominent Apple blogger John Gruber revealed how iCloud would handle file sync conflict issues, noting that it would seamlessly resolve file conflicts that occur between devices while backing up each version of the file.

iCloud will "make a decision and it will decide which one is the best," Gruber stated. "iTunes will decide which one is right and thats it. iCloud will push that right one to any device that has this account that has a different version."

And so, essentially, iCloud Documents & Data will work something like Time Machine in the Cloud, except that rather than being focused on traveling through the past looking for lost versions, the new feature will keep users' documents up to date in the present, with push updating of changes as they happen to all devices they own. Again, think of it as push messaging for version controlled documents.