william easton. introduction mobile environments locking and data starvation mobile db...
TRANSCRIPT
![Page 1: William Easton. Introduction Mobile Environments Locking and Data Starvation Mobile DB Architecture Timing Mechanisms Static Timer Dynamic](https://reader036.vdocument.in/reader036/viewer/2022080905/56649ea75503460f94ba97b3/html5/thumbnails/1.jpg)
STRATEGY TO REDUCE ROLLBACKS IN MOBILE
ENVIRONMENTS
William Easton
![Page 2: William Easton. Introduction Mobile Environments Locking and Data Starvation Mobile DB Architecture Timing Mechanisms Static Timer Dynamic](https://reader036.vdocument.in/reader036/viewer/2022080905/56649ea75503460f94ba97b3/html5/thumbnails/2.jpg)
Introduction
Mobile Environments Locking and Data Starvation Mobile DB Architecture Timing Mechanisms Static Timer Dynamic Timer Preemptive Timer
![Page 3: William Easton. Introduction Mobile Environments Locking and Data Starvation Mobile DB Architecture Timing Mechanisms Static Timer Dynamic](https://reader036.vdocument.in/reader036/viewer/2022080905/56649ea75503460f94ba97b3/html5/thumbnails/3.jpg)
Mobile Environments
Prone toConnection lossTimeoutsLoss of bandwidth Reduced storageLimited battery power
All these contribute to the frequency of failures of mobile databases.
![Page 4: William Easton. Introduction Mobile Environments Locking and Data Starvation Mobile DB Architecture Timing Mechanisms Static Timer Dynamic](https://reader036.vdocument.in/reader036/viewer/2022080905/56649ea75503460f94ba97b3/html5/thumbnails/4.jpg)
Data Starvation
Phone connects and locks dataPhone disconnectsPhone 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
![Page 5: William Easton. Introduction Mobile Environments Locking and Data Starvation Mobile DB Architecture Timing Mechanisms Static Timer Dynamic](https://reader036.vdocument.in/reader036/viewer/2022080905/56649ea75503460f94ba97b3/html5/thumbnails/5.jpg)
Mobile DB Architecture
Mobile host Fixed host Mobile host may not always be
connected to the fixed host
![Page 6: William Easton. Introduction Mobile Environments Locking and Data Starvation Mobile DB Architecture Timing Mechanisms Static Timer Dynamic](https://reader036.vdocument.in/reader036/viewer/2022080905/56649ea75503460f94ba97b3/html5/thumbnails/6.jpg)
Timing Mechanisms
Static timerA 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 TimerThe solution this paper introduces
![Page 7: William Easton. Introduction Mobile Environments Locking and Data Starvation Mobile DB Architecture Timing Mechanisms Static Timer Dynamic](https://reader036.vdocument.in/reader036/viewer/2022080905/56649ea75503460f94ba97b3/html5/thumbnails/7.jpg)
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
![Page 8: William Easton. Introduction Mobile Environments Locking and Data Starvation Mobile DB Architecture Timing Mechanisms Static Timer Dynamic](https://reader036.vdocument.in/reader036/viewer/2022080905/56649ea75503460f94ba97b3/html5/thumbnails/8.jpg)
Dynamic Timer
So processes that would’ve unsuccessfully processed earlier might be able to be completedLeads to fewer rollbacksThere 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
![Page 9: William Easton. Introduction Mobile Environments Locking and Data Starvation Mobile DB Architecture Timing Mechanisms Static Timer Dynamic](https://reader036.vdocument.in/reader036/viewer/2022080905/56649ea75503460f94ba97b3/html5/thumbnails/9.jpg)
Dynamic TimerThis is an activity diagram from the paper to depict how the timer will be adjusted.
![Page 10: William Easton. Introduction Mobile Environments Locking and Data Starvation Mobile DB Architecture Timing Mechanisms Static Timer Dynamic](https://reader036.vdocument.in/reader036/viewer/2022080905/56649ea75503460f94ba97b3/html5/thumbnails/10.jpg)
Static Timer
![Page 11: William Easton. Introduction Mobile Environments Locking and Data Starvation Mobile DB Architecture Timing Mechanisms Static Timer Dynamic](https://reader036.vdocument.in/reader036/viewer/2022080905/56649ea75503460f94ba97b3/html5/thumbnails/11.jpg)
Dynamic Timer
![Page 12: William Easton. Introduction Mobile Environments Locking and Data Starvation Mobile DB Architecture Timing Mechanisms Static Timer Dynamic](https://reader036.vdocument.in/reader036/viewer/2022080905/56649ea75503460f94ba97b3/html5/thumbnails/12.jpg)
Preemptive Timer
![Page 13: William Easton. Introduction Mobile Environments Locking and Data Starvation Mobile DB Architecture Timing Mechanisms Static Timer Dynamic](https://reader036.vdocument.in/reader036/viewer/2022080905/56649ea75503460f94ba97b3/html5/thumbnails/13.jpg)
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
![Page 14: William Easton. Introduction Mobile Environments Locking and Data Starvation Mobile DB Architecture Timing Mechanisms Static Timer Dynamic](https://reader036.vdocument.in/reader036/viewer/2022080905/56649ea75503460f94ba97b3/html5/thumbnails/14.jpg)
Questions
Mobile environments Static methods Dynamic method Preemptive method Conclusions