Re: Data sync
Damien Katz - Damien Katz - September 24, 2011
>On Sep 23, 2011, at 1:40 AM, XXXX XXXXX wrote:
>
>Hi Damien,
>
>Greeting from XXXXX XXXXXX;
>
>Im running a small company with history in the mobile enterprise space
>
>We are just about to get some seed funding to build sqllite sync
>technology for mobile devices;
>
>I came across CouchBase extremely cool;
>
>We are planning to offer some of same features;
>
>Offline access
>Smart sync
>Bandwidth optimisation
>
>It would be good to get any advice or pointers you might have in
>terms of building sync technology for mobile
>
>All the best,
>
>XXXX XXXXX,
Hello! I would say that mobile sync is a deceptively hard problem to get all the nice properties you want. I suggest you look at how Couchbase replication works and try to duplicate it, and ideally, try to interoperate with it.
Some of the properties you probably want:
Incremental replication - The ability to stop and restart replication and not lose all your progress. Vital in a mobile environment where connections are slow and flaky.
Concurrency -You want to be able to use the local and the remote the databases while it’s getting sync’d/replicated, no global locking. So the app is usable at all times and syncing in the background.
Conflict management - You need plan for how you’ll deal with and manage edit conflicts.
Partial replication - Having replicas that only hold a interesting subset of other replicas. Important when sharing a large data set, but mobile clients only need a portion of it.
Ad hoc Topology - Couchbase supports ad hoc topology, any machine can sync with any other machine without prior knowledge. This is much more flexible than a single centralized sync point or fixed topology. Though many deployments will only need a single sync point, often new ones will need to be added.
Schema upgrade - Couchbase is schemaless, so it’s easy to add new field/properties without breaking things. If using a schema, it’s difficult to upgrade remote clients when they have new data in older schemas, etc.
Security - the ability to refuse updates if the come from unauthorized sources.
Anyway, Couchbase and CouchDB has worked out these problems and is successful in production on millions of machines. It’s not the only way to build a sync scheme, but it’s one of the most successful.
-Damien
Categories: Blogs Damien Katz
Comments
Thanks for sharing! it is good to encourage people to comment, not just reading.
Toplu Sms Yolla , Toplu Sms Gonder
I visit this first time & it has a very valuable information. & some decent design as well. I would like to appreciate writer’s nice effort. Wish u best of luck nutrition food pyramid
Posted by shine on 08 Feb 2012 at 22:35
Add comment
Erlang on Twitter
» wolfeidau (Mark Wolfe): Submitted update to the #erlang package on #OpenWRT http://t.co/4Brn63XU if anyone wants to test it please ping me /cc @ErlangEmbedded
» ivansyahhsn (ivansyah): Iya dewa erlang hbd,awas ya siksamu menanti RT @indrasan: selamat ulang tahun saudara reza erlang @rezasur semoga makin banyak proyek nya ya
» CzarneckiD (David Czarnecki): It was like Mr. Toad’s Wild Open Source Ride here tonight: Erlang, Riak, CouchDB, Ruby and Python. #nofastpassrequired
» yang_yihming (Yiming Yang): @vw009 Which language do you often use in parallel programing? Ocaml? Erlang? C01? Or some other language?
» tengkushara (T Muni Fahtu Zahra): RT @fathiaamandaaa: RT @indrasan: selamat ulang tahun saudara reza erlang @rezasur semoga makin banyak proyek nya ya.
» wolfeidau (Mark Wolfe): Coding in emacs and enjoying it, hell has frozen over.. #erlang #emacs
» bagus_erlang (bagus): SI rizky kocak ♓é² :.. ♓é² :.. ♓é² :..
» ErNugraha7G (ErlAngga™): Enggaa lama bgt balesnya? RT @VanessaaaZM: apose? RT @ErNugraha7G Yah mention erlang gadibales @VanessaaaZM
» bagus_erlang (bagus): Bt nieh!! Di sklh…
» VanessaaaZM (Vanessa Zian M): apose? RT @ErNugraha7G Yah mention erlang gadibales @VanessaaaZM
Statistics
Number of aggregated posts: 10503
Number of comments: 2136
Most recent article: May 21, 2012
Latest comments
» Jessica on 30 September 2011: Basho Technologies, Erlang Solutions and Trifork AS Announce Big Data and NoSQL R: yeah of course. I just thought that everything will be just alright and I want to have these kind of…
» DRS786 on 25 May 2012: Poznan Erlang User Group Event: I’m going!
» the tantric way in london on TextOne HD for webOS: Interesting articles are published here. By reading it I acquired great deal of knowledge on various subject. Thank you for…