Exportação da Linha do Tempo da Água - Documentação
Este documento explica os campos presentes na saída CSV da linha do tempo da água para o Group Link Water.
Arquivo de exemplo:
events.DEFAULT..2024-04-25T11_00_00.000Z.csv
Campos de Saída:
Nome do Campo | Descrição | Observações |
---|---|---|
device_id | Identificador único do dispositivo medidor de água. | |
channel | Número do canal da leitura (relevante para dispositivos multicanais). | Pode ser omitido se a organização não tiver dispositivos multicanais. |
city | Cidade onde o dispositivo está localizado. | |
remote_id | Identificador remoto do dispositivo, específico para a organização. | |
reading | A leitura real do medidor de água em metros cúbicos (m³), calculada usando a fórmula: multiplicador * (pulsos_brutos - desconto_offset) + resultado_offset | Os componentes da fórmula são explicados nas linhas seguintes. |
raw_pulses_delta | Diferença na contagem de pulsos brutos entre a leitura atual e a leitura anterior do dispositivo. | É calculado usando o valor LOCF (Last Observed Carried Forward). Para o primeiro arquivo, é considerado zero quando nenhum valor é encontrado. |
reading_date | Timestamp da primeira aquisição de dados. | |
reading_time | Timestamp da leitura no servidor do grouplink (truncado para o minuto). | |
latency_max | Latência máxima observada para a leitura, representando a diferença de tempo entre o horário da leitura e o horário de recebimento. | |
latency_min | Latência mínima observada para a leitura, semelhante à latency_max. | |
records | Número de registros agregados para esta leitura específica (devido ao agrupamento por minuto). | |
multiplier | Multiplicador usado no cálculo da leitura, específico para o dispositivo e canal. | Obtido a partir dos dados de ativação do dispositivo e informações de offset. Pode mudar durante a vida útil do dispositivo quando o dispositivo é desativado e ativado novamente. |
raw_pulses | Contagem de pulsos brutos do dispositivo para esta leitura. | |
discount_offset | Valor de offset usado no cálculo da leitura, específico para o dispositivo e canal. | Obtido a partir dos dados de ativação do dispositivo e informações de offset. Pode mudar durante a vida útil do dispositivo quando o dispositivo é desativado e ativado novamente. |
result_offset | Offset de resultado usado no cálculo da leitura, específico para o dispositivo e canal. | Obtido a partir dos dados de ativação do dispositivo e informações de offset. Pode mudar durante a vida útil do dispositivo quando o dispositivo é desativado e ativado novamente. |
Observações e Informações Adicionais
- O valor da leitura é calculado usando uma fórmula que envolve o multiplicador, pulsos_brutos, desconto_offset e resultado_offset. Esses valores são específicos para o dispositivo e canal e são obtidos a partir dos dados de ativação do dispositivo e informações de offset.
- Os campos latency_max e latency_min representam a diferença de tempo entre o horário do evento (quando a leitura foi feita) e o horário de recebimento (quando a leitura foi transmitida).
- Os valores de leitura são expressos em metros cúbicos (m³).
Importando para Outro Sistema
Ao importar esses dados para outro sistema, é crucial considerar o seguinte:
- Certifique-se de que os tipos de dados de cada campo estejam corretamente mapeados no sistema de destino. Preste atenção especial à precisão decimal para campos como leitura, multiplicador e resultado_offset.
- Certifique-se da interpretação e conversão corretas dos timestamps, considerando fusos horários e possíveis ajustes de horário de verão. Todos os dados estão em UTC.
- As informações de latência podem ser valiosas para analisar atrasos na transmissão de dados e possíveis problemas de comunicação do dispositivo.
Tipos de Dados Sugeridos para Importação
Esta tabela fornece tipos de dados sugeridos para importar os dados CSV da linha do tempo da água para outro sistema:
Campo de Saída | Nosso Tipo de Dados | Tipo de Dados Sugerido | Observações |
---|---|---|---|
device_id | UINTEGER | Integer (unsigned) | Tipo de inteiro grande para armazenar IDs de dispositivos. |
channel | TINYINT | Integer (smallint, tinyint) | Tipo de inteiro pequeno para armazenar números de canal. |
city | VARCHAR | String (text, varchar) | String de comprimento variável para acomodar nomes de cidades. |
remote_id | VARCHAR | String (text, varchar) | String de comprimento variável para identificadores remotos. |
reading | DECIMAL(16, 6) | Decimal (numeric with precision) | Tipo decimal com precisão suficiente para leituras de medidores de água. |
raw_pulses_delta | BIGINT | Integer (bigint) | Tipo de inteiro grande para armazenar diferenças de pulsos brutos. |
reading_date | TIMESTAMPTZ | Date/Time (with time zone) | Tipo de data e hora com informações de fuso horário. |
reading_time | TIMESTAMPTZ | Date/Time (with time zone) | Tipo de data e hora com informações de fuso horário. |
latency_max | INTERVAL | Interval (duration) | Tipo de dados representando uma duração de tempo. Exportado como segundos em hh:mm:ss.ms |
latency_min | INTERVAL | Interval (duration) | Tipo de dados representando uma duração de tempo. Exportado como segundos em hh:mm:ss.ms |
records | INT | Integer | Tipo de inteiro para armazenar o número de registros agregados. |
multiplier | DECIMAL(10, 6) | Decimal (numeric with precision) | Tipo decimal para armazenar o valor do multiplicador. |
raw_pulses | BIGINT | Integer (bigint) | Tipo de inteiro grande para contagens de pulsos brutos. |
discount_offset | BIGINT | Integer (bigint) | Tipo de inteiro grande para o valor do desconto offset. |
result_offset | DECIMAL(16, 6) | Decimal (numeric with precision) | Tipo decimal para o valor do resultado offset. |