개인 일정/공부

Apache Kafka CDC란

박경태 2024. 2. 11. 13:37

Kafka CDC는 Apache Kafka의 Change Data Capture(CDC)를 의미합니다. CDC는 데이터베이스나 데이터 스토어 등에서 변경된 데이터를 실시간으로 감지하고 이를 다른 시스템으로 전파하는 기술입니다. Kafka는 이러한 CDC 기능을 제공하여 데이터 소스에서 변경 사항을 효율적으로 캡처하고 이를 다양한 소비자 애플리케이션으로 전달할 수 있도록 지원합니다.

Kafka CDC의 주요 특징과 동작 원리는 다음과 같습니다:

1. 데이터 캡처: Kafka CDC는 데이터베이스나 기타 소스 시스템에서 변경 사항을 실시간으로 감지하고 Kafka 토픽으로 데이터를 캡처합니다. 이는 데이터베이스의 INSERT, UPDATE, DELETE와 같은 변경 작업을 식별하고 해당 변경 사항을 Kafka로 전송하는 과정을 포함합니다.

2. 이벤트 스트리밍: Kafka는 이벤트 스트리밍 플랫폼으로서, CDC를 통해 캡처된 데이터를 스트리밍으로 처리하고 여러 소비자 애플리케이션에 제공합니다. 이를 통해 실시간으로 변경된 데이터에 대한 분석, 처리, 저장 등의 작업을 수행할 수 있습니다.

3. 확장성: Kafka는 분산 시스템으로 설계되어 있어 대량의 데이터를 처리하고 다양한 애플리케이션에 데이터를 전달할 수 있습니다. CDC를 통해 수집된 데이터도 Kafka의 확장성을 활용하여 대규모로 처리할 수 있습니다.

4. 지속성: Kafka는 데이터를 디스크에 영구적으로 저장하므로, 데이터 손실 없이 안정적으로 처리할 수 있습니다. CDC로 캡처된 데이터도 Kafka의 지속적인 저장 기능을 활용하여 데이터 유실 없이 안전하게 보관됩니다.

Kafka CDC를 사용하면 실시간으로 데이터 변경 사항을 감지하고 처리하는 신속한 데이터 파이프라인을 구축할 수 있으며, 이를 통해 실시간 분석, 스트리밍 처리, 이벤트 기반 마이크로서비스 등 다양한 애플리케이션을 개발할 수 있습니다.