Aunque la integración de aplicaciones y los flujos de trabajo comparten algunas capacidades similares, se orientan a diferentes usos y se entregan de manera diferente.
Si integras sistemas comerciales o implementas un proceso empresarial considera usar Application Integration. Si estás organizando servicios para el desarrollo de aplicaciones, canalizaciones o automatización de infraestructuras, considera usar Workflows. También puedes usar ambos juntos, por ejemplo, para organizar una canalización que actualice un sistema empresarial integrado de terceros.
La siguiente orientación, los ejemplos y los diagramas basados en casos de uso pueden ayudarte a elegir una solución.
Usa Application Integration
Si eres arquitecto empresarial, desarrollador de integración o que necesita una forma de conectar, mapear, transformar e integrar datos sistemas empresariales como Salesforce, ServiceNow o una base de datos de Cloud SQL:
La integración de aplicaciones es ideal para integrar aplicaciones que tienen estructuras de datos diferentes y para intercambiar datos. Proporciona funciones de transformación integradas que te permiten convertir los datos de la aplicación de origen para que se ajusten al esquema de la aplicación de destino.
Considerar el uso de Application Integration para el tiempo real transacciones comerciales o el procesamiento de transacciones comerciales en lotes pequeños. O bien: si tienes aplicaciones existentes de Google Cloud y desafíos de conectividad como resultado de una gran cantidad de aplicaciones de SaaS.
Application Integration ofrece un interfaz visual de arrastrar y soltar que te permite crear un flujo de integración completo con poco o nada de código. Los conectores también te permiten llamar y realizar operaciones en varias entidades.
Si necesitas un conector que pueda usarse para integrar y asignar datos entre un servicio de Google Cloud, como BigQuery, servicio de terceros, como ServiceNow:
- Un conector de Application Integration oculta la complejidad las estructuras de datos y los protocolos específicos de la aplicación. Proporciona un para realizar operaciones de creación, lectura, actualización y eliminación datos de aplicaciones.
- Por ejemplo, una conexión de Spanner te permite insertar, leer, actualizar y borrar filas en una tabla de Spanner y usar el resultado en una integración. También puedes usar el conector de la base de datos de Oracle para conectarte a una instancia de la base de datos de Oracle y realizar las operaciones de base de datos compatibles.
- Consulta la lista de conectores compatibles.
Ejemplo: Usa Application Integration para asignar y extraer datos
En el siguiente diagrama, se muestra un ejemplo del uso de la integración de aplicaciones para asignar y extraer datos de un sistema externo:
Un activador de Salesforce está suscrito al canal de oportunidades de Salesforce. Los cambios de datos en la oportunidad de Salesforce invocan la integración de aplicaciones, que extrae el estado de la oportunidad de Salesforce. Si el estado está cerrado, la integración extrae los detalles de la oportunidad y escribe los datos en una instancia de Cloud SQL con un conector. Si hay un cambio de datos, pero el estado permanece abierto, la integración envía un mensaje a un tema de Pub/Sub mediante un conector.
Usa flujos de trabajo
Si eres desarrollador, ingeniero de datos o equipo de plataforma de nube, que necesita de organizar servicios en conjunto para compilar aplicaciones, procesar automatizaciones, o implementar canalizaciones de datos y aprendizaje automático:
Los flujos de trabajo son ideales si deseas separar la lógica que secuencia y vincula tus servicios de la lógica empresarial principal. Un flujo de trabajo puede realizar una secuencia de operaciones en varios sistemas, esperar a que se completen todas las operaciones y puede estar orientado a eventos.
Considera usar flujos de trabajo si deseas escribir menos código para especificar la infraestructura de tu aplicación y ejecutar servicios de acoplamiento suelto en un orden que definas: un flujo de trabajo. Estos flujos de trabajo pueden combinar los servicios de cualquier API basada en HTTP, lo que hace que las dependencias del servicio sean explícitas y observables de extremo a extremo.
Un flujo de trabajo consta de una serie de pasos descritos con la sintaxis de Workflows y se puede escribir en YAML o JSON. Las funciones de la biblioteca estándar de flujos de trabajo y las variables de entorno integradas te permiten construir argumentos y procesar respuestas con facilidad. Los conectores se pueden usar para interactuar con otros productos de Google Cloud.
Si necesitas un conector que se pueda usar para simplificar las llamadas y la integración con otras APIs de Google Cloud, como las funciones de Cloud Run o Firestore dentro de un flujo de trabajo, haz lo siguiente:
- Workflows publica conectores ligeros y sin servidores que se pueden usar para conectarse a otras APIs de Google Cloud dentro de un flujo de trabajo y para integrar tus flujos de trabajo con esos productos de Google Cloud. Simplifican los servicios de llamadas porque manejan el formato de las solicitudes por ti y proporcionan métodos y argumentos para que no necesites conocer los detalles de una API de Google Cloud.
- Por ejemplo, puedes crear un flujo de trabajo que use el conector de la API de Cloud Translation para traducir archivos a otros idiomas en modo por lotes asíncrono y guardar los resultados en un bucket de Cloud Storage. También puedes ejecutar un flujo de trabajo que ejecute varios trabajos de consulta de BigQuery de forma serial, uno tras otro.
- Los conectores compatibles incluyen un conector a Application Integration para que pueda usar ambos productos juntos. en este documento, consulta Usa Application Integration y Workflows en conjunto. Por ejemplo, puedes crear un flujo de trabajo que active y espere una una integración sin inconvenientes ni cualquier otra operación, como actualizar una instancia de Salesforce.
- Consulta la lista de conectores compatibles.
Ejemplo: Usa Workflows para la organización de servicios ligeros
En el siguiente diagrama, se muestra un ejemplo del uso de flujos de trabajo para orquestar servicios:
Cuando se sube un archivo a un bucket de Cloud Storage, La función de Cloud Run activa Workflows para ejecutar un flujo de trabajo: el texto se reconoce con la API de Cloud Natural Language. las imágenes y los videos están reconocido mediante la API de Cloud Vision y la API de Cloud Video Intelligence; y etiquetas se guardan y se escriben en Firestore.
Usa Application Integration y Workflows en conjunto
Puedes usar la integración de aplicaciones y los flujos de trabajo en conjunto para organizar aplicaciones y servicios. Workflows admite una conector a Application Integration para que puedas usar ambos productos juntos. Por ejemplo, puedes realizar una acción en un sistema empresarial externo desde Workflows con Application Integration. También puedes conectarte con el desarrollo personalizado desde Integration de aplicaciones con flujos de trabajo.
Ejemplo: Usa la integración de aplicaciones y los flujos de trabajo para realizar una acción en un sistema empresarial de terceros
En el siguiente diagrama, se solicita un reembolso por contenido digital a través de una app para dispositivos móviles. Los flujos de trabajo quitan el contenido e inician un proceso de reembolso en la integración de aplicaciones, con métodos heurísticos y, posiblemente, aprobación humana. Según el resultado de la integración de la aplicación, Workflows otorga un reembolso o restablece el contenido.