Monitorando o lançamento de um foguete usando MongoDB Atlas e dados de IoT em tempo real.
Setores: Manufatura e mobilidade, Varejo
Produtos: .
Visão Geral da Solução
Esta solução usa a plataforma de banco de dados multinuvem da MongoDB para analisar dados de IoT a partir do lançamento de um lançador. Ele usa um conjunto de dados de código aberto a partir de um lançamento de lançador de Foguete Azure, juntamente com dados fictícios.
Um lançamento típico de lança-foguetes abrange um período de oito horas, desde o início da contagem regressiva inicial até o momento em que a carga útil do lançador está em rotação. Durante essa janela, aproximadamente um milhão de pontos de dados são gerados por segundo por sensores que capturam o desempenho do lançador.
Embora as métricas do lançador componham a maior parte dos dados neste caso de uso, há duas outras fontes de dados:
As anotações são criadas por engenheiros de naves e um sistema automatizado. Os engenheiros do Foguete criam anotações quando querem marcar algo para lembrar após o lançamento. Além disso, um sistema automatizado observa as métricas à medida que elas são transmitidas e cria anotações sempre que os valores estão fora do limite esperado.
Os dados meteorológicos são recuperados de terceiros, armazenados em um bucket do Amazon S3 e analisados em combinação com os dados de lançamento após o lançamento.
Outras indústrias e casos de uso aplicáveis
A capacidade de realizar análises em tempo real em dados de IoT em tempo real é valiosa em muitos setores, como:
Fabricação: o mecanismo de produção é carregado com sensores de IoT que operam por horas seguidas, semelhante ao lançamento de um lança-foguete. A análise deve ser feita durante e após a operação do mecanismo.
Logística da cadeia de suprimentos: os sensores de IoT permitem a otimização da cadeia de suprimentos em trânsito e pós-trânsito, desde os modos de transporte até as próprias encomendas.
E-commerce: além de armazéns e logs
Arquiteturas de referência
O diagrama a seguir exibe a arquitetura dessa solução. O modelo de documento flexível do MongoDB e o Atlas FERRAMENTAS simplificam a forma como você pode armazenar e interagir com seus dados. Dados de sensores em tempo real, observações de engenheiros e dados meteorológicos em tempo real podem ser combinados no MongoDB Atlas.
Figura 1. Arquitetura de referência com MongoDB
Abordagem do modelo de dados
Esta solução armazena dados de lançamento em duas coleções do Atlas : launchData
e notes
.
Inicialmente, os lançadores produzem métricas como tuplas de 4elementos com a seguinte estrutura: (device, timestamp, metric, value)
. Esses valores são então agregados e gravados na coleção launchData
como um único documento que representa métricas de um dispositivo específico em um momento específico, como no documento de exemplo a seguir:
{ _id: ObjectId("62f2f8b5800b621ee724bb94"), time: ISODate("2020-10-13T13:33:30.219Z"), meta: { device: 'truth' }, TIME_NANOSECONDS_TAI: Long("1602596010219040000"), truth_pos_CON_ECEF_ECEF_M2: -5268929.31643981, truth_pos_CON_ECEF_ECEF_M1: -1387897.36558835, truth_pos_CON_ECEF_ECEF_M3: 3306577.65409484, truth_vel_CON_ECEF_ECEF_MpS2: -0.00810950305119273, truth_vel_CON_ECEF_ECEF_MpS3: 0.00414972080992211, truth_quat_CON2ECEF1: -0.458400879273711, truth_quat_CON2ECEF2: -0.176758395646534, truth_quat_CON2ECEF3: 0.511475024782863, truth_vel_CON_ECEF_ECEF_MpS1: 0.00220006484335229, truth_quat_CON2ECEF4: 0.7049953208872 }
Este modelo de documento também funciona com coleções de séries temporais MongoDB .
Esses dados podem ser encontrados no arquivo airspace.archive.gz no repositório da solução GitHub.
Construir a solução
O repositório GitHub da solução fornece os dados e o código necessários para você começar. Além disso, o repositório inclui links para uma gravação de transmissão ao vivo em três partes que aborda essa solução em detalhes.
Para começar a usar essa solução, execute as etapas a seguir.
Configurar pré-lançamento do lançamento de lançamentos e queries
A primeira gravação de transmissão ao vivo orienta você pelos dados capturados no lançamento de um lançador de naves e como escrever queries básicas de agregação com a API de query do MongoDB . Em seguida, você pode realizar análises básicas nos dados do sensor IoT com o Atlas Charts.
Analise dados durante o lançamento
A segunda gravação da transmissão ao vivo mostra como incorporar gráficos em um aplicativo React para análises em tempo real e como pesquisar anotações específicas.
Encontre insights após o lançamento
Por fim, a terceira gravação de transmissão ao vivo mostra como combinar dados de lançamento de lançadores e dados meteorológicos para criar insights pós-lançamento e analisá-los no Tableau.
Principais Aprendizados
A plataforma de banco de dados flexível do MongoDB permite a análise de IoT orientada por aplicativos, fornecendo os seguintes recursos:
Modelagem de dados em vários tipos de dados: o modelo de documento flexível do MongoDB permite armazenar vários tipos de dados em um documento, coleção ou banco de dados, simplificando a forma como você interage com os dados e reduzindo a necessidade de tabelas diferentes.
Integração de funções para reagir a dados em tempo real: o recurso de query rápida do MongoDB permite analisar dados em tempo real.
Minimização de processos de ETL com agregação no local: os agregação pipelines do MongoDB permitem transformar seus dados em resultados calculados e armazená-los em uma nova coleção.
Autores
Jay Runkel, MongoDB