Modelo de serie temporal en Azure Time Series Insights Gen2

Nota:

El servicio Time Series Insights (TSI) dejará de admitirse a partir de marzo de 2025. Considere la posibilidad de migrar los entornos de TSI existentes a soluciones alternativas lo antes posible. Para más información sobre la entrada en desuso y la migración, consulte nuestra documentación.

En este artículo se describen el modelo de serie temporal, las funciones y cómo empezar a crear y actualizar modelos propios en el entorno de Azure Time Series Insights Gen2.

Sugerencia

Resumen

Tradicionalmente, los datos que se recopilan de los dispositivos de IoT carecen de información contextual, lo que dificulta encontrar y analizar los sensores rápidamente. El principal objetivo del modelo de serie temporal es simplificar la búsqueda y el análisis de datos de IoT o serie temporal. Este objetivo se logra al permitir la protección, el mantenimiento y el enriquecimiento de datos de serie temporal para ayudarle a preparar conjuntos de datos listos para el consumidor para el análisis.

Escenario: nuevo horno inteligente de Contoso

Imagine el escenario ficticio de un horno inteligente de Contoso. En este escenario, imagine que cada horno inteligente de Contoso tiene cinco sensores de temperatura, uno para cada uno de los cuatro quemadores superiores y otro para el horno en sí. Hasta hace poco, cada sensor de temperatura de Contoso enviaba, almacenaba y visualizaba sus datos individualmente. Para la supervisión de su dispositivo de cocina, Contoso se basaba en gráficos básicos, uno para cada sensor individual.

Aunque Contoso estaba satisfecho con su solución inicial de datos y visualización, se detectaron varias limitaciones:

  • Los clientes querían saber qué temperatura alcanzaría el horno con la mayoría de los quemadores superiores encendidos. Contoso tenía más dificultades para analizar y presentar una respuesta unificada sobre las condiciones del horno.
  • Los ingenieros de Contoso querían comprobar que el funcionamiento simultáneo de los quemadores superiores no se traduciría en una potencia ineficaz. Había dificultades a la hora de establecer las referencias cruzadas de qué sensores de temperatura y voltaje estaban asociados entre sí y cómo localizarlos en el almacén.
  • El equipo de control de calidad de Contoso quería auditar y comparar el historial entre dos versiones de sensor. Había dificultad para determinar qué datos pertenecían a cada versión del sensor.

Sin la capacidad de estructurar, organizar y definir el modelo de serie temporal del horno inteligente, cada sensor de temperatura mantenía puntos de datos deslocalizados, aislados y menos informativos. La conversión de estos puntos de datos en información procesable era más difícil, ya que cada conjunto de datos era independiente de los demás.

Estas limitaciones revelaron la importancia de las herramientas de visualización y agregación de datos inteligentes como acompañamiento del nuevo horno de Contoso:

  • La visualización de datos resulta útil cuando se pueden asociar y combinar datos en una vista práctica. Un ejemplo muestra los sensores de voltaje junto con los sensores de temperatura.
  • La administración de datos multidimensionales de varias entidades junto con las funcionalidades de comparación, zoom e intervalo de tiempo puede ser difícil de lograr.

El modelo de serie temporal proporciona una solución práctica para muchos de los escenarios de este ejemplo ficticio:

Time Series Model smart oven charting example

  • El modelo de serie temporal desempeña un papel fundamental en las consultas y en la navegación porque contextualiza datos al permitir comparaciones entre intervalos de tiempo y entre tipos de sensor y dispositivo. (A)
  • Los datos se contextualizan aún más, ya que los datos guardados en el modelo de serie temporal conservan los cálculos de consulta de serie temporal como variables y los reutilizan en el momento de la consulta.
  • El modelo de serie temporal organiza y agrega datos para mejorar las funciones de visualización y administración. (B)

Principales capacidades

Con el objetivo de simplificar la gestión de la contextualización de serie temporal, el modelo de serie temporal habilita las siguientes capacidades en Azure Time Series Insights Gen2. Esto le permitirá realizar lo siguiente:

  • Crear y administrar cálculos o fórmulas mediante el aprovechamiento de funciones escalares, operaciones de agregación, etc.
  • Definir relaciones de primario a secundario para permitir la navegación, la búsqueda y la referencia.
  • Definir propiedades asociadas a las instancias, definidas como campos de instancia, y usarlas para crear jerarquías.

Componentes

El modelo de serie temporal tiene tres componentes principales:

Estos componentes se combinan para especificar un modelo de serie temporal y organizar los datos.

Time Series Model overview chart

Los modelos de serie temporal se pueden crear y administrar a través del Explorador de Azure Time Series Insights Explorer. La configuración del modelo de serie temporal se puede administrar mediante la API de configuración del modelo.

Instancias del modelo de serie temporal

Las instancias del modelo de serie temporal son representaciones virtuales de las propias series temporales.

En la mayoría de los casos, las instancias se identifican de forma única mediante deviceId o assetId, que se guardan como identificadores de serie temporal.

Las instancias tienen información descriptiva asociada denominada propiedades de instancia, como un identificador de serie temporal, un tipo, un nombre, una descripción, jerarquías y campos de instancia. Como mínimo, las propiedades de la instancia incluyen información de la jerarquía.

Los campos de instancia son una colección de información descriptiva que puede incluir valores para los niveles de jerarquía, así como el fabricante, el operador, etc.

Después de configurar un origen de evento para el entorno de Azure Time Series Insights Gen2, las instancias se detectan y crean automáticamente en un modelo de serie temporal. Las instancias se pueden crear o actualizar a través del Explorador de Azure Time Series Insights mediante consultas al modelo de serie temporal.

En la demostración Contoso Wind Farm se proporcionan varios ejemplos de instancias activos.

Time Series Model instance example

Propiedades de instancia

Las instancias se definen mediante timeSeriesId, typeId, name, description, hierarchyIds e instanceFields. Cada instancia se asigna a solo un tipo y a una o más jerarquías.

Propiedad Descripción
timeSeriesId El identificador único de la serie temporal al que está asociado la instancia. En la mayoría de los casos, las instancias se identifican de forma única mediante una propiedad como deviceId o assetId. En algunos casos, se puede usar un identificador compuesto más específico que combine hasta 3 propiedades.
typeId Identificador de cadena único que distingue entre mayúsculas y minúsculas de tipo Modelo de serie temporal al que está asociado la instancia. De forma predeterminada, todas las instancias nuevas detectadas se asocian a un tipo predeterminado.
name La propiedad name es opcional y distingue mayúsculas de minúsculas. Si name no está disponible, el valor predeterminado es timeSeriesId. Si se proporciona un nombre, timeSeriesId sigue disponible en el cuadro.
descripción Descripción de texto de la instancia.
hierarchyIds Define a qué jerarquías pertenece la instancia.
instanceFields Las propiedades de una instancia y cualquier dato estático que define una instancia. Definen valores de jerarquía o propiedades no jerárquicas a la vez que admiten la indexación para realizar operaciones de búsqueda.

Nota:

Las jerarquías se crean mediante campos de instancia. Se pueden agregar elementos instanceFields adicionales para más definiciones de propiedades de instancia.

Las instancias tienen la siguiente representación 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"
  }
}

Sugerencia

Para obtener información sobre la compatibilidad con crear, leer, actualizar y eliminar (CRUD) de Instance API, lea el artículo Consulta de datos y la documentación de Instance API REST.

Jerarquías del modelo de serie temporal

Las jerarquías del modelo de serie temporal organizan instancias al especificar los nombres de las propiedades y sus relaciones.

En un entorno de Azure Time Series Insights Gen2 dado se pueden configurar varias jerarquías. Una instancia del modelo de serie temporal puede asignarse a una sola o a varias jerarquías (relación varios a varios).

En la demostración Contoso Wind Farm se muestra una instancia estándar y una jerarquía de tipos.

Time Series Model hierarchy example

Definición de jerarquía

Las jerarquías se definen mediante id., name y source de jerarquía.

Propiedad Descripción
id Identificador único de la jerarquía que se usa, por ejemplo, al definir una instancia.
name Cadena que se usa para proporcionar un nombre para la jerarquía.
source Especifica la jerarquía o la ruta de acceso organizativa, que es un orden descendente de primario a secundario de la jerarquía que los usuarios quieren crear. Las propiedades de primario a secundario asignan campos de instancia.

Las jerarquías se representan en 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"
        ]
      }
    }
  ]
}

En el ejemplo JSON anterior:

  • Location define una jerarquía con states primario y citiessecundario. Cada location puede tener varios states que, a su vez, pueden tener varios cities.
  • ManufactureDate define una jerarquía con year primario y monthsecundario. Cada ManufactureDate puede tener varios years que, a su vez, pueden tener varios months.

Sugerencia

Para obtener información sobre la compatibilidad con crear, leer, actualizar y eliminar (CRUD) de Hierarchy API, lea el artículo Consulta de datos y la documentación de Hierarchy API REST.

Ejemplo de jerarquía

Imagine un ejemplo en el que la jerarquía H1 tiene building, floor y room como parte de su definición instanceFieldNames:

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

Con los campos de instancia usados en la definición anterior y varias series temporales, los atributos y valores de la jerarquía aparecen como se muestra en la tabla siguiente:

Identificador de serie temporal Campos de instancia
ID1 "building" = "1000", "floor" = "10", "room" = "55"
ID2 "building" = "1000", "room" = "55"
ID3 "floor" = "10"
ID4 "building" = "1000", "floor" = "10"
ID5 No hay ningún valor establecido en "building", "floor" o "room".

ID1 e ID4 de Time Series de muestran como parte de la jerarquía H1 en el Explorador de Azure Time Series Insights porque han definido completamente y ordenado correctamente los parámetros building, floor y room.

Las demás se clasifican como instancias no primarias porque no se ajustan a la jerarquía de datos especificada.

Tipos de modelo de serie temporal

Los tipos de modelo de serie temporal le permiten definir variables o fórmulas para realizar cálculos. Los tipos se asocian con una instancia concreta.

Un tipo puede tener una o más variables. Por ejemplo, una instancia de modelo de serie temporal podría ser de tipo Sensor de temperatura, que consta de las variables temperatura media, temperatura mínima y temperatura máxima.

En la demostración Contoso Wind Farm se visualizan varios tipos de modelo de serie temporal asociados a sus respectivas instancias.

Time Series Model type example

Sugerencia

Para obtener información sobre la compatibilidad con crear, leer, actualizar y eliminar (CRUD) de Types API, lea el artículo Consulta de datos y la documentación de Type API REST.

Propiedades de tipo

Los tipos de modelo de serie temporal se definen mediante id, name, description y variables.

Propiedad Descripción
id Identificador de cadena único que distingue entre mayúsculas y minúsculas para el tipo.
name Cadena que se usa para proporcionar un nombre para el tipo.
descripción Descripción de cadena para el tipo.
variables Especifican variables asociadas al tipo.

Los tipos se ajustan al ejemplo JSON siguiente:

{
  "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)"
          }
        }
      }
    }
  ]
}

Los tipos del modelo de serie temporal pueden tener muchas variables que especifiquen la fórmula y las reglas de cálculo en los eventos. Más información sobre cómo definir variables del modelo de serie temporal

Pasos siguientes