A Distributed Algorithm for Determining the Provenance of Data Paul T. Groth Information Sciences Institute University of Southern California Instituto de Informática da UFRGS PDP 2010/2 – Seminários Apresentado por Gabriel Simões
A Distributed Algorithm for Determining the Provenance of Data Apresentado e publicado em:
Referência Completa Groth, P.T.;, "A Distributed Algorithm for Determining the Provenance of Data," eScience, eScience '08. IEEE Fourth International Conference on, vol., no., pp , 7-12 Dec doi: /eScience
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: Wikipedia
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: Wikipedia
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:
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:
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, D 1...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ções 1.Motivação e Estado-da-Arte: 5 2.Problemas a resolver e Modelo: 4 3.Protótipo, Resultados e Comparação com Trabalhos Relacionados: 2 4.Redação e Formatação: 5