Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Change Data Capture (CDC) libertando seus dados em sua Arquitetura Distribuída.

Change Data Capture (CDC) libertando seus dados em sua Arquitetura Distribuída.

Ao longo dos anos a arquitetura distribuída vem sendo amplamente adotada, por prover inúmeras vantagens como: manutenibilidade, heterogeneidade tecnológica, escalabilidade, desacoplamento, etc.

Nesse sentido, a arquitetura de microsserviços começa com uma abordagem inicial de dados. Inicialmente, um único banco de dados atende a todas as necessidades, porém com o passar do tempo os dados evoluem e suas necessidades também, necessitando de requisitos como: cache, search index e data warehouse.

Nesta palestra, iremos discorrer como a abordagem de CDC acompanha a evolução da arquitetura distribuída e seus dados, podendo reduzir drasticamente a complexidade de lidar com seus dados.

Luram Archanjo

December 01, 2021
Tweet

More Decks by Luram Archanjo

Other Decks in Technology

Transcript

  1. Quem sou eu? TDC Luram Archanjo Software Expert @ Mercado

    Livre MBA em Projetos Java Entusiasta em Java e Microsserviços
  2. Agenda TDC Microsserviço Manipulação de dados Propagação de dados 01.

    02. 04. Conclusão 05. Visualização de dados 03. Questionamentos 06.
  3. • Baixo acoplamento • Organizado em torno de recursos de

    negócios • Altamente sustentável e testável • Escalar times / negócios ◦ Serviços autônomos ◦ Independentemente implantável ◦ Time to Market ◦ Lead Time TDC Microsserviços - Recapitulando
  4. TDC Por que gerenciar estado é difícil? 1. Os serviços

    devem ser fracamente acoplados para que possam ser desenvolvidos, implantados e escalados de forma independente 2. Diferentes serviços têm diferentes requisitos de armazenamento de dados. 3. Os bancos de dados às vezes devem ser replicados e fragmentados para escalar
  5. TDC Acessando nossos dados 1/3 Somos "forçados" a manter nossos

    dados persistentes de cada Microsserviço privados para esse serviço e acessíveis apenas por meio de sua API. As transações de um serviço envolvem apenas seu banco de dados. Microsserviço Microsserviço Microsserviço
  6. TDC Quais são os trade-offs dessa abordagem? 1. Transação distribuída

    (Saga Pattern - Orquestrado / Coreografado) 2. Complexidade de gerenciamento de vários bancos de dados SQL e NoSQL 3. A implementação de consultas que unem dados que agora estão em vários bancos de dados é um desafio.
  7. TDC Data Visualization 1. API Composition Pattern (GraphQL) Microsserviço Microsserviço

    Microsserviço RESTFul API RESTFul API RESTFul API API Composer
  8. TDC Data Visualization Microsserviço Domain Event Pattern Microsserviço Domain Event

    Pattern Microsserviço Domain Event Pattern View Service
  9. TDC Data Visualization 1. Data base per service a. Saga

    Pattern i. Orquestrado ii. Coreografado 2. API Gateway a. RESTFul b. Security 3. Command Query Responsibility Segregation (CQRS) a. Domain Events b. Event Driven Architecture
  10. TDC Data Visualization 1. Data base per service a. Saga

    Pattern i. Orquestrado ii. Coreografado 2. API Gateway a. RESTFul b. Security 3. Command Query Responsibility Segregation (CQRS) a. Domain Events b. Event Driven Architecture 4. Service View Data Propagation
  11. TDC Change Data Capture (CDC) Change Data Capture (CDC) é

    um conjunto de padrões de design de software usado para determinar e rastrear os dados que foram alterados para que uma ação possa ser realizada usando os dados alterados. O CDC é uma abordagem de integração de dados que se baseia na identificação, captura e entrega das alterações feitas nas fontes de dados. Fonte de dados ETL ELT Streaming Data Visualization Destino do dado
  12. TDC Change Data Capture (CDC) Microsserviço Microsserviço Microsserviço View Service

    Domain Event Pattern Cache Service Integrated Service Data warehouse Caixa preta