Équipe : Katerina Bosko, Jiayi Li
Dans ce projet, nous implémentons une base de données pour une chaîne de restaurants "Golden Triangle" qui compte 5 sites répartis dans plusieurs États américains. L'entreprise souhaite tester le nouveau modèle commercial - la cuisine fantôme - ce qui signifie que les restaurants peuvent créer des « marques virtuelles » sans proposer d'options de restauration et que les clients commandent les nouveaux éléments du menu à emporter, au volant et en livraison uniquement. Les avantages de ce modèle sont que les restaurants peuvent réduire leurs coûts, expérimenter de nouveaux menus et créer des analyses en interne.
GhostKitchen-II est la suite de notre projet "GhostKitchen" qui a été implémenté à l'aide du framework Express pour Node.js, SQLite et Bootstrap.
Ici, nous avons migré la base de données SQL vers MongoDB et réécrit les requêtes en utilisant MQL – le langage de requête de Mongo.
Voir GhostKitchen-III pour la mise en œuvre de la même application à l'aide de Redis
docker-compose.yml
à partir de ce référentiel docker-compose up
Remarque : vous devez installer Docker.
GhostKitchen-II/GhostKitchen-II/
(où se trouve l'application) npm install
npm start
brew services start mongodb-community
Pour installer MongoDB sur MacOS, exécutez :
brew install mongodb-community
npm run initializeDB
Remarques :
Vous pouvez télécharger le dump de la base de données depuis ./GhostKitchen-II/db/dump
Vous pouvez également exécuter le script qui migre les données de SQLite vers JSON ( ./GhostKitchen-II/db/migration_SQLtoMongolike/1_SQLtoMongo.py
) comme ceci :
npm run migrate
Pour créer une base de données MongoDB, nous avons parcouru tout le cycle de création de la base de données :
Nous exécutons également plusieurs requêtes MQL qui pourraient potentiellement intéresser le « Triangle d’Or » :
Pour exécuter les requêtes ci-dessus, démarrez le script de requêtes après avoir téléchargé l'application et installé les dépendances comme ceci :
npm run queries
Jiayi Li a travaillé sur la création de la page d'administration et des collections CRUD Meals and Orders.
Katerina Bosko a travaillé sur la création de la page utilisateur et des collections CRUD Clients, Emplacements, Commandes et Évaluations.
Les données pour la collecte des clients ont été générées à l'aide de https://www.mockaroo.com/
Il s'agit d'un projet pour un cours de systèmes de gestion de bases de données à la Northeastern University (campus de la Silicon Valley) enseigné par John Alexis Guerra Gómez.