HardDesign: Ride-Sharing Service (Uber/Lyft)
How do you scale the location service to handle 500,000 driver updates per second?
— Tests your understanding of this concept.
Answer Options
ASingle Redis server with fast hardware
BRedis Cluster partitioned by geohash prefix, with each shard handling a geographic region
CStore all locations in a SQL database with geospatial index
DUse Elasticsearch with geo_point fields
Want to see the correct answer?
Get the answer with a detailed explanation, plus practice 22+ more Design: Ride-Sharing Service (Uber/Lyft) questions with adaptive quizzes and timed interviews.
See the Answer on Guru Sishya →This question is from the Design: Ride-Sharing Service (Uber/Lyft) topic (System Design Cases).
More Design: Ride-Sharing Service (Uber/Lyft) Questions
Why is Euclidean (straight-line) distance insufficient for ETA calculation in a ride-sharing app?
HardWhy must neighboring geohash cells also be queried when searching for nearby drivers?
HardA driver's phone GPS has a 30-second outage. What happens to ongoing trip tracking?
HardWhat Redis data structure is used to store driver locations by geographic cell?
HardHow does surge pricing work and how do you ensure it's fair to riders?
Hard