Un servicio de jerarquía permite a las partes interesadas de la empresa definir de forma centralizada cómo se organizan los recursos de producción, como las máquinas, en las fábricas, tanto desde el punto de vista operativo como desde el del mantenimiento. Puede usar esta información como origen de datos maestros en varios escenarios, tales como la supervisión de las condiciones de planta o la medición de la eficacia general del equipamiento (OEE).
Al compilar estos servicios, puede usar Azure Digital Twins para crear un modelo de nodos (por ejemplo, máquinas, centros de trabajo y ubicaciones) y sus relaciones. Cada nodo contiene metadatos, incluidos los identificadores de los sistemas de administración de recursos de empresa (ERP). Puede usar esta información contextual en aplicaciones de nivel inferior para obtener información sobre los estados de producción, agregar datos de las máquinas o identificar máquinas que puedan cumplir una orden determinada.
Posibles casos de uso
Usos habituales de esta carga de trabajo de arquitectura:
Mantenimiento predictivo
Habilitación de la conectividad en una planta o fábrica
Mantenimiento de la productividad en una planta o fábrica
Supervisión de la seguridad y del cumplimiento
Capacitación de los trabajadores en la zona de producción
Arquitectura
El siguiente servicio de jerarquía de ejemplo se desarrolla como una API REST de ASP.NET Core hospedada en Azure Kubernetes Services (AKS). Los datos se conservan en Azure Digital Twins y se recuperan desde aquí o desde una caché en memoria para las consultas que darían lugar a tiempos de respuesta largos en caso de enviarse directamente a Azure Digital Twins. La caché en memoria mejora la velocidad de un recorrido de grafo de 3000 nodos de ~10 segundos a menos de un segundo.
Extensibilidad
Este diseño del sistema es intencionadamente sencillo para evitar la introducción de otros servicios o dependencias. Sin embargo, puede considerar la posibilidad de ampliar la compatibilidad con la siguiente funcionalidad, en función de los requisitos y escenarios de uso:
Notificaciones de cambios: la sincronización de la caché se implementa mediante el sondeo periódico de Azure Digital Twins en busca de cambios. Puede usar las notificaciones de eventos de Azure Digital Twins para iniciar una actualización de la caché y para notificar a las aplicaciones de nivel inferior.
Datos de telemetría: el servicio de jerarquía de ejemplo no usa la funcionalidad de Azure Digital Twins para procesar los datos de telemetría. Puede ampliar la solución para procesar los datos de telemetría si las velocidades resultantes de los datos son compatibles con los límites de servicio de Azure Digital Twins.
Integración con Azure Data Explorer: es probable que los clientes de fabricación ingieran datos directamente en un almacén que pueda administrar las velocidades de datos de fabricación y que, después, usen Azure Digital Twins para la contextualización mediante las consultas conjuntas a Azure Digital Twins o Azure Data Explorer. Para hacerlo, puede usar el complemento de consultas de Azure Digital Twin para Azure Data Explorer.
Componentes
Azure Digital Twins es una plataforma IoT que crea representaciones digitales de cosas, lugares, procesos y personas reales en la nube.
Azure Digital Twins Explorer es una herramienta de desarrollo para el servicio Azure Digital Twins. Permite conectarse a una instancia de Azure Digital Twins para comprender, visualizar y modificar los datos de gemelos digitales.
Azure Kubernetes Services (AKS)ofrece Kubernetes sin servidor para ejecutar microservicios, una experiencia integrada de integración continua e implementación continua (CI/CD) y seguridad y gobernanza de nivel empresarial.
Azure App Service es un servicio de PaaS para crear y hospedar aplicaciones en máquinas virtuales administradas. La infraestructura de proceso subyacente en la que se ejecutan las aplicaciones se administra automáticamente. App Service proporciona supervisión de las cuotas de uso de los recursos y las métricas de la aplicación, registro de la información de diagnóstico y alertas basadas en métricas.
Azure Data Explorer es un servicio de análisis de datos rápido y totalmente administrado para analizar en tiempo real grandes volúmenes de datos de que se transmiten desde aplicaciones, sitios web, dispositivos IoT, etc.
Alternativas
Esta arquitectura usa AKS para ejecutar los microservicios que consultan datos maestros de los distintos servicios conectados. Como alternativa, se pueden ejecutar estos microservicios en Azure Container Instances. Azure Container Instances ofrece la forma más rápida y sencilla de ejecutar un contenedor en Azure sin tener que adoptar un servicio de nivel superior, como AKS.
La aplicación web que se hospeda por separado de los microservicios que se ejecutan en AKS también se puede implementar dentro del clúster de AKS. De este modo, no es necesario introducir otro servicio, como Azure App Service.
Considere la posibilidad de hospedar SAP en Azure para aprovechar todas las ventajas e integraciones adicionales que ofrece con la plataforma de Azure y el ecosistema de Microsoft 365.
Considere también la posibilidad de usar Azure Monitor para analizar y optimizar el rendimiento del clúster y otros recursos de AKS, así como para supervisar y diagnosticar los problemas de red.
Problema
Los recursos de producción, como las máquinas, se organizan en las fábricas en jerarquías específicas del contexto. Por ejemplo, se pueden organizar por ubicación física, por requisitos de mantenimiento o por los productos que producen.
Dado que las partes interesadas, los procesos y los sistemas de TI tienen diferentes perspectivas y necesidades, la definición de cómo se organizan los recursos de producción y la definición de los metadatos correspondientes procede de varios orígenes. Esto puede dar lugar a situaciones en las que las estructuras jerárquicas se definan de forma redundante en varios sistemas de TI o en las que la información de los sistemas ERP se replique en varias aplicaciones. Estas redundancias pueden dar lugar a incoherencias, falta de correlaciones entre los datos maestros y las jerarquías específicas de la aplicación, así como a conceptos de gobernanza heterogéneos implementados en los sistemas de TI y en toda la organización.
En tales situaciones, los cambios en las estructuras jerárquicas y en los metadatos consumen mucho tiempo, lo que afecta a la agilidad y escalabilidad empresarial. Si se agrega una nueva máquina o se reorganiza una línea de producción, los cambios deben aplicarse manualmente en varios lugares y la coherencia de estos cambios también debe comprobarse manualmente. El control de acceso descentralizado aumenta aún más la necesidad de los procesos manuales y dificulta el establecimiento de vínculos entre las jerarquías específicas de la aplicación.
Otro desafío al implementar las aplicaciones en varias plantas es que los sitios u organizaciones individuales pueden usar diferentes sistemas ERP, a menudo por motivos históricos, como una adquisición. Aunque lo recomendable es estandarizar los sistemas ERP, puede que no sea factible hacerlo en un período de tiempo razonable. Este entorno heterogéneo de ERP hace aún más complejo y desafiante el proceso de integración de aplicaciones de la zona de producción con los sistemas ERP.
Solución
Un servicio de jerarquía soluciona estos problemas al proporcionar una definición centralizada, consolidada y coherente de la jerarquía general. Se admite una vista de mantenimiento y otra operativa para satisfacer las necesidades de ambas perspectivas. Permite a las partes interesadas de la empresa definir y mantener la jerarquía mediante una UI gráfica (sin intervención del personal de TI) y proporciona control de acceso para controlar los cambios.
Cada vez que una aplicación debe consultar los datos de la jerarquía, recupera las definiciones más recientes del servicio de jerarquía. Esto garantiza que los cambios en la jerarquía siempre se reflejen en todas las aplicaciones, sin ningún otro paso manual.
Cada nodo de la jerarquía contiene un identificador único definido por el sistema emitido por el servicio de jerarquía, lo que permite identificar de forma única los elementos (por ejemplo, una máquina específica de una fábrica concreta) en las aplicaciones de toda la organización. Este identificador también se puede agregar a los datos de telemetría enviados por las máquinas, lo que permite contextualizar los datos en función de la jerarquía.
Puesto que solo existe una definición de la jerarquía, el servicio de jerarquía puede actuar como punto único de integración con los sistemas ERP, lo que permite desacoplar el ciclo de vida de los sistemas ERP de la jerarquía. Puede llevar a cabo la integración con los sistemas ERP manualmente mediante la UI gráfica, mediante la funcionalidad de importación en bloque o mediante una API proporcionada por el servicio de jerarquía.
Para mantener una separación clara de los intereses, el servicio de jerarquía solo contiene información sobre nodos, relaciones y otros metadatos, como referencias a los datos maestros correspondientes (por ejemplo, el identificador de ERP de una máquina determinada). El servicio de jerarquía mantiene por separado cualquier otra información, como los registros de datos maestros reales o los parámetros específicos de la aplicación. Por ejemplo, los registros de los datos maestros se pueden proporcionar mediante un servicio dedicado de documentos de datos maestros, o bien una aplicación de la zona de producción podría mantener parámetros como umbrales o valores de cavidad predeterminados definidos en el nivel de máquina. Con este enfoque, se puede mantener un servicio de jerarquía ágil y eficiente, y evitar que se evolucione a un sistema paralelo de administración de datos maestros.
Funcionalidades
En este escenario se explora un ejemplo de implementación del servicio de jerarquía.
Modelo de datos
El servicio de jerarquía proporciona un modelo de datos consolidado que permite definir y consultar vistas jerárquicas de los recursos de producción en las fábricas y otras ubicaciones físicas. Esto incluye la validación de las reglas de negocio correspondientes para aplicar la coherencia y la integridad de los datos de la jerarquía.

Principales capacidades
Funcionalidades de consultas específicas de la empresa y tiempos de respuesta de consulta rápidos al materializar grafos grandes
Modelado coherente de la estructura de propiedad principal de los recursos de la planta
Modelo personalizado y específico del dominio (incluida la validación de reglas de negocio)
Funcionalidades de importación y exportación en bloque
Extensibilidad basada en las funcionalidades proporcionadas por Azure Digital Twins y Azure Data Explorer
Control de acceso basado en roles (RBAC)
Tema de
Estas funcionalidades tienen los componentes siguientes:
| Componente | Propuesta de valor |
|---|---|
| API de administración | Admite las operaciones empresariales atómicas y la validación de reglas de negocios. |
| API de consulta | Mejora el rendimiento de las consultas de Azure Digital Twins al materializar los grafos grandes (mediante una caché en memoria) y proporciona funcionalidades de consulta para las necesidades de datos específicas de la fabricación. |
| API de E/S | Habilita la importación y exportación en bloque para escenarios específicos de la fabricación. |
Operaciones compatibles
Los componentes enumerados anteriormente admiten las siguientes operaciones.

Las operaciones de consulta permiten filtrar, además, por tipos de nodo y atributos de nodo.
Consideraciones
Disponibilidad
Considere la posibilidad de implementar AKS en zonas de disponibilidad. Las zonas de disponibilidad son ubicaciones físicas únicas en las regiones de Azure que ayudan a proteger las VM, las aplicaciones y los datos de los errores de los centros de datos.
Un clúster de AKS distribuye recursos, como los nodos y el almacenamiento, en secciones lógicas de la infraestructura subyacente de Azure. Este modelo de implementación, al usar las zonas de disponibilidad, garantiza que los nodos de una zona de disponibilidad estén separados físicamente de los definidos en otra zona de disponibilidad. Los clústeres de AKS implementados con varias zonas de disponibilidad configuradas en un clúster proporcionan un mayor nivel de disponibilidad al minimizar la posibilidad de que errores de hardware o eventos de mantenimiento planeados interrumpan el servicio.
Escalabilidad
Los servicios de AKS también se han diseñado para escalar vertical u horizontalmente de forma manual o automática. Para mayor escalabilidad, puede considerar la posibilidad de usar la escalabilidad automática de clústeres de AKS, que puede escalar automáticamente un clúster completo para satisfacer las demandas de la aplicación en AKS. El componente de escalado automático de clústeres puede supervisar los pods del clúster que no pueden programarse debido a las restricciones de los recursos. Cuando se detectan problemas, la cantidad de nodos de un grupo de nodos aumenta para satisfacer las necesidades de la aplicación.
Azure App Service puede escalar también vertical u horizontalmente de forma manual o automática.
Seguridad
Para mejorar la seguridad del clúster de AKS, puede aplicar directivas de seguridad integradas mediante Azure Policy. Azure Policy ayuda a aplicar los estándares de la organización y puede evaluar el cumplimiento a gran escala. Después de instalar el complemento de Azure Policy para AKS, puede aplicar definiciones de directiva individuales o grupos de definiciones de directiva denominados iniciativas (a veces conocidos como conjuntos de directivas) al clúster.
Debe restringir quién puede acceder a los recursos de fábrica conectados y usarlos. Además, debe limitar los datos a los que se puede acceder en función de la identidad o el rol del usuario. Use Azure Active Directory (Azure AD) para el control de identidad y acceso. Use Azure Key Vault para administrar claves y secretos.
DevOps
Para implementar automáticamente los microservicios en el clúster de AKS, lo mejor es usar los procesos de CI/CD. Considere la posibilidad de usar una solución como Azure DevOps o Acciones de GitHub, como se describe en la documentación de Azure DevOps Starter.
Precios
En general, use la calculadora de precios de Azure para calcular los costos y la calculadora de AKS para calcular los costos de ejecución de AKS en Azure. Consulte la sección Costo del Marco de buena arquitectura de Microsoft Azure para obtener información sobre otras consideraciones.
Pasos siguientes
Artículos de información general del Centro de arquitectura de Azure:
Documentación del producto:
Rutas de aprendizaje de Microsoft Learn:
Administración de identidades y gobernanza para administradores de Azure
Supervisión y copia de seguridad de recursos para administradores de Azure
