Supporting System-Wide Similarity Queries for Networked System Management
Suporte a Consultas de Similaridade de Sistema para de gestão de redes
Songyun Duan and Xiaoqiao Meng and Hui Zhang and Guofei Jiang
Gestão de Redes - Evolução
Aumento do número de sistemas de larga
escala.
Aumento da complexidade dos sistemas.
Aumento do volume de dados a analisar.
Exemplo:
− Os data centers da Google têm centenas de servidores
que processam milhões de consultas todos os dias. Esses sistemas são complexos e bastante heterogêneos.
Gestão de Redes - Questões
Como monitorar este tipo de sistemas?
Monitorando extensivamente cada um dos seus
componentes Enorme volume de dados→
Como correlacionar os dados para que seja
possível obter uma visão holística, i.e. global, do estado da rede e da sua performance?
Como consultar os dados provenientes dos
Gestão de Redes - Soluções
Soluções existentes no mercado que suportam
vizualização/navegação de dados ou consultas
SQL-like: AT&T SWIFT-3D UC Berkley TelegraphCQ Yahoo Pig Facebook Hive Microsoft DryadLINQ
Consultas de Similaridade
Soluções apresentadas somente consultam os
dados coletados.
E as semelhanças de comportamento dos
objetos durante um determinado tempo?
Objetivo:
Conhecer a similaridade ou a dissimilaridade entre
objetos da rede para que os operadores possam analisar melhor o estado global do sistema.
Consultas de Similaridade - Exemplos
Ao encontrar um problema de performance no
período de tempo T, será que já foi detectado um problema similar no passado que entretanto já foi diagnosticado e resolvido?
Quais os protocolos que apresentam um padrão
mais similar a uma determinada hora?
Entre várias instâncias de máquinas virtuais
quais as que têm uma carga similar e quais as que têm uma carga mais distinta?
Consultas de Similaridade - Exemplos
Supondo que existe um histórico temporal
indexado sobre o estado de um sistema.
− SH – Estados saudáveis − SU – Estados de falha
Quando existir um estado de falha S
Q o
S
2Q Framework - Etapas
Modelagem do sistema Cálculo da similaridade Indexação Formulação e execução de consultasModelagem do Sistema
Fluxo de dados contínuo
− D – Fluxo de dados
− Xi é uma série de valores de uma métrica, medida numa
Modelagem do Sistema
Relações de dependência pares:
1.Dependências físicas – relacionamento direto entre componentes
2.Dependências estatísticas – calcula correlações
estatísticas com base em séries temporais para um par de componentes de sistema usando uma métrica de correlação
• Exemplo simples: Correlação linear • Proposta: Matriz de correlação
Relações de Dependência Pares
1ºCálculo
Gerar a matriz de auto-covariância do
componente X
− ω – tamanho da janela temporal
− m – tamanho da janela de histórico
− Xi,ω – Série temporal começando no instante i até i+ω-1
Relações de Dependência Pares
2ºCálculo
Calcular o valor da dependência entre X e Y
baseando-se nas matrizes de auto-covariância.
Decompor as matrizes usando decomposição em
valores singulares (SVD)
− Toda a matriz A ε IRmxn pode ser escrita como:
A = USVT
onde Umxm e Vnxn são ortogonais e Smxn é diagonal.
O valor de dependência é calculado como a distância
Relações de Dependência Pares
1º passo do cálculo define sinopses locais.
2º passo define sinopses globais.
Relações de Dependência Pares
Atualização Incremental
Equal-Importance
Cálculo da Distância
Supondo V1 e V2 (vectores de colunas) das
matrizes de covariância
Decompor em valores singulares (SVD) o produto de
ambos [U,S,V] = SVD(V'1*V2)
Se o maior valor singular em S for aproximadamente
Métricas de Similaridade
Objetivo: Encontrar estados passados que são
similares ao estado atual s.
Instance-Based retrieval
− Procurar o vizinho mais próximo de s considerando os
estados passados.
Clustering
− Agrupar os estados passados dos vizinhos e calcular o
centroide que está mais próximo a s utilizando k-médias
Métricas de Similaridade
Graph-based Approach
− V – componentes alvo do sistema
− Et – conjunto de relações de dependência entre
Índices
Índices baseados em detecção de mudanças
Quando o estado do sistema não muda as distâncias
para os vizinhos deve ser aproximadamente 0.
Quando existe uma mudança nos estados a distância
aumenta
Índice construído com base nas mudanças
verificadas, desta forma a obtenção de estados passados é mais rápida.
Experimentos - Matlab
Duas séries temporais:
X1=sin(t)
Experimentos – Detecção de padrões
de Tráfego
Críticas e Sugestões
Somente o primeiro passo do framework foi
descrito corretamente.
Notação confusa
Problemas de performance em sistemas com
muitas varáveis a comparar
Muito útil em sistemas que necessitem de uma