Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Capacidade de Sistemas
através de Cadeias de
Markov
Rubens Matos
Francisco Vieira
Carlos Julian
Paulo Maciel
Apresentação
Tempo de resposta
Vazão Disponibilidade
QoS
Confiabilidade
Escalabilidade
Segurança
O que é Planejamento de Capacidade?
Quantos atendentes eu
preciso pra que não
haja filas?
Planejando a capacidade de um banco
Sabendo que:
Chega um novo cliente a cada 2 minutos exatamente.
Cada atendente leva 3 minutos pra realizar o serviço
pedido pelo cliente.
Facilmente descobre-se que são necessários 2
atendentes: Tempo (min.)
0 1 2 3 4 5 6 7 8 9 10 11 12 ...
Chegada 1 2 3 4
Saída 1 2 3 4
Planejando a capacidade de um banco
Sabendo que:
Chega um novo cliente a cada 2 minutos, exatamente.
Cada atendente leva 3 minutos pra realizar o serviço
pedido pelo cliente.
Facilmente descobre-se que são necessários 2
atendentes: Tempo (min.)
0 1 2 3 4 5 6 7 8 9 10 11 12 ...
1 2 3 4
A B
Desafios à vista
O lançamento de um dado.
S = {1,2,3,4,5,6}
O lançamento de uma moeda.
Cálculo de probabilidades.
A forma clássica de se calcular a probabilidade de um evento A, é
denotada por P(A), com m elementos em um espaço amostral finito S =
{a1, a2, ..., an}, onde os n pontos amostrais ai (i = 1, 2, ..., n) devem ter a
mesma probabilidade de ocorrer, ou seja, eles são equiprová-veis, é dada
pela relação entre a quantidade de casos favoráveis ao evento A e a
quantidade de elementos do espaço amostral S, apresentada como um
número real ou em percentagem. P(A) = m/n.
Eventos independentes.
Diz-se que dois eventos são estatisticamente independentes se a
ocorrência de um deles não afeta a ocorrência do outro.
Exemplo. Dois lançamentos seguidos de um mesmo dado constituem dois
eventos independentes porque o resultado do primeiro lançamento não
tem qualquer influência sobre o resultado do segundo, e vice-versa.
Dados dois eventos independentes A e B, a probabilidade da ocorrência
conjunta é dada pela regra da multiplicação
P(A.B) = P(A B) = P(A).P(B)
Dados dois eventos não independentes A e B, a probabilidade
condicionada de A, dado que B já aconteceu é dada por
P(A|B) = P(A.B)/P(B) = P(A B)/P(B)
Conceitos básicos de probabilidade
Variáveis aleatórias
Dado um experimento e um espaço amostral S a ele
associado, denomina-se variável aleatória à função X que
associa a cada elemento s de S um número real X(s).
Variáveis aleatórias discretas ou contínuas
Seja X uma variável aleatória. Se os valores de X formarem
Visão simplista:
Modelo climático
Cadeias de Markov: Aplicações
Química
Economia
Telecomunicações
Computação
Reconhecimento de fala
Bioinformática
Compressão de dados
Visão real das cadeias de Markov
•Modelo matemático
•Processo aleatório
•Discreto
•Contínuo
•Ausência de memória
•Distribuição exponencial
(CTMC)
Definição formal
Ausência de memória
Requisição chega = +1
thread ocupada Servidor web (Apache) com 3 threads
Requisição sai = -1
thread ocupada
Tempo de serviço:
0.33 segundos
O sistema está superdimensionado?
Modelos para desempenho de sistemas
Matriz Q
-2 2 0 0
3 -5 2 0
0 6 -8 2
0 0 9 -9
E se a quantidade de acessos ao
site aumentar?
Análise do desempenho com o aumento
da carga
λ = 1/MTTF
δ = 1/MTTA
μ = 1/MTTR
Modelo para disponibilidade de um sistema
com 2 processadores
•SHARPE
•Reliability Workbench (ISOGRAPH)
•PEPA
•MATLAB
•R
•RAM Commander
•JMT (Java Modelling Tools)/ JMCH
Ferramentas para modelagem com
cadeias de Markov
Modos de utilização
GUI (Windows)
Console: Scripts com linguagem própria (Linux,
Windows, Solaris)
SHARPE
Sites da ferramenta:
http://people.ee.duke.edu/~kst/software_packages.html
http://sharpe.pratt.duke.edu
Estudos de caso
web services
Planejamento de redundância em redes
Modelo sem redundância
Sistema de agente
de viagens
Probabilidade do tempo de resposta
Dúvidas
Contato:
rsmj@cin.ufpe.br
rubens.matos@gmail.com
www.modcs.org