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 función del análisis, planee la integración e identifique el mejor patrón para sus requisitos. La siguiente lista de patrones de integración no es exhaustiva. Es posible que encuentre que una combinación de estos patrones se adapte mejor a su escenario.
Cada patrón aborda escenarios empresariales específicos y restricciones técnicas:
- Patrón de desencadenador instantáneo: este patrón refleja cómo interactúan los usuarios con los sistemas. Una acción controlada por el usuario desencadena una serie predefinida de acciones.
- Patrón controlado por eventos: este patrón requiere un desencadenador automático, como una respuesta a eventos que se producen en un sistema determinado.
- Patrón de consolidación de datos: este patrón es esencial para las organizaciones con varios sistemas de administración que requieren una imagen completa de sus datos en sus distintos sistemas.
- Patrón de arquitectura orientada a servicios: este patrón normalmente implica varios flujos entre sistemas, lo que permite la integración modular y escalable en entornos complejos.
- Patrón de sincronización: este patrón mantiene los datos sincronizados en distintas bases de datos y aborda los requisitos normativos y de rendimiento.
Patrón de desencadenador instantáneo
El patrón de desencadenador instantáneo es controlado por el usuario e intuitivo. Inicia un flujo de integración cuando un usuario realiza una acción, como presionar un botón en una aplicación power. Este patrón es ideal para escenarios en los que se necesitan datos a petición y no continuamente.
Escenario de ejemplo
Una aplicación power permite a los administradores de productos revisar los comentarios de los clientes y crear planes de acción. Algunas especificaciones técnicas se almacenan en el sistema de administración del ciclo de vida de productos de Oracle. En lugar de copiar todo el conjunto de datos en Dataverse, la aplicación incluye un botón para capturar datos cuando sea necesario.
Las razones para integrar en lugar de redirigir a los usuarios a Oracle incluyen:
- Experiencia de usuario deficiente
- Problemas de seguridad
- Costos de licencias
Dada la rentabilidad de las integraciones de Power Platform, cualquiera de estos motivos podría justificar la implementación.
Diseño de flujo
Use un flujo de nube instantáneo desencadenado por una pulsación de botón en la aplicación.
En este diagrama se muestra el patrón de desencadenador instantáneo, donde una acción iniciada por el usuario recupera datos de un sistema externo y lo escribe en Dataverse:
El flujo incluye estos pasos:
- Solicite registros de Oracle mediante parámetros (como id. de producto) proporcionados por la aplicación.
- Devuelve registros de Oracle a la aplicación.
- Escriba registros en Dataverse.
A continuación, estos datos se reflejan en la interfaz de Power Apps.
Consideraciones:
- Los modelos de datos entre Oracle y Dataverse pueden diferir, lo que requiere pasos de transformación.
- Los desencadenadores instantáneos no son realmente instantáneos. El tiempo de ejecución depende de la complejidad de la transformación y la disponibilidad del sistema.
- Agregue indicadores visuales en la aplicación para mostrar el progreso y permitir la cancelación si la operación tarda demasiado tiempo.
- En organizaciones grandes, las solicitudes simultáneas de muchos usuarios pueden forzar el sistema.
- Las integraciones pueden producir errores por varias razones. Asegúrese de que la aplicación proporciona comentarios a los usuarios durante la ejecución. Evite escenarios en los que los usuarios seleccionen un botón y no reciban respuesta, lo que conduce a una experiencia de usuario deficiente.
Patrón controlado por eventos
Las arquitecturas controladas por eventos (también conocidas como desencadenadores automáticos) responden a los cambios en los sistemas sin interacción directa del usuario. Por ejemplo, los desencadenadores se pueden configurar para responder a un registro creado en Dataverse, correos electrónicos entrantes, archivos agregados a OneDrive y cualquier número de otros eventos. Este patrón es intuitivo y escalable, por lo que es ideal para automatizar procesos empresariales basados en eventos del sistema.
Escenario de ejemplo
Un departamento de servicio al cliente usa una aplicación conectada a Dataverse para trabajar en casos y proporcionar actualizaciones a los clientes automáticamente, sin escribir correos electrónicos manualmente. Solo los cambios específicos (como agregar una nota o cambiar el estado) deben desencadenar notificaciones.
Use un desencadenador automático en Power Automate para responder a estos eventos. El flujo escucha los cambios en los registros de Dataverse y envía notificaciones cuando se cumplen las condiciones definidas.
En este diagrama se muestra el patrón de desencadenador automático, donde los cambios en Dataverse inician automáticamente acciones posteriores que actualizan a los clientes con la información relevante de los casos.
Configuración del desencadenador
Configure el flujo de la siguiente manera:
- Indique qué tipo de modificación desea supervisar.
- Defina las columnas a las que responder mediante el parámetro Seleccionar columnas .
- Use el parámetro Filter Rows para asegurarse de que solo los cambios de estado orientados al cliente desencadenen el flujo, además de cualquier otro requisito de filtración.
Evite implementar esta lógica en el propio flujo mediante una If acción. Use parámetros de desencadenador para reducir ejecuciones innecesarias y mejorar el rendimiento.
Evitar conflictos lógicos
Evalúe la lógica de eventos para evitar el comportamiento no deseado:
- Evite bucles en los que un evento desencadene una acción que vuelva a intentar el mismo evento.
- Impedir que varias actualizaciones provoquen notificaciones rápidas y repetidas.
- Diseñe flujos para controlar casos perimetrales y evitar ejecuciones excesivas.
Consideraciones de volumen y frecuencia
Comprenda el volumen esperado de eventos desencadenados. Los servicios de notificación (correo electrónico, SMS y otros) limitan el número de mensajes que puede enviar en un período de tiempo determinado.
- Calcule el número de eventos por día o mes.
- Implementar mecanismos de control de velocidad o limitación de tasa.
- Prepare un plan de mitigación para picos inesperados en la frecuencia de eventos.
Patrón de consolidación de datos
La consolidación de datos (también conocida como desencadenador programado) ayuda a las organizaciones a unificar la información entre varios sistemas para admitir los procesos operativos y de informes. Aunque el análisis suele requerir conjuntos de datos completos, los casos de uso operativo se centran en recuperar solo los datos necesarios para completar las tareas empresariales.
Escenario de ejemplo
Una empresa usa tres sistemas heredados para administrar las funciones empresariales principales: SAP para pedidos y cuentas por cobrar, Oracle para el inventario de productos e IBM para la administración de contenido relacionada con el cliente. La organización ha encargado una nueva aplicación de Power Platform para usar la inteligencia artificial para predecir la siguiente mejor acción para cada cliente en función de los datos históricos. La aplicación debe recopilar información relevante de los tres sistemas y generar un plan de acción de ventas para que los administradores de ventas guíe la interacción.
Enfoque de integración
La integración no requiere actualizaciones en tiempo real ni desencadenadores controlados por eventos. En su lugar, use un proceso programado en función de la frecuencia con la que el personal de ventas interactúa con los clientes.
En este caso de uso, un desencadenador programado consolida los datos de la siguiente manera:
- Solicita solo los datos necesarios de cada sistema
- Devuelve los datos en un formato compatible con Dataverse.
- Carga los datos en el modelo de IA para su análisis
En este diagrama se muestra el patrón de consolidación de datos programado, donde un proceso periódico recopila información de varios sistemas y carga el conjunto de datos combinado en Dataverse:
Configuración del desencadenador programado
Los desencadenadores programados ofrecen opciones de periodicidad flexibles, de una vez por segundo a una vez al año. Son predecibles en el tiempo, pero pueden ser impredecibles en el volumen si el ámbito de datos se expande o el crecimiento supera las expectativas.
- Supervisión del tiempo de ejecución del flujo para evitar superposiciones o retrasos
- Implementar medidas de seguridad para evitar la degradación del rendimiento
- Uso de Application Insights o herramientas similares para asegurarse de que el flujo se ejecuta de forma coherente
Mitigación de riesgos
Si un flujo programado tarda más de lo esperado, podría interrumpir los procesos empresariales. Por ejemplo, un flujo diseñado para ejecutarse cada 10 minutos podría producir un error si empieza a tardar más de 10 minutos en completarse.
- Supervisión del tiempo de ejecución y establecimiento de alertas para detectar anomalías
- Planear la escalabilidad a medida que aumenta el volumen de datos
- Garantizar la visibilidad del estado del flujo para evitar errores desapercibidos
Patrón de integración orientado a servicios
Las organizaciones de gran tamaño suelen operar varios sistemas entre departamentos. Estos sistemas evolucionan para depender entre sí para completar procesos empresariales. La capa de integración puentea estos sistemas, lo que permite a cada uno realizar su función principal al tiempo que habilita la comunicación entre sistemas.
Escenario de ejemplo revisado
Vamos a continuar con nuestro escenario de ejemplo en el que la organización usa varios sistemas para administrar diferentes partes de la empresa. SAP controla pedidos y cuentas por cobrar, Oracle administra el inventario de productos e IBM almacena documentación financiera interna. Dataverse ejecuta aplicaciones para ventas, servicio al cliente y administración de productos. SharePoint admite la colaboración interna y la administración de la base de conocimiento, mientras que las API de Maersk automatizan los procesos de logística.
En este diagrama se muestra el patrón controlado por eventos en un panorama de varios sistemas, donde las actualizaciones en varios sistemas empresariales desencadenan flujos automatizados que coordinan los datos y las acciones entre ellos:
Cada sistema interactúa con otros usuarios a través de eventos programados o acciones manuales de usuario. Ningún flujo único atiende todos los casos de uso. En su lugar, la solución requiere varios flujos adaptados a desencadenadores específicos y procesos empresariales.
Evitar flujos monolíticos
La creación de un flujo grande para controlar todas las integraciones no es práctico. Presenta desafíos de rendimiento, seguridad y mantenimiento. En su lugar:
- Creación de flujos modulares para cada desencadenador y proceso
- Optimización de flujos para casos de uso específicos
- Escalar el panorama de integración con componentes manejables
Optimización de procesos entre sistemas
Busque oportunidades para consolidar la lógica cuando proceda. Por ejemplo, si un documento de SharePoint debe enviarse tanto a SAP como a Oracle durante el mismo evento, es posible que tenga la tentación de crear un flujo que lea el archivo una vez y lo escriba en ambos sistemas. En primer lugar, sin embargo, considere si la lógica que está creando es demasiado rígida. En un panorama grande, los cambios en la forma en que los procesos empresariales funcionan en todos los sistemas se producen con tanta frecuencia como cambios en esos sistemas.
Evite la consolidación excesiva. Los procesos empresariales y las configuraciones del sistema cambian con frecuencia. Lógica rígida y centralizada reduce la flexibilidad y aumenta la sobrecarga de mantenimiento.
Flujos de diseño que son:
- Modular y fácil de mantener
- Escalable entre departamentos y sistemas
- Resistente a los cambios en la lógica de negocios y el comportamiento del sistema
Este patrón da como resultado una arquitectura orientada a servicios, a veces denominada humorísticamente "arquitectura de espaguetis", donde los sistemas están interconectados a través de flujos bien definidos y creados específicamente.
Patrón de sincronización de datos
Use la sincronización de datos cuando los sistemas idénticos almacenen datos en bases de datos independientes. Aunque el almacenamiento de los mismos datos dos veces podría parecer ineficaz, este patrón admite necesidades empresariales específicas, como el rendimiento y el cumplimiento normativo.
- Rendimiento: el acceso a los datos locales mejora la capacidad de respuesta, especialmente en sectores sensibles a la latencia.
- Cumplimiento: las regulaciones legales pueden requerir que los datos se almacenen dentro de las fronteras nacionales. Las organizaciones suelen implementar instancias locales con procesos de sincronización para cumplir estos requisitos.
Escenario de ejemplo
Una empresa de dispositivos médicos opera en varias regiones de Europa, en cooperación con las instituciones médicas locales. Las leyes de cada región son claras sobre los datos médicos; debe almacenarse dentro de las fronteras de esa región. La información sobre pedidos, productos y envíos se puede almacenar entre fronteras. Para abordar los requisitos normativos, la empresa creó una instancia de su aplicación de administración de clientes de Power Platform y Dataverse en cada región.
Para apoyar las operaciones de ventas, la empresa desea sincronizar datos no sensibles, como los detalles de contacto, los pedidos y el envío, en todas las instancias. Los datos médicos se excluyen de la sincronización.
Enfoque de integración
Use un flujo de nube automático desencadenado por actualizaciones en el registro de la cuenta. Configure filtros para:
- Supervisar solo los campos permitidos
- Impedir la sincronización de datos restringidos
Este enfoque da como resultado una integración dirigida por eventos que admite la eficiencia operativa y el cumplimiento.
En este diagrama se muestra el patrón de sincronización controlado por eventos, donde las actualizaciones de un entorno de Dataverse desencadenan automáticamente las actualizaciones correspondientes en otra:
Expectativas de tiempo de respuesta
Establezca expectativas realistas para la velocidad de sincronización. Power Automate es asincrónico y no garantiza el rendimiento en tiempo real. Si los usuarios empresariales esperan disponibilidad inmediata de datos, aclare las limitaciones al principio del proceso de diseño.
- Evaluar si Power Automate satisface las necesidades de rendimiento
- Evite el exceso de ingeniería para el acceso en tiempo real, a menos que esté justificado por los requisitos empresariales
Muchas solicitudes de acceso en tiempo real carecen de un caso empresarial sólido. Priorice la claridad, escalabilidad y mantenimiento en el diseño de integración.
Más allá de los flujos de nube
Al seleccionar una herramienta de integración, comience con Power Automate como opción predeterminada. Ofrece una rentabilidad inigualable para el desarrollo y el mantenimiento.
Power Automate es la herramienta de integración preferida para muchos escenarios porque:
- Ofrece un desarrollo rápido con conectores de código bajo
- Minimiza los costos de mantenimiento a largo plazo
- Admite una amplia gama de desencadenadores y sistemas
- Escala bien para la mayoría de los escenarios empresariales
El código personalizado, Azure Functions, Data Factory o Service Bus puede proporcionarle más control o un mejor rendimiento, pero agregan complejidad y costo. Use estas opciones solo cuando Power Automate no satisfaga sus necesidades empresariales o técnicas.
Escenario de ejemplo
Un servicio bancario en línea quiere calificar a los clientes para préstamos más rápidamente. El proceso de calificación implica cálculos complejos y recuperación de datos de varios sistemas para llegar a una puntuación de riesgo final. Después de una evaluación inicial, el servicio bancario considera que el flujo en la nube no es adecuado, dada la complejidad de los cálculos.
Sin embargo, en este caso un enfoque híbrido es la respuesta:
- Power Automate para gestionar la recopilación de datos con conectores integrados
- Cálculos complejos encapsulados en código personalizado que se ejecuta como una función de Azure, que se puede escalar de forma independiente o en un conector personalizado
Este enfoque híbrido equilibra el rendimiento, la escalabilidad y el costo.
Estrategia de integración
No elija herramientas de forma aislada. En su lugar, combine sus puntos fuertes. Por ejemplo:
- Uso de Power Automate para orquestación y conectividad
- Uso de Azure Functions para tareas de proceso intensivo
- Uso de conectores personalizados para ampliar la funcionalidad cuando sea necesario
Cada decisión de integración debe tener en cuenta el costo total de propiedad. Las soluciones personalizadas pueden parecer eficaces, pero a menudo requieren un presupuesto mayor para el desarrollo, las licencias y el soporte técnico. Justifica los costos más altos con un valor empresarial claro.