Tipos de dados suportados:
Nota
O serviço Time Series Insights será desativado em 7 de julho de 2024. Considere migrar os ambientes existentes para soluções alternativas o mais rápido possível. Para obter mais informações sobre a substituição e migração, visite nossa documentação.
A tabela a seguir lista os tipos de dados suportados pelo Azure Time Series Insights Gen2
Tipo de dados | Description | Exemplo | Sintaxe da expressão de séries temporais | Nome da coluna da propriedade no Parquet |
---|---|---|---|---|
Bool | Um tipo de dados com um de dois estados: true ou false . |
"isQuestionable" : true |
$event.isQuestionable.Bool ou $event['isQuestionable'].Bool |
isQuestionable_bool |
datetime | Representa um instante no tempo, normalmente expresso como uma data e hora do dia. Expresso no formato ISO 8601 . As propriedades datetime são sempre armazenadas no formato UTC. Os deslocamentos de fuso horário, se formatados corretamente, serão aplicados e, em seguida, o valor armazenado em UTC. Consulte esta seção para obter mais informações sobre a propriedade de carimbo de data/hora do ambiente e deslocamentos de data/hora | "eventProcessedLocalTime": "2020-03-20T09:03:32.8301668Z" |
Se "eventProcessedLocalTime" for o carimbo de data/hora de origem do evento: $event.$ts . Se for outra propriedade JSON: $event.eventProcessedLocalTime.DateTime ou $event['eventProcessedLocalTime'].DateTime |
eventProcessedLocalTime_datetime |
duplo | Um número de 64 bits de precisão dupla | "value": 31.0482941 |
$event.value.Double ou $event['value'].Double |
value_double |
Longo | Um inteiro de 64 bits assinado | "value" : 31 |
$event.value.Long ou $event['value'].Long |
value_long |
string | Os valores de texto, devem consistir em UTF-8 válido. Cadeias de caracteres nulas e vazias são tratadas da mesma forma. | "site": "DIM_MLGGG" |
$event.site.String ou $event['site'].String |
site_string |
dinâmico | Um tipo complexo (não primitivo) que consiste em uma matriz ou um pacote de propriedades (dicionário). Atualmente, apenas matrizes JSON stringidas de primitivas ou matrizes de objetos que não contenham a ID TS ou a(s) propriedade(s) de carimbo de data/hora serão armazenadas como dinâmicas. Leia este artigo para entender como os objetos serão nivelados e as matrizes podem ser desenroladas. As propriedades de carga útil armazenadas como esse tipo só são acessíveis selecionando Explore Events no Time Series Insights Explorer para exibir eventos brutos ou por meio da API de consulta para análise do lado do GetEvents cliente. |
"values": "[197, 194, 189, 188]" |
Ainda não há suporte para a referência a tipos dinâmicos em uma expressão de série temporal | values_dynamic |
Nota
Há suporte para valores inteiros de 64 bits, mas o maior número que o Azure Time Series Insights Explorer pode expressar com segurança é 9.007.199.254.740.991 (2^53-1) devido a limitações de JavaScript. Se você trabalhar com números em seu modelo de dados acima disso, poderá reduzir o tamanho criando uma variável Modelo de Série Temporal e convertendo o valor.
Nota
O tipo de cadeia de caracteres não é anulável:
- Uma Expressão de Série Temporal (TSX) expressa em uma Consulta de Série Temporal comparando o valor de uma cadeia de caracteres vazia ('') com NULL se comportará da mesma maneira:
$event.siteid.String = NULL
é equivalente a$event.siteid.String = ''
. - A API pode retornar valores NULL mesmo se os eventos originais contiverem cadeias de caracteres vazias.
- Não dependa de valores NULL em colunas String para fazer comparações ou avaliações, trate-as da mesma forma que strings vazias.
Enviando tipos de dados mistos
Seu ambiente do Azure Time Series Insights Gen2 é fortemente tipado. Se dispositivos ou tags enviarem dados de tipos diferentes para uma propriedade de dispositivo, os valores serão armazenados em duas colunas separadas e a função coalesce() deverá ser usada ao definir suas expressões de Variável de Modelo de Série Temporal em chamadas de API.
O Azure Time Series Insights Explorer oferece uma maneira de aglutinar automaticamente as colunas separadas da mesma propriedade de dispositivo. No exemplo abaixo, o sensor envia uma PresentValue
propriedade que pode ser Long ou Double. Para consultar todos os valores armazenados (independentemente do tipo de dados) da PresentValue
propriedade, escolha PresentValue (Double | Long)
e as colunas serão aglutinadas para você.
Objetos e matrizes
Você pode enviar tipos complexos, como objetos e matrizes, como parte da carga útil do evento. Os objetos aninhados serão nivelados e as matrizes serão armazenadas como dynamic
ou niveladas para produzir vários eventos, dependendo da configuração do ambiente e da forma JSON. Para saber mais, leia sobre as regras de achatamento e fuga do JSON
Próximos passos
Leia as regras de nivelamento e fuga do JSON para entender como os eventos serão armazenados.
Compreender as limitações de taxa de transferência do seu ambiente
Saiba mais sobre as fontes de eventos para ingerir dados de streaming.