Equipo: Katerina Bosko, Jiayi Li
En este proyecto, implementamos una base de datos para una cadena de restaurantes "Golden Triangle" que tiene 5 ubicaciones en varios estados de EE. UU. La compañía quiere probar el nuevo modelo de negocio, la cocina fantasma, lo que significa que los restaurantes pueden crear "marcas virtuales" sin ofrecer opciones de comida y que los clientes piden los nuevos elementos del menú solo para comida para llevar, autoservicio y entrega a domicilio. Las ventajas de este modelo es que los restaurantes pueden ahorrar costes, experimentar con nuevos menús y crear análisis internos.
GhostKitchen-II es la continuación de nuestro proyecto "GhostKitchen" que se implementó utilizando el marco Express para Node.js, SQLite y Bootstrap.
Aquí migramos la base de datos SQL a MongoDB y reescribimos las consultas usando MQL, el lenguaje de consulta de Mongo.
Consulte GhostKitchen-III para conocer la implementación de la misma aplicación usando Redis.
docker-compose.yml
desde este repositorio docker-compose up
Nota: necesita tener instalado Docker.
GhostKitchen-II/GhostKitchen-II/
(donde está la aplicación) npm install
npm start
brew services start mongodb-community
Para instalar MongoDB en MacOS ejecute:
brew install mongodb-community
npm run initializeDB
Notas:
Puede descargar el volcado de la base de datos desde ./GhostKitchen-II/db/dump
También puede ejecutar el script que migra datos de SQLite a JSON ( ./GhostKitchen-II/db/migration_SQLtoMongolike/1_SQLtoMongo.py
) así:
npm run migrate
Para crear una base de datos MongoDB, pasamos por todo el ciclo de creación de la base de datos:
También ejecutamos varias consultas MQL que podrían ser de interés potencial para "Golden Triangle":
Para ejecutar las consultas anteriores, inicie el script de consultas después de descargar la aplicación e instalar las dependencias de esta manera:
npm run queries
Jiayi Li trabajó en la creación de la página de administración y las colecciones CRUD Meals and Orders.
Katerina Bosko trabajó en la creación de la página de Usuario y las colecciones de Clientes, Ubicaciones, Pedidos y Calificaciones de CRUD.
Los datos para la recopilación de clientes se generaron utilizando https://www.mockaroo.com/
Este es un proyecto para una clase de Sistemas de Gestión de Bases de Datos en la Universidad Northeastern (campus de Silicon Valley) impartida por John Alexis Guerra Gómez.