Table of Contents
Processamento de Dados Massivos - BCC/BSI/BMC
Objetivo
O objetivo da disciplina é abordar conceitos básicos relacionados ao desenvolvimento de aplicações distribuídas para processamento de volumes massivos de dados. (Basicamente, o que costuma se chamar Big-Data.)
Com o surgimento de diversas fontes que oferecem enormes volumes de dados, bem como outras que oferecem dados em tempo real, as demandas de processamento têm crescido de forma significativa. Ambientes de processamento como Hadoop se tornaram comuns e outros ambientes mais modernos ou mais específicos também surgem a cada dia.
Nesse contexto, esta disciplina pretende discutir os conceitos básicos relacionados com a área de processamento de dados massivos. O foco será no desenvolvimento de aplicações usando ambientes de processamento como Hadoop e Spark, bem como no desenvolvimento de soluções em termos de novos ambientes de processamento ou melhorias nos ambientes existentes.
Pré-requisitos
Pela característica do curso, conhecimento anterior de processamento distribuído, como apresentado em AEDs 3 e/ou Sistemas Operacionais é pré-requisito. Isso normalmente significa ter cursado as disciplinas, mas em casos excepcionais, conforme avaliação do professor, isso pode ser liberado.
Programa
Os tópicos abordados pretendem cobrir os principais elementos para o desenvolvimento de novas aplicações no contexto de Big-data.
- Conceitos básicos de sistemas distribuídos.
- Princípios de processamento e armazenamento de volumes de dados massivos.
- Hadoop.
- Spark.
- Processamento de streams.
- Processamento de grafos.
- Outros ambientes de processamento.
- Aspectos básicos de computação em nuvem.
- Teorema CAP e seu impacto em sistemas em larga escala.
- Sistems de armazenamento em nuvem.
- Artigos recentes.
Avaliação
Resumos de artigos assinalados para leitura, trabalhos de programação usando os ambientes discutidos em sala.
Referências
Os artigos a serem lidos para cada aula, bem como outros artigos de apoio para temas específicos, serão publicados através do espaço do curso no minha.ufmg.
Não há livro texto para a disciplina, mas três livros servirão de base para boa parte das aulas introdutórias:
- Advanced Analytics with Spark, por Riza, Laserson, Owen e Wills - O'Reilly
- Mining of Massive Datasets, por Jure Leskovec, Anand Rajaraman e Jeff Ullman - Cambridge University Press
- Learning Spark, por Matei Zaharia, Patrick Wendell, Andy Konwinski e Holden Karau - O'Reilly