Guiding transaction design through architecture-level performance and data consistency prediction
Designing transactional software which operates not only in a timely fashion but also preserves data consistency is challenging. While it is easy to preserve data consistency by choosing a high isolation level, this can quickly become a performance bottleneck due to limited concurrency. Conversely, relaxing the isolation between concurrent transactions may lead to data inconsistencies. Solving this tradeoff systematically requires quantitative knowledge on the relation between transaction performance and the likelihood of data consistency violations under a given isolation level. Architecture-level performance prediction is a promising approach to address the first half of this trade-off but often neglects the influence of transactions. The second half-data consistency-is not addressed at all by existing approaches. Therefore, we plan to integrate transaction modelling into the Palladio approach for componentbased software quality prediction. This creates the opportunity to predict not only performance metrics more accurately, but also to estimate data consistency violations.
Full Text: PDF