Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En esta arquitectura se describe una solución que proporciona supervisión casi en tiempo real y observabilidad de los sistemas y los datos de telemetría de dispositivos de usuario. Se centra en un caso de uso para el sector multimedia.
Arquitectura
Descargue un archivo Visio de esta arquitectura.
Flujo de datos
Los dispositivos cliente y las aplicaciones transmiten telemetría sin procesar a Microsoft Fabric a través de HTTP y conectores. Las secuencias de eventos ingieren los datos. Las capacidades de inteligencia en tiempo real de Fabric transforman, normalizan y persisten los datos de telemetría en un eventhouse, que es una base de datos escalable de series temporales. Los paneles de inteligencia en tiempo real proporcionan información, y el Activador de Datos desencadena acciones automatizadas basadas en los patrones detectados.
El siguiente flujo de datos corresponde al diagrama anterior:
Instrumentación: La instrumentación se produce a través de sondeos o agentes instalados en sistemas para supervisar los datos. Estos agentes tienen varias formas. Por ejemplo, en una plataforma de streaming de video bajo demanda, una empresa podría usar estándares abiertos de dash.js para recopilar métricas de calidad de experiencia (QoE) de los clientes.
Ingestión: Los clientes ingieren datos de telemetría sin procesar directamente a través de llamadas HTTP a puntos de conexión específicos del servicio. Azure Functions controla los datos entrantes. Como alternativa, puede cargar telemetría a través de sistemas externos en soluciones de almacenamiento persistentes, como Azure Blob Storage o lagos de datos. Las secuencias de eventos de Fabric proporcionan una experiencia sin código para enrutar estos datos a entidades nativas de Fabric, como un centro de eventos o Un activador de datos.
Transformación y persistencia: Fabric administra la transformación de datos mediante directivas de actualización de tablas y vistas materializadas. Un centro de eventos almacena los datos transformados y admite el análisis de alto rendimiento en grandes conjuntos de datos de serie temporal. Este enfoque complementa los mecanismos de ingesta existentes. También proporciona una alternativa más integrada y escalable a las canalizaciones tradicionales que dependen de Azure Functions y data Explorer para la transformación y el análisis.
Monitorización: El centro de inteligencia Real-Time dentro de Fabric centraliza el acceso a eventos de streaming y datos de supervisión. Puede usarlo para visualizar métricas, establecer alertas y supervisar el rendimiento en el inquilino de Fabric. Esta arquitectura se centra principalmente en la supervisión de las aplicaciones, los servicios y los dispositivos cliente que tienen reproductores, como se muestra en el lado izquierdo del diagrama. Estos componentes generan la telemetría y las señales operativas que otros componentes ingieren y analizan. Actúan como objetivos principales de observabilidad.
Detección de anomalías: Real-Time Intelligence incluye la detección de anomalías integrada con tecnología de inteligencia artificial a través del activador de datos. Esta característica puede identificar automáticamente patrones inusuales o infracciones de umbral en los datos de streaming y desencadenar acciones con capacidad de respuesta. Estas funcionalidades usan modelos de aprendizaje automático para detectar anomalías en tiempo real sin configuración manual. Eventhouses también admite funciones avanzadas de detección de anomalías que dan cuenta de estacionalidad, tendencias y líneas base históricas. Esta funcionalidad permite obtener información más precisa y con reconocimiento del contexto en grandes conjuntos de datos de series temporales.
Componentes
Blob Storage es un servicio de almacenamiento de objetos escalable para datos no estructurados. En esta arquitectura, Blob Storage almacena datos de telemetría sin procesar que se originan en aplicaciones, servicios o proveedores externos. Trate estos datos como transitorios si no se requiere ningún análisis adicional. La telemetría se enruta a través de una secuencia de eventos de Fabric en un centro de eventos. Puede usar funcionalidades nativas de Fabric para transformar y conservar los datos para el análisis de alto rendimiento.
Azure Event Grid es un servicio de enrutamiento de eventos administrado que permite arquitecturas controladas por eventos. En esta arquitectura, Event Grid actúa como un sistema de entrega de eventos confiable que escucha eventos que Blob Storage publica, como la creación o eliminación de blobs. Estos eventos desencadenan el procesamiento posterior a través de Funciones de Azure, que se suscriben a las notificaciones de Event Grid. Esta integración permite flujos de trabajo dinámicos controlados por eventos que admiten la ingesta y el enrutamiento de telemetría dentro de la arquitectura más amplia basada en Fabric.
Azure Event Hubs es una plataforma de streaming de macrodatos y un servicio de ingesta de eventos que pueden recibir y procesar millones de eventos por segundo. En esta arquitectura, Event Hubs actúa como punto de entrada, a menudo denominado ingestador de eventos, para la canalización de eventos. Un ingeror de eventos es un componente o servicio ubicado entre publicadores de eventos y consumidores de eventos. Desacopla la producción de una secuencia de eventos del consumo de los eventos.
Azure Functions es un servicio de proceso sin servidor que puede usar para ejecutar código desencadenado por eventos sin tener que aprovisionar o administrar explícitamente la infraestructura. En esta arquitectura, Azure Functions analiza y transforma los datos ingeridos a través de puntos de conexión HTTP y blob. Los datos de telemetría se enrutan a flujos de eventos y almacenes de eventos para la transformación y el análisis escalables.
Una secuencia de eventos de Fabric es una característica de Fabric que permite la ingesta, transformación y enrutamiento de eventos en tiempo real. En esta arquitectura, las secuencias de eventos de Fabric proporcionan varios conectores de origen para capturar datos de eventos de varios orígenes. Puede usar este enfoque para crear la lógica de procesamiento, transformación y enrutamiento de datos de eventos sin escribir código.
Un centro de eventos de Fabric es una base de datos de análisis optimizada para datos de serie temporal y cargas de trabajo de análisis en tiempo real. En esta arquitectura, los centros de eventos se adaptan a eventos de streaming basados en tiempo que contienen datos estructurados, semiestructurados y no estructurados. Puede obtener datos de varios orígenes, en varias canalizaciones y varios formatos de datos. Estos datos se indexan y particionan en función del tiempo de ingesta.
El activador de datos es una característica sin código en Fabric que realiza acciones automáticamente cuando detecta patrones en el cambio de datos. En esta arquitectura, Data Activator actúa como un motor de detección de eventos de baja latencia que desencadena acciones cuando detecta patrones o condiciones específicos en orígenes de datos. Supervisa estos orígenes de datos con latencia de subsegundos e inicia acciones cuando los datos cumplen los umbrales o detectan patrones específicos. Estas acciones incluyen el envío de correos electrónicos o notificaciones de Teams, el inicio de flujos de Power Automate o la integración con sistemas externos.
Alternativas
Azure Data Factory proporciona herramientas para crear flujos de trabajo de extracción, transformación y carga (ETL) y para realizar un seguimiento y reintento de trabajos desde una interfaz gráfica de usuario (GUI). Data Factory tiene un retraso mínimo de unos 5 minutos desde el momento de la ingesta hasta la persistencia. Si el sistema de supervisión puede tolerar este retraso, considere esta alternativa.
Detalles del escenario
Las organizaciones suelen implementar tecnologías variadas y a gran escala para resolver problemas empresariales. Estos sistemas y dispositivos de usuario generan grandes conjuntos de datos de telemetría.
Esta arquitectura se basa en un caso de uso perteneciente al sector multimedia. La transmisión de elementos multimedia para la reproducción en directo y de vídeo a petición requiere una identificación casi en tiempo real de los problemas de las aplicaciones y la respuesta a ellos. Para admitir este escenario en tiempo real, las organizaciones deben recopilar un conjunto de telemetría masivo, que requiere una arquitectura escalable. Después de recopilar datos, deben realizar otros tipos de análisis, como la inteligencia artificial y la detección de anomalías, para identificar eficazmente los problemas en un conjunto de datos de gran tamaño.
Cuando se implementan tecnologías a gran escala, el sistema y los dispositivos de usuario que interactúan con ellas generan conjuntos masivos de datos de telemetría. En escenarios tradicionales, las organizaciones analizan estos datos a través de un sistema de almacenamiento de datos para generar información que admita decisiones de administración. Este enfoque puede funcionar en algunos escenarios, pero no responde lo suficiente bien para los casos de uso de transmisión de elementos multimedia. Para solucionar este problema, las organizaciones requieren información en tiempo real de los datos de telemetría que generan servidores, redes y dispositivos de usuario. Los sistemas de supervisión suelen detectar errores y errores, pero detectarlos casi en tiempo real es difícil. Esta arquitectura se centra en resolver ese problema.
En una configuración de streaming en vivo o vídeo a petición, los sistemas y diversos clientes, como dispositivos móviles, escritorios y TELEVISORes, generan datos de telemetría. La solución toma los datos sin procesar y asocia el contexto a cada punto de datos. Entre los ejemplos de contexto se incluyen dimensiones como geography, sistema operativo de usuario, identificador de contenido y proveedor de red de entrega de contenido. El sistema recopila, transforma y guarda la telemetría sin procesar en un centro de eventos de Fabric para su análisis. Las herramientas de inteligencia artificial pueden interpretar los datos y automatizar los procesos manuales de observación y alertas. Data Activator lee los datos del centro de inteligencia de Real-Time para mostrar paneles interactivos y desencadenar alertas.
Consideraciones
Estas consideraciones implementan los pilares del Azure Well-Architected Framework, que es un conjunto de principios rectores que puede utilizar para mejorar la calidad de una carga de trabajo. Para obtener más información, consulte Well-Architected Framework.
Confiabilidad
La confiabilidad ayuda a garantizar que la aplicación pueda cumplir los compromisos que realice para sus clientes. Para obtener más información, vea Lista de comprobación de revisión de diseño para lade confiabilidad.
Las aplicaciones críticas para la empresa deben permanecer activas incluso durante eventos disruptivos, como las interrupciones de la red de entrega de contenido o región de Azure. Las siguientes estrategias, dos estrategias principales y una estrategia híbrida, admiten la creación de redundancia en el sistema:
Activo/activo: Se ejecuta código duplicado y funciones duplicadas. Cualquier sistema puede asumir el control durante un error.
Activo/en espera: Solo un nodo actúa como nodo activo o principal. El otro nodo permanece listo para asumir el control si se produce un error en el nodo principal.
Mixto: Algunos componentes o servicios usan la configuración activa-activa, mientras que otros usan la configuración active-standby.
No todos los servicios de Azure tienen redundancia integrada. Por ejemplo, Azure Functions ejecuta una aplicación de funciones solo en una región específica. Para más información sobre las estrategias que se van a implementar, en función de cómo se desencadenen las funciones (HTTP frente a publicar o suscribirse), consulte Confiabilidad en Azure Functions.
Fabric admite zonas de disponibilidad con redundancia de zona, donde los recursos se replican automáticamente entre zonas, sin necesidad de configurarla. Para obtener más información sobre la replicación entre regiones para los datos almacenados en OneLake, consulte Confiabilidad en Fabric. Puede participar o no en esta característica en función de sus requisitos.
Optimización de costos
La optimización de costos se centra en formas de reducir los gastos innecesarios y mejorar las eficiencias operativas. Para obtener más información, consulte Lista de comprobación de revisión de diseño para la optimización de costos.
El costo de esta arquitectura depende del número de eventos de telemetría entrantes, del almacenamiento de telemetría sin procesar en los centros de eventos de Blob Storage y Fabric, y de un modelo de precios dedicado o de un modelo de precios de pago por uso para la capacidad de Fabric.
Para calcular los costos totales, use la calculadora de precios de Azure.
Eficiencia del rendimiento
La eficiencia del rendimiento hace referencia a la capacidad de escalado de la carga de trabajo para satisfacer las demandas de los usuarios de forma eficaz. Para obtener más información, vea Lista de comprobación de revisión de diseño para la eficiencia del rendimiento.
En función de la escala y la frecuencia de telemetría entrante, el streaming en Fabric podría encontrar restricciones de rendimiento. Estas restricciones suelen derivarse de los siguientes factores:
Arranque en frío: Las invocaciones sin servidor requieren tiempo para programar y configurar el entorno antes de que se ejecute la función. Esta configuración tarda hasta unos segundos.
Frecuencia de solicitudes: Por ejemplo, si llegan 1000 solicitudes HTTP, pero solo hay disponible un servidor de un solo subproceso, el sistema no puede procesar todas las solicitudes simultáneamente. Para controlarlos de forma eficaz, debe escalar horizontalmente mediante la implementación de más servidores.
Retraso de inicialización de eventstream: Cuando se activan nuevos orígenes de datos, las canalizaciones de eventstream de Fabric pueden introducir latencia. Este retraso se asemeja a un arranque en frío. Aunque es breve, puede afectar a escenarios sensibles a la latencia.
Ráfagas de datos de alta frecuencia: Si llegan miles de eventos de telemetría a la vez, es posible que una única configuración de eventstream no las procese simultáneamente. Para mantener la capacidad de respuesta en tiempo real, debe escalar horizontalmente las canalizaciones de flujo de eventos y optimizar las reglas de enrutamiento entre varios destinos.
Para mitigar estos problemas, use áreas de trabajo de capacidad dedicada en los SKU de Fabric. Este enfoque proporciona las siguientes ventajas:
Garantiza un rendimiento coherente mediante la eliminación de retrasos de inicialización.
Admite el escalado horizontal de canalizaciones de eventstream para controlar cargas de trabajo simultáneas de ingesta y transformación.
Para obtener más información, consulte Fabric Real-Time Intelligence.
Colaboradores
Microsoft mantiene este artículo. Los colaboradores siguientes escribieron este artículo.
Creadores de entidad de seguridad:
- John Hauppa | Administrador de programas técnico sénior
- Uffaz Nathaniel | Ingeniero principal de software
Otros colaboradores:
- Dilmurod Makhamadaliev | Ingeniero de software
- Omeed Musavi | Ingeniero principal de software
Para ver los perfiles no públicos de LinkedIn, inicie sesión en LinkedIn.
Pasos siguientes
- Documentación de Real-Time Intelligence
- Tutorial deReal-Time Intelligence: Introducción
- Introducción a Azure Functions
- Ejemplos de código complementarios
- Supervisión de Azure Media Services