Team: Katerina Bosko, Jiayi Li
In diesem Projekt implementieren wir eine Datenbank für die Restaurantkette „Golden Triangle“, die über 5 Standorte in mehreren US-Bundesstaaten verfügt. Das Unternehmen möchte das neue Geschäftsmodell „Ghost Kitchen“ ausprobieren, das bedeutet, dass die Restaurants „virtuelle Marken“ schaffen können, ohne Gastronomieangebote anzubieten, und die Kunden die neuen Menüpunkte nur zum Mitnehmen, Drive-in und Lieferservice bestellen. Der Vorteil dieses Modells besteht darin, dass die Restaurants Kosten sparen, mit neuen Menüs experimentieren und interne Analysen erstellen können.
GhostKitchen-II ist die Fortsetzung unseres Projekts „GhostKitchen“, das mithilfe des Express-Frameworks für Node.js, SQLite und Bootstrap implementiert wurde.
Hier haben wir die SQL-Datenbank in MongoDB migriert und die Abfragen mit MQL – der Abfragesprache von Mongo – neu geschrieben.
Siehe GhostKitchen-III für die Implementierung derselben App mit Redis
docker-compose.yml
aus diesem Repository herunter docker-compose up
Hinweis: Sie müssen Docker installiert haben.
GhostKitchen-II/GhostKitchen-II/
(wo sich die App befindet). npm install
npm start
brew services start mongodb-community
Um MongoDB unter MacOS zu installieren, führen Sie Folgendes aus:
brew install mongodb-community
npm run initializeDB
Hinweise:
Sie können den Dump der Datenbank unter ./GhostKitchen-II/db/dump
herunterladen
Sie können das Skript, das Daten von SQLite nach JSON migriert ( ./GhostKitchen-II/db/migration_SQLtoMongolike/1_SQLtoMongo.py
), auch wie folgt ausführen:
npm run migrate
Um eine MongoDB-Datenbank zu erstellen, haben wir den gesamten Datenbankerstellungszyklus durchlaufen:
Wir führen auch mehrere MQL-Abfragen durch, die für „Golden Triangle“ von potenziellem Interesse sein könnten:
Um die oben genannten Abfragen auszuführen, starten Sie das Abfrageskript, nachdem Sie die App heruntergeladen und die Abhängigkeiten wie folgt installiert haben:
npm run queries
Jiayi Li arbeitete an der Erstellung der Admin-Seite und der CRUD-Sammlungen für Mahlzeiten und Bestellungen.
Katerina Bosko arbeitete an der Erstellung der Benutzerseite und der CRUD-Sammlungen „Kunden, Standorte, Bestellungen und Bewertungen“.
Die Daten für die Kundenerfassung wurden mithilfe von https://www.mockaroo.com/ generiert.
Dies ist ein Projekt für einen Kurs über Datenbankmanagementsysteme an der Northeastern University (Campus Silicon Valley), der von John Alexis Guerra Gómez unterrichtet wird