As computer hardware and wireless network technologies are developed to a high degree, there are many research efforts which intend to utilize data broadcasting to a large population of mobile clients through wireless channels. In recent years, different models of data delivery have been explored, particularly the periodic push model where the server repetitively disseminates information without any explicit request. In this paper, we devise new transaction processing algorithms, O-Post for update transactions and O-Pre for read-only transactions, in broadcast environments. Basically, each client executes its transactions in an optimistic manner and does some consistency checks based on periodic invalidation reports. When any kind of conflicts is found, the conflict order is determined according to the notion of reordering and the remaining operations are executed to hold the decision. We also develop a cache algorithm to cope with frequent restarts due to the optimistic execution. Experimental results are given to show the benefits of the proposed algorithms.
Wireless mobile computing is gaining more and more popularity because it can satisfy people’s information needs at any time and anyplace. Rapid advances in computer hardware and wireless network technologies have also lead to the development of mobile computing. A portable computer can access data stored in the wired network via base station by wireless communications. In terms of service design and application development, we have to consider some essential characteristics special to the mobile computing as follows [2], [7], [17] and [24]:
•
Limited resources. In a wireless communication, the transmission bandwidth is relatively small. A portable computer has low computing power, small storage space, and small display screen. Moreover, a battery-driven device has limited power.
•
Asymmetric communication. From the power consumption point of view, sending data is more costly than receiving data for a portable computer.
•
Frequent disconnections. Due to the interference of various noises or the exhaustion of battery power, a wireless connection will be frequently interrupted.
•
User’s mobility. The mobile computing environment can be regarded as a large heterogeneous environment. Users may move from one cell to another while accessing data. Service handoff, which enables continuous data access in different cells, should be transparently provided.
Briefly, there are two modes for users to access data through wireless channels. One is broadcast, which enables users to retrieve data by just listening to a certain channel. The other is on-demand, in which users send requests to get data of interest. Data broadcast is characterized by an inherent asymmetry in the communications: the bandwidth in the downstream direction (server-to-client) is much greater than in upstream direction (client-to-server). Thus, it allows users to retrieve data simultaneously with a cost independent of the number of users. Moreover, by broadcasting data, the servers avoid interrupts caused by requests. Generating efficient broadcast program is one of major research topic, which may also be combined with other purpose such as cache management or location-dependent data access [24].
These features cause some new problems and challenges on the mobile information systems [7]; traditional problems such as data format, cache management, transaction processing and so on, need to be discussed again with special emphasis on efficient resource usage and the properties of asymmetric communication.
To support transaction service in traditional distributed systems, many algorithms have been proposed and implemented, among which locking is very popular because of its comparatively stable performance under various environment settings [5]. However, the scheme may not adapt itself well to mobile environments since it originally requires a lot of message exchanges and can not cope with frequent disconnections efficiently. Thus, new transaction processing algorithms are strongly needed and are our main interest in this paper.
The proposed algorithms in this paper, O-Post for update transactions and O-Pre for read-only transactions, make good use of server’s broadcast information. That is, to decrease the number of costly upstream messages and to maintain the consistency of mobile transactions, a server continuously disseminates both the values of all data objects and useful control information. Basically, each client executes its transactions in an optimistic manner and also does some consistency checks partially or fully based on the periodic control information. In addition, cache data is maintained to reduce transaction span and to support fast re-execution after abortion. The effects of various parameters on the overall performance are also carefully studied through experiments.
The main contributions of our work are twofold:
(1)
Because our algorithms decrease the number of aborted transactions and support fast re-execution, mobile computers can make good use of their limited resources.
(2)
The server’s overhead can be reduced considerably, since the most part of the responsibility for executing transactions is transferred to clients.
From the limited resource point of view, data broadcast is especially suitable in mobile computing environments. However, the volume of information required for clients to execute mobile transactions is considerable, which may need frequent message deliveries from clients to the server, resulting in poor utilization of resources.
In this paper, we have presented two transaction processing algorithms, O-Post and O-Pre, which are based on reordering technique. Since mobile transactions are executed optimistically and the role of maintaining transactional consistency is delivered to clients partially or fully, the overhead of the server can be taken off considerably and each mobile client can make good use of its limited resources. In particular, the introduced reordering technique, which is based on both periodic control information and the properties of broadcast data, decreases the number of aborted transactions. Further performance improvement could also be achieved by adopting an effective local cache algorithm, which allows aborted transactions to restart fast.