- February 2024 - April 2024
- We worked in a team of 5 people to implement this project. I have worked on all the aspects of this project with my team members.
The goal of this project was to design and implement a database to manage eBay’s extensive and diverse data. This includes product listings, transaction histories, user profiles, and interactions. The database aims to optimize data storage and maintain data integrity to ensure smooth operations on the eBay platform.
eBay is a robust online shopping platform that offers a wide range of products, from electronics and fashion to collectibles and home goods. The eBay administration requires a comprehensive database to manage various aspects of the platform effectively. Each user has a unique user ID, and each product has a unique product ID. The database stores user profiles, including email, password, first name, and last name. Product details such as product name, description, price, and average rating are recorded. Sellers' details, including the items they have sold, their average rating, and their account number, are also stored. Transaction details such as order ID, order date, shipping cost, and total order cost are maintained. Shipping information, including tracking ID, estimated delivery date, and delivery status, is also tracked.
- Entity Relationship Model
- Relational Model
- Functional Dependencies
- Normalization to Boyce-Codd Normal Form (BCNF)
- DDL Script for Implementation of Relational Schema in PostgreSQL
- DML Script for Data Insertion Statements in PostgreSQL
- SQL Sample Queries
Working as a team was a valuable experience, involving knowledge sharing and collaborative planning. We started by understanding eBay’s database requirements and organized data to ensure ease of use. We designed the database structure, decided on table creation, and established connections between them. Continuous communication was crucial to align the team’s understanding and meet the project goals.
Creating a unique and realistic database presented challenges, including brainstorming ideas and ensuring data accuracy. We encountered certain problems while making of ER diagram & converting into Relational Schema, which were resolved through online research.
We incorporated real product listings, transaction histories, and user interactions to mirror the eBay experience, ensuring the database’s authenticity and practicality.
We worked diligently to normalize the database to optimize performance and minimize redundancy, ensuring efficient data storage and retrieval.
Detailed documentation, including ER diagrams and relational schemas, was prepared to outline the database structure, relationships, and constraints, facilitating future maintenance.
Rigorous testing was conducted to identify and address potential issues with data manipulation and query execution, ensuring smooth system functionality.
We enhanced our understanding of maintaining data integrity through constraints and relationships, crucial for preserving the reliability of the eBay platform.
Incorporating real user needs and inputs was prioritized, enhancing the practicality and usability of our database system.
Various external views can be added, allowing different types of users to see different subsets of the database schema. For example, eBay administrators can access all data, while sellers and buyers might see only relevant information. Building a user-friendly website where users can run queries on the database is also a planned next step.
This project has been an enriching experience, providing insights into balancing complexity with usability in real-life database management.