• JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
 
  Bookmark and Share
 
 
Master's Dissertation
DOI
https://doi.org/10.11606/D.45.2021.tde-24032021-145027
Document
Author
Full name
Fernando Freire Scattone
E-mail
Institute/School/College
Knowledge Area
Date of Defense
Published
São Paulo, 2021
Supervisor
Committee
Braghetto, Kelly Rosa (President)
Fazenda, Alvaro Luiz
Silva, Francisco José da Silva e
Title in Portuguese
Processamento de eventos complexos nativo de nuvem para cidades inteligentes
Keywords in Portuguese
Cidades inteligentes
Computação nativa de nuvem
Microsserviços
Processamento de eventos complexos
Abstract in Portuguese
Ao longo dos últimos anos, o conceito de Cidades Inteligentes vem ganhando popularidade, sendo promovido com os propósitos de aumentar a sustentabilidade e melhorar a qualidade de vida para os residentes de centros urbanos. Processamento de Eventos Complexos (CEP - Complex Event Processing) é uma das técnicas mais usadas para processar dados em tempo real em grande volume e velocidade, como os provenientes de Cidades Inteligentes. CEP considera cada novo dado coletado como um evento e permite definir novos tipos de eventos a partir da identificação de padrões de ocorrência específicos de outros eventos. Escalabilidade e tolerância a falhas no ambiente de execução são requisitos não funcionais para o processamento de fluxos de dados que sofrem grande variação de volume ao longo do tempo, como em Cidades Inteligentes. O cumprimento desses requisitos é essencial para manter o sistema em funcionamento com a latência de detecção de eventos em patamares aceitáveis para sistemas de tempo real. O uso de plataformas de nuvem é conveniente para realizar o processamento de eventos de forma distribuída e escalável, pois permite o gerenciamento dinâmico de recursos computacionais. As soluções atuais de software livre de CEP não oferecem suporte nativo para a execução em ambientes de nuvem, ou mesmo distribuídos. Este trabalho apresenta uma arquitetura de microsserviços para CEP distribuído nativa de nuvem, que gerencia dinamicamente os recursos computacionais usados na execução. Nela, o processamento de eventos complexos é dividido entre múltiplas instâncias de um mesmo microsserviço. O estilo arquitetural de coreografia foi usado, no qual a distribuição do processamento é coordenada entre as instâncias e não há um serviço central que comanda todo o sistema. Isso resulta em uma maior tolerância a falhas, pois uma falha em uma única instância não afeta a detecção de eventos nas outras. Um protótipo da arquitetura de microsserviços foi implementado, utilizando somente ferramentas de software livre, de forma integrada à plataforma de cidades inteligentes InterSCity. Para avaliar o desempenho do sistema, um cenário experimental de cidades inteligentes foi criado: a detecção de problemas de tráfego a partir de dados reais de posições de ônibus do transporte público da cidade de São Paulo. Quatro métricas foram analisadas: latência, vazão, número total de eventos detectados e tempo de uso de recursos computacionais. Os resultados do experimento mostraram que o sistema escala automaticamente, aumentando o número de instâncias conforme sua carga de entrada aumenta. Além disso, as latências normalmente ficaram abaixo de cem milissegundos, satisfazendo os requisitos de processamento em tempo real do cenário considerado.
Title in English
Cloud-native complex event processing for smart cities
Keywords in English
Cloud-native computing
Complex event processing
Microservices
Smart cities
Abstract in English
Over the last few years, Smart City concepts have gained popularity because of their purposes of increasing sustainability and improving quality of life for large cities' residents. Complex Event Processing is one of the most used techniques to process real-time data, with large volume and velocity, such as the data coming from Smart Cities. In CEP each new piece of data is treated as an event and can be defined by an event type. New event types can be registered by defining a query using CEP operators to detect specific patterns on incoming events from other event types. In order to process real-time data for Smart Cities, scalability and fault tolerance are the main requirements to be fulfilled. Satisfying these requirements is essential to maintain a functioning system with acceptable latency levels for Smart Cities situation detection. Using cloud providers is a convenient method to distribute and scale complex event processing since cloud providers can dynamically manage computational resource usage. Current open-source CEP implementations do not offer official cloud-native execution support, or even official distributed execution support. This work presents a cloud-native microservice architecture for distributed CEP. Event processing is distributed across several instances of the same microservice, which can be dynamically created or destroyed based on resource usage. These instances use a choreography style of communication among each other, where there are no central nodes controlling all other instances. Instead, they must agree on any multi-instance action. This style of communication ensures greater fault tolerance since failures in one instance do not affect event processing in all other instances. A prototype of this architecture was developed, using open source tools, integrated with the InterSCity Smart City Platform. To evaluate the performance of the system, an experimental scenario of Smart Cities was designed: the detection of traffic problems from real data of bus positions of public transport in São Paulo. Four metrics were analyzed: latency, throughput, number of events detected, and resource time usage. Results showed the system achieved self-scalability, creating new CEP nodes as the input load increased while maintaining acceptable levels of latency. Furthermore, latencies were typically below a hundred milliseconds, satisfying real-time processing requirements of the Smart City scenario.
 
WARNING - Viewing this document is conditioned on your acceptance of the following terms of use:
This document is only for private use for research and teaching activities. Reproduction for commercial use is forbidden. This rights cover the whole data about this document as well as its contents. Any uses or copies of this document in whole or in part must include the author's name.
Publishing Date
2021-04-28
 
WARNING: Learn what derived works are clicking here.
All rights of the thesis/dissertation are from the authors
CeTI-SC/STI
Digital Library of Theses and Dissertations of USP. Copyright © 2001-2024. All rights reserved.