Dissertação

Stream Economics - Resource Efficiency in Flink Stream Processing with Accuracy Awareness and Load-Shedding EVALUATED

Os sistemas de processamento distribuído de streams aparecem como uma solução para o processamento de grandes volumes de dados em tempo real e com baixas latências. Um dos problemas chave destes sistemas prende-se com a gestão dos recursos computacionais disponíveis, de modo a reduzir custos e a evitar desperdícios de recursos. Sendo também necessário garantir que cada tarefa tem os recursos que precisa para poder acompanhar o ritmo a que recebe novos eventos para processar. Este trabalho explora precisamente este problema ao apresentar um novo modelo de gestão de recursos computacionais, com o objectivo de optimizar o uso destes recursos em ambientes de processamento em stream, onde são executadas aplicações que processam workloads dinâmicos e que têm diferentes requisitos em termos de recursos computacionais. Um novo escalonador de tarefas é proposto, que toma decisões optimistas no sentido em que deixa de limitar o número de tarefas que podem ser executadas em cada máquina. Em vez disso, a alocação de tarefas aos recursos disponíveis é adaptada em tempo real, com base nas métricas de execução das mesmas. A utilização de Load Shedding em processamento de streams é também explorada como uma ferramenta para resolver problemas de sobre-alocação de tarefas, que pode ocorrer devido às decisões optimistas tomadas pelo escalonador. Ao longo deste trabalho, foi implementada uma prova de conceito deste sistema no Apache Flink, um sistema de processamento de streams moderno. O sistema proposto é avaliado utilizando diversos workloads, de modo a mostrar os diferentes componentes e algoritmos usados em acção.
Processamento em Stream, Escalonamento de Tarefas, Optimização de Recursos, Load Shedding, Apache Flink

junho 5, 2018, 9:0

Publicação

Obra sujeita a Direitos de Autor

Orientação

ORIENTADOR

Luís Manuel Antunes Veiga

Departamento de Engenharia Informática (DEI)

Professor Associado