Why not just run analytics against the production database?
Whether the candidate can distinguish two workloads by their physical shape rather than by convention, and whether they will defend the simple option when it is genuinely correct.
The situation behind the question
Interviewers ask this because it happened to them.
A company has one product, one PostgreSQL database and four analysts. Someone proposes a warehouse. Someone else asks why the read replica is not enough, and the room does not have a good answer to either question.
A strong answer
Flags
Green flags
- Distinguishes OLTP from OLAP by physical access pattern — row versus column, point lookup versus scan — rather than by naming products.
- Starts from what the consumer needs to ask and works backwards to whether the current system can answer it.
- Is willing to recommend not building a platform, and can name the specific trigger that would change the recommendation.
- Mentions that the operational schema forgets history, which is the reason most often discovered too late to fix.
Red flags
- "A data warehouse is just a bigger database." It is a different execution model — columnar storage, vectorized scans, no point-lookup workload to protect — and the difference is why the query patterns diverge.
- "Data engineers don't need to understand databases." Every source is a database, every extract depends on its commit and visibility semantics, and the entire CDC path is a database internals problem.
- Recommends a warehouse without asking how much data there is, who reads it, or what question is currently unanswerable.
- Cannot say what would break first if analytics stayed on the replica.
Follow-ups
Where the conversation goes if the first answer holds up.
- The replica is now lagging during the nightly reporting window. What is the sequence of things you would try, cheapest first?
- The analysts want the customer tier at the time of the order. Where does that come from, and what has to have been true a year ago for it to be answerable?
- At what point does a read replica stop being the answer, and how would you know that day had arrived rather than guessing?