Professor adjunto na Universidade Federal de Santa Catarina - UFSC, possui doutorado (2016) e mestrado (2005) em Ciência da Computação pela Pontifícia Universidade Católica do Rio Grande do Sul e graduação em Engenharia de Computação pela Fundação Universidade Federal do Rio Grande (2003). Tem experiência na área de Ciência da Computação, com ênfase em Sistemas Distribuídos e Tolerância a Falhas, atuando principalmente nos seguintes temas: replicação, recuperação, arquitetura para sistemas distribuídos, verificação de modelos e teste de desempenho de software.
Meu CV atualizado pode ser acessado pela Plataforma Lattes.
Implementação de sistemas Replicados com Alta Escalabilidade
Com um aumento no número de sistemas na Internet e com a popularização de dispositivos computacionais,
requisitos de alta disponibilidade e desempenho ganham importância. Aumentar a disponibilidade de um
serviço normalmente requer o uso de técnicas de replicação. Com um sistema replicado, ainda que algumas
réplicas do serviço possam falhar, outras réplicas continuam atendendo requisições dos usuários,
mantendo o correto funcionamento do serviço. O desempenho do sistema, porém, pode ser penalizado, visto
que réplicas precisam coordenar suas ações de modo a garantir a consistência do serviço. Dessa forma, o
aumento na disponibilidade oferecido por técnicas de replicação acarreta em custo computacional, com
impacto direto no desempenho e na escalabilidade do sistema. Frente a estes desafios, este projeto tem
como objetivo explorar técnicas para aumento da vazão de sistemas replicados. Pretende-se avaliar
estratégias para redução no custo de sincronização entre réplicas, que pode ser alcançada com o uso de
protocolos de comunicação confiável mais eficientes ou reduzindo a contenção no acesso concorrente a
regiões críticas por múltiplas tarefas. Para reduzir o custo na coordenação entre réplicas, pretende-se
desenvolver protocolos de consenso distribuído capazes de entregar uma maior taxa de requisições às
réplicas e explorar estratégias eficientes de particionamento de dados. Para reduzir custos intra-réplica,
serão avaliadas estruturas de dados eficientes e concorrentes, além de modelos de programação paralela.
Alguns tópicos de interesse:
Replicação, Protocolos de consenso, programação paralela,
estratégias para particionamento (state-partitioning e sharding), estruturas de dados concorrentes e
otimização.
Participantes: Neste projeto participam pesquisadores das universidades UFSC (Universidade Federal de Santa Catarina)
Interesse em novos membros para o projeto: candidatos ao PPGCC (mestrado e doutorado) e estudantes de graduação (iniciação científica e TCCs)
Recuperação Eficiente em Replicação Máquina de Estados
Serviços da Internet e sistemas distribuídos de larga escala demandam requisitos rígidos de desempenho
e confiabilidade. Alta disponibilidade normalmente pode ser obtida através de técnicas de replicação,
como a Replicação Máquina de Estados (RME). Ainda, para aumentar a disponibilidade destes sistemas,
técnicas de recuperação são adotadas para permitir a reposição de réplicas falhas por novas réplicas
capazes de restaurar estados consistentes. Dada a alta vazão no processamento de requisições em sistemas
atuais, a recuperação de uma réplica faltosa ou a adição de uma nova réplica no sistema torna-se um
grande desafio. Portanto, este projeto propõe a otimização de técnicas tradicionais de recuperação
existentes, tanto na redução do custo de criação de checkpoints, quanto na utilização de técnicas de
compactação ou redução do log de comandos, favorecendo a recuperação mais rápida.
Alguns tópicos de interesse:
Replicação, Estratégias de durabilidade (logging, checkpointing, transferência de estado), programação paralela,
arquiteturas de microsserviços, Kubernetes.
Participantes: Neste projeto participam pesquisadores das universidades UFSC (Universidade Federal de Santa Catarina)
Interesse em novos membros para o projeto: candidatos ao PPGCC (mestrado e doutorado) e estudantes de graduação (iniciação científica e TCCs)
Scalable Dependability Desenvolvimento de técnicas de replicação e recuperação escalável,
visando a implementação de estratégias de execução paralela para SMR - State Machine Replication.
Além disso, são desenvolvidas estratégias para otimização de registro de logs e checkpoint, de modo a
acelerar a recuperção de réplicas do sistema.
Alguns tópicos de interesse: State Machine Replication, Protocolos de consenso, checkpointing, logging,
recuperação
Participantes: Neste projeto participam pesquisadores das universidades UFSC (Universidade Federal de Santa Catarina),
PUCRS (Pontifícia Universidade Católica do Rio Grande do Sul), UnB (Universidade de Brasilia) e
USI (Universidade de Lugano - Suíça)
LaPeSD - Grupo de Pesquisa em Sistemas Distribuídos da UFSC Faço parte do LaPeSD, onde realizamos pesquisas diversas em sistemas distribuídos. Você é convidado a acessar o site do grupo e acompanhar o nosso trabalho.
INE5418 Computação Distribuída
INE5611 Sistemas Operacionais
INE5645 Programação Paralela e Distribuída
INE410111 Metodologia de Pesquisa em Ciência da Computação (pós-graduação)
INE410130 Computação Distribuída (pós-graduação)
INE5410 Programação Concorrente
INE5418 Computação Distribuída
INE5611 Sistemas Operacionais
INE5645 Programação Paralela e Distribuída
INE410130 Computação Distribuída (pós-graduação)
INE5605 Desenvolvimento de Sistemas Orientados a Objetos I
INE5201 Introdução à Ciência da Computação
INE5611 Sistemas Operacionais
INE5645 Programação Paralela e Distribuída
Sistemas de Computação II (Sistemas Operacionasi e Redes de computadores)
Sistemas Distribuídos
Sistemas de Informação e Programação II (Aspectos de Programação Avançados)
Tópicos Avançados em Sistemas Distribuídos
Atividade de Integração Curricular III
Trabbalho individual (pós-graduação)
Tópicos em Sistemas Embarcados (pós-graduação)
Uinversidade Federal de Santa Catarina: