William Easton
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.
Static Timer
Dynamic Timer
Preemptive Timer
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