Database management project that bulk loads historic eBay data in JSON format into a SQLite Database via a python parser. Searches, bids, and purchases are made using commandLine.py, which takes command line arguments and converts those into a query in the SQlite Database. Triggers were implemented to avoid collisions or invalid data entries.
Technologies and tools used: Python, SQLite, Shell Scripting
Authors: Zachary Dulac, Trung Nguyen, Abby Tse
- Users(User_ID, Rating, Location, Country)
- Items(Item_ID, Seller_ID, Name, Buy_Price, First_Bid, Currently, Number_of_Bids, Started, Ends, Description, Open)
- CategoriesOf(Item_ID, Category)
- Categories(Category)
- Bids(Item_ID, User_ID, Time, Amount)
- Finish
parser.py
. Use Command:
python zat_parser.py ./ebay_data/items-*.json
- Clean .dat files - remove duplicates and sorts. Use Commands:
sort -k1 -u -o items.dat items.dat
sort -k1 -u -o categoryOf.dat category.dat
sort -k1 -u -o users.dat users.dat
sort -k1 -u -o bids.dat bids.dat
cat categoryOf.dat | awk -F"|" '{print $2}' > category.dat
sort -k1 -u -o category.dat category.dat
- Automate Part1.A + B:
sh runParser.sh
- Use Command:
sh createDatabase.sh
- Use Command:
python commandLine.py <option> <argument>
- Ability to browse auction of interest based on the following input parameters:
- item ID
- category
- item description
- price
- open/closed status
- Test implementation using:
sh implement.sh