Uber Database Design

Designed the Uber database System. Created some Triggers and stored procedures.

Industry:

Data Engineering

Timeline:

4 weeks

Data Modelling

Uber Database Design

Designed the Uber database System. Created some Triggers and stored procedures.

Industry:

Data Engineering

Timeline:

4 weeks

Data Modelling

Uber Database Design

Designed the Uber database System. Created some Triggers and stored procedures.

Industry:

Data Engineering

Timeline:

4 weeks

Data Modelling

luxe architects website project image 1
luxe architects website project image 1
luxe architects website project image 1
luxe architects website project image 2
luxe architects website project image 2
luxe architects website project image 2

Uber is a ride-providing (car-for-hire) company that offers taxi services to customers. Unlike regular taxi services, Uber allows individuals to join as drivers using their personal registered vehicles, enabling them to earn money by completing customer requests.

Important Components of the System

The main actors in this domain are Drivers and Customers, forming the foundation of the database model.

  • Driver: A person above the age of 18 with an authorized, unexpired driver’s license and Social Security Number (SSN), possessing a registered vehicle under insurance.

  • Customer: A person with an account on Uber who needs to be picked up from a certain location and dropped off at a desired destination.

Working of the Uber System

Uber is a real-time application that allows customers to request rides from their current location to their desired destination.

  • A registered customer can have various types of accounts, such as Ordinary, Platinum, or Gold, based on the number of completed rides. Depending on the account type, customers are eligible for offers that can be availed by entering a promo code.

  • Customers request rides and can choose the type of ride (e.g., UberX, UberXL). The estimated fare is visible based on the chosen ride type. A ride is allotted according to driver availability at the current location.

  • Once a trip request is finalized, a driver arrives at the customer's location for pickup.

  • After reaching the final destination, the driver ends the trip, and the customer sees the final fare.

  • The fare is deducted from the payment method selected by the customer at the beginning of the trip. Customers have the option to add a tip for the driver. Both drivers and customers can rate each other and provide feedback based on the trip.

Project Data Requirements

A User entity has been created where user types can be either a customer or a driver, both registered with Uber and regarded as Uber Users.

User Information

The system must store personal information about Uber users such as:

  • Name

  • Date of birth

  • Address

  • Email

  • Phone number

Users are uniquely identified by a system-generated identification code (UberID). A user can be either a customer or a driver. A driver can also act as a customer when not driving.

Customer Information

Customers are identified by a Customer ID (CID), derived from their UberID. The customer's account type (ordinary, gold, platinum) must also be recorded.

Driver Information

Drivers are identified by a Driver ID (DID), derived from their UberID. Additional information stored includes:

  • Driver’s License Number

  • DL Expiry Date

  • SSN

Shift Information

Drivers have separate shifts stored in a shift table containing:

  • Driver ID

  • Time of login and logout

This information is used when allotting rides to drivers.

Vehicle Information

Vehicle details include:

  • Vehicle Identification Number (VID)

  • Model of the car

  • Manufacturing year

  • Purchase date

  • Active status

  • Condition for maintenance purposes

  • Capacity (number of seats)

  • Insurance number and expiry date

  • Last maintenance check date

Trip Requests

Trip requests are identified by a specific ID (Trip ID) and contain:

  • Type of trip

  • Pickup location

  • Dropoff location

  • Ride type

  • Estimated fare

It also includes Driver ID and Customer ID for each ride.

Trip Status

Trips can be completed or incomplete.Completed Trips include:

  • Arrival time of driver

  • Pickup time when the ride starts

  • Dropoff time at destination

  • Tip given by customer

  • Surge time used for fare calculation

Incomplete Trips include:

  • Booking time

  • Cancellation time

  • Reason for cancellation

Payment Method

Payment information includes:

  • Transaction ID (TID)

  • Card details: card number, CVV number, expiry date, card type (Visa or Mastercard)

  • Billing address

Payments can be made through personal or company accounts, divided into two tables: Personal Payment and Business Payment. Personal payments include cardholder name; business payments include company name.

Feedback System

Feedback is crucial for Uber's business review process. The rating table contains:

  • Trip ID

  • Ratings for driver and customer (out of 10 stars)

  • Feedback comments for both parties

Designed by Pranav

Designed by Pranav