Com o aumento da popularidade da análise de streaming no mercado, é essencial otimizar o processamento de dados para reduzir custos e garantir a qualidade e a integridade das informações. Uma abordagem possível é concentrar o trabalho somente nos dados alterados, em vez de em todos os dados disponíveis. E é aqui que o recurso de captura de dados alterados (CDC) pode ser útil. O CDC é uma técnica que permite essa abordagem otimizada.
Nossos colegas que trabalham no Dataflow, um serviço de processamento de dados de streaming do Google Cloud, desenvolveram uma solução de amostra que permite ingerir um fluxo de dados alterados provenientes de qualquer tipo de banco de dados MySQL nas versões 5.6 e posteriores (autogerenciado, no local etc.) e sincronizá-lo com um conjunto de dados no BigQuery.
Disponibilizamos essa solução no repositório público dos modelos do Dataflow. Você pode encontrar instruções sobre como usar o modelo na seção
LEIA-ME do repositório do GitHub.
O CDC fornece uma representação dos dados que foram alterados em um fluxo, permitindo que os cálculos e o processamento se concentrem especificamente nos registros modificados. O CDC poda ser aplicado a muitos casos de uso. Alguns exemplos incluem a replicação de um banco de dados importante, a otimização de um job de análise em tempo real, a invalidação de cache, a sincronização entre um registro transacional e um armazenamento de dados e muito mais.
Como a solução de CDC do Dataflow transfere dados do MySQL para o BigQuery
A solução implantada, mostrada abaixo, funciona com qualquer banco de dados MySQL, que é monitorado por um conector desenvolvido com base no Debezium. O conector armazena os metadados da tabela usando o Catálogo de dados (serviço de gerenciamento de metadados escalonável do Google Cloud) e envia atualizações para o Pub/Sub (tecnologia de mensagens e ingestão de fluxos nativos do Google Cloud). Um canal do Dataflow acessa essas atualizações do Pub/Sub e sincroniza o banco de dados MySQL com um conjunto de dados do BigQuery.
Esta solução conta com o
Debezium, uma excelente ferramenta de código aberto para o CDC. Desenvolvemos um conector configurável baseado nessa tecnologia, que pode ser executado localmente ou no seu ambiente Kubernetes para enviar dados alterados ao Pub/Sub.
Nenhum comentário :
Postar um comentário