Comments
bruce.armstrong wrote: Somebody just said it better than I did, and with more chops to say it: Open Letter to Mark Zuckerberg, Sheryl Sandberg & Facebook Mobile
Cloud Expo on Google News

SYS-CON.TV
Cloud Expo & Virtualization 2009 East
PLATINUM SPONSORS:
IBM
Smarter Business Solutions Through Dynamic Infrastructure
IBM
Smarter Insights: How the CIO Becomes a Hero Again
Microsoft
Windows Azure
GOLD SPONSORS:
Appsense
Why VDI?
CA
Maximizing the Business Value of Virtualization in Enterprise and Cloud Computing Environments
ExactTarget
Messaging in the Cloud - Email, SMS and Voice
Freedom OSS
Stairway to the Cloud
Sun
Sun's Incubation Platform: Helping Startups Serve the Enterprise
POWER PANELS:
Cloud Computing & Enterprise IT: Cost & Operational Benefits
How and Why is a Flexible IT Infrastructure the Key To the Future?
Click For 2008 West
Event Webcasts
Synchronization and What's Available for iOS
Sybase Unwired Platform Article Series #2

Any Enterprise iOS application should feature some important features. Firstly Security, so encrypt your users application data on the device and that is in addition to any other Device Management & Security that you should be using. Check out Afaria which uses Apple's MDM. Secondly support for Mobile Working, that will work in both off-line and on-line modes, even though connectivity is getting better and better, there will always be the chance of a 'dead-zone'. Finally Integration with existing 'legacy' back office systems, extending existing Enterprise Applications into the Mobile world.

Last year I asked myself, What is available for iOS devices in the world of Enterprise Data Synchronization? So to investigate the issue I spoke to an expert friend of mine with years of iPhone development,  and before that core Objective-C.

My scenario went like this... I want an app that uses SQLite on the device. I would want that device to get DB updates/records, securely over the air,  specific to that user and I want the database to be secure. Those updates/records I want to come from a Server DB, that could be any of the Enterprise Database. I want the user to use the application, which could add, delete or create new records in the device database, then the application should send its changes back securely across the air to the Enterprise DB.

My friend thought on it for a while then said... Based on what you've written, then I would suggest some possibilities:

  1. Wrap any edits to the local database on the iPhone and store the rowId/pk of the changes (for any/all affected changes). Somehow you'll need to store this extra information to facilitate synchronization. This has its own set of issues since you'll probably need to rely on the user's clock being set correctly etc. Then you'll need a way to compare those changes to any incoming data as below.
  2. You describe "secure updates over the air" but you don't specify what you mean by that. So, will there be a button that the user presses to refresh the data on the phone?  Or will this be some kind of background thread?  How often will updates be synchronized? Does it only connect via Wi-fi or is cellular reliable enough to sync, etc. Will you use https with an XML payload or are you going to write some kind of custom socket level stuff to handle secure communication?]
  3. Since there are no native database client libraries for all practical purposes then maybe you'll need to invent a web service for updating modified records and downloading new updates. What do you do when there is a conflict between what the user has chosen and the updates coming in?
  4. At which point, depending on the size of these databases, you might have been better off implementing an intermediary web application/middle tier that handles the actual synchronization, since it is complicated...

The conversation paused, with my head spinning. Dude I don't want to do any of that, I thought to myself. You're right, it's hard and I just want to concentrate on my business problem. I know the Enterprise Database I want to synchronize with and I know the subset of tables, that I want on my iPhone. What you do not want to do is write a synchronization solution, but to reply on a technology leader & innovator that has immense experience. As you can see from the figure below, Sybase has been in this space since 1992 and introduced Mobile Computing Sync in 1995.

 

Sybase Innovation in Mobility

Step in the MEAP solution from Sybase, it uses SQLite and Message Based Synchronization (MBS) bi-directional and with a secure database. The changes for the database are continuously sent back and forth keeping the database on the device and the back-end databases in sync, even if the device has been offline/disconnected for a while. NOTE - from now on I will use the term Remote Database for that on the Device and Consolidated Database for the back-end.

  • Pub-Sub model - SUP publishes MBS packages and mobile applications subscribe to them
  • Valid credential is required for subscription and for all messages
  • Once subscribed, server is responsible for maintaining the state of the subscriber via messages until un-subscription
  • Publishers and subscribers are decoupled by reliable messaging
  • Server maintains states of each subscription via timestamp based mechanism

If you already have experience of SQL Anywhere and Mobilink then check out SQL Anywhere 12 for Mac OS X includes UltraLite, a lightweight relational database and data synchronization client for the iPhone and iPad. iPhone SDK developers can use UltraLite to build robust mobile applications, extending enterprise data to mobile users. Check out a data sheet here

Please check back weekly on a Friday for the next article and please follow me on Twitter @ithain

About Ian Thain
As one of the Sybase Technical Evangelists, Ian regularly addresses technical audiences all over the world and his sessions are always very well attended. He also writes education classes, whitepapers, demos and articles for various Sybase products and publishes regularly in Journals such as SYS-CON's PBDJ and International Developer Magazine. He is also the Sybase Unwired Platform & PocketBuilder Evangelist and works closely with the team in Dublin, CA and Concord, MA on new features and demonstrations for the products. He is also Tech Chair of iPhone Development Summit 2009 - New York (June) and San Francisco (November). In his customer-facing Evangelist role, Ian is very involved with the design, production and testing of Enterprise class Unwired Solutions, that have been implemented using Sybase's Unwired tools for Sybase customers around the globe. In addition, Ian is a dedicated technical expert continually working with Sybase's key partners and clients to enhance the capabilities of the Unwired solutions that Sybase can offer to its customers. Ian can also be found on Twitter @ithain

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

Latest Cloud Developer Stories
In his session at the 10th International Cloud Expo, Marvin Wheeler, Open Data Center Alliance Chairman, will discuss the success the organization has had in charting the requirements for broad-scale enterprise adoption of the cloud and how 2012 is forecast to be the tipping poin...
With Cloud Expo 2012 New York (10th Cloud Expo) now just under three weeks away, what better time to introduce you in greater detail to the distinguished individuals in our incredible Speaker Faculty for the technical and strategy sessions at the conference...
“We are embarking on a critical journey where identity information becomes the key asset of the digital age,” declared Andy Land, Vice President of Marketing at UnboundID, in this exclusive Q&A with Cloud Expo Conference Chair Jeremy Geelan. Land noted that “Facebook and Google m...
In this CTO Power Panel at the 10th International Cloud Expo, moderated by Cloud Expo Conference Chair Jeremy Geelan, industry-leading CTOs & VPs of Technology will discuss such topics as: Which do you think is the most important cloud computing standard still to tackle? Who ...
The move to cloud-based applications has undeniably delivered tremendous benefits. However, the associated distribution creates various challenges from the quality perspective: End-to-end tests need to pass through multiple dependent systems, which are commonly unavailable, evo...
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021

SYS-CON Featured Whitepapers
ADS BY GOOGLE

Breaking Cloud Computing News
Researchers from A*STAR's Institute of Materials Research and Engineering (IMRE) and their commercia...