Pular para o conteúdo
fernando.moretes.com
BlogEstudosCursosE-booksOpen SourcePodcasts
Loading…
Fernando Azevedo

Arquiteto de TI Especialista

Arquitetura, AWS, IA em produção, sistemas financeiros e FinOps, escritos a partir do que foi operado, com os números.

  • LinkedIn
  • GitHub
  • E-mail

Conteúdo

  • Blog
  • Estudos de arquitetura
  • Cursos
  • E-books
  • Open Source
  • Podcasts
  • Assuntos
  • Trilhas

Ferramentas

  • Moretes Architect MCP
  • Well-Architected self-check
  • Arquitetura deste site
  • Números públicos
  • Histórico de estudo

Sobre

  • Comunidade
  • Hugging Face
  • IA Builder
  • Perfil
  • Currículo (CV)
  • Trabalhe comigo
  • Media kit
  • RSS do blog
  • RSS dos estudos
  • Artigos narrados (podcast)
  • llms.txt
  • Termos, privacidade e uso de IA

(c) 2026 Fernando Francisco Azevedo

Blog/Artigo
RSSMarkdownLLMs
Dados & PlataformasComparativo

Conectores SaaS nativos do Glue: contra AppFlow, zero-ETL e código próprio

10 de nov. de 2026 6 minAvançado Com apoio de IA000 visualizações00 reproduções
Ouvir artigo

cerca de 6 min · áudio gerado ao tocar

Em 9 de novembro de 2026 a AWS anunciou 100 novos conectores nativos no AWS Glue para aplicações SaaS e APIs REST: pagamentos (Adyen, Square, Checkout.com), contabilidade (Xero, QuickBooks), billing (Chargebee, Recurly, Zuora), operação (PagerDuty, Sentry, Jenkins, Vercel) e até dados de uso e custo da Anthropic. A conexão é criada uma vez no Glue Data Catalog e reaproveitada por qualquer job, com o mesmo modelo de permissões do Glue, no Glue 5.0 ou superior e em todas as regiões comerciais. Já escrevi e mantive extratores de API de adquirente à mão. Eles nunca quebraram no deploy. Quebraram no dia em que o fornecedor mudou a paginação e ninguém percebeu por uma semana. Por isso este texto não pergunta se o conector funciona. Pergunta qual dos quatro caminhos disponíveis hoje custa menos para manter.

A escolha real: quatro caminhos para tirar dado de um SaaS

Quando um time de finanças pede "as transações do Adyen no lake até amanhã", hoje existem quatro respostas na AWS.

Conector nativo do Glue: um job Spark no Glue 5.0 lê a entidade pelo connection_type do SaaS, com ENTITY_NAME, SELECTED_FIELDS, FILTER_PREDICATE em Spark SQL e particionamento por PARTITION_FIELD, LOWER_BOUND, UPPER_BOUND e NUM_PARTITIONS. O segredo fica no Secrets Manager, um por conexão.

Zero-ETL do Glue: replicação gerenciada, sem job, para Redshift, S3 ou S3 Tables pela arquitetura de lakehouse do SageMaker. O problema é a cobertura: na documentação atual, as fontes SaaS são Salesforce, Salesforce Marketing Cloud Account Engagement, SAP OData, ServiceNow, Zendesk, Zoho CRM, Facebook Ads e Instagram Ads. Nenhum dos conectores de pagamento do anúncio está nessa lista.

Amazon AppFlow: fluxo gerenciado cobrado por execução e por GB processado, bom para cópia agendada sem transformação.

Extrator próprio: Lambda ou Step Functions chamando a API, gravando em S3. Controle total, e dívida total.

O anúncio muda o equilíbrio porque o primeiro caminho passou a cobrir a cauda longa que antes só o quarto cobria. Para fontes fora dos 100, ainda existe o conector REST do Glue (RegisterConnectionType), com OAuth2 client credentials, authorization code, JWT, basic ou autenticação customizada, e paginação por cursor ou offset. Ou seja, mesmo o caso "meu SaaS não está na lista" tem saída declarativa antes de partir para código.

Os quatro caminhos lado a lado

CritérioConector nativo GlueZero-ETL GlueAppFlowExtrator próprio
Cobertura SaaS100 novos + anteriores; REST para o resto8 aplicações SaaS hojeCatálogo próprio de conectoresQualquer API
Transformação na ingestãoSpark completo, QUERY e FILTER_PREDICATENenhuma, replicaMapeamento e filtro simplesO que você escrever
Modelo de custoUS$ 0,44/DPU-hora (Flex: US$ 0,29)Por volume ingerido, mínimo 1 MB por requisiçãoUS$ 0,001/execução + US$ 0,02/GBCentavos de Lambda + horas de engenharia
IncrementalVocê controla a marca d'água via filtroGerenciadoGerenciado onde o conector suportaVocê escreve e testa
Quem absorve mudança de APIAWS (conector); você (contrato do schema)AWSAWSSeu plantão

O incremental é seu, e é onde o pagamento quebra

A documentação do conector Stripe deixa claro um detalhe que vale para boa parte da cauda longa: só existe particionamento por campo. Não há particionamento por registro (o conector não tem como obter a contagem total) nem por ID, porque a chave primária é string. Na prática, isso significa que o paralelismo e o incremental dependem de um campo de tempo que você escolhe, e a responsabilidade pela marca d'água é sua.

O desenho que uso é simples. Uma tabela DynamoDB com partition key source#entity guarda o último created processado. O job lê esse valor, monta FILTER_PREDICATE com uma janela de sobreposição de 15 a 30 minutos para trás, define LOWER_BOUND e UPPER_BOUND sobre o mesmo campo e grava num staging em Iceberg. O MERGE pela chave natural da transação (o ID do pagamento no adquirente) torna a reexecução idempotente. Só depois do commit o job atualiza a marca d'água, com ConditionExpression sobre o valor anterior para evitar duas execuções concorrentes avançando o ponteiro.

A sobreposição existe porque API de pagamento não é append-only. Estorno, chargeback e mudança de status alteram registro antigo, e um campo updated nem sempre está disponível como filtro. Sem janela, você perde a atualização. Sem MERGE, você duplica a transação. Os dois erros aparecem do mesmo jeito: a conciliação com o extrato bancário não fecha, e alguém descobre no fechamento do mês, não no dia.

Ingestão de SaaS de pagamento com conector nativo e marca d'água própria

O conector resolve autenticação e paginação; a marca d'água, o MERGE idempotente e a publicação para o Redshift continuam sendo seus. A linha tracejada é a atualização da marca d'água, que só acontece depois do commit no Iceberg. Simplifiquei: um SaaS, uma entidade, sem Lake Formation no desenho.

SaaS
  • Adyen API · REST, paginated
Control plane
  • Secrets Manager · one secret per connection
  • Glue connection · Data Catalog
  • Watermark · DynamoDB source#entity
Lake
  • Glue 5.0 job · FILTER_PREDICATE
  • S3 Iceberg · MERGE by payment ID
  • Redshift · reconciliation

Custo: o DPU é a parte barata

Faço a conta para uma fonte de pagamento puxada de hora em hora. Um job com 2 workers G.1X (2 DPU) rodando 10 minutos consome cerca de 0,33 DPU-hora: uns US$ 0,15 por execução a US$ 0,44, ou perto de US$ 105 por mês com 24 execuções diárias. Em Flex, a US$ 0,29, cai para perto de US$ 70, ao custo de início não garantido. O mesmo volume no AppFlow, com 720 execuções e 1 GB por execução, fica em torno de US$ 15: US$ 0,72 de execuções e US$ 14,40 de dados.

Olhando só a fatura, o AppFlow ganha. Mas a fatura não é o custo. O AppFlow cobra execução que não encontrou dado novo e cobra como sucesso a execução que falhou por configuração errada, e ele não transforma: alguém ainda precisa deduplicar, tipar e fazer o MERGE depois. Se essa etapa já é um job Glue, você paga o DPU de qualquer forma e ganha uma segunda ferramenta para operar.

O extrator próprio tem a fatura mais baixa de todas, centavos de Lambda. O custo dele aparece em outro lugar: rotação de credencial, mudança de versão da API, rate limit novo, campo renomeado. Em plataformas que mantive, um extrator de adquirente consumia algo como dois a três dias de engenharia por trimestre só para continuar funcionando, e esse número nunca entrava no business case.

Regra que uso: se a frequência é horária ou menor, comece por Flex e só mova para padrão quando o SLO de frescor exigir.

Segurança e governança: o que muda numa plataforma regulada

O ganho de governança mais concreto é a conexão como recurso do Data Catalog. Antes, cada extrator tinha seu próprio jeito de guardar chave de API, quase sempre uma variável de ambiente que alguém copiou entre contas. Agora existe um segredo por conexão no Secrets Manager, e o acesso passa por IAM.

Três ajustes que faço antes de liberar em produção:

Escopo do role: o exemplo da documentação concede secretsmanager:GetSecretValue, PutSecretValue e as ações de ENI em "Resource": "*". Em ambiente auditado por BACEN 4.893 ou PCI-DSS, eu restrinjo o recurso ao ARN do segredo da conexão e uso aws:ResourceTag/data-domain para que o job de finanças não leia o segredo do Gusto, que tem dado de folha.

Minimização na origem: SELECTED_FIELDS não é só otimização. Se o relatório de transações do adquirente traz dados de titular que a análise não precisa, não traga. O que não entra no lake não entra no escopo da auditoria.

Rede: a conexão aceita opções de rede próprias. Rodar o job em subnet privada com saída por NAT de IP fixo facilita a allowlist do lado do SaaS, e alguns adquirentes exigem isso.

Por fim, observabilidade: alarme em glue.driver.aggregate.numCompletedTasks igual a zero não basta. O sinal que importa é volume ingerido contra a média móvel da mesma hora, porque o modo de falha típico não é erro, é zero linha com status de sucesso.

Matriz de decisão

Conector nativo Glue

Prós
  • Cobre a cauda longa de pagamento, billing e operação
  • Conexão reaproveitável, segredo por conexão, IAM do Glue
  • Transformação e MERGE no mesmo job
Contras
  • Marca d'água e janela de sobreposição são suas
  • Particionamento limitado por campo em vários conectores
  • DPU caro para volume pequeno em alta frequência

Padrão para fontes de finanças fora do zero-ETL

Zero-ETL Glue

Prós
  • Sem job para operar, incremental gerenciado
  • Destino em Redshift, S3 ou S3 Tables
Contras
  • Só 8 fontes SaaS, nenhuma de pagamento
  • Sem transformação na entrada

Use sempre que a fonte estiver na lista

AppFlow

Prós
  • Fatura mais baixa para cópia agendada
  • Nenhum código
Contras
  • Cobra execução vazia e falha de configuração
  • Exige uma segunda etapa para deduplicar

Bom para marketing e CRM sem SLO de conciliação

Extrator próprio

Prós
  • Controle total de rate limit e webhook
  • Fatura de centavos
Contras
  • Todo breaking change da API cai no seu plantão
  • Segredo e retry reinventados por fonte

Só para near real-time por webhook ou API exótica

O conector tira a paginação, não o contrato

O conector nativo transfere para a AWS a parte que mais quebrava: autenticação, paginação e mudança de endpoint. O que continua seu é o contrato de dados. Se o Adyen renomeia um campo, o job não falha, ele grava nulo. Um check de Glue Data Quality sobre nulidade e volume na camada de staging é o que transforma essa falha silenciosa em alarme.

FA
O que eu faria
Arquiteto de TI Especialista

Eu começaria inventariando os extratores próprios que já existem e mapeando cada um contra a lista de 100. Os que aparecem na lista viram job Glue com marca d'água em DynamoDB e MERGE em Iceberg, e o código antigo é apagado no mesmo sprint, não deixado como fallback. A lição que paguei caro: extrator caseiro de adquirente nunca é aposentado por decisão, é aposentado por incidente. Fazer a troca enquanto ele ainda funciona sai muito mais barato do que fazer durante o fechamento do mês.

Recomendação

Glue native connector for finance source

Use o zero-ETL quando a fonte estiver entre as 8 suportadas e você não precisar transformar na entrada. Use o conector nativo do Glue quando a fonte for de pagamento, billing ou contabilidade, houver conciliação envolvida e você puder assumir a marca d'água e o MERGE idempotente: hoje é o padrão que eu adotaria para Adyen, Square, Xero e Chargebee. Use AppFlow para cópia agendada de marketing e CRM, onde uma linha duplicada não fecha balanço errado. Mantenha extrator próprio só para webhook em near real-time ou API que nem o conector REST cobre. Em todos os casos, o alarme que importa é volume contra a média, não status do job.

Referências

AWS Glue adds 100 new native connectors for popular SaaS applications (AWS What's New, 2026-11-09)AWS Glue: Available connectionsAWS Glue: REST API connectionsAWS Glue: Stripe connection optionsAWS Glue: Stripe connector limitationsAWS Glue: Zero-ETL integrationsAWS Glue pricingAmazon AppFlow pricing
#aws-glue#saas-ingestion#data-platform#finops#appflow#zero-etl#payments
Compartilhar:LinkedInWhatsAppXBaixar em Markdown
Fonte analisada: AWS Glue adds 100 new native connectors for popular SaaS applications
Próximo passo
Trilha Arquiteto de IA, gratuitaFundamentos, LLMs, RAG, tools, MCP e arquitetura na AWS, em aulas curtas e interativas.Começar a trilhaAgentes de IA em produção na AWSComo eu desenho, oriento e audito agentes que vão ao ar, com os números e as fontes.Ver o IA Builder

Continue lendo

Dados & PlataformasCustom Lens para Plataformas de Dados: Anatomia de um PadrãoO AWS Well-Architected Custom Lens é frequentemente tratado como um artefato de documentação, mas quando aplicado a plataformas de dados corporativas, ele se torna um mecanismo de governança operacional com dentes reais. Neste artigo, desmonto a anatomia do padrão, exponho suas falhas de adoção mais comuns e proponho um design de referência que conecta revisões de lens a pipelines de remediação automatizados.Ler Dados & PlataformasAmazon Connect compact mode: densidade operacional com cautelaO compact mode dos dashboards do Amazon Connect Customer parece pequeno, mas toca um ponto central de operações críticas: reduzir o tempo entre anomalia, percepção e ação. Eu o vejo como uma melhoria útil de cockpit operacional, desde que não vire substituto para alertas, SLOs, automação e desenho cuidadoso de métricas.Ler Dados & PlataformasNova York suspende novos data centers acima de 50 MWA governadora Kathy Hochul assinou uma ordem que pausa por até um ano novos data centers de 50 MW ou mais, enquanto o estado faz um estudo ambiental. A medida mira a pressão da IA sobre a rede elétrica, o consumo de água e o repasse de custos à população, e sinaliza um risco regulatório novo para quem projeta cargas de nuvem e IA.Ler
AnteriorRegra de qualidade gerada por LLM custa pouco; difícil é mantê-la por anos
Gostou desta análise? Receba a próxima.

Deep dives de arquitetura, AWS, IA e mercado: direto no seu email. Grátis.

Sem spam · cancele quando quiser

Pergunte ao Fernando sobre isto

Uma resposta focada sobre este artigo, do meu assistente de IA, baseada no meu trabalho.

Participe da conversa

Entre para comentar

Confirme seu e-mail para participar, você também recebe a newsletter. Sem senha.

Neste artigo
A escolha real: quatro caminhos para tirar dado de um SaaSOs quatro caminhos lado a ladoO incremental é seu, e é onde o pagamento quebraArquiteturaCusto: o DPU é a parte barataSegurança e governança: o que muda numa plataforma reguladaMatriz de decisãoRecomendaçãoReferências