Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Laboratorio de Big Data: Uso de SQLite y MongoDB, Guías, Proyectos, Investigaciones de Sistemas de Gestión de Bases de Datos

Un laboratorio práctico sobre el uso de las bases de datos sqlite y mongodb. Se detallan los pasos para la creación de tablas, inserción de datos y realización de consultas en ambas bases de datos. El documento incluye ejemplos de código sql y comandos de mongodb para ilustrar los conceptos.

Tipo: Guías, Proyectos, Investigaciones

2023/2024

A la venta desde 13/12/2024

Tealbone
Tealbone 🇵🇪

4 documentos

1 / 36

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Laboratorio - Nota Base: 19
Big Data - Secci´on 1
Grupo 1
Docente: Roman Concha Norberto Ulises
Alumnos
Cartagena Valera Brush Davis Leonardo, (C´odigo # 22200193)
Dioses Bellota Angel, (C´odigo # 22200209)
Guerrero Falla Christian Angelo, (C´odigo # 22200211)
Martinez Fuentes Kenny Uldarico Danny, (C´odigo # 22200206)
Facultad de Ingenier´ıa de Sistemas e Inform´atica, UNMSM
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24

Vista previa parcial del texto

¡Descarga Laboratorio de Big Data: Uso de SQLite y MongoDB y más Guías, Proyectos, Investigaciones en PDF de Sistemas de Gestión de Bases de Datos solo en Docsity!

Laboratorio - Nota Base: 19

Big Data - Secci´on 1

Grupo 1

Docente: Roman Concha Norberto Ulises

Alumnos

Cartagena Valera Brush Davis Leonardo, (C´odigo # 22200193)

[email protected]

Dioses Bellota Angel, (C´odigo # 22200209)

[email protected]

Guerrero Falla Christian Angelo, (C´odigo # 22200211)

[email protected]

Martinez Fuentes Kenny Uldarico Danny, (C´odigo # 22200206)

[email protected]

Facultad de Ingenier´ıa de Sistemas e Inform´atica, UNMSM

´Indice

    1. Uso de SQLite
    • 1.1. Creaci´on de las tablas en SQLite
    • 1.2. Insertar datos a las tablas en SQLite
    • 1.3. Realizar las consultas en SQLite
    1. Uso de MongoDB
    • 2.1. Instalaci´on y configuraciones previas de MongoDB
    • 2.2. Configuraci´on de MongDB Shell
    • 2.3. Pruebas en Mongod Shell
    • 2.4. Pruebas en GUI Compass

Tabla Empleado

CREATE TABLE " Empleado " ( " id " INTEGER NOT NULL , " apellido " TEXT NOT NULL , " informe " INTEGER , PRIMARY KEY (" id " AUTOINCREMENT ) )

Tabla Producto

CREATE TABLE " Producto " ( " id " INTEGER NOT NULL , " nombre " TEXT NOT NULL , " categoria " TEXT NOT NULL , PRIMARY KEY (" id " AUTOINCREMENT ) )

Tabla Proveedor

CREATE TABLE " Proveedor " ( " id " INTEGER NOT NULL , " nombreCompania " TEXT NOT NULL , " pais " TEXT NOT NULL , PRIMARY KEY (" id " AUTOINCREMENT ) )

Tabla Tiempo

CREATE TABLE " Tiempo " ( " id " INTEGER NOT NULL , " fecha " DATETIME NOT NULL , " anio " INTEGER NOT NULL , " trimestre " INTEGER NOT NULL , " mes " TEXT NOT NULL , PRIMARY KEY (" id " AUTOINCREMENT ) )

Tabla Orden

CREATE TABLE " Orden " ( " productoID " INTEGER NOT NULL , " clienteID " INTEGER NOT NULL , " empleadoID " INTEGER NOT NULL , " tiempoID " INTEGER NOT NULL , " proveedorID " INTEGER NOT NULL , " precio " REAL NOT NULL , " cantidad " INTEGER NOT NULL , FOREIGN KEY (" clienteID ") REFERENCES " Cliente "(" id ") , FOREIGN KEY (" empleadoID ") REFERENCES " Empleado "(" id ") , FOREIGN KEY (" productoID ") REFERENCES " Producto "(" id ") , FOREIGN KEY (" proveedorID ") REFERENCES " Proveedor "(" id ") , FOREIGN KEY (" tiempoID ") REFERENCES " Tiempo "(" id ") )

1.2. Insertar datos a las tablas en SQLite

Se llen´o la tabla con 10 filas de datos, el c´odigo SQL es el siguiente:

Insertar datos en la tabla Cliente

INSERT INTO " Cliente " (" id " , " nombre " , " ciudad " , " pais ") VALUES ( ' 1 ' , ' Juan Perez ' , ' Madrid ' , ' Espana ') ; INSERT INTO " Cliente " (" id " , " nombre " , " ciudad " , " pais ") VALUES ( ' 2 ' , ' Ana Gomez ' , ' Barcelona ' , ' Espana ') ; INSERT INTO " Cliente " (" id " , " nombre " , " ciudad " , " pais ") VALUES ( ' 3 ' , ' Carlos Sanchez ' , ' Bogota ' , ' Colombia ') ; INSERT INTO " Cliente " (" id " , " nombre " , " ciudad " , " pais ") VALUES ( ' 4 ' , ' Laura Ruiz ' , ' Buenos Aires ' , ' Argentina ') ; INSERT INTO " Cliente " (" id " , " nombre " , " ciudad " , " pais ") VALUES ( ' 5 ' , ' Mario Rossi ' , ' Roma ' , ' Italia ') ; INSERT INTO " Cliente " (" id " , " nombre " , " ciudad " , " pais ") VALUES ( ' 6 ' , ' Lucia Fernandez ' , ' Lima ' , ' Peru ') ; INSERT INTO " Cliente " (" id " , " nombre " , " ciudad " , " pais ")

VALUES ( ' 2 ' , ' Computadora ' , ' Electronica ') ; INSERT INTO " Producto " (" id " , " nombre " , " categoria ") VALUES ( ' 3 ' , ' Celular ' , ' Electronica ') ; INSERT INTO " Producto " (" id " , " nombre " , " categoria ") VALUES ( ' 4 ' , ' Refrigerador ' , ' Electrodomesticos ') ; INSERT INTO " Producto " (" id " , " nombre " , " categoria ") VALUES ( ' 5 ' , ' Lavadora ' , ' Electrodomesticos ') ; INSERT INTO " Producto " (" id " , " nombre " , " categoria ") VALUES ( ' 6 ' , ' Microondas ' , ' Electrodomesticos ') ; INSERT INTO " Producto " (" id " , " nombre " , " categoria ") VALUES ( ' 7 ' , ' Bicicleta ' , ' Deportes ') ; INSERT INTO " Producto " (" id " , " nombre " , " categoria ") VALUES ( ' 8 ' , ' Pelota ' , ' Deportes ') ; INSERT INTO " Producto " (" id " , " nombre " , " categoria ") VALUES ( ' 9 ' , ' Zapatillas ' , ' Deportes ') ; INSERT INTO " Producto " (" id " , " nombre " , " categoria ") VALUES ( ' 10 ' , ' Libro ' , ' Educacion ') ;

Insertar datos en la tabla Proveedor

INSERT INTO " Proveedor " (" id " , " nombreCompania " , " pais ") VALUES ( ' 1 ' , ' ElectroMax ' , ' China ') ; INSERT INTO " Proveedor " (" id " , " nombreCompania " , " pais ") VALUES ( ' 2 ' , ' CompuWorld ' , ' Estados Unidos ') ; INSERT INTO " Proveedor " (" id " , " nombreCompania " , " pais ") VALUES ( ' 3 ' , ' DeportesPlus ' , ' Peru ') ; INSERT INTO " Proveedor " (" id " , " nombreCompania " , " pais ") VALUES ( ' 4 ' , ' MueblesGlobal ' , ' Canada ') ; INSERT INTO " Proveedor " (" id " , " nombreCompania " , " pais ") VALUES ( ' 5 ' , ' TecnologiaLatam ' , ' Mexico ') ; INSERT INTO " Proveedor " (" id " , " nombreCompania " , " pais ") VALUES ( ' 6 ' , ' ModaTrendy ' , ' Peru ') ; INSERT INTO " Proveedor " (" id " , " nombreCompania " , " pais ") VALUES ( ' 7 ' , ' GourmetDelights ' , ' Italia ') ; INSERT INTO " Proveedor " (" id " , " nombreCompania " , " pais ")

VALUES ( ' 8 ' , ' EcoHouse ' , ' Alemania ') ; INSERT INTO " Proveedor " (" id " , " nombreCompania " , " pais ") VALUES ( ' 9 ' , ' RopaSport ' , ' Colombia ') ; INSERT INTO " Proveedor " (" id " , " nombreCompania " , " pais ") VALUES ( ' 10 ' , ' SuperElectro ' , ' Peru ') ;

Insertar datos en la tabla Tiempo

INSERT INTO " Tiempo " (" id " , " fecha " , " anio " , " trimestre " , " mes ") VALUES ( ' 10 ' , '2024 -10 -02 ' , ' 2024 ' , ' 4 ' , ' Octubre ') ; INSERT INTO " Tiempo " (" id " , " fecha " , " anio " , " trimestre " , " mes ") VALUES ( ' 9 ' , '2024 -09 -05 ' , ' 2024 ' , ' 3 ' , ' Septiembre ') ; INSERT INTO " Tiempo " (" id " , " fecha " , " anio " , " trimestre " , " mes ") VALUES ( ' 8 ' , '2024 -08 -16 ' , ' 2024 ' , ' 3 ' , ' Agosto ') ; INSERT INTO " Tiempo " (" id " , " fecha " , " anio " , " trimestre " , " mes ") VALUES ( ' 7 ' , '2024 -07 -30 ' , ' 2024 ' , ' 3 ' , ' Julio ') ; INSERT INTO " Tiempo " (" id " , " fecha " , " anio " , " trimestre " , " mes ") VALUES ( ' 6 ' , '2024 -06 -25 ' , ' 2024 ' , ' 2 ' , ' Junio ') ; INSERT INTO " Tiempo " (" id " , " fecha " , " anio " , " trimestre " , " mes ") VALUES ( ' 5 ' , '2024 -05 -10 ' , ' 2024 ' , ' 2 ' , ' Mayo ') ; INSERT INTO " Tiempo " (" id " , " fecha " , " anio " , " trimestre " , " mes ") VALUES ( ' 4 ' , '2024 -04 -22 ' , ' 2024 ' , ' 2 ' , ' Abril ') ; INSERT INTO " Tiempo " (" id " , " fecha " , " anio " , " trimestre " , " mes ") VALUES ( ' 3 ' , '2024 -03 -18 ' , ' 2024 ' , ' 1 ' , ' Marzo ') ; INSERT INTO " Tiempo " (" id " , " fecha " , " anio " , " trimestre " , " mes ") VALUES ( ' 2 ' , '2024 -02 -20 ' , ' 2024 ' , ' 1 ' , ' Febrero ') ; INSERT INTO " Tiempo " (" id " , " fecha " , " anio " , " trimestre " , " mes ") VALUES ( ' 1 ' , '2024 -01 -15 ' , ' 2024 ' , ' 1 ' , ' Enero ') ;

Insertar datos en la tabla Orden

INSERT INTO " Orden " (" productoID " , " clienteID " , " empleadoID " , " tiempoID " , " proveedorID " , " precio " , " cantidad ") VALUES ( ' 1 ' , ' 1 ' , ' 1 ' , ' 1 ' , ' 1 ' , '599.99 ' , ' 1 ') ; INSERT INTO " Orden " (" productoID " , " clienteID " , " empleadoID " , " tiempoID " , " proveedorID " , " precio " , " cantidad ")

JOIN Cliente ON Orden. clienteID = Cliente. id WHERE Cliente. nombre = ' Juan Perez ';

Consulta de empleados que procesaron ordenes en un trimestre espec´ıfico:

SELECT Empleado. apellido , Tiempo. trimestre , COUNT ( Orden. tiempoID ) AS num_ordenes FROM Orden JOIN Empleado ON Orden. empleadoID = Empleado. id JOIN Tiempo ON Orden. tiempoID = Tiempo. id WHERE Tiempo. trimestre = 1 GROUP BY Empleado. apellido , Tiempo. trimestre ;

Consulta del total de productos comprados de cada categor´ıa por todos los clientes:

SELECT Producto. categoria , SUM ( Orden. cantidad ) AS total_productos FROM Orden JOIN Producto ON Orden. productoID = Producto. id GROUP BY Producto. categoria ;

Consulta de los clientes que compraron productos de una categor´ıa espec´ıfica:

SELECT Cliente. nombre , Cliente. ciudad , Producto. categoria FROM Orden JOIN Cliente ON Orden. clienteID = Cliente. id JOIN Producto ON Orden. productoID = Producto. id WHERE Producto. categoria = ' Electronica ';

Consulta de los proveedores de productos comprados por un cliente espec´ıfico:

SELECT Proveedor. nombreCompania , Proveedor. pais FROM Orden JOIN Proveedor ON Orden. proveedorID = Proveedor. id JOIN Cliente ON Orden. clienteID = Cliente. id WHERE Cliente. nombre = ' Ana Gomez ';

De manera similar, en la opci´on de Tools (Herramientas) necesitamos de instalar MongoDB Shell

para trabajar con mongoD desde la consola. Seleccionamos seg´un los requisitos del dispositivo,

se recomienda descargar los archivos como zip, para copiar los directorios a una posterior ruta.

Una vez descargados, ambos archivos estar´an disponibles en la ruta que se haya seleccionado.

Lo primero a instalar ser´a el mondodb (icono derecho en la imagen)

Se proceder´a con la instalaci´on de MongoDB 8.0.0, seleccionamos “Next”

Aceptamos los t´erminos y condiciones, continuamos con la opci´on “Next”

Instalamos la versi´on completa para evitar errores con respecto a programas

Para la configuraci´on del servicio, podemos optar por instalar a MongoD como servicio frecuente,

en nuestro caso no se realizar´a, as´ı que seleccionamos “Next”

Para que, en nuestro CMD, pueda reconocerse a mongod como un ejecutable, necesitamos

modificar las variables de entorno de nuestro dispositivo, para esto vamos a la ruta bin de

MongoDB y se debe copiar la ruta.

Para editar las variables de entorno, podemos acceder a los ajustes avanzados de nuestro sistema

dando clic derecho al icono de Este equipo, luego clic a Propiedades, y Ajustes Avanzados. Otra

soluci´on es escribir en nuestro buscador “Variables de Entorno”.

Accedemos a las variables de entorno, luego damos doble clic en las variables Path.

Creamos una nueva variable e introducimos la ruta copiada anteriormente, luego seleccionamos

aceptar hasta que la vista se cierre.

De realizarse correctamente, cuando escribamos mongod.exe –version aparecer´a las credenciales

de nuestro mongod.

2.2. Configuraci´on de MongDB Shell

Ahora necesitamos instalar el Shell para operar comandos desde la consola, para esto debemos

descomprimir el archivo zip previamente descargado, todos los archivos presentes deber´an ser

movidos

Deber´a copiarse la carpeta en la siguiente ruta: C:\Program Files\MongoDB

Seguido de ello, debemos agregar la ruta de la carpeta “bin” dentro de la carpeta mongosh-

2.3.1-win32-x64 (no confundir con la carpeta dentro de Server, eso ya se hizo previamente) en

las variables Path de nuestro ordenador.

Al crear un nuevo CMD, digitamos el comando mongosh y este mostrar´a la versi´on del Shell y

permitir´a escribir comandos o incluso ejecutar c´odigo basado en JavaScript (dado que Shell es

un interprete del mismo).