Mobile Transaction Processing
In both centralized and DDBS, data and machines have fixed locations. As a result of recent advances in the development of portable computing devices and wireless communication networks, mobile computing began to emerge in many database applications.
The mobile computing environment consists of mobile computers, known as mobile hosts, and a wired network of computers, some of which are mobile support stations through which mobile hosts can communicate with the wired network. Each mobile support station manages those mobile hosts within its cell, the geographical area it covers. Figure 5 shows both a wired and wireless connected networking environment.
Mobile computing systems can be viewed as an extension of distributed systems (36). However, to support TP in the mobile computing environment, physical limitations imposed by the nature of the networking environment have to be taken into consideration.
- Communication between mobile hosts and mobile support stations is asymmetric. Bandwidth in the upstream direction from mobile hosts to mobile support stations is low, resulting in excessive latency.
- Portable computing devices have a limited battery life, processing capability, and storage capacity.
- Most mobile hosts do not stay continuously connected, for a number of reasons, including reducing connection charges and saving power. Mobile hosts can also move between cells, disconnecting one cell to connect to another.
In such an environment, the characteristics of mobile transactions can differ in a number of ways from transactions in distributed systems.
- When a mobile host moves to a new cell during the execution of a transaction, it might need to continue its execution in another cell. Therefore, a mobile transaction might have to split its computation in that some parts of the computation are executed on the mobile host and others on different fixed hosts.
- A mobile transaction tends to be long-lived because of the high latency of wireless communication and long disconnection time.
A mobile transaction tends to be prone to failure.
- A mobile transaction may be running in a distributed and heterogeneous system.
Traditional TP protocols may not address these distinctive characteristics of mobile computing systems and mobile transactions. To support TP in a mobile computing environment efficiently and effectively, a number of desirable features should be supported.
- Operations on shared data must ensure correctness of transactions executed on both mobile hosts and fixed hosts.
- Transaction aborts and blocking should be minimized to save resources and to increase concurrency. Early detection of data conflicts leading to transaction restarts is required.
- Communication between mobile hosts and support stations should be minimized and adaptable to the network connectivity.
- Autonomy for mobile transactions to be processed locally during disconnection should be supported.
A traditional distributed transaction consists of a set of sub-transactions that are executed concurrently at multiple sites and there is one coordinator to coordinate the execution and commitment of these subtransactions. A mobile transaction is another kind of distributed transaction. The entire transaction can be submitted in a single request from the mobile host, or the operations of a transaction are submitted in multiple requests, possibly to different support stations in different cells.
The former method involves a single coordinator for all the operations of the transaction, whereas the latter may involve multiple coordinators. For example, after submitting some operations (and getting partial results back), the mobile host might need to submit the remaining operations to another cell because it has moved to a new cell. The execution of the mobile transaction is not fully coordinated by a single coordinator because, to a certain extent, it depends on the movement of the mobile computer.
The kangaroo transaction model (41) uses a split operation to create a new subtransaction when the mobile computer hops from one cell to another. A subtransaction is a global or a local transaction that can be committed independently and the failure of one may result in the entire kangaroo transaction being undone. To manage the execution of a kangaroo transaction, a data structure is maintained between the mobile support stations involved.
In typical multidatabase systems where users may simultaneously access heterogeneous data from different local databases, a global locking table can be maintained for correct execution of concurrent global and local transactions. In the mobile environment, intensive communication of locking information between the local sites and the global transaction manager is impractical because of the physical limitations of the networking environment.
A hierarchical concurrency control algorithm using global locking table with semantic information contained within the hierarchy can be used to dynamically adjust the amount of communication required to detect and resolve data conflicts.
To reduce the impact on local transactions due to the processing of the long-lived global transactions submitted by mobile users, the Pre-Serialization technique allows global transactions to establish their serialization order before completing execution (43). In this way, subtransactions of a global transaction can be committed independently at local sites and resources may be released in a timely manner.
Guaranteeing the consistency of data processed by mobile hosts is harder because mobile hosts are often disconnected from the rest of the network while still in operation. For instance, if a data item cached in a mobile computer is updated by another computer while the mobile computer is disconnected, the cached data will become inconsistent or out of date. If a conventional lock- based approach is adopted in the mobile computing environment to maintain data consistency, the system could suffer from significant performance degradation as the data items held by a long-lived mobile transaction could not be released until the transaction commits.
To improve data availability, a transaction can pre-commit at the mobile host (44) so that the future value of a data object can be made visible to other transactions before the delayed final commit of the transaction at the mobile support station, which reduces the blocking of other transactions to increase concurrency and costly transaction aborts can also be avoided as a pre-committed transaction is guaranteed to commit.
During disconnection, mobile host users may issue query or update transactions on the data that reside locally. Data are often replicated or cached at mobile hosts for reasons of performance and availability. To support TP in a networking environment with intermittent links, weak transactions(45) let users access local data in mobile computing applications where bounded inconsistency is acceptable. In a weak transaction, weak read operations read local, potentially inconsistent copies and weak write operations perform tentative updates. Data reconciliation can be activated when the mobile computer is reconnected to the wired network.
In mobile computing systems, the number of mobile hosts is far greater than the number of support stations, and support stations have a relatively abundant downstream bandwidth. The pull-based architecture in traditional distributed systems, where data items are delivered from servers to clients on a demand basis, is no longer a good match in mobile computing systems. In contrast, push-based data delivery fits well the inherent communication asymmetry to exploit the abundant downstream bandwidth in mobile computing systems.
In the push-based architecture called Broadcast Disks(46), data items are continuously and repetitively broadcast to mobile hosts without any specific request, and the mobile hosts listen to the broadcast channel and retrieve data of their interest. Data dissemination can be found in many applications, including stock trading and electronic auctions. In these applications, data updates must be disseminated promptly and consistently to a large community of mobile users.
In the broadcast environment, data items may be updated by transactions executed at the server while they are being broadcast. To ensure the consistency of mobile transactions, the broadcast channel can be used to transmit concurrency control-related information to the mobile hosts to perform all or part of the transaction validation function (47-49). In this way, data conflicts can be detected earlier at the mobile hosts to avoid any computing and communication resources being wasted, as well as helping to improve the performance of mobile transactions.
In addition, transaction restarts are more costly in the mobile environment. Excessive transaction aborts because of ineffectiveness of the concurrency control mechanisms or unnecessary restrictive correctness criteria should be avoided (50).
To increase the concurrency of mobile transactions, multiple versions of data items can be broadcast (51). A mobile read-only transaction can choose to read the data versions, if they exist, that correspond to a single database state. With multiversioning, mobile transactions can resume execution after temporary disconnection, as long as the required versions are still on the broadcast. To provide better currency, additional information in the form of an invalidation report consisting of a list of data items that have been updated can periodically be broadcast to the mobile hosts.
Mobile transactions also introduce some other new problems, such as awareness of location. In wired DDBSs, location transparency is an important feature. However, mobile applications may be location-dependent, for instance, the current position of a mobile host may be accessed by a mobile transaction. Moreover, failures occur more often in mobile computing because of the frequent switching on and off of mobile computers and the frequent handoff when mobile computers move across the boundary of cells. Another new challenge in the mobile computing environment is failure handling and recovery.
Date added: 2024-02-27; views: 168;