Uber 🚗 Uber serves over 130 million monthly active users across 10,000+ cities, processing millions of rides daily. This document outlines the comprehensive architecture that enables real-time ride matching, dynamic pricing, and seamless transportation at massive scale.
Ringpop Consistent Hashing
Ringpop Consistent Hashing
Validation Location, Payment
Fare Estimate Price Calculation
Product Selection UberX, Black, etc.
Supply Management Available Drivers
Demand Prediction Request Forecast
Optimization Assignment Algorithm
Dispatch Decision Best Match
Rating Match Quality Score
Vehicle Type Product Match
Notify Driver Push Notification
Driver Accept Confirmation
Trip Assignment Lock Match
Validation Location, Payment
Fare Estimate Price Calculation
Product Selection UberX, Black, etc.
Supply Management Available Drivers
Demand Prediction Request Forecast
Optimization Assignment Algorithm
Dispatch Decision Best Match
Rating Match Quality Score
Vehicle Type Product Match
Notify Driver Push Notification
Driver Accept Confirmation
Trip Assignment Lock Match
Dispatch Features:
Real-time driver availability
Multi-factor matching algorithm
Batched dispatch for efficiency
Fallback and retry mechanisms
Technologies: Golang, Ringpop, Redis
Driver GPS Every 4 seconds
Batch Updates Buffered Sends
H3 Indexing Hexagonal Cells
Resolution Levels 0-15 Precision
Neighbor Search Adjacent Cells
Hierarchical Parent/Child Cells
Nearby Search Radius Query
Geofence Check Area Containment
Time Series Location History
Driver GPS Every 4 seconds
Batch Updates Buffered Sends
H3 Indexing Hexagonal Cells
Resolution Levels 0-15 Precision
Neighbor Search Adjacent Cells
Hierarchical Parent/Child Cells
Nearby Search Radius Query
Geofence Check Area Containment
Time Series Location History
H3 Indexing Benefits:
Efficient neighbor lookups
Hierarchical aggregation
Uniform cell shapes
Fast geospatial queries
Edge case handling at boundaries
Supply/Demand Ratio Real-time
Surge Multiplier 1.0x - 3.0x+
Upfront Pricing Fixed Quote
Price Transparency Breakdown Display
Historical Patterns Time-based
Event Surge Concert, Sports
ML Pricing Model Demand Prediction
Price Elasticity Rider Response
Market Equilibrium Balance Supply/Demand
Supply/Demand Ratio Real-time
Surge Multiplier 1.0x - 3.0x+
Upfront Pricing Fixed Quote
Price Transparency Breakdown Display
Historical Patterns Time-based
Event Surge Concert, Sports
ML Pricing Model Demand Prediction
Price Elasticity Rider Response
Market Equilibrium Balance Supply/Demand
Surge Pricing Algorithm:
Real-time supply/demand analysis per H3 cell
Historical pattern recognition
Event-based surge triggers
Price elasticity modeling
Regulatory compliance caps
Pickup ETA Driver to Rider
Driver Arrival During Trip
Road Network Graph Structure
Contraction Hierarchies Preprocessing
Turn Costs Intersection Delays
Historical Traffic Time-of-day Patterns
Real-time Traffic Driver Speeds
Incidents Accidents, Closures
Feature Engineering Context Features
Gradient Boosting XGBoost Model
Ensemble Model Combined Predictions
Calibration Bias Correction
Pickup ETA Driver to Rider
Driver Arrival During Trip
Road Network Graph Structure
Contraction Hierarchies Preprocessing
Turn Costs Intersection Delays
Historical Traffic Time-of-day Patterns
Real-time Traffic Driver Speeds
Incidents Accidents, Closures
Feature Engineering Context Features
Gradient Boosting XGBoost Model
Ensemble Model Combined Predictions
Calibration Bias Correction
Credit/Debit Card Tokenized
Digital Wallet PayPal, Venmo
Corporate Account Business Profiles
Authorization Pre-trip Hold
Driver Payout Weekly Transfer
Payment Processor Stripe, Braintree
Currency Handling Multi-currency
Fare Calculation Final Amount
Platform Fees Service Commission
Tax Calculation Regional Taxes
Credit/Debit Card Tokenized
Digital Wallet PayPal, Venmo
Corporate Account Business Profiles
Authorization Pre-trip Hold
Driver Payout Weekly Transfer
Payment Processor Stripe, Braintree
Currency Handling Multi-currency
Fare Calculation Final Amount
Platform Fees Service Commission
Tax Calculation Regional Taxes
Arriving En Route to Pickup
Pickup Event Rider Collected
Dropoff Event Destination Reached
Route Data Polyline, Distance
Fare Data Pricing Breakdown
Location History GPS Trail
Lost & Found Item Recovery
Arriving En Route to Pickup
Pickup Event Rider Collected
Dropoff Event Destination Reached
Route Data Polyline, Distance
Fare Data Pricing Breakdown
Location History GPS Trail
Lost & Found Item Recovery
Schema Migrations Online DDL
Schema Versioning Backward Compatible
Rollback Support Safe Deploys
City-based Sharding Geographic Distribution
User-based Sharding Consistent Hashing
Trip-based Sharding Time + City
Shard Router Query Routing
Schema Migrations Online DDL
Schema Versioning Backward Compatible
Rollback Support Safe Deploys
City-based Sharding Geographic Distribution
User-based Sharding Consistent Hashing
Trip-based Sharding Time + City
Shard Router Query Routing
Location Keyspace GPS Data
Event Keyspace Trip Events
Analytics Keyspace Aggregations
driver_locations Time Series GPS
city_supply Driver Availability
Time Range Query Recent Locations
Partition Key driver_id + date
Clustering Key timestamp DESC
Location Keyspace GPS Data
Event Keyspace Trip Events
Analytics Keyspace Aggregations
driver_locations Time Series GPS
city_supply Driver Availability
Time Range Query Recent Locations
Partition Key driver_id + date
Clustering Key timestamp DESC
Supply Cluster Driver Availability
Session Cluster User State
Geo Cluster Location Index
GEOADD/GEORADIUS Nearby Drivers
Online Drivers Per H3 Cell
Rate Limiting API Throttle
Supply Cluster Driver Availability
Session Cluster User State
Geo Cluster Location Index
GEOADD/GEORADIUS Nearby Drivers
Online Drivers Per H3 Cell
Rate Limiting API Throttle
location-updates GPS Events
payment-events Transactions
analytics-events Business Events
Driver App Location Producer
Dispatch Service Trip Producer
Payment Service Payment Producer
ETA Service Location Consumer
Analytics Multi-topic Consumer
Real-time Processing Flink/Spark
location-updates GPS Events
payment-events Transactions
analytics-events Business Events
Driver App Location Producer
Dispatch Service Trip Producer
Payment Service Payment Producer
ETA Service Location Consumer
Analytics Multi-topic Consumer
Real-time Processing Flink/Spark
Hash Function Consistent Hash
Virtual Nodes Load Distribution
Request Forwarding Owner Lookup
City Sharding Per City Ring
Driver Sharding Driver Assignment
Trip Sharding Trip Ownership
Failure Detection Heartbeat
Rebalance Partition Movement
Hash Function Consistent Hash
Virtual Nodes Load Distribution
Request Forwarding Owner Lookup
City Sharding Per City Ring
Driver Sharding Driver Assignment
Trip Sharding Trip Ownership
Failure Detection Heartbeat
Rebalance Partition Movement
ETA Service Kafka Redis Location Service API Gateway Driver ETA Service Kafka Redis Location Service API Gateway Driver loop [Every 4 seconds] Batched for efficiency during trips Send GPS Location Process Location Update Driver Position Publish Location Event Consume Location Update ETA Predictions ETA Service Kafka Redis Location Service API Gateway Driver ETA Service Kafka Redis Location Service API Gateway Driver loop [Every 4 seconds] Batched for efficiency during trips Send GPS Location Process Location Update Driver Position Publish Location Event Consume Location Update ETA Predictions
New York City Isolated Stack
Los Angeles Isolated Stack
Dispatch Service City Instance
Supply Service City Instance
Surge Service City Instance
Fault Isolation City Boundaries
Independent Scaling Per City Load
Low Latency Regional Deployment
Compliance Local Regulations
New York City Isolated Stack
Los Angeles Isolated Stack
Dispatch Service City Instance
Supply Service City Instance
Surge Service City Instance
Fault Isolation City Boundaries
Independent Scaling Per City Load
Low Latency Regional Deployment
Compliance Local Regulations
Batch GPS Updates Reduce API Calls
Connection Pooling Resource Reuse
Async Processing Non-blocking
Circuit Breaker Fault Tolerance
Multi-tier Cache Redis + Local
Denormalization Read Performance
Compression Storage Efficiency
Dispatch Latency < 200ms P99
Location Update < 100ms P99
Batch GPS Updates Reduce API Calls
Connection Pooling Resource Reuse
Async Processing Non-blocking
Circuit Breaker Fault Tolerance
Multi-tier Cache Redis + Local
Denormalization Read Performance
Compression Storage Efficiency
Dispatch Latency < 200ms P99
Location Update < 100ms P99
Trusted Contacts Emergency Share
Emergency Button 911 Integration
Background Check Verification
Face Verification Real-time Check
Speed Alerts Driving Behavior
Fatigue Detection Drive Time Limits
GPS Tracking Route Monitoring
Route Deviation Alert System
Audio Recording Opt-in Safety
Crash Detection Accelerometer
Fraud Detection Account Security
Content Moderation Report System
Trusted Contacts Emergency Share
Emergency Button 911 Integration
Background Check Verification
Face Verification Real-time Check
Speed Alerts Driving Behavior
Fatigue Detection Drive Time Limits
GPS Tracking Route Monitoring
Route Deviation Alert System
Audio Recording Opt-in Safety
Crash Detection Accelerometer
Fraud Detection Account Security
Content Moderation Report System
Biometric Face/Fingerprint
Device Binding Trusted Devices
Encryption at Rest AES-256
Encryption in Transit TLS 1.3
PII Masking Data Protection
Rate Limiting Abuse Prevention
OAuth Scopes Permission Control
Audit Logging Access Tracking
DDoS Protection Traffic Filtering
Biometric Face/Fingerprint
Device Binding Trusted Devices
Encryption at Rest AES-256
Encryption in Transit TLS 1.3
PII Masking Data Protection
Rate Limiting Abuse Prevention
OAuth Scopes Permission Control
Audit Logging Access Tracking
DDoS Protection Traffic Filtering
Trips/Minute Request Volume
Completion Rate Success Ratio
Cancellation Rate By Reason
DB Connections Pool Status
Anomaly Detection ML-based
Trips/Minute Request Volume
Completion Rate Success Ratio
Cancellation Rate By Reason
DB Connections Pool Status
Anomaly Detection ML-based
main feature-branch Feature Dev Code Changes Unit Tests Integration Tests Build & Package Canary Deploy Production Rollout main feature-branch Feature Dev Code Changes Unit Tests Integration Tests Build & Package Canary Deploy Production Rollout
Canary Deployment 5% Traffic
Monitor Metrics Error Rate, Latency
Progressive Rollout City by City
Canary Deployment 5% Traffic
Monitor Metrics Error Rate, Latency
Progressive Rollout City by City
uDeploy : Uber's internal deployment system
Canary releases : City-level progressive rollout
Feature flags : LaunchDarkly for controlled releases
Automated rollback : Metric-triggered reversal
Terraform : Infrastructure provisioning
Kubernetes : Container orchestration (Peloton)
Helm charts : Service deployment templates
City Outage Regional Failure
Service Kill Random Termination
Network Chaos Latency Injection
DB Failover Primary Switch
City Outage Regional Failure
Service Kill Random Termination
Network Chaos Latency Injection
DB Failover Primary Switch
City-level drills : Simulated city outages
Service injection : Random service failures
Database failover : Primary/replica switches
Network partition : Cross-datacenter latency
Trip Data GPS, Duration, Fare
User Data Behavior, Preferences
Driver Data Ratings, Acceptance
Market Data Supply, Demand
Feature Store Centralized Features
Real-time Features Streaming
Distributed Training Spark, TensorFlow
Model Evaluation Metrics, A/B
Model Registry Version Control
Online Serving Low Latency
Streaming Real-time Updates
Trip Data GPS, Duration, Fare
User Data Behavior, Preferences
Driver Data Ratings, Acceptance
Market Data Supply, Demand
Feature Store Centralized Features
Real-time Features Streaming
Distributed Training Spark, TensorFlow
Model Evaluation Metrics, A/B
Model Registry Version Control
Online Serving Low Latency
Streaming Real-time Updates
ETA Prediction : Route time estimation with traffic
Surge Pricing : Dynamic pricing based on demand
Fraud Detection : Payment and account fraud
Driver Matching : Optimal driver-rider pairing
Demand Forecasting : Supply positioning
35% 25% 15% 10% 10% 5% Uber Infrastructure Cost Distribution Compute (Containers, VMs) Database & Storage Mapping & Location Network & CDN Machine Learning Monitoring & Observability 35% 25% 15% 10% 10% 5% Uber Infrastructure Cost Distribution Compute (Containers, VMs) Database & Storage Mapping & Location Network & CDN Machine Learning Monitoring & Observability
Spot Instances Batch Processing
Reserved Capacity Core Services
Container Efficiency Resource Limits
Tiered Storage Hot/Warm/Cold
Compression Reduced Storage
Request Batching GPS Updates
Compression Protocol Buffers
Regional Processing Data Locality
Spot Instances Batch Processing
Reserved Capacity Core Services
Container Efficiency Resource Limits
Tiered Storage Hot/Warm/Cold
Compression Reduced Storage
Request Batching GPS Updates
Compression Protocol Buffers
Regional Processing Data Locality
Self-Driving Cars Uber ATG
Sensor Fusion Lidar, Camera, Radar
HD Maps Centimeter Precision
Simulation Virtual Testing
Uber Air Urban Air Mobility
Micromobility Bikes, Scooters
AI Dispatch Autonomous Matching
Predictive Demand Pre-positioning
Real-time ML Streaming Models
Federated Learning Privacy-preserving
Quantum Optimization Routing Problems
Self-Driving Cars Uber ATG
Sensor Fusion Lidar, Camera, Radar
HD Maps Centimeter Precision
Simulation Virtual Testing
Uber Air Urban Air Mobility
Micromobility Bikes, Scooters
AI Dispatch Autonomous Matching
Predictive Demand Pre-positioning
Real-time ML Streaming Models
Federated Learning Privacy-preserving
Quantum Optimization Routing Problems
Uber's architecture demonstrates expertise in building real-time, location-based services at massive global scale. The system successfully manages:
Real-time Matching : Sub-second driver-rider matching
Global Scale : 10,000+ cities, millions of trips daily
Dynamic Pricing : Real-time supply/demand balancing
High Availability : 99.99% uptime with graceful degradation
Safety : Comprehensive safety features for riders and drivers
City-based Isolation
Independent scaling per city
Fault isolation boundaries
Regulatory compliance
Local optimization
Real-time Systems
H3 hexagonal grid for geospatial
Ringpop for consistent hashing
Kafka for event streaming
Redis for real-time state
Data Architecture
MySQL Schemaless for flexibility
Cassandra for time-series data
Redis for hot data
HDFS for analytics
Reliability
Circuit breakers
Graceful degradation
Multi-region deployment
Automated recovery
Machine Learning
ETA prediction
Surge pricing
Fraud detection
Demand forecasting
The platform continues to evolve with autonomous vehicles, drone delivery, and multimodal transportation, while maintaining the core principles of reliability and real-time responsiveness.
This architecture represents Uber's known systems and best practices. Actual implementation details may vary.