1 M. Teixeira and Pablo Sabadin Planning Databases Service Level Agreements through Stochastic Petri Nets
2 Planning Databases Service Level Agreements through Stochastic Petri Nets – SBBD’11 The SOA has became a pattern for planning business transactions in distributed environments; In SOA, the requirements are expressed by SLA One kind of clauses is regarding to DB operations PROBLEM: It is very difficult negociating an appropriated SLA, that could be guaranteed in practice! Motivation Proposal: A Simulation modeling approach, based on stochastic Petri nets, to estimate the performance of DB transactions Performance Estimation
3 Planning Databases Service Level Agreements through Stochastic Petri Nets – SBBD’11 Presentation Outline Preliminaries: SOA Involved concepts Context of the problem Motivation Petri nets Involved concepts Proposed Model Context Structure Notation Exemplo Process Defined SLA clauses Input Parameters PMF Simulations Conclusions
4 Planning Databases Service Level Agreements through Stochastic Petri Nets – SBBD’11 SOA Context Goal Business process integration. Features Functionality as services; Distributed; Orchestrated. Main advantages: Flexibility; Interoperability; Reuse;...
5 Planning Databases Service Level Agreements through Stochastic Petri Nets – SBBD’11 Requestor Orchestration Assign Invoker Reply WS 2 WS 1 Request Response SOA Transaction DB
6 Planning Databases Service Level Agreements through Stochastic Petri Nets – SBBD’11 Server 1 Server 2 Server 3 system crash Capacity Planning
7 Planning Databases Service Level Agreements through Stochastic Petri Nets – SBBD’11 Proposed Model - Context Teixeira et al. 2009, 2010, 2011 SBBD proposal Rud et al. 2006, 2008 Wu et al. 2008
8 Planning Databases Service Level Agreements through Stochastic Petri Nets – SBBD’11 Proposed Model - Structure <---- ResponseTime = E{#P_Stat}*Delay
9 Planning Databases Service Level Agreements through Stochastic Petri Nets – SBBD’11 Proposed Model - Feeding d i = delay Workload = 1/delay Ri = Memory Pages (Number * Size) Ki = Supported parallel DB operations (Measured) Arcs = Size of the exchanged messages (Measured)
10 Planning Databases Service Level Agreements through Stochastic Petri Nets – SBBD’11 Proposed Model - Feeding = average = stardard Deviation > 1 (Hyper-Exponential) = 1 (Exponential) Jain, 1991 Desrochers, 1994
11 Planning Databases Service Level Agreements through Stochastic Petri Nets – SBBD’11 Case Study - Process
12 Planning Databases Service Level Agreements through Stochastic Petri Nets – SBBD’11 Example of a DB request. Implement a query that returns all the clients and their respective negotiated invoices, admitting that: (i) the merchandises were already shipped; (ii) the deadline for the payment is in, at most, one month. Sort the results by the invoice deadline. Case Study – Measured Parameters
13 Planning Databases Service Level Agreements through Stochastic Petri Nets – SBBD’11 Case Study – PMF Adoption Average: ms Std. Deviation: ms Coefficient of Variation: Hypo-Exponential
14 Planning Databases Service Level Agreements through Stochastic Petri Nets – SBBD’11 Entire Model Hypo-Exponential
15 Planning Databases Service Level Agreements through Stochastic Petri Nets – SBBD’11 Case Study – Simulations and Results 83%
16 Planning Databases Service Level Agreements through Stochastic Petri Nets – SBBD’11 Case Study – SLA Planning Question 1: Let W be a predefined workload of requests arriving at DB server (req/sec). Which SLA, for the DB mean response time, could be guaranteed in practice? Alternative 1: For W = 5 SLA ≈ 0,4 s Alternative 2: For W = 10 SLA ≈ 1 s Alternative 3: For W = 50 SLA ≈ 4 s
17 Planning Databases Service Level Agreements through Stochastic Petri Nets – SBBD’11 Case Study – SLA Planning Question 2: Let RT be an established SLA for the response time. Which SLA, for the higher supported workload, could be guaranteed in practice, such that the mentioned RT is not exceeded? Alternative 1: For RT = 0,5 s Alternative 2: For RT = 1 s Alternative 3: For RT = 3 s SLA ≈ 6 req/sec SLA ≈ 10 req/sec SLA ≈ 40 req/sec
18 Planning Databases Service Level Agreements through Stochastic Petri Nets – SBBD’11 We proposed a simple and flexible model; We based on a real lack observed in the industry The work was not conceived to be only a theoretical idea Plans for the future: Extending the performance model Embodying a failure model Improving the model validation Estimating metrics for very large databases Using the model in practice Closing Remarks
19 Planning Databases Service Level Agreements through Stochastic Petri Nets – SBBD’11 Thank you all! I'm available for questions. Acknowledgments