Compartir vía


Azure Stream Analytics en IoT Edge

Azure Stream Analytics en IoT Edge permite a los desarrolladores implementar inteligencia analítica casi en tiempo real más cerca de los dispositivos IoT para que puedan desbloquear el valor completo de los datos generados por el dispositivo. Azure Stream Analytics está diseñado para baja latencia, resistencia, uso eficaz del ancho de banda y cumplimiento. Las empresas pueden implementar lógica de control cerca de las operaciones industriales y complementar el análisis de macrodatos realizado en la nube.

Azure Stream Analytics en IoT Edge se ejecuta en el marco de Azure IoT Edge . Una vez creado el trabajo en Stream Analytics, puede implementarlo y administrarlo mediante IoT Hub.

Escenarios frecuentes

En esta sección se describen los escenarios comunes de Stream Analytics en IoT Edge. En el diagrama siguiente se muestra el flujo de datos entre dispositivos IoT y la nube de Azure.

Diagrama de alto nivel de IoT Edge

Comando y control de baja latencia

Los sistemas de seguridad de fabricación deben responder a los datos operativos con latencia ultra-baja. Con Stream Analytics en IoT Edge, puede analizar los datos del sensor casi en tiempo real y emitir comandos al detectar anomalías para detener una máquina o desencadenar alertas.

Conectividad limitada a la nube

Los sistemas críticos, como equipos de minería de datos remotos, buques conectados o perforación en alta mar, deben analizar y reaccionar a los datos incluso cuando la conectividad en la nube es intermitente. Con Stream Analytics, la lógica de streaming se ejecuta independientemente de la conectividad de red y puede elegir lo que envía a la nube para su posterior procesamiento o almacenamiento.

Ancho de banda limitado

El volumen de datos producidos por motores jet o automóviles conectados puede ser tan grande que los datos deben filtrarse o procesarse previamente antes de enviarlos a la nube. Con Stream Analytics, puede filtrar o agregar los datos que se deben enviar a la nube.

Conformidad

El cumplimiento normativo puede requerir que algunos datos se anonimicen o agreguen localmente antes de enviarlos a la nube.

Trabajos de Edge en Azure Stream Analytics

Los trabajos de Stream Analytics en Edge se ejecutan en contenedores implementados en dispositivos de Azure IoT Edge. Los trabajos Edge se componen de dos partes:

  • Parte de la nube responsable de la definición del trabajo: los usuarios definen entradas, salidas, consultas y otras configuraciones, como eventos desordenados, en la nube.

  • Un módulo que se ejecuta en los dispositivos IoT. El módulo contiene el motor de Stream Analytics y recibe la definición de trabajo de la nube.

Stream Analytics usa IoT Hub para implementar los trabajos perimetrales en los dispositivos. Para más información, consulte Implementación de IoT Edge.

Trabajo en Edge de Azure Stream Analytics

Limitaciones de los trabajos en Edge

El objetivo es tener paridad entre los trabajos de IoT Edge y los trabajos en la nube. La mayoría de las características del lenguaje de consulta SQL son compatibles con edge y cloud. Sin embargo, no se admiten las siguientes características para los trabajos perimetrales:

  • Funciones definidas por el usuario (UDF) en JavaScript. La UDF está disponible en C# para trabajos de IoT Edge (versión preliminar).
  • Agregados definidos por el usuario (UDA).
  • Funciones de Azure ML.
  • Formato AVRO para la entrada y salida. En este momento, solo se admiten CSV y JSON.
  • Los operadores SQL siguientes:
    • PARTICIÓN POR
    • GetMetadataPropertyValue
  • Directiva de llegada tardía

Requisitos de tiempo de ejecución y hardware

Para ejecutar Stream Analytics en IoT Edge, necesita dispositivos que puedan ejecutar Azure IoT Edge.

Stream Analytics y Azure IoT Edge usan contenedores de Docker para proporcionar una solución portátil que se ejecuta en varios sistemas operativos host (Windows, Linux).

Stream Analytics en IoT Edge está disponible como imágenes de Windows y Linux, que se ejecutan en arquitecturas x86-64 o ARM (máquinas RISC avanzadas).

Entrada y salida

Los trabajos de Stream Analytics Edge pueden recibir entradas y salidas de otros módulos que se ejecutan en dispositivos IoT Edge. Para conectarse desde y a módulos específicos, puede establecer la configuración de enrutamiento en el momento de la implementación. Se describe más información en la documentación de composición del módulo IoT Edge.

En el caso de las entradas y salidas, se admiten formatos CSV y JSON.

Para cada flujo de entrada y salida que cree en el trabajo de Stream Analytics, se crea un punto de conexión correspondiente en el módulo implementado. Estos puntos de conexión se pueden utilizar en las rutas de la implementación.

Los tipos de entrada de flujo admitidos son:

  • Centro de Microsoft Edge
  • Centro de eventos
  • IoT Hub

Los tipos de salida de flujo admitidos son:

  • Centro de Microsoft Edge
  • Base de datos SQL
  • Centro de eventos
  • Blob Storage/ADLS Gen2

La entrada de referencia admite el tipo de archivo de referencia. Se puede acceder a otras salidas mediante un trabajo en la nube posterior. Por ejemplo, un trabajo de Stream Analytics hospedado en Edge envía la salida a Edge Hub, que luego puede enviar la salida a IoT Hub. Puede usar un segundo trabajo de Azure Stream Analytics hospedado en la nube con entrada desde IoT Hub y salida a Power BI u otro tipo de salida.

Información de la imagen del módulo de Azure Stream Analytics

Esta información de versión se actualizó por última vez el 2020-09-21:

  • Imagen: mcr.microsoft.com/azure-stream-analytics/azureiotedge:1.0.9-linux-amd64

    • imagen base: mcr.microsoft.com/dotnet/core/runtime:2.1.13-alpine
    • plataforma:
      • arquitectura: amd64
      • os: linux
  • Imagen: mcr.microsoft.com/azure-stream-analytics/azureiotedge:1.0.9-linux-arm32v7

    • imagen base: mcr.microsoft.com/dotnet/core/runtime:2.1.13-bionic-arm32v7
    • plataforma:
      • arquitectura: arm
      • os: linux
  • Imagen: mcr.microsoft.com/azure-stream-analytics/azureiotedge:1.0.9-linux-arm64

    • imagen base: mcr.microsoft.com/dotnet/core/runtime:3.0-bionic-arm64v8
    • plataforma:
      • arquitectura: arm64
      • os: linux

Obtención de ayuda

Para obtener más ayuda, pruebe la página de preguntas y preguntas de Microsoft para Azure Stream Analytics.

Pasos siguientes