IoT permite-nos trazer o mundo físico para o mundo virtual, dando o poder de o controlar e monitorizar.
Isto tem encorajado um aumento no interesse em IoT, devido às múltiplas aplicações nos mais
variados contextos.
Ainda assim sistemas de IoT enfrentam desafios tais como o suporte de altos volume de conexões
ou a baixa capacidade de computação face a algoritmos para segurança dos dados.
O objectivo desta dissertação é criar um sistema de recolha de dados de sensor de qualidade do ar
que resolva esses desafios usando tecnologias de estado de arte, dando preferência a ferramentas
de código aberto.
O sistema foi implementado em volta Apache Kafka, com Spring Boot e VerneMQ responsáveis
por receber dados e PostgreSQL, com plugin Timescale, encarregue de os guardar. Um protótipo
do sistema foi implementado usando contentores Docker, mas não foi possível organiza-los com
Kubernetes; Abstract:
Cloud-based system for IoT data acquisition
The purpose of IoT is to bring the physical world into a digital one and allowing it to be controlled
and monitored from a virtual standpoint.
The interest in IoT has increased due to its many applications in various fields, but IoT systems still
deal with challenges such as the support of a high volume of connections or the low processing
capacity of devices faced with data security algorithms.
The objective of this dissertation is to create a data collection for air quality sensors system, that
solves those challenges based on state of the art technologies, giving preference to open-source
tools.
Implementation was done around Apache Kafka, with Spring Boot and VerneMQ receiving data,
HMAC granting a level security on data transport and PostgreSQL with the plugin Timescale storing
the data. A prototype of the system was implemented in Docker containers, but we were unable to
orchestrate them through Kubernetes