본문 바로가기
반응형

J-H-T/MongoDB6

[MongoDB & Kafka - 3.2단계] oplog 크기 · oplog Window · 장애시간 기준 용량 산정!! 3.2단계: oplog 크기 · oplog Window · 장애시간 기준 용량 산정이번 단계는 실무 DR 설계에서 굉장히 중요합니다. 🔥앞에서 배운 내용을 다시 연결하면:MongoDB PROD │ ├─ oplog │ ▼Change Stream │ ▼Source Connector │ ▼Kafka PROD여기서 Source Connector가 몇 시간 동안 장애가 나도 다시 이어서 읽으려면, 그 시간 동안의 MongoDB 변경 기록이 oplog에 남아 있어야 합니다.즉 핵심 질문은 이것입니다.“우리 MongoDB oplog는 현재 몇 시간치 변경 데이터를 보관하고 있는가?”3.2.1 oplog Window란?oplog Window는 쉽게 말하면:현재 oplog 안.. 2026. 8. 27.
[MongoDB & Kafka - 3.1단계] MongoDB oplog는 실제로 어떻게 생겼을까? 3.1단계: MongoDB oplog는 실제로 어떻게 생겼을까?좋습니다. 4단계 Kafka로 넘어가기 전에 oplog를 실제 모양으로 보는 게 좋습니다.앞에서 oplog를 이렇게 설명했습니다.oplog = MongoDB에서 발생한 데이터 변경 작업을 기록하는 내부 로그조금 더 정확하게 말하면, Replica Set의 각 멤버에는 local.oplog.rs라는 특수한 capped collection이 있고, Primary에서 발생한 데이터 변경 작업이 여기에 순차적으로 기록됩니다. Secondary는 이 oplog 작업을 가져와 적용하면서 데이터를 따라갑니다. MongoDB3.1.1 oplog는 어디에 저장될까?MongoDB Replica Set에서는 다음 위치에 있습니다.Database└── local .. 2026. 8. 26.
[MongoDB & Kafka - 3단계] Change Stream · CDC · Resume Token 이해! 3단계: Change Stream · CDC · Resume Token 이해하기이번 3단계는 MongoDB와 Kafka가 실제로 연결되는 핵심 구간입니다.2단계에서 우리는 여기까지 봤습니다.Application ↓MongoDB Primary ↓ oplog ↓Change Stream ↓Source Connector ↓Kafka이번에는 이 흐름을 더 자세히 보겠습니다.핵심은 3가지입니다.CDC = 변경사항을 계속 따라가는 방식Change Stream = MongoDB 변경 이벤트를 외부로 전달하는 인터페이스Resume Token = 마지막으로 어디까지 읽었는지 기억하는 위치 정보3.1 CDC란 무엇인가?CDC는 Change Data Capture의 약자입니다.쉽게 말하면:📡 D.. 2026. 8. 26.
[MongoDB & Kafka - 2단계] MongoDB Replica Set · Primary · Secondary · oplog 이해! 2단계: MongoDB Replica Set · Primary · Secondary · oplog 이해하기1단계에서 전체 흐름을 이렇게 잡았습니다.MongoDB PROD ↓Source Connector ↓Kafka PROD ↓MirrorMaker 2 ↓Kafka DR ↓Sink Connector ↓MongoDB DR이번 2단계에서는 가장 앞단과 뒷단에 있는 MongoDB Cluster 자체 구조를 이해하겠습니다.🎯 2단계 목표mongo-0, mongo-1, mongo-2가 왜 각각 PVC를 사용하는지, Primary/Secondary가 무엇인지, 데이터가 어떻게 복제되는지, 그리고 oplog가 Kafka CDC와 어떻게 연결되는지 이해하는 것입니다.2.1 MongoDB Cluste.. 2026. 8. 25.
[MongoDB & Kafka - 1단계] 전체 DR 구조 이해! 1단계: 먼저 전체 구조부터 이해하기이번 시리즈에서는 Kubernetes 환경의 운영 MongoDB 데이터를 DR센터의 MongoDB로 실시간에 가깝게 동기화하는 구성을 다룹니다.다만 가장 먼저 바로잡아야 할 핵심이 있습니다.Kafka MirrorMaker 2는 MongoDB 데이터를 직접 복제하지 않습니다.MirrorMaker 2의 역할은 Kafka Cluster → Kafka Cluster 간 Topic 복제입니다.MongoDB 데이터를 Kafka로 꺼내고 다시 MongoDB에 넣는 역할은 MongoDB Kafka Connector가 담당합니다. MongoDB Source Connector는 Change Stream을 통해 MongoDB 변경사항을 Kafka로 보내고, Sink Connector는 K.. 2026. 8. 25.
Kafka를 통한 MongoDB 데이터 스트리밍 싱크 구성 가이드 !! 1. 결론부터 말씀드리면Kafka에 들어온 데이터를 MongoDB로 실시간에 가깝게 저장하는 구성은 가능합니다.일반적으로 다음과 같이 구성합니다.```mermaidflowchart LR A["업무 시스템"] --> B["Kafka Topic"] B --> C["Kafka Connect"] C --> D["MongoDB Sink Connector"] D --> E["MongoDB Primary"] E --> F["MongoDB Secondary 1"] E --> G["MongoDB Secondary 2"]```여기서 매우 중요한 부분은 다음입니다.Kafka가 MongoDB Pod 3개에 각각 데이터를 넣는 것이 아닙니다.Kafka Sink Connector는 MongoDB .. 2026. 8. 24.
반응형