Surge Pricing System: Uber - Stream Processing — System Design Interview Practice
Design a dynamic pricing system that adjusts prices based on supply-demand in real-time. Work through the requirements, architecture trade-offs, and an interactive design review.
Requirements and concepts to consider
- Calculate real-time supply and demandRequirement
- Dynamically adjust prices per areaRequirement
- Notify drivers and riders of price changesRequirement
- Support geographical zonesRequirement
- Historical pricing dataRequirement
- Handle millions of price calculations per minuteRequirement
- Fair and transparent pricingRequirement
- Prevent price manipulationRequirement
- pricingConcept to explore
- real timeConcept to explore
- stream processingConcept to explore
- geospatialConcept to explore
- mlConcept to explore