A Distributed Algorithm for Determining the Provenance of DataPaul T. GrothInformation Sciences InstituteUniversity of Southern [email protected]
Instituto de Informática da UFRGSPDP 2010/2 – SemináriosApresentado por Gabriel Simões
A Distributed Algorithm for Determining the Provenance of DataApresentado e publicado em:
Referência Completa
Groth, P.T.; , "A Distributed Algorithm for Determining the Provenance of Data," eScience, 2008. eScience '08. IEEE Fourth International Conference on , vol., no., pp.166-173, 7-12 Dec. 2008doi: 10.1109/eScience.2008.38
O Problema
• Ajudar os cientistas na identificação da proveniência de dados gerados por experimentos produzidos in-silco em ambientes paralelos com vastos volumes de dados.
O Problema
• Proveniência– do francês provenir, significa a origem ou a fonte
de algo, ou a história da propriedade ou a localização de um objeto. O termo foi originalmente usado principalmente para obras de arte, mas agora é usado em sentidos semelhantes em uma ampla gama de campos, incluindo a ciência e a computação.Fonte: Wikipediahttp://en.wikipedia.org/wiki/Provenance
Contextualizando o D-PQuery
• Arquitetura– Um workflow Condor DAGMan– Funciona sobre logs gerados com Kickstart,
utilizado em muitas experimentações e-Science.• Experimentação– Utilizou arquivos gerados pela aplicação Montage.
Condor
• Condor é um software de código-fonte aberto de alta capacidade de computação e de alta granularidade de paralelização computacional de tarefas intensivas e distribuídas. Pode ser usado para gerenciar a carga de trabalho em um cluster dedicado de computadores e/ou para a distribuição cooperativa. Condor roda em Linux, Unix, Mac OS X, FreeBSD e Windows. Condor pode integrar ambos os recursos dedicados e não-dedicados.Fonte: Wikipediahttp://en.wikipedia.org/wiki/Condor_High-Throughput_Computing_System
Condor DAGMan
• DAGMan (Directed Acyclic Graph Manager) é um meta-escalonador do Condor. Ele gerencia dependências entre tarefas em um nível mais elevado do que o escalonador do Condor.Fonte: http://www.cs.wisc.edu/condor/dagman/
Montage
• Ele tem sido usado para gerar mosaicos a partir de dados divulgados pelo Telescópio Espacial Spitzer, o telescópio espacial Hubble, o Satélite Astronômico Infravermelho (IRAS), o Midcourse Space Experiment (MSX), o Sloan Digital Sky Survey (SDSS), e no solo telescópios como o National Optical Astronomy Observatories 4M (NOAO) e o telescópio William Herschel 4M.Fonte: http://montage.ipac.caltech.edu/
D-PQuery Workflow
Fonte: extraído do próprio artigo.
Procedimento para transformar dados de entrada em DGraphs• Translate– Executa em paralelo, com base no número de arquivos
de entrada.– Entrada
• Informações de proveniência, D1...n (Logs Kickstart).
– Saída• Um DGraph descrevendo as relações de proveniência. Cada
arquivo gera um DGraph.
• Um DGraph é parte de um DAG (directed acyclic graph). Neste Trabalho, um DAG é formado por n DGraphs.
Procedimento para filtrar entradas estranhas ao grafo
Fonte: extraído do próprio artigo.
Processo para a travessia de um grafo
Fonte: extraído do próprio artigo.
Procedimento para consolidação do Grafo
• Consolidate– Continua enquanto novos filhos forem emitidos
por Traverse.– O procedimento de consolidação é a simples
união dos filhos produzidos por cada Traversal.
Procedimento para aparar os DGraphs
• Pare– Após a consolidação de cada DGraph, as entradas
estranhas são removidas.– Todos os vértices onde a propriedade keep = false
são removidas.– O conjunto de DGraphs pode ser consolidado.
Processo para fusão de grafos
Fonte: extraído do próprio artigo.
Implementação
– O núcleo foi implementado com scripts em Python– Os scripts foram combinados em um workflow
Condor DAGMan– O workflow pode ser escalonado em qualquer site
remoto que suporte Globus
Experimento 1
– Utilizou um conjunto de grafos criados randomicamente
– A idéia de utilizar grafos randômicos seria simular o pior caso, já que foram definidas muito mais arestas do que as encontradas em grafos gerados por aplicações típicas
– Os algoritmos fora executados de maneira serial. No entanto, foram consideradas medidas alternativas para simular o paralelismo.
– Não considerou troca de mensagens
Experimento 1
Experimento 2
– Paralelo, implementado como um Condor DAG– Utilizou como entrada 5.8MB (408 registros) de dados
gerados pela aplicação Montage.– Estes 408 registros foram divididos progressivamente
em arquivos, mantendo sempre a mesma quantidade de dados.
– O experimento buscou encontrar a proveniência de uma imagem em particular.
– Executado sobre um cluste linux com 7 nodos (5 processadores, 1 controle e 1 storage).
– Executado 4 vezes, exibindo como resultado a média.
Experimento 2
Conclusão
• Atualmente, as aplicações e-Science armazenam dados de proveniência e diversos locais diferentes.
• Cada vez mais a complexidade para lidar com estes dados aumenta.
• D-Pquery é o primeiro algoritmo distribuído implementado sobre o sistema Condor.
Trabalhos Futuros
• Converter o procedimento de Tradução para trabalhar com logs Netlog.
• Tornar o algoritmo compatível com OPM (Open Provenance Model), permitindo consultas através de múltiplos sistemas de proveniência.
Avaliações1. Motivação e Estado-da-Arte: 52. Problemas a resolver e Modelo: 43. Protótipo, Resultados e Comparação com Trabalhos Relacionados: 24. Redação e Formatação: 5
Top Related