Challengestotransactionperformance:skewandworkloadvariation
3
DatabaseElasticityE-Store–manageskewandreacttovariation
P-Store–predictivemodelingfortimevariation
TransacHon
s
0
3
5
8
10
Part1 Part2 Part3
E-Store: Elastic Scaling to Adapt to Workload
TransactionArrivalRate
4
UniformWorkload,IncreasingLoad
TransacHon
s
0
3
5
8
10
Part1 Part2 Part3
E-Store: Elastic Scaling to Adapt to Workload
TransactionArrivalRate
4
UniformWorkload,IncreasingLoad
E-Store: Elastic Scaling to Adapt to Workload
TransactionArrivalRate
TransacHon
s
0
3
5
8
10
Part1 Part2 Part3 Part4 Part54
UniformWorkload,IncreasingLoad
E-Store: Elastic Scaling to Adapt to Workload
TransactionArrivalRate
TransacHon
s
0
3
5
8
10
Part1 Part2 Part3 Part4 Part54
UniformWorkload,IncreasingLoad
TransacHon
s
0
2.5
5
7.5
10
Part1 Part2 Part3 Part4 Part5
E-Store: Elastic Scaling to Adapt to Workload
TransactionArrivalRate
4
UniformWorkload,IncreasingLoad
TransacHon
s
0
2.5
5
7.5
10
Part1 Part2 Part3 Part4 Part5
E-Store: Elastic Scaling to Adapt to Workload
TransactionArrivalRate
TransacHon
s
0
3
5
8
10
Part1 Part2 Part3
TransactionArrivalRate
4
UniformWorkload,IncreasingLoad SkewedWorkload
TransacHon
s
0
2.5
5
7.5
10
Part1 Part2 Part3 Part4 Part5
E-Store: Elastic Scaling to Adapt to Workload
TransactionArrivalRate
TransacHon
s
0
3
5
8
10
Part1 Part2 Part3
TransactionArrivalRate
4
UniformWorkload,IncreasingLoad SkewedWorkload
TransacHon
s
0
3
5
8
10
Part1 Part2 Part3
TransacHon
s
0
2.5
5
7.5
10
Part1 Part2 Part3 Part4 Part5
E-Store: Elastic Scaling to Adapt to Workload
TransactionArrivalRate TransactionArrivalRate
4
UniformWorkload,IncreasingLoad SkewedWorkload
E-Store Elastic DBMS Architecture
5
LiveMigration
ElasticController
PlannerLoadMonitor
SharedNothingDBMS(e.g.H-Store)
P-Store Architecture
10
LiveMigration
PredictiveController
Predictor PlannerLoadMonitor
SharedNothingDBMS(e.g.H-Store)
Options1. Addmachine(s)2. Removemachine(s)3. Nochange
Challenges1. TimetoReconfigure2. EffectiveCapacity3. Cost
DemandMachineCapacity
EffectiveCapacity
13
Time to Reconfigure
• Ratecontrol:smallchunksofdata,spacedapart• ∃sometimeD–minimumtimetomoveentiredatabasew/noperformanceimpact
%ofD
ata
0
50
100
Nodes
1 2 3 4
%ofD
ata
0
50
100
Nodes
1 2 3
→
Time = ¼ * D 14
Effective Capacity%of
TransacHon
s
0255075100
Nodes
1 2 3 4 5
%of
TransacHon
s
0255075100
Nodes
1 2
=
15
• Whattransactionratecanthesystemsupport?• Maxratepermachine:Q
DemandMachineCapacity
EffectiveCapacity
4machines att=9
Goal:findpathwithminimalcostsuchthateff.capacity>demand
Costof{pathtoAmachinesendingattimet}
= Costof{pathtoBmachinesendingattimet–TimeB→A}+
CostB→A 17
Dynamic Programming Algorithm for Planning Reconfigurations• Complexity∝#timestepsandmaxnumberofmachinesneeded• Inpractice:runtime<1second• Greedyalternativesdon’twork
18
Time Series Prediction
• Diurnal,periodicworkload,somevariationdaytoday• Predictionmustcompleteinseconds-to-minutes• WeuseSparsePeriodicAuto-Regression(SPAR)–Chenetal.NSDI‘08
20
Experiments
• 3DaysofB2WworkloadrunonH-Store• Clusterof10servers,6partitionsperserver• About1GBofshoppingcartandcheckoutdata• Trackmachinesallocated,throughput,latency,reconfigurationtimeperiods
22
Summary: P-Store Evaluation
• Canwereduceresourceusage?• Saves50%ofcomputingresourcescomparedtostaticallocation
• Canwepreventlatencyspikes?• Superiorperformancecomparedtoreactiveapproach
• Onarealworkload,P-Storereducesresourceusagewhilekeepinglatencywithinapplicationrequirements
29
Summary
❖Realdatabaseworkloadsareskewedandvaryovertime❖Elasticityenablesmanagementofskewandadaptationtoloadchanges
❖Predictivescalingimprovesperformanceduringloadchangescomparedtoreactivescaling
30