terça-feira, 31 de março de 2009

Artigo sobre o NodeWiz publicado no Journal of Peer-to-Peer Networking and Applications da Springer

Este artigo detalha o projeto do NodeWiz, um sistema peer-to-peer para criação, armazenamento e busca de índices distribuídos, desenvolvido em uma cooperação entre o HP Labs e o LSD/UFCG. O sistema permite buscas eficientes utilizando múltiplos atributos e permitindo a especificação de intervalos de valores para os atributos (multi-attribute range queries). Ele se baseia em uma abordagem de soft-state e tenta balancear a carga de operações entre os nós que o compõem. O impacto de falhas no sistema é avaliado e um mecanismo para tratamento de falhas é proposto. Experimentos com um simulador e um protótipo do sistema são apresentados para demonstrar suas características de eficiência, escalabilidade, balanceamento de carga e tolerância a falhas. Esta é a referência a ser usada daqui em diante para quem precisar citar o NodeWiz. O DOI é: 10.1007/s12083-009-0030-1.

Conversa LSD de Amanhã (01/04/09)

Oi Pessoal,

teremos amanhã mais uma Conversa LSD, às 14h, e todos estão convidados.

Na conversa dessa quarta eu apresentarei para vocês o que tenho feito em meu trabalho de doutorado que tem como título: "Aumentando a Confiança nos Resultados de Testes de Sistemas Multi-threaded: Evitando Asserções Antecipadas e Tardias". Além de contextualizá-los sobre o problema dos falsos alarmes em testes por asserções feitas em momentos inadequados, apresentarei a solução que estamos propondo para este problema, alguns resultados parciais obtidos e as tarefas que venho planejando como trabalhos futuros. Para maiores informações sobre o trabalho, vocês podem consultar os seguintes artigos: "Obtaining Trustworthy Test Results in Multi-threaded Systems" e "Improving Automated Testing of Multi-threaded Software".

Além dessa apresentação, teremos também o coredump, que nesta semana será conduzido por nosso ilustre professor Nazareno. Nesse coredump, ele vai tentar convencer todos a passar a usar o R para analisar resultados de experimentos. Em 10 minutos, vamos ficar sabendo tudo que ele sabe e não sabe sobre R e ver como transformamos colunas de números em gráficos para emoldurar e pendurar na parede. Apontadores sobre o assunto em: http://pesquisa-no-lsd.blogspot.com/2009/03/dica-estatisticas-e-graficos-com-r.html.

Turing award 2008

Recentemente, Barbara Liskov foi anunciada como a ganhadora do Turing Award 2008, o que temos de mais próximo a um prêmio Nobel em computação. O prêmio é por contribuições durante sua carreira, que incluem bastante trabalho em tolerância a falhas bizantinas em sistemas distribuídos.

Para quem quer entender melhor essas contribuições, o blog de Henry Robinson contextualiza e detalha as contribuições para sistemas distribuídos de Dra Liskov.

Aproveitando, vale a dica de outras discussões semelhantes no blog de Henry. Há lá, por exemplo, uma ótima série de posts explicando os principais resultados sobre consenso em sistemas distribuídos.

sexta-feira, 27 de março de 2009

Inundação de dados, ciência e computação na Science

A Science de março tem um artigo curto interessante na seção de perspectivas: Beyond the Data Deluge de Gordon Bell, Tony Hey, Alex Szalay.

Os autores discutem um paradigma emergente em ciência: criar conhecimento não a partir de teoria, experimentação ou simulação, mas através da mineração das quantidades enormes (e crescentes) de dados que temos disponíveis sobre os fenômenos que nos cercam.

Naturalmente, tecnologias para o processamento eficiente de grandes quantidades de dados têm um papel importante nesse paradigma, e o artigo discute o papel de grids e nuvens nesse contexto.

Em uma linha semelhante, a O'Reilly Research recentemente publicou um relatório sobre desafios no processamento de grandes quantidades de dados hoje. O relatório (que infelizmente é pago) e diversas entrevistas sobre o assunto são apresentadas nesse post do O'Reilly Radar.

Dica: estatísticas e gráficos com R + Lattice

Se você tem o output de um experimento com vários fatores, possivelmente várias métricas, e precisa analisar esses dados com alguma estatística e gerar gráficos de qualidade, você provavelmente já chegou à conclusão que as combinações de bash + octave + gnuplot não são muito flexíveis e dão um trabalho considerável. Se sim, minha sugestão é que você considere usar o R para tratar seus dados e um pacote do R chamado Lattice para gerar seus gráficos. A curva de aprendizado é um pouco maior que bash ou octave, mas olhando os resultados, deve dar pra ver que vale a pena. Isso aqui embaixo é um exemplo do output dessa combinação em um experimento meu:



Para saber mais sobre o que é R, há uma matéria interessante sobre ele no NYT (se você não tem login, aproveite e conheça o BugMeNot).

Para aprender R, há bastante material online (por exemplo, aqui), mas aqui vão mais algumas referências:

R:
http://faculty.washington.edu/tlumley/Rcourse/R-fundamentals.pdf
http://cran.r-project.org/doc/contrib/Lemon-kickstart/index.html
http://leg.ufpr.br/Rpira/Rpira/

Lattice:
http://csg.sph.umich.edu/docs/R/graphics-1.pdf

Entrevista sobre grids e segurança hídrica no Nordeste

Um dos projetos de que o LSD participa é o SegHidro, que "propõe uma infraestrutura de tecnologia para viabilizar o compatilhamento de dados, conhecimento e poder computacional a serviço de uma melhor gestão dos recursos hídricos do país". No site do LSD, há uma entrevista bem legal do Ilmo Prof. Carlos Galvão feita pelo nosso não-menos-Ilmo núcleo de divulgação científica.

Apresentação

Aqui começa o blog de notícias, apontadores, idéias e pesquisa do Laboratório de Sistemas Distribuídos da UFCG.