Arquitetura do Sistema#
A Plataforma Digital AMP foi concebida como um sistema modular baseado na web para recolher, processar, armazenar e visualizar dados de minirredes. É construída sobre a Prospect Energy Platform e apoia a utilização tanto a nível nacional como regional.
A nível nacional, a plataforma de cada país é utilizada para gerir os dados locais das minirredes, monitorizar o desempenho e apoiar a elaboração de relatórios. A nível regional, uma plataforma central reúne dados selecionados das plataformas nacionais para proporcionar uma visão mais abrangente do desempenho do programa entre os países.
Principais Componentes#
Componente |
Descrição |
|---|---|
Núcleo (Plataforma Ruby) |
Aplicação principal através da qual os utilizadores interagem com a plataforma. Trata da lógica de negócio, da interface web, das APIs e da gestão de utilizadores. |
Worker de Dados |
Este serviço processa os dados recebidos, executa tarefas em segundo plano e apoia a transformação e validação de dados. |
PostgreSQL/TimescaleDB |
Esta é a base de dados principal utilizada para armazenar dados estruturados, incluindo registos da plataforma e dados de séries temporais das operações das minirredes. |
MinIO |
É utilizado para armazenar ficheiros e objetos, como carregamentos, relatórios e outros ativos de dados de grande dimensão. |
Grafana |
Fornece painéis e visualizações para monitorizar indicadores de desempenho e tendências. |
Nginx |
Atua como proxy inverso e encaminha os pedidos para os serviços adequados. |
Faktory |
Gere tarefas em segundo plano, como o processamento agendado de dados e filas de tarefas. |
Arquitetura de Fluxo de Dados#
A plataforma segue um fluxo simples:
Os dados são recolhidos a partir de equipamento de minirrede, sistemas externos ou carregamentos manuais.
Os dados são enviados para a plataforma através da aplicação ou das APIs.
Os serviços em segundo plano processam e validam os dados
Os dados limpos e estruturados são armazenados na base de dados.
Os ficheiros e objetos de grande dimensão são armazenados no armazenamento de objetos.
Os painéis e relatórios são gerados para os utilizadores através da aplicação e do Grafana.