Aplica iPaaS en tu estrategia HIP

Los iPaaS han evolucionado en los últimos años y ya no solamente se centran en resolver integraciones cloud-to-cloud si no que actualmente incorporan multitud de herramientas que permiten resolver todo tipo de integraciones, generando flujos que pueden ser desplegados en cualquier nube, convirtiéndose de esta manera en una pieza clave en las estrategias HIP.

¿Qué es iPaaS?

Integration Platform as a Service (iPaaS) es una categoría de herramienta de software que se caracteriza por ofrecer bajo el mismo paraguas un amplio abanico de herramientas de integración. Así, es habitual que en un iPaaS se puedan encontrar capacidades de API Management, de mensajería asíncrona, de integración B2B, ETLs, etc. Es un mercado que está todavía altamente fragmentado, ya que hay multitud de vendors que ofrecen herramientas iPaaS, incluyendo entre otros Mulesoft, Dell Boomi, Informatica, TIBCO, Software AG, etc.

Relación entre HIP e iPaaS

Se entiende como Hybrid Integration Platform (HIP) un modelo de arquitectura en el que está presente una combinación de herramientas de integración – que pueden ser de diferentes vendors – y donde algunas están desplegadas on-premise y otras en cloud. La arquitectura HIP cubre diferentes casos de uso: APIs, ESB, IoT, eventos, etc. Dentro de la arquitectura HIP se contemplan varios tipos de usuarios, incluyendo por un lado los especialistas en integración, y por otro lado los citizen integrators, es decir, aquellos usuarios que no tienen un conocimiento técnico muy profundo, pero que sin embargo de manera esporádica necesitan construir pequeñas integraciones a medida (por ejemplo, cargar en un ERP datos de un Excel o bien ser notificados vía mensajería instantánea cuando se gana una oportunidad).

Hybrid integration Platform

Figure 1. Hybrid Integration Platform.

La mayor parte de las herramientas iPaaS se diseñaron inicialmente para resolver integraciones entre servicios cloud, pero su uso se ha ampliado para cubrir todo tipo de necesidades, incluyendo escenarios de integración puramente on-premises. Así, es muy habitual que los iPaaS proporcionen un control plane que permanece en el cloud, pero también un runtime plane que puede ser desplegado en cualquier nube así como on-premises. Es por esto por lo que las herramientas iPaaS suelen ocupar un punto central dentro de las estrategias HIP de las compañías, dada su versatilidad de despliegue y el amplio número de casos de uso de integración soportados.

Es muy habitual que las compañías diseñen su estrategia HIP complementando los productos on-premises que llevan años utilizando (habitualmente ESBs, ETLs y B2B Gateways) con nuevas capacidades ofrecidas por las herramientas iPaaS, incluyendo integraciones con SaaS, IoT, mensajería asíncrona, etc. Es también frecuente utilizar el iPaaS como soporte para las iniciativas de API Strategy. La facilidad de despliegue de las herramientas iPaaS, unida a la variedad de conectores que ofrecen, hace que resulten muy atractivas para resolver proyectos donde el time-to-market sea crítico.

Integración B2B

Uno de los principales casos de uso de las herramientas iPaaS es la integración business-to-business (B2B). En este caso, las compañías intercambian información con su ecosistema de partners en tiempo real usando una variedad de formatos, tanto estandarizados (EDIFACT, X12) como ad hoc (JSON, XML) utilizando una variedad de protocolos (HTTPS, AS2, FTPS, etc.). Las comunicaciones B2B con partners llevan siendo desde hace muchas décadas la base de la economía de plataforma y han permitido crear ecosistemas complejos donde empresas – en ocasiones de sectores heterogéneos – colaboran entre sí, ya sea para construir una cadena de suministro (caso de las empresas de automoción o de retail) o para salir al mercado ofreciendo soluciones que combinan productos y servicios de diferentes actores (logística, agregadores financieros, etc.).

Las capacidades que los IPaaS ofrecen a nivel de integración B2B son:

  • Managed File Transfer (MFT). Muchos iPaaS ofrecen un servicio de MFT que permite ofrecer la capacidad de intercambio de ficheros utilizando protocolos como FTP, FTPS o SFTP. Se ofrecen habitualmente dos consolas diferentes: 1) una orientada a los administradores y que permite gestionar partners, reenviar ficheros, buscar ficheros, etc. 2) otra que se ofrece directamente a los partners y que proporciona un auto-servicio con capacidades de auto enrolment, refresco de contraseñas y certificados, etc.
  • Electronic Data Interchange (EDI). Tradicionalmente las Value Added Networks (VAN) han ofrecido la capacidad de encaminar mensajes EDI, pero existe una tendencia por parte de las empresas de adquirir directamente capacidades de B2B Gateway – particularmente para soportar protocolos como AS2 o AS4 – de tal manera que el intercambio de mensajes EDIFACT o X12 se pueda realizar directamente desde flujos construidos sobre el iPaaS. En este enlace hay un ejemplo de cómo integrar en un flujo de Mulesoft Anypoint un envío de mensaje EDIFACT vía AS2.
  • APIs. Aunque la mayor parte de las comunicaciones B2B se realizan vía MFT o EDI, existe una tendencia a ir paulatinamente migrando estas comunicaciones hacia APIs, las cuales ofrecen indudables ventajas en términos de agilidad, debido en buena parte a las capacidades de los portales de desarrolladores, que permiten desde un único punto consultar la documentación de las APIs, solicitar claves, descargar SDKs, lanzar pruebas utilizando los mocks expuestos en la sandbox, etc.

Antes de adquirir una herramienta iPaaS para resolver escenarios de integración B2B es importante comprobar si las funcionalidades MFT / EDI las ofrecen de manera nativa o vía partnership con otros vendors. Asimismo, en algunos casos las capacidades de API Management de algunos iPaaS son muy limitadas en comparación a las que ofrecen otros vendors especializados en APIs como Apigee.

Integración de aplicaciones

Los iPaaS se utilizan también para integrar aplicaciones entre sí, utilizando diferentes modelos:

  • Comunicaciones síncronas. En este caso, los iPaaS proporcionan la capacidad de exponer APIs orientadas a consumo interno, facilitando que dos aplicaciones se comuniquen entre sí, ya sea por ejemplo una aplicación móvil con una aplicación de backend on-premises, o esta con una aplicación de microservicios desplegada en un PaaS.
  • Comunicaciones asíncronas. Las comunicaciones asíncronas se apoyan en el uso de sistemas de mensajería basados en el modelo publicador-subscriptor. Los iPaaS proporcionan habitualmente una cola de mensajes la cual se puede utilizar tanto desde el propio iPaaS en el Cloud como desde on-premises.
  • Orquestaciones y Conectores. Otra capacidad ofrecida por los iPaaS es la construcción de flujos de integración donde se orquestan llamadas a varios servicios. Se trata de funcionalidad muy similar a la que tradicionalmente han ofrecido los ESB, aunque en el caso de los iPaaS, los flujos normalmente son desplegados de una manera descentralizada, facilitando el uso de contenedores. Es también habitual que los iPaaS ofrezcan cientos de conectores, permitiendo la conectividad con todo tipo de bases de datos y aplicaciones SaaS.
  • Citizen Integrators. Los iPaaS ofrecen también la capacidad para construir fácilmente integraciones de una manera gráfica, posibilitando que usuarios menos técnicos – citizen integrators – puedan construir flujos sencillos de manera ágil, en lugar de tener que esperar que un equipo de IT construya una aplicación a medida.

Integración de datos

Los iPaaS también ofrecen herramientas especializadas en la integración a nivel de datos:

  • Extract Transform Load (ETL). Los iPaaS ofrecen la capacidad de construir flujos que leen datos de un repositorio de información, los modifican y los cargan en otro repositorio. Para facilitar estas tareas, los iPaaS proporcionan conectores tanto a bases de datos SQL como no SQL.
  • Near Real Time. Otro esquema de integración de datos soportado por los iPaaS es el Near Real Time, donde fundamentalmente una aplicación deja un mensaje en una cola de mensajes, y un flujo lo lee, lo modifica si es necesario y lo carga en otro repositorio.
  • Change Data Capture (CDC). En este caso, las herramientas leen información de los ficheros de base de datos donde se almacenan la información de los cambios que se han producido en las tablas. A partir de ahí, esos datos se graban en otro repositorio. No todos los iPaaS ofrecen este tipo de herramientas.
  • IoT. Los iPaaS también soportan protocolos como MQTT, facilitando la ingesta de datos que provienen de sensores. Estas capacidades se convertirán cada vez en más relevantes, a medida que se desplieguen redes 5G.

Despliegue híbrido

Una característica importante de los iPaaS es su capacidad para desplegar en cualquier ubicación los flujos construidos. Para facilitar esta operativa, los iPaaS normalmente se construyen separando totalmente las capacidades de control de las capacidades de runtime:

  • Control Plane. Es la parte del iPaaS que normalmente se ocupa de proporcionar las consolas de administración y de desarrollo, desde las cuales se construyen y se comparten los artefactos de integración (APIs, orquestaciones, ETLs) y donde se almacena la información de analítica. Normalmente esta pieza se suele mantener en el cloud del vendor del iPaaS, aunque en ocasiones puede ser desplegada on-premises.
  • Runtime Plane. Es el motor de ejecución propiamente dicho. Es muy habitual que dicho motor se apoye en tecnología de contenedores (Docker / Kubernetes) de tal manera que los flujos puedan ser desplegados en cualquier punto (en el propio iPaaS, en una nube privada, en una nube pública) y que puedan aprovechar las capacidades de crecimiento elástico que proporcionan los PaaS.

Conclusiones

Dentro de las estrategias de Hybrid Integration Platform, los iPaaS ocupan un lugar preferente, dada su versatilidad para de una manera ágil soportar todo tipo de casos de uso (integración de aplicaciones, datos y B2B) permitiendo que los flujos puedan ser desplegados en cualquier nube.

 

Guía de Posibilidades Profesionales en el Ecosistema de Java