Question
Design a semantic-search service for an e-commerce catalog of ~30M products. Shoppers type natural-language queries ('warm waterproof jacket for hiking under $150') and expect relevant results in under 100ms p95 at ~3,000 QPS. Results must respect structured filters (price, in-stock, category) alongside semantic relevance, and the catalog changes constantly (price/stock updates every few minutes, new products hourly). Pure keyword search misses paraphrases and intent; pure vector search ignores exact constraints and known high-precision keyword matches.
Clarify scale and constraints first. Propose a clean component breakdown, then go deep on the hard parts — data model, bottlenecks, consistency, failure modes — and name the trade-offs you are making.