Processamento de Streams
Objetivos
Learn the fundamentals, languages and systems for building application that process streams of data, ranging from general purpose distributed realtime stream processing systems to structured data models for dealing with streams.
Caracterização geral
Código
11562
Créditos
6.0
Professor responsável
Nuno Manuel Ribeiro Preguiça
Horas
Semanais - 4
Totais - A disponibilizar brevemente
Idioma de ensino
Português
Pré-requisitos
A disponibilizar brevemente
Bibliografia
Opher Etzion and Peter Niblett. Event Processing in Action. Manning Publications, 2010.
Lukasz Golab and Tamer Özsu. Data Stream Management. Morgan and Claypool, 2010.
Several papers will be provide for further reading.
Método de ensino
A disponibilizar brevemente
Método de avaliação
Esquema Geral
A avaliação é composta por uma componente teórica-prática e por uma componente de projeto.
Ambas as componentes são avaliadas numa escala de 0 a 20, arredondado a unidades.
A nota final da disciplina é a média pesada das duas componentes, na qual a componente de projeto contribui com 1/3 e a componente teórica-prática com 2/3.
Para obter aprovação à disciplina um estudante necessita ter uma classificação igual ou superior a 10 valores na componente teórica, e na nota final.
Não existem outra condições obrigatórias para obtenção de frequência
Componente teórica-prática
Esta componente é obtida através de 2 testes, a realizar durante o semestre. O primeiro teste terá lugar no final da 5ª semana de aulas e o segundo perto do final do período de aulas (datas a confirmar com a comissão pedagógica do curso).
Supletivamente, esta componente pode também ser realizada por exame de recurso.
No primeiro caso a nota final da componente é a média aritmética das classificações dos dois testes arredondadas às unidades, e no segundo caso é a nota do exame
Componente de projeto
Desta componente fazem parte a realização, apresentação e discussão de dois trabalhos. O primeiro trabalho deverá ser entregue até ao final da 7ª semana de aulas, e o 2º trabalho até ao final das aulas (datas a confirmar com a comissão pedagógica do curso). O trabalho é feito em grupos de exactamente 2 alunos.
Apesar do trabalho ser feito em grupo, a nota desta componente será sempre individual (e não atribuída ao grupo). Para ela contribuem o trabalho e o relatório feitos em grupo, mas também o desempenho na apresentação oral e discussão. A nota final da componente é a média aritmética das notas indivuduais dos dois projetos.
Conteúdo
Distributed Stream Processing Systems.
System models for stream processing: streams as sequences of mini-batches (e.g. Spark streaming); continuous processing (e.g. Storm). General-purpose programming models. The problem of cyclic computations.
System aspects: distribution, scalability and fault-tolerance.
Data Stream Management Systems (DSMS).
Structured Data Models for Streams. Algebraic operators on stream and relations (continuous queries, aggregates and blocking, time windows). Continuous query languages. Languages and systems that extend SQL and database management systems to deal with data streams.
Complex Event Processing.
Streams as sequences of events. Production rules, reactive rules, and event-driven computing. Event processing networks, agents and channels. Complex and derived events. Detection of event patterns. Event-processing languages and systems.
Cursos
Cursos onde a unidade curricular é leccionada: