Integración

Integración de datos con arquitecturas monolíticas o de microservicio

13th febrero 2020

En cualquier tipo de organización empresarial, los datos son uno de los activos más valiosos. Utilizarlos de la manera adecuada marca la diferencia porque facilita la toma de decisiones comerciales acertadas. También influye de manera directa en el crecimiento comercial (y muy específicamente en las ventas) y en la mejora de la rentabilidad.

Todo ello ha convertido en fundamental el uso de datos procedentes de diferentes fuentes y su exposición en casos de uso comercial. La solución que propone WSO2 para la integración perfecta de datos se basa en dos arquitecturas de servicio que tienen una amplia difusión, la arquitectura monolítica o centralizada, y la arquitectura de microservicios o descentralizada.

 

¿Qué es una arquitectura centralizada o monolítica?

Las aplicaciones monolíticas están diseñadas para hacer posible que diferentes tipos de empresas desarrollen sus actividades comerciales cotidianas con todos los componentes necesarios para ello en una sola aplicación y de manera que sea lógica en cada caso. Dos ejemplos de aplicaciones monolíticas muy popularizados son los ERP (Enterprise Resource Planning) y los CRM (Customer Relation Management).

El hecho de que los componentes de estas aplicaciones permanezcan interconectados  y de que sean interdependientes hace que la agilidad de tales aplicaciones pueda generar ciertas dificultades. La infraestructura asociada con tales aplicaciones puede derivar en un problema, ya que, al escalar un solo componente en la aplicación monolítica, se requieren recursos para otra instancia de toda la aplicación.

Para dar solución a este tipo de problema se crearon las SOA (Service Oriented Architecture) un tipo de arquitectura en el que la aplicación se puede desacoplar en pequeños módulos que se conocen como servicios. Todos estos servicios se integran utilizando una capa de agregación que se denomina bus. Todos los servicios se comunican a través de este bus de servicios. Con el tiempo, esta aplicación puede volverse monolítica, ya que todos los servicios se integran con la misma capa de integración.

 

¿Qué es una arquitectura descentralizada o de microservicios?

Los microservicios nacieron para disminuir en todo lo posible las limitaciones que residen en la arquitectura SOA, de manera que se desarrolla una aplicación única como una combinación de servicios específicos e independientes. Éstos, a los que se conoce como microservicios, se ejecutan e implementan de manera independiente.

Su creación tiene como fin servir solo a funciones comerciales específicas, como la gestión de inventario o la gestión de clientes, entre otras. Además, los microservicios deben ser independientes entre sí. Esto permite a los desarrolladores desarrollar cada microservicio usando diferentes idiomas y usar diferentes bases de datos para cada microservicio. Para comunicarse entre microservicios, utiliza protocolos ligeros como HTTP y REST.

 

¿Cuáles son las capacidades para conseguir la integración perfecta de datos?
dasds

El hecho de que las empresas dependan en gran medida de los datos hace necesario almacenarlos de un modo que resulte muy accesible. Las aplicaciones tienen mucho que decir en ello. Para ello, los datos deben ser expuestos como un servicio, lo que permitirá a las aplicaciones y los sistemas el acceso a ellos y su utilización. Esto incluye migrar de un origen de datos a otro, recuperar datos de un origen y manipularlos dentro de la aplicación.

WSO2 Enterprise Integrator admite varios tipos de fuentes de datos, incluidos RDBMS, CSV, Excel, ODS, Cassandra, Hojas de cálculo de Google, RDF y cualquier página web. Además, ofrece la libertad de escribir una fuente de datos personalizada, en la que los usuarios puedan definir su propia implementación de fuente de datos para cumplir con su lógica de negocios.

  • Soporte transaccional. Los servicios de datos WSO2 proporcionan transacciones distribuidas utilizando Java Transaction API (JTA) que permite transacciones de nivel global en múltiples recursos de origen de datos en la JVM.

 

  • Disponibilidad como API REST. Debido a su flexibilidad, velocidad y simplicidad, REST se usa ampliamente para la integración de datos. Los servicios de datos pueden exponerse en WSO2 Enterprise Integrator utilizando servicios SOAP o servicios REST. Para un servicio RESTful, una consulta se puede asignar a un recurso web mediante el método HTTP en el servicio de datos.

 

  • Procesamiento por lotes. Esta es una forma eficiente de procesar grandes volúmenes de datos y que en las compañías suele usarse para tareas como pagar salarios o calcular e imprimir facturas. WSO2 Enterprise Integrator proporciona facilidades para invocar múltiples operaciones como un lote.

 

  • Streaming de datos. El procesamiento de grandes volúmenes de datos supone un desafío, por ello WSO2 Enterprise Integrator admite capacidades de transmisión donde teóricamente no hay límite para el tamaño de datos de una respuesta de servicio de datos. Esto proporciona una gran eficiencia de la memoria y un tiempo de respuesta bajo.

 

  • WSO2 Enterprise Integrator identifica y brinda protección contra amenazas generales de seguridad informática y otras amenazas que son exclusivas de los servicios web. Se adhiere a las especificaciones WS Security, WS-Policy y WS-Security Policy.

 

  • Transformación y Validación de Datos. WSO2 Enterprise Integrator proporciona capacidades para transformar los datos de salida en diferentes formatos sin problemas mediante el uso de XSLT y la validación de esquemas JSON y XML.

 

Adecuación a las necesidades específicas e integración de datos

Las organizaciones empresariales pueden utilizar diferentes arquitecturas de diseño de software, aunque las más utilizadas, las mencionadas arquitectura monolítica centralizada y arquitectura de microservicios descentralizada, cuentan con mucha difusión en este momento. WSO2 Enterprise Integrator permite el integrar todos los que se originan y que llegan por diferentes procedimientos, haciéndolo en los patrones de arquitectura.

En cada organización, el manejo de datos de manera eficiente y efectiva es una parte esencial del éxito. Por lo tanto, es necesario tomar medidas para integrar los datos de una manera que coincida con las necesidades comerciales de la organización y la naturaleza del negocio.

WSO2 Enterprise Integrator admite capacidades de integración de datos, proporcionando una plataforma fácil de usar para integrar almacenes de datos, crear vistas de datos compuestos y alojarlos como servicios de datos. Admite el acceso seguro y administrado a los datos a través de varios tipos de fuentes de datos, transacciones de servicios de datos y transformación y validación de datos utilizando un enfoque de desarrollo ágil, ligero y fácil de usar.