Embora a integração de aplicações e os fluxos de trabalho partilhem algumas capacidades semelhantes, destinam-se a utilizações diferentes e são fornecidos de forma diferente.
Se estiver a integrar sistemas empresariais ou a implementar um processo empresarial, considere usar a integração de aplicações. Se estiver a orquestrar serviços para o desenvolvimento de aplicações, pipelines ou automatização de infraestruturas, considere usar os Workflows. Também pode usar ambas em conjunto. Por exemplo, para orquestrar um pipeline que atualiza um sistema empresarial de terceiros integrado.
As seguintes orientações, exemplos e diagramas baseados em exemplos de utilização podem ajudar a escolher uma solução.
Use o Application Integration
Se for um arquiteto empresarial, um programador de integração ou um analista de negócios que precisa de uma forma de ligar, mapear, transformar e integrar dados entre sistemas empresariais, como o Salesforce, o ServiceNow ou uma base de dados do Cloud SQL:
A integração de aplicações é ideal para integrar aplicações com estruturas de dados diferentes e para trocar dados. Oferece funções de transformação incorporadas que lhe permitem converter os dados da aplicação de origem para se ajustarem ao esquema da aplicação de destino.
Considere usar a integração de aplicações para transações comerciais em tempo real ou processar transações comerciais em pequenos lotes. Em alternativa, se tiver Google Cloud aplicações existentes e estiver a enfrentar desafios de conetividade devido a um grande número de aplicações SaaS.
A integração de aplicações oferece uma interface visual de arrastar e largar que lhe permite criar um fluxo de integração completo com pouco ou nenhum código. Os conetores também lhe permitem chamar e executar operações em várias entidades.
Se precisar de um conetor que possa ser usado para integrar e mapear dados entre um Google Cloud serviço como o BigQuery e um serviço de terceiros como o ServiceNow:
- Um conector de integração de aplicações oculta a complexidade das estruturas de dados e dos protocolos específicos da aplicação. Fornece uma interface padrão para realizar operações de criação, leitura, atualização e eliminação nos dados da aplicação.
- Por exemplo, uma ligação ao Spanner permite inserir, ler, atualizar e eliminar linhas numa tabela do Spanner, bem como usar o resultado obtido numa integração. Em alternativa, o conetor da base de dados Oracle permite-lhe estabelecer ligação a uma instância da base de dados Oracle e realizar as operações de base de dados suportadas.
- Consulte a lista de conectores suportados.
Exemplo: usar a integração de aplicações para mapear e extrair dados
O diagrama seguinte mostra um exemplo de utilização da integração de aplicações para mapear e extrair dados de um sistema externo:
Um acionador do Salesforce está subscrito no canal de oportunidades do Salesforce. As alterações aos dados da oportunidade do Salesforce invocam a integração de aplicações, que extrai o estado da oportunidade do Salesforce. Se o estado for fechado, a integração extrai os detalhes da oportunidade e escreve os dados numa instância do Cloud SQL através de um conetor. Se houver uma alteração de dados, mas o estado permanecer aberto, a integração envia uma mensagem para um tópico do Pub/Sub através de um conetor.
Use o Workflows
Se for um programador, um engenheiro de dados ou um membro da equipa da plataforma na nuvem que precisa de uma forma de orquestrar serviços em conjunto para criar aplicações, processar automatizações ou implementar pipelines de dados e aprendizagem automática:
Os fluxos de trabalho são ideais se quiser separar a lógica que sequencia e associa os seus serviços da lógica empresarial principal. Um fluxo de trabalho pode executar uma sequência de operações em vários sistemas, aguardando a conclusão de todas as operações, e pode ser acionado por eventos.
Considere usar fluxos de trabalho se quiser escrever menos código para especificar a infraestrutura da sua aplicação e executar serviços fracamente acoplados numa ordem que define: um fluxo de trabalho. Estes fluxos de trabalho podem combinar os serviços de qualquer API baseada em HTTP, tornando as dependências de serviços explícitas e observáveis de ponta a ponta.
Um fluxo de trabalho consiste numa série de passos descritos através da sintaxe dos fluxos de trabalho e pode ser escrito em YAML ou JSON. Os fluxos de trabalho, as funções da biblioteca padrão e as variáveis de ambiente incorporadas permitem-lhe criar argumentos e processar respostas facilmente. Os conectores podem ser usados para interagir com outros Google Cloud produtos.
Se precisar de um conector que possa ser usado para simplificar a chamada e a integração com outras Google Cloud APIs, como funções do Cloud Run ou Firestore num fluxo de trabalho:
- O Workflows publica conetores simples e sem servidor que podem ser usados para estabelecer ligação a outras Google Cloud APIs num fluxo de trabalho e para integrar os seus fluxos de trabalho com esses Google Cloud produtos. Simplificam os serviços de chamadas porque processam a formatação dos pedidos por si e fornecem métodos e argumentos para que não precise de saber os detalhes de uma API Google Cloud .
- Por exemplo, pode criar um fluxo de trabalho que use o conector da Cloud Translation API para traduzir ficheiros para outros idiomas no modo de lote assíncrono e guardar os resultados num contentor do Cloud Storage. Em alternativa, pode executar um fluxo de trabalho que executa várias tarefas de consulta do BigQuery em série, uma após a outra.
- Os conetores suportados incluem um conetor para a solução Application Integration, para que possa usar ambos os produtos em conjunto. Neste documento, consulte a secção Use a solução Application Integration e o Workflows em conjunto. Por exemplo, pode criar um fluxo de trabalho que aciona e aguarda uma integração ou qualquer outra operação, como a atualização de uma instância do Salesforce.
- Consulte a lista de conetores suportados.
Exemplo: usar fluxos de trabalho para orquestração de serviços simples
O diagrama seguinte mostra um exemplo de utilização dos Workflows para orquestrar serviços:
Quando um ficheiro é carregado para um contentor do Cloud Storage, uma função do Cloud Run aciona fluxos de trabalho para executar um fluxo de trabalho: o texto é reconhecido através da Cloud Natural Language API; as imagens e os vídeos são reconhecidos através da Cloud Vision API e da Cloud Video Intelligence API; e as etiquetas são guardadas e escritas no Firestore.
Use o Application Integration e os Workflows em conjunto
Pode usar a integração de aplicações e os fluxos de trabalho em conjunto para orquestrar aplicações e serviços. Os Workflows suportam um conetor para a integração de aplicações para que possa usar ambos os produtos em conjunto. Por exemplo, pode realizar uma ação num sistema empresarial de terceiros a partir dos fluxos de trabalho através da integração de aplicações. Em alternativa, pode estabelecer ligação com o desenvolvimento personalizado a partir da solução Application Integration através dos fluxos de trabalho.
Exemplo: usar a integração de aplicações e os fluxos de trabalho para realizar uma ação num sistema empresarial de terceiros
No diagrama seguinte, é solicitado um reembolso de conteúdo digital através de uma app para dispositivos móveis. Os fluxos de trabalho removem o conteúdo e iniciam um processo de reembolso na integração de aplicações, usando métodos heurísticos e, potencialmente, aprovação humana. Com base no resultado da integração de aplicações, os fluxos de trabalho concedem um reembolso ou restauram o conteúdo.