140 likes | 230 Vues
This paper explores strategies to reduce rollbacks in mobile environments by introducing a Dynamic Timer mechanism for database transactions. It addresses issues such as data starvation, mobile database architecture, and timing mechanisms to improve efficiency. By adjusting timers dynamically, the proposed method aims to minimize rollbacks and enhance overall data access in mobile settings, albeit with some trade-offs. The study compares different timing mechanisms and their impact on transaction success rates to provide insights for optimizing database operations in mobile environments.
E N D
William Easton Strategy to reduce rollbacks in mobile environments
Introduction • Mobile Environments • Locking and Data Starvation • Mobile DB Architecture • Timing Mechanisms • Static Timer • Dynamic Timer • Preemptive Timer
Mobile Environments • Prone to • Connection loss • Timeouts • Loss of bandwidth • Reduced storage • Limited battery power All these contribute to the frequency of failures of mobile databases.
Data Starvation • Phone connects and locks data • Phone disconnects • Phone holds that lock (indefinitely) • Other mobile devices cannot access that information • These locking strategies are good for traditional databases but are not optimal for mobile
Mobile DB Architecture • Mobile host • Fixed host • Mobile host may not always be connected to the fixed host
Timing Mechanisms • Static timer • A transaction must commit before the timer is finished • If not the transaction is aborted and locked data is aquired by the next mobile host attempting to access the information • Dynamic Timer • The solution this paper introduces
Dynamic Timer • Starts off with specified timer • As transactions are executed it changes according to how they are being executed • If transactions are running past the timer and are rolled back then the timer is increased slightly
Dynamic Timer • So processes that would’ve unsuccessfully processed earlier might be able to be completed • Leads to fewer rollbacks • There has to be a catch • Larger overhead • Processes in the queue will have to wait longer to access the data they need • There is a threshold time that the dynamic timer cannot surpass
Dynamic Timer This is an activity diagram from the paper to depict how the timer will be adjusted.
Final Metrics • Timeout(static) • Dynamic • Preemption • Overall the preemptive has the best commit rate with the least time but does require the knowledge of execution times
Questions • Mobile environments • Static methods • Dynamic method • Preemptive method • Conclusions