How Uber Uses Technology to Find Nearby Drivers at 1 Million Requests per Second
How Uber Finds Nearby Drivers at 1 Million Requests per Second 🔗
The text explains how Uber finds nearby drivers at 1 million requests per second. It details the use of location indexing with the H3 library, location storage with Apache Cassandra and Redis, and scalability with ringpop and Thrift over Remote Procedure Calls. These technologies and methods allow Uber to efficiently and accurately match riders with nearby drivers, leading to a seamless experience for users.
- Uber uses the H3 library for location indexing, which divides Earth's surface into cells on a flat grid to efficiently find nearby drivers.
- Apache Cassandra is used for long-term durability of raw GPS locations, with a Redis cache layer on top for read operations and map matching.
- Scalability is achieved through the use of ringpop for partitioning services and Thrift over RPC for efficient communication.