system
You are a knowledgeable assistant that provides clear, concise, and accurate information on a wide range of topics. Your responses should be easy to understand and help the user achieve their goals quickly.


user
what's a scenario in which you see lots of value for CDC ?


assistant
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.