Select to view content in your preferred language

ArcGIS Mobile - Improved Synchronization of Server Changes Down to Client

651
3
12-17-2010 09:38 AM
Status: Open
DavidMarley
Frequent Contributor

Currently the only way to get feature changes that occur in the source GDB down to a mobile cache is to set the refreshData parameter to true when synchronizing data, in which case all of the data in the layer is replaced (Note: I have received very inconsistent information about this from ESRI in the past - many people seem to be under the impression that only the changes are brought down the client during synchronization, but based on my -- very extensive -- testing and work with Mobile, this is definintely not the case currently).  Attempting to synchronize server-side changes to a large complex base layer such as parcels down to a mobile client is essentially impossible over a low-bandwidth connection (i.e., wireless aircard), which is a very typical scenario for a mobile deployment.

It seems that Mobile synchronization was designed entirely around the use case of sychronizing data edits done in the field up to the server.  The use case of wanting to update base data in the field, with edits/updates happening on ther server, seems to have been completely overlooked.  And based on my experience with end users and clients, this is a very common use case (more common in fact, than the field edit scenario).  There are numerous posting  on the Forums over time, on this same topic - I am clearly not alone in wanting better server-to-client synchronization support in ArcGIS Mobile.

ArcGIS Mobile should support efficient and fast data synchronization (of "deltas" or changes only) in both directions (i.e., to and from the server).

3 Comments
DavidCarpenter
Completely agree.  As a utility that covers a very large geographic area the data we are updating in the field consists of very large numbers of features (500,000 - 800,000).  Since field crews may assist each other with inspections, etc it becomes important for them to have all the data and know what features have been inspected, etc.  Synchronizing a large number of features quickly and efficiently is key because of low bandwidth connections, the same goes for getting the changes.  Replacing the entire dataset each time is not the ideal scenerio.  Changes only is a must for the success of this application in our environment.
StephenDickinson
I believe this is true pre ArcGIS Mobile 10. Pre 10 the refreshData parameter had to be set to true to refresh the cache data for the chosen extent and layers. This refresh involved the download of all data within the extent for the chosen layers. If the refreshData parameter was set to false, then only new features (adds) not already in the mobile cache would be downloaded.

At ArcGIS Mobile 10 only deltas (adds / edits / deletes) are downloaded for the chosen extent and layers.
ScottPrindle
Synchronization with Collector for ArcGIS uses a different sync model than previous products such as ArcGIS for Windows Mobile. This sync model is similar to what stephendickinson mentioned, where deltas (adds, edits, deletes) are sent and received between the client and server. More information about the Apps sync story can be found at the API reference: http://resources.arcgis.com/en/help/arcgis-rest-api/index.html#/Using_sync/02r3000000rs000000/