approximate mean value analysis of a database grid application
Post on 20-Jan-2016
43 Views
Preview:
DESCRIPTION
TRANSCRIPT
March 1, 2004March 1, 2004 11
Approximate Mean Value Analysis of a Approximate Mean Value Analysis of a Database Grid ApplicationDatabase Grid Application
Dale R. ThompsonDale R. Thompson
Computer Science and Computer EngineeringComputer Science and Computer Engineering
University of ArkansasUniversity of Arkansas
March 1, 2004March 1, 2004 22
ContentsContents
IntroductionIntroduction Queueing Network Queueing Network
SystemSystem MVA algorithmsMVA algorithms Comparison of AMVAComparison of AMVA Proposed SystemProposed System Current Queueing Current Queueing
ModelModel CPU and Network CPU and Network
DemandDemand Maximum Throughput Maximum Throughput
and Block Sizeand Block Size
Uniform DistributionUniform Distribution Nonuniform Nonuniform
DistributionDistribution Uniform : number of Uniform : number of
ClientsClients Proposed change to Proposed change to
applicationapplication Segregation of batch Segregation of batch
and interactive classesand interactive classes ConclusionConclusion Future WorkFuture Work
March 1, 2004March 1, 2004 33
IntroductionIntroduction
A database grid application is modeled using an approximate mean A database grid application is modeled using an approximate mean value analysis algorithm. value analysis algorithm.
The system is represented by a queueing network. The system is represented by a queueing network. The analysis of a queueing network is important for predicting the The analysis of a queueing network is important for predicting the
performance of a system.performance of a system. Several algorithms will be explained and compared.Several algorithms will be explained and compared. Database grid application is introduced and the performance objectives Database grid application is introduced and the performance objectives
are defined and analyzed by using an approximate MVA algorithm called are defined and analyzed by using an approximate MVA algorithm called the Bard-Schweitzer algorithm or the proportional estimate (PE) the Bard-Schweitzer algorithm or the proportional estimate (PE) algorithm.algorithm.
Several models will be modeled. For example, uniform, non-uniform, etc.Several models will be modeled. For example, uniform, non-uniform, etc. A system in which the batch and interactive requests are segregated is A system in which the batch and interactive requests are segregated is
modeled. modeled. Conclusions of analysis.Conclusions of analysis.
March 1, 2004March 1, 2004 44
Queueing Network SystemQueueing Network System
server
client
queue
[Single class queueing server]
server
client2
queue
[Multiple class queueing server]
client3
client1
March 1, 2004March 1, 2004 55
MVA algorithmsMVA algorithms
0)(, NQ cd
Mean Value Analysis Mean Value Analysis calculates throughput (calculates throughput (XXcc), ), response time (response time (RRcc), and ), and queue length (queue length (QQd,cd,c)of each )of each class.class.
It can be classified with the It can be classified with the number of client – open or number of client – open or closed.closed.
It also can be classified with It also can be classified with how to get the values how to get the values Exactly or Approximately.Exactly or Approximately.
Single class or multiple Single class or multiple classes?classes?
when class c is a batch processing,Zc=0
K
dcdc
cc
NRZ
NNX
1, )(
)(
)](1[)( ,,, NQDNR cdcdcd
When Queueing Server,
When Delay Server,
0)(, NQ cd
0)(, NQ cd
March 1, 2004March 1, 2004 66
Classification of MVA Classification of MVA algorithmsalgorithms
March 1, 2004March 1, 2004 77
Comparison of AMVA Comparison of AMVA algorithmsalgorithms
AlgorithmsRank of
AccuracySpace Complexity Time Complexity
Exact MVA 1O(KC∏O(KC∏CC
c=1c=1(N(Ncc+1+1))
O(KC∏O(KC∏CCc=1c=1(N(Ncc+1+1
))
Linearizer 2 O(KCO(KC22)/iteration)/iteration O(KCO(KC33)/iteration)/iteration
PE 3 O(KC)/iterationO(KC)/iteration O(KC)/iterationO(KC)/iteration
LCP 4 O(KC)/iterationO(KC)/iteration O(KC)/iterationO(KC)/iteration
AlgorithmsRank of Accuracy
Space Complexity Time ComplexityNo con. Congestion
Exact MVA 1 1O(KC∏O(KC∏CC
c=1c=1(N(Ncc++1)1)
O(KC∏O(KC∏CCc=1c=1(N(Ncc+1+1
))
FL 2 4 O(KC)/iterationO(KC)/iteration O(KC)/iterationO(KC)/iteration
QL 3 2 O(KC)/iterationO(KC)/iteration O(KC)/iterationO(KC)/iteration
PE 4 3 O(KC)/iterationO(KC)/iteration O(KC)/iterationO(KC)/iteration
March 1, 2004March 1, 2004 88
Proposed SystemProposed System
High-level Overview of System
Database Link Application Example
March 1, 2004March 1, 2004 99
Cont.Cont.
A high-level view of the grid The Flow of Records
March 1, 2004March 1, 2004 1010
Current Queueing ModelCurrent Queueing Model
Queueing Model
March 1, 2004March 1, 2004 1111
CPU and Network DemandCPU and Network Demand
Record size - 500bytes, Ethernet - 26bytes, Record size - 500bytes, Ethernet - 26bytes, IP - 20bytes, TCP - 20bytes. Total actual IP - 20bytes, TCP - 20bytes. Total actual record size - 566bytesrecord size - 566bytes
Service demand1 : computers in the clients, Service demand1 : computers in the clients, the director grid, and database grid.the director grid, and database grid.
Service demand2 : network cards in the Service demand2 : network cards in the clients, the director grid, and database grid.clients, the director grid, and database grid.
recordssbits
bytebitsrecordbytes /10528.4/101
1)/8()/566( 6
9
recordssbits
bytebitsrecordbytes /10528.4/10100
1)/8()/566( 5
6
March 1, 2004March 1, 2004 1212
Maximum Throughput and Block Maximum Throughput and Block sizesize
Maximum attainable throughput : 79.5Mega Maximum attainable throughput : 79.5Mega record/hrrecord/hr
The block size : The block size : Batch class : 1150 recordsBatch class : 1150 records Interactive class : 1 recordInteractive class : 1 record. .
hrMreccordhrsrecords
/5.7910//3600/10528.4
1 65
March 1, 2004March 1, 2004 1313
Uniforms DistributionsUniforms Distributions
Each record was equally likely to go to any of the computers in the Each record was equally likely to go to any of the computers in the database grid,database grid,
Block size : varyingBlock size : varying
Uniform
0.00
0.05
0.10
0.15
0.20
50 500 950 1400 1850Block Size (records)
Dela
y Ti
me
(s/re
cord
)
10 Dir
15 Dir
20 Dir
Uniform
0102030405060708090
50 500 950 1400 1850Block Size (records)
Thro
ugpu
t (M
reco
rds/
hr)
20 Dir
15 Dir
10 Dir
March 1, 2004March 1, 2004 1414
Non-uniform DistributionNon-uniform Distribution
Non-uniform distribution of demands was created by Non-uniform distribution of demands was created by assuming that assuming that 20 clients : 10,15,20 director computers : 70 database 20 clients : 10,15,20 director computers : 70 database
computerscomputers 80% of the requests from clients (16 clients) => 20% of the 80% of the requests from clients (16 clients) => 20% of the
database grid (14 Computers). database grid (14 Computers). The remaining 20% of the requests (4 clients)=> the The remaining 20% of the requests (4 clients)=> the
remaining 80% of the database grid (56 Computers)remaining 80% of the database grid (56 Computers)Throughput Throughput
(Mrecords/hr)(Mrecords/hr) 10 directors10 directors 15 directors15 directors 20 directors20 directors
UniformUniform 4040 5959 7979
Non-uniformNon-uniform 4040 5959 7171
Delay time Delay time (s/records)(s/records) 10 directors10 directors 15 directors15 directors 20 directors20 directors
UniformUniform 0.10430.1043 0.07830.0783 0.05230.0523
Non-uniformNon-uniform 0.10430.1043 0.07830.0783 0.05810.0581
March 1, 2004March 1, 2004 1515
Uniform : Number of ClientsUniform : Number of Clients
Uniform : 1150 recordsUniform : 1150 records Varying number of Clients : 20, 40, 60Varying number of Clients : 20, 40, 60
Throughput Throughput (Mrecords/hr)(Mrecords/hr) 20 clients20 clients 40 clients40 clients 60 clients60 clients
10 directors10 directors 4040 2020 1313
15 directors15 directors 5959 3030 2020
20 directors20 directors 7979 4040 2626
Delay time Delay time (s/record)(s/record) 20 clients20 clients 40 clients40 clients 60 clients60 clients
10 directors10 directors 0.10430.1043 0.20840.2084 0.31260.3126
15 directors15 directors 0.07830.0783 0.14330.1433 0.20840.2084
20 directors20 directors 0.05230.0523 0.10430.1043 0.15640.1564
March 1, 2004March 1, 2004 1616
Proposed Change to Proposed Change to applicationapplication
It assume that there are two times update (new geo. and old geo.)It assume that there are two times update (new geo. and old geo.) This proposed change was modeled by having 5% of the clients (1 This proposed change was modeled by having 5% of the clients (1
client out of 20) require demand from two different database grid client out of 20) require demand from two different database grid computers. computers.
Block size : 1150 recordsBlock size : 1150 recordsThroughput Throughput
(Mrecords/hr)(Mrecords/hr) 10 directors10 directors 15 directors15 directors20 20 directodirecto
rsrs
Original ApplicationOriginal Application 4040 5959 7979
Proposed ApplicationProposed Application 3939 5757 7777
% decrease% decrease 2.502.50 3.323.32 2.492.49
Delay time (s/record)Delay time (s/record) 10 directors10 directors 15 directors15 directors20 20 directodirecto
rsrs
Original ApplicationOriginal Application 0.10430.1043 0.07830.0783 0.05230.0523
Proposed ApplicationProposed Application 0.10950.1095 0.08090.0809 0.05490.0549
% increase% increase 4.984.98 3.323.32 4.974.97
March 1, 2004March 1, 2004 1717
Segregation of batch and Segregation of batch and interactive classesinteractive classes
This model is for This model is for the real systemthe real system.. 20 clients : 16 director computers : 70 database computers.20 clients : 16 director computers : 70 database computers.
There are 12 clients batch and 8 clients interactive record. There are 12 clients batch and 8 clients interactive record. Batch 12 clients => 12 directorsBatch 12 clients => 12 directors Interactive 8 clients => 4 directors.Interactive 8 clients => 4 directors.
Throughput (Mrecords/hr)Throughput (Mrecords/hr)
InteractiveInteractive 3.43.4
BatchBatch 47.547.5
TotalTotal 50.950.9
Avg. Delay (s/record)Avg. Delay (s/record)
InteractiveInteractive 0.00020.0002
BatchBatch 0.03140.0314
TotalTotal 0.03160.0316
This reduces the mean delay This reduces the mean delay per record to better serve the per record to better serve the interactive clientsinteractive clients
The database link application The database link application could use the 0.0002 s/record could use the 0.0002 s/record parameter as a design parameter as a design parameterparameter
March 1, 2004March 1, 2004 1818
Conclusions of WorkConclusions of Work
First, the number of directors should be approximately equal First, the number of directors should be approximately equal to the number of clients to obtain the maximum throughput of to the number of clients to obtain the maximum throughput of the system.the system.
Second, the bottleneck device in this system is the network.Second, the bottleneck device in this system is the network. The proposed application change that caused 5% of the The proposed application change that caused 5% of the
records to require service from two database grid computers records to require service from two database grid computers did not significantly decrease the performance of the system. did not significantly decrease the performance of the system.
Segregating the batch and interactive classes at the director Segregating the batch and interactive classes at the director level causes the response time of the interactive classes to level causes the response time of the interactive classes to decrease. The decreased response time comes at the price of decrease. The decreased response time comes at the price of lowering the overall throughput of the system. As discussed, lowering the overall throughput of the system. As discussed, the model can be used to determine the trade offs of the model can be used to determine the trade offs of decreased response time versus increased throughput.decreased response time versus increased throughput.
March 1, 2004March 1, 2004 1919
Future WorkFuture Work
Traffic analysis of submitted recordsTraffic analysis of submitted records Simulation of alternate configurationsSimulation of alternate configurations Scheduling of grid computersScheduling of grid computers Modeling/Simulation of different Modeling/Simulation of different
applicationsapplications Grid-enable applications that run in Grid-enable applications that run in
different locations different locations andand organizations organizations Others?Others?
top related