CDC에 많은 가치가 있다고 생각하는 시나리오는 무엇인가요?
1. 사용자 활동을 몽고DB 같은 곳에 보관하는 매우 큰 온라인 서비스(예: Snapchat)를 상상해 보십시오.  업데이트 속도가 매우 빠르고, 테이블 크기가 매우 크며, 테이블 공간이 전 세계에 걸쳐 있습니다.
2. 사용자 데이터를 사용하여 광고를 타겟팅하려고 하기 때문에 OLTP에 데이터가 필요하므로 델타에 저장하는 것은 옵션이 아닙니다. 온라인 솔루션이 필요합니다. 이 온라인 스토어는 집계(예: 지난 5분 동안의 클릭 수, 관심사 벡터 등)를 유지 관리합니다. 구글은 이를 위해 캔자스를 사용하고, 페이스북은 샤딩된 MySQL + 타오를 사용합니다.
3. 이 사용자별 데이터를 사용하여 온라인 광고 전략을 분석하고 ML 모델을 재트레이닝하여 수익률을 높여야 합니다.
4. 분석 워크로드에 최적화되어 있지 않기 때문에 서빙 DB를 사용할 수 없습니다. 많은 No-SQL DB는 실행에 필요한 쿼리 종류조차 허용하지 않습니다.
5. 데이터베이스가 매우 커서 스냅샷을 찍는 데 비용이 많이 들고 느립니다.
6. 하루 중 특정 시간에는 많은 사용자가 비활성 상태이므로 전체 상태를 스냅샷하는 것도 비효율적입니다.
7. 원본 프로덕션 DB의 변경 사항도 알고 싶습니다. 프로덕션 DB는 OLTP 저장소이기 때문에 많은 상태를 유지할 수 없습니다.
CDC ---는 이 사용 사례에 대한 효과적인 해답이 될 수 있습니다.
what's a scenario in which you see lots of value for CDC ?
1. Imagine a very large online service, e.g., Snapchat, keeping user activities in something like MongoDB.  Update rates are very high, the table size is huge, the table footprint is global.
2. You need the data in OLTP because you're trying to use the user data to target ads for them, so storing in Delta is not an option. You need an online solution. This online store maintains aggregates (e.g., clicks over the last 5 min, interest vectors, etc.). Google would use Kansas for this, Facebook uses sharded MySQL + Tao.
3. You need to use this per-user data to analyze your online advertising strategy and re-train your ML models to increase yield.
4. You cannot hit the serving DB with analytical workloads, they're not optimized for that. Many no-SQL DB's don't even allow the kinds of queries you need to run.
5. The database is very large, so taking a snapshot is expensive and slow.
6. A lot of users are inactive at any specific time of the day, so snapshotting the entire state is also inefficient.
7. I want to also know changes in the original production DB. The production DB is an OLTP store and cannot keep that much state.
CDC --- can be an effective answer for this use case.