Data Replication and Synchronization for Mobile Applications in Java Drawer ECC200 in Java Data Replication and Synchronization for Mobile Applications

11.3 Data Replication and Synchronization for Mobile Applications using barcode implementation for javabean control to generate, create datamatrix image in javabean applications. Web application framework 11.3.1 Sca j2ee 2d Data Matrix barcode lability Issues Involved with Synchronization and Replication in Mobile Application Infrastructures.

As we elud ed to earlier, whatever type of replication and synchronization is required for an application may dictate the functionality needed from the networking and communication infrastructures. For example, if we have one centralized datastore of which all of the devices have complete or partial replicas of and with which all of the devices must be synchronized, then a star communication topology provides us with the most ef cient infrastructure for the one-to-many replication and synchronization. However, the problem is that the networking and communication infrastructure typically comes before the synchronization problems and there are other considerations that often take precedence in the networking and communication infrastructure.

Therefore, our task when designing mobile applications that use replication and synchronization is typically to create the canonical design for a given networking and communication infrastructure without demanding much in the way of changes to it. We also previously mentioned that there exists a relationship between QOS and replication/synchronization of data on mobile devices. This relationship is symbiotic and not easily quanti able.

Namely, as the QOS drops off, we may want to do more frequent synchronizations; however, numerous synchronizations may hoard the available bandwidth and cause secondary problems such as bandwidth starvation to the mobile device. So, frequently the design decisions with which the mobile developer is faced includes how much of the data should be synchronized and within what periodicity this synchronization should take place. At the same time, an elaborate synchronization scheme may require more computing cycles on the client side.

We have to be aware of the techniques we used so that we do not increase the requirements on the device while trying to deal with the network connectivity restrictions. Multidevice synchronization is more dif cult, because maintaining the consistency of several devices might require many individual synchronizations between pairs of devices [Agarwal, Starobinski, and Trachtenberg 2000]. This presents us with somewhat of a scalability nightmare.

The problem is then twofold: First, the more devices that are connected to our datastore as replicas, the more replication and synchronization interactions we need. At the same time, we have to make sure that the system performs well, the number of con icts is kept to the absolute minimum, and the burden on the resource-starved devices is also kept to a minimum. So, let us summarize the scalability-related variables that we have to take into account when designing a scaleable mobile data replication and synchronization solution: 1.

Transaction Boundaries: Transactions should be sized to take maximum advantage of the available bandwidth and, yet, not cause hoarding in the case of failures. 2. Chunking: The data encapsulated in the transactions must be of a size whose integrity can be consistently guaranteed for delivery between replication and.

SYNCHRONIZATION AND REPLICATION OF MOBILE DATA synchroniz ation nodes. Otherwise, replication and synchronization will be far too slow because of the numerous retries. 3.

Number of Nodes to Be Synchronized: It is somewhat obvious that the higher the number of nodes to be synchronized, the more dif cult the scalability problem becomes. What is less obvious is that some network and data synchronization topologies handle this better depending on the nature of synchronization. In other words, the star topology is not always the optimal topology (we are talking about the application layer here and not the lower layers such as the physical layer).

Take, for example, a software provisioning system that provides the latest version of an application to hundreds of thousands of mobile devices. Such a system may use a replication and synchronization scheme to update the mobile devices with the latest versions of a software application that executes on the device and the local data les that go along with that (mobile) application. In this case, it may be ef cient and suf cient to centralize provisioning.

Now, think about a mobile application that we want to distribute to the market in a viral manner. In such a case, we may want every mobile device to be able to contact any other mobile device directly (e.g.

, like the Palm platform allows thorugh the IR port or like Bluetooth-enabled devices allow) and download the application or synchronize the latest data les that go along with the application. In this case, we would need an ad hoc networking infrastructure and the data replication and synchronization infrastructure that allows many-to-many replications. Of course, in addition to these considerations, we need to apply everything else that has been learned from the Internet experience as well as building scalable and robust mobile application infrastructures.

Yet, there are certainly some unique considerations when it comes to building scaleable applications that require data replication and synchronization..
Copyright © . All rights reserved.