Abstract
A data sharing environment consists of multiple loosely coupled transaction processing nodes sharing a common database at the disk level. Apart from the private buffers in each node, the environment may contain an additional global shared buffer in the form of disk cache, file server cache or intermediate shared memory. In this dissertation, we develop a comprehensive analytical model for such a complex environment using a hierarchical approach, where the concurrency control, the CPU queueing discipline and the buffer hit probabilities of the private and shared buffers are first modeled separately, and then integrated through an iterative procedure. To this end, we develop two new submodels: (1) the private buffer model that captures the effects of multi-system buffer invalidation, skewed database access, LRU buffer replacement policy and the rerun transactions, and (2) the shared buffer modeling framework that captures the effects of dependence between the contents of private and the shared buffers, and is used to analyze various shared buffer management policies (SBMPs) proposed in this dissertation. The various policies propagate a granule into the shared buffer after one or more of the following events: database update, shared buffer miss and private buffer replacement. The analytical model is then used to investigate various issues in the design of data sharing environment. Scalability. The model predicts degradation in transaction response time as new nodes are added to the system. Buffer utilization. The model predicts the effectiveness of additional buffer allocation for both the private and shared buffers. Skewed access. The skewed access increases both data contention and buffer hit probability in the system. The resultant effect on the transaction response time is investigated. The response time is found to be more sensitive to skewed data access under two-phase locking (2PL) than under optimistic concurrency control (OCC) protocol. The skewed access also magnifies the effect of invalidation and reduces the utilization of private buffers. Policy selection. The modeling framework is used to select the best SBMP for a given parameter range (private and shared buffer sizes, shared buffer access overhead and delay, number of nodes, database access pattern, update probabilities, etc.). The updates should always be propagated to the shared buffer to alleviate the invalidation problem. For a smaller number of nodes, the effect of dependence between the contents of the private and the shared buffers influences policy selection. Optimal configuration. The model can be used to optimally allocate the buffer between the private and the shared buffers in various system architectures depending on the overhead and delay in accessing the shared buffer. For a larger number of nodes and under skewed database access, the shared buffer can improve the transaction response time significantly.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.