Uber architecture

Uber architecture


1. Monolithic to Service-Oriented Architecture (SOA) Shift

???- for better scale and handle the complexities of its expanding services.

2. Dispatch System (DISCO):

?-responsible for matching riders with available drivers. It optimizes for reduced driving, minimal waiting time, and overall minimum Estimated Time of Arrival (ETA).

3. Geolocation and Maps:

???- Uber relies on the Google S2 library to model maps and location data. This library divides the Earth into cells, allowing efficient data distribution and storage in a distributed system.

4. Supply Service:

???- Cabs act as supply services, tracked by geolocation. The location data is sent to the server through Apache Kafka, allowing real-time updates and efficient tracking of available cabs.refresh in every 4 second

5. Demand Service:

???- receives ride requests through a WebSocket, tracking user GPS locations and preferences. It communicates with the supply service to match riders with suitable drivers.

6. Dispatch System Matchmaking:

???- DISCO uses unique cell IDs to distribute responsibilities among servers. The system filters nearby cabs based on rider requirements, calculates ETAs, and offers rides to drivers.

7. Map Region Definitions:

???-subregions are labeled A, B, AB, and C, covering urban centers, rural areas, a combination of both, and highway corridors, respectively.

9. Map Building and Trace Coverage:

???- it trace coverage to identify missing road segments or incorrect geometry for accurate mapping.

10. ETA Calculation:

????- Estimated Time of Arrival is crucial for ride-matching. Uber calculates ETA based on road systems, using algorithms like Dijkstra's to find the best routes.?

11. Database Infrastructure:

????- Uber uses a mix of databases, including a NoSQL database (Schemaless built on MySQL), and other databases like cxassandra for high availability and low-latency demands.

12. Analytics and Log Analysis:? ? - Uber performs log collection and analysis using tools like Kafka clusters, Elasticsearch, and Kibana.Analytics cover various aspects, including tracking APIs, managing profiles, collecting feedback, fraud detection, and more.

13. Datacenter Failure Handling:

????- To handle data center failures, Uber maintains a backup data center and uses drivers' phones as a source of trip data. State digests are sent to drivers' phones, ensuring data integrity in case of a data center failure.

要查看或添加评论,请登录

Janvi Sharma的更多文章

  • Relax, AI’s Got This: Let the Robots Handle Everything While We Chill

    Relax, AI’s Got This: Let the Robots Handle Everything While We Chill

    AI is basically the superhero we didn’t know we needed—automating boring tasks, making decisions faster than we can…

  • Django Sessions: Keep Users Hooked and Happy! ??

    Django Sessions: Keep Users Hooked and Happy! ??

    Hey there coders! ?? Ready to Get Cozy with Django Sessions? ??? Imagine this: You're building an awesome web app with…

  • ?? 5 Common Mistakes to Avoid in Django Development??

    ?? 5 Common Mistakes to Avoid in Django Development??

    Hey, Developers! ?? If you’ve spent any time working with Django, you’ve probably run into a few bumps along the way. I…

    4 条评论
  • ?? Level Up Your Cloud Game with LocalStack! ??

    ?? Level Up Your Cloud Game with LocalStack! ??

    Hey, cloud enthusiasts! ?? Ever find yourself waiting around for AWS resources to spin up, or cringe at the thought of…

    1 条评论
  • ?? Mastering Django Forms: The Secret Sauce for Seamless User Interactions

    ?? Mastering Django Forms: The Secret Sauce for Seamless User Interactions

    Hey, LinkedIn fam! ?? Today, I want to dive into something that’s often overlooked but absolutely critical in web…

    1 条评论
  • NETFLIX ARCHITECTURE

    NETFLIX ARCHITECTURE

    NETFLIX ARCHITECTURE 1. Client: - This is you using Netflix on your TV, laptop, or phone.

    1 条评论
  • DATA MINING

    DATA MINING

    Data mining is a crucial aspect of extracting valuable insights and patterns from large datasets, and it plays a vital…

  • "Code in the Ice : The GitHub Repository"

    "Code in the Ice : The GitHub Repository"

    GitHub, a platform for sharing and storing software code, has created a special data repository called the "Arctic Code…

    1 条评论
  • Databricks

    Databricks

    Transforming Big Data Analytics and AI in the Cloud In today's data-driven world, organizations are faced with the…

  • HADOOP

    HADOOP

    Apache Hadoop is open-source software for managing big data, which involves processing and storing large volumes of…

社区洞察

其他会员也浏览了