Modelo de série temporal no Azure Time Series Insights Gen2

Nota

O serviço Time Series Insights (TSI) deixará de ser suportado após março de 2025. Ponderar, o mais rapidamente possível, a possibilidade de migrar os ambientes ETI existentes para soluções alternativas. Para obter mais informações sobre a substituição e migração, visite nossa documentação.

Este artigo descreve o Modelo de Série Temporal, os recursos e como começar a criar e atualizar seus próprios modelos no ambiente do Azure Time Series Insights Gen2.

Gorjeta

Resumo

Tradicionalmente, os dados coletados de dispositivos IoT carecem de informações contextuais, o que dificulta encontrar e analisar sensores rapidamente. A principal motivação para o Modelo de Série Temporal é simplificar a localização e análise de dados de IoT ou Série Temporal. Ele atinge esse objetivo ao permitir a curadoria, manutenção e enriquecimento de dados de séries temporais para ajudar a preparar conjuntos de dados prontos para o consumidor para análise.

Cenário: o novo forno inteligente da Contoso

Considere o cenário fictício de um forno inteligente da Contoso. Nesse cenário, suponha que cada forno inteligente da Contoso tenha cinco sensores de temperatura, um para cada um dos quatro queimadores superiores e um para o próprio forno. Até recentemente, cada sensor de temperatura da Contoso enviava, armazenava e visualizava seus dados individualmente. Para o monitoramento de eletrodomésticos, a Contoso se baseou em gráficos básicos, um para cada sensor individual.

Embora a Contoso estivesse satisfeita com sua solução inicial de dados e visualização, várias limitações se tornaram aparentes:

  • Os clientes queriam saber o quão quente o forno geral ficaria quando a maioria dos queimadores superiores estivesse ligada. A Contoso teve mais dificuldade em analisar e apresentar uma resposta unificada sobre as condições gerais do forno.
  • Os engenheiros da Contoso queriam verificar se os queimadores superiores sendo executados simultaneamente não resultariam em consumo de energia ineficiente. Houve dificuldade em cruzar quais sensores de temperatura e tensão estavam associados entre si e como localizá-los na loja.
  • A equipe de garantia de qualidade da Contoso queria auditar e comparar o histórico entre duas versões de sensores. Houve dificuldade em determinar quais dados pertenciam a qual versão do sensor.

Sem a capacidade de estruturar, organizar e definir o modelo abrangente de série temporal do forno inteligente, cada sensor de temperatura mantinha pontos de dados deslocados, isolados e menos informativos. Transformar esses pontos de dados em insights acionáveis era mais difícil, uma vez que cada conjunto de dados vivia independentemente dos outros.

Essas limitações revelaram a importância das ferramentas inteligentes de agregação e visualização de dados para acompanhar o novo forno da Contoso:

  • A visualização de dados é útil quando você pode associar e combinar dados em uma visualização conveniente. Um exemplo é mostrar sensores de tensão juntamente com sensores de temperatura.
  • O gerenciamento de dados multidimensionais para várias entidades, juntamente com funcionalidades de comparação, zoom e intervalo de tempo, pode ser difícil de realizar.

O Modelo de Série Temporal fornece uma solução conveniente para muitos dos cenários encontrados neste exemplo fictício:

Time Series Model smart oven charting example

  • O Modelo de Série Temporal desempenha um papel vital em consultas e navegação porque contextualiza os dados, permitindo comparações entre intervalos de tempo e entre tipos de sensores e dispositivos. (A)
  • Os dados são ainda mais contextualizados porque os dados persistidos no Modelo de Série Temporal preservam os cálculos de consulta de séries temporais como variáveis e os reutilizam no momento da consulta.
  • O Modelo de Série Temporal organiza e agrega dados para melhorar os recursos de visualização e gerenciamento. B)

Principais capacidades

Com o objetivo de tornar simples e fácil gerenciar a contextualização de séries temporais, o Modelo de Série Temporal habilita os seguintes recursos no Azure Time Series Insights Gen2. Ajuda-o a:

  • Crie e gerencie cálculos ou fórmulas aproveitando funções escalares, operações agregadas e assim por diante.
  • Defina relações pai-filho para permitir a navegação, a pesquisa e a referência.
  • Defina propriedades associadas às instâncias, definidas como campos de instância, e use-as para criar hierarquias.

Componentes

O modelo de série temporal tem três componentes principais:

Esses componentes são combinados para especificar um modelo de série temporal e organizar seus dados.

Time Series Model overview chart

Um modelo de série temporal pode ser criado e gerido através do Azure Time Series Insights Explorer. As configurações do Modelo de Série Temporal podem ser gerenciadas por meio da API de Configurações do Modelo.

Instâncias do modelo de série temporal

As instâncias do Modelo de Série Temporal são representações virtuais das próprias séries temporais.

Na maioria dos casos, as instâncias são identificadas exclusivamente por deviceId ou assetId, que são salvas como IDs de séries temporais.

As instâncias têm informações descritivas associadas a elas chamadas propriedades de instância, como ID de série temporal, tipo, nome, descrição, hierarquias e campos de instância. No mínimo, as propriedades da instância incluem informações de hierarquia.

Os campos de instância são uma coleção de informações descritivas que podem incluir valores para níveis de hierarquia, bem como fabricante, operador e assim por diante.

Depois que uma fonte de eventos é configurada para o ambiente do Azure Time Series Insights Gen2, as instâncias são automaticamente descobertas e criadas em um modelo de série temporal. As instâncias podem ser criadas ou atualizadas por meio do Azure Time Series Insights Explorer usando consultas de Modelo de Série Temporal.

A demonstração do Parque Eólico da Contoso fornece vários exemplos de instância dinâmica.

Time Series Model instance example

Propriedades da instância

As instâncias são definidas por timeSeriesId, typeId, name, description, hierarchyIds e instanceFields. Cada instância é mapeada para apenas um tipo e uma ou mais hierarquias.

Propriedade Descrição
timeSeriesId A ID exclusiva da série temporal à qual a instância está associada. Na maioria dos casos, as instâncias são identificadas exclusivamente por uma propriedade como deviceId ou assetId. Em alguns casos, um ID composto mais específico combinando até 3 propriedades pode ser usado.
typeId O ID de cadeia de caracteres exclusivo que diferencia maiúsculas de minúsculas do tipo de Modelo de Série Temporal ao qual a instância está associada. Por padrão, todas as novas instâncias descobertas são associadas a um tipo padrão.
nome A propriedade name é opcional e diferencia maiúsculas de minúsculas. Se o nome não estiver disponível, o padrão será timeSeriesId. Se um nome for fornecido, timeSeriesId ainda estará disponível no poço.
descrição Uma descrição em texto da instância.
hierarchyIds Define a quais hierarquias a instância pertence.
instanceFields As propriedades de uma instância e quaisquer dados estáticos que definem uma instância. Eles definem valores de propriedades hierárquicas ou não hierárquicas e, ao mesmo tempo, oferecem suporte à indexação para executar operações de pesquisa.

Nota

As hierarquias são criadas usando campos de instância. InstanceFields adicionais podem ser adicionados para outras definições de propriedade de instância.

As instâncias têm a seguinte representação JSON:

{
  "timeSeriesId": ["PU2"],
  "typeId": "545314a5-7166-4b90-abb9-fd93966fa39b",
  "hierarchyIds": ["95f0a8d1-a3ef-4549-b4b3-f138856b3a12"],
  "description": "Pump #2",
  "instanceFields": {
    "Location": "Redmond",
    "Fleet": "Fleet 5",
    "Unit": "Pump Unit 3",
    "Manufacturer": "Contoso",
    "ScalePres": "0.54",
    "scaleTemp": "0.54"
  }
}

Gorjeta

Para obter suporte a CRUD (Instance API, create, read, update and delete), leia o artigo Data querying e a documentação REST da Instance API.

Hierarquias de modelos de séries temporais

As hierarquias do Modelo de Série Temporal organizam instâncias especificando nomes de propriedade e seus relacionamentos .

Você pode configurar várias hierarquias em um determinado ambiente do Azure Time Series Insights Gen2. Uma instância de Modelo de Série Temporal pode mapear para uma única hierarquia ou várias hierarquias (relação muitos-para-muitos).

A demonstração do Parque Eólico da Contoso exibe uma instância padrão e uma hierarquia de tipo.

Time Series Model hierarchy example

Definição de hierarquia

As hierarquias são definidas pela hierarquia id, nome e origem.

Propriedade Descrição
ID O identificador exclusivo para a hierarquia, que é usado, por exemplo, quando você define uma instância.
nome Uma cadeia de caracteres usada para fornecer um nome para a hierarquia.
origem Especifica a hierarquia ou o caminho organizacional, que é uma ordem pai-filho de cima para baixo da hierarquia que os usuários desejam criar. As propriedades pai-filho mapeiam campos de ocorrência.

As hierarquias são representadas em JSON como:

{
  "hierarchies": [
    {
      "id": "6e292e54-9a26-4be1-9034-607d71492707",
      "name": "Location",
      "source": {
        "instanceFieldNames": [
          "state",
          "city"
        ]
      }
    },
    {
      "id": "a28fd14c-6b98-4ab5-9301-3840f142d30e",
      "name": "ManufactureDate",
      "source": {
        "instanceFieldNames": [
          "year",
          "month"
        ]
      }
    }
  ]
}

No exemplo JSON anterior:

  • Location define uma hierarquia com pai states e filho cities. Cada location um pode ter vários, que por sua vez podem ter váriosstatescities.
  • ManufactureDate define uma hierarquia com pai year e filho month. Cada ManufactureDate um pode ter vários, que por sua vez podem ter váriosyearsmonths.

Gorjeta

Para obter suporte para criar, ler, atualizar e excluir (CRUD) da API de hierarquia, leia o artigo Consulta de dados e a documentação REST da API de hierarquia.

Exemplo de hierarquia

Considere um exemplo em que a hierarquia H1 tem building, floore room como parte de sua definição instanceFieldNames :

{
  "id": "aaaaaa-bbbbb-ccccc-ddddd-111111",
  "name": "H1",
  "source": {
    "instanceFieldNames": [
      "building",
      "floor",
      "room"
    ]
  }
}

Dado os campos de instância usados na definição anterior e várias séries temporais, os atributos e valores da hierarquia aparecem como mostrado na tabela a seguir:

ID de Série de Tempo Campos de instância
ID1 "edifício" = "1000", "andar" = "10", "sala" = "55"
ID2 "edifício" = "1000", "sala" = "55"
ID3 "andar" = "10"
ID4 "edifício" = "1000", "andar" = "10"
ID5 Nenhum dos "edifícios", "andar" ou "sala" está definido.

As séries cronológicas ID1 e ID4 são exibidas como parte da hierarquia H1 no Azure Time Series Insights Explorer porque definiram totalmente e ordenaram corretamente os parâmetros de construção, piso e sala.

Os outros são classificados em Instâncias não parentais porque não estão em conformidade com a hierarquia de dados especificada.

Tipos de modelos de séries temporais

Os tipos de modelos de séries temporais ajudam a definir variáveis ou fórmulas para fazer cálculos. Os tipos estão associados a uma instância específica.

Um tipo pode ter uma ou mais variáveis. Por exemplo, uma instância de Modelo de Série Temporal pode ser do tipo Sensor de Temperatura, que consiste nas variáveis temperatura média, temperatura mínima e temperatura máxima.

A demonstração do Parque Eólico da Contoso visualiza vários tipos de Modelo de Série Temporal associados às suas respetivas instâncias.

Time Series Model type example

Gorjeta

Para obter suporte para criar, ler, atualizar e excluir (CRUD) da API de tipos, leia o artigo Consulta de dados e a documentação REST da API de tipo.

Propriedades do tipo

Os tipos de modelos de séries temporais são definidos por id, nome, descrição e variáveis.

Propriedade Descrição
ID O ID de cadeia de caracteres exclusivo que diferencia maiúsculas de minúsculas para o tipo.
nome Uma cadeia de caracteres usada para fornecer um nome para o tipo.
descrição Uma descrição de cadeia de caracteres para o tipo.
variáveis Especifique as variáveis associadas ao tipo.

Os tipos estão em conformidade com o seguinte exemplo JSON:

{
  "types": [
    {
      "id": "1be09af9-f089-4d6b-9f0b-48018b5f7393",
      "name": "DefaultType",
      "description": "Default type",
      "variables": {
        "EventCount": {
          "kind": "aggregate",
          "value": null,
          "filter": null,
          "aggregation": {
            "tsx": "count()"
          }
        },
        "Interpolated Speed": {
          "kind": "numeric",
          "value": {
              "tsx": "$event['Speed-Sensor'].Double"
          },
          "filter": null,
          "interpolation": {
              "kind": "step",
              "boundary": {
                  "span": "P1D"
              }
          },
          "aggregation": {
              "tsx": "right($value)"
          }
        }
      }
    }
  ]
}

Os tipos de modelo de série temporal podem ter muitas variáveis que especificam fórmulas e regras de cálculo em eventos. Leia mais sobre como definir variáveis do Modelo de Série Temporal

Próximos passos