Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porGustavo Uribe Modificado hace 5 años
1
Construcción de elementos de Software 4 MSc. Oscar Mauricio Salazar Ospina MSc Juan Camilo Jaramillo Alzate 15/05/2019Programación distribuida y paralela1
2
15/05/2019Programación distribuida y paralela2
3
Instalación en Windows 15/05/2019Programación distribuida y paralela3 1.Descargar el instalador aquí.aquí 2.Iniciar instalador como administrador. 3.Crear carpeta de almacenamiento y configuración MongoDB: Ejecute el comando en la consola: md \data\db 4.Iniciar el servidor: C:\mongodb\bin\mongod.exe 5.Iniciar el cliente: C:\mongodb\bin\mongo.exe
4
¿Por qué usar NoSQl? 15/05/2019Programación distribuida y paralela4 Es rápido y funcional Es fácil de entender y de probar Alta escalabilidad comparado con los sistemas de bases de datos relacionales RDBMS. Alta disponibilidad y flexibilidad Soporte para casi todos los lenguajes
5
Características Se basa en colecciones y documentos. 15/05/2019Programación distribuida y paralela5 Colecciones Documentos
6
Relacional RDBMS vs NoSQL RDBMSMongo DB Base de datos TablaColección Índice FilaDocumento JSON ColumnaCampo del documento JoinDocumentos embebidos y búsqueda 15/05/2019Programación distribuida y paralela6
7
Crear una base de datos 15/05/2019Programación distribuida y paralela7 use base_datos; Nombre de la base de datos CREATE DATABASE base_datos; Relacional SQLNoSQL
8
Crear un documento Crear un documento. 15/05/2019Programación distribuida y paralela8 usuario = { nombre: "Oscar", apellido: “Salazar", edad: 27, estatura: 1.78 }; NoSQL Relacional SQL Flexible y muy fácil de usar! Poco flexible, Ligado a la estructura! TABLA + INSERT
9
Insertar un documento en una colección 15/05/2019Programación distribuida y paralela9 db.usuarios.insert(usuario); BD actual Colección Documento CREATE TABLE usuarios ( id int primary key, nombre varchar(255) not null, apellido varchar(255) not null, edad int not null, estatura float not null ); Relacional SQLNoSQL INSERT INTO usuarios(id,nombre, apellido, edad, estatura) VALUES (1,”Oscar”, “Salazar”, 27, 1.78)
10
Insertar múltiples documentos 15/05/2019Programación distribuida y paralela10 db.usuarios.insert([usuario1, usuario2]); BD actual Colección Documentos
11
Seleccionar documentos de una colección 15/05/2019Programación distribuida y paralela11 db.usuarios.find (); BD actual Colección Operador Relacional SQL NoSQL SELECT * FROM usuarios
12
15/05/2019Programación distribuida y paralela12 var usuario = db.usuarios.findOne(); BD actual Colección Operador { "_id" : ObjectId("59c3331d45953192e2928d50"), nombre: "Oscar", apellido: “Salazar", edad: 27, estatura: 1.78 } Identificador único autogenerado Relacional SQL SELECT TOP 1 FROM usuarios NoSQL Seleccionar un documento de una colección
13
Cláusula Where 15/05/2019Programación distribuida y paralela13 db.usuarios.findOne({nombre: ”Oscar”},{apellido:true}); BD actual Colección Proyección Condicional Case sensitive SELECT apellido FROM usuarios WHERE nombre = “Oscar” Relacional SQL NoSQL
14
Cláusula Where Not 15/05/2019Programación distribuida y paralela14 var usuario = db.usuarios.find({nombre: {$ne : ”Oscar”}}); BD actual Colección Operador Operador desigualdad SELECT * FROM usuarios WHERE nombre <> “Oscar” Relacional SQL
15
15/05/2019Programación distribuida y paralela15 Operadores de comparación: OperadorExpresión Igual$eq Diferente$ne Mayor que$gt Mayor o igual que$gte Menor que$lt Menor o igual que$lte Existencia en array$in Inexistencia en array$nin
16
Cláusula AND 15/05/2019Programación distribuida y paralela16 Relacional SQL SELECT * FROM usuarios WHERE nombre = “Oscar” AND apellido = “Salazar” NoSQL db.usuarios.find({nombre:”Oscar”, apellido:”Salazar”}); BD actual Colección
17
Cláusula OR 15/05/2019Programación distribuida y paralela17 db.usuarios.find({$or:[{nombre:”Oscar”},{apellido:”Salazar”}]}); BD actual Colección NoSQL Relacional SQL SELECT * FROM usuarios WHERE nombre = “Oscar” OR apellido = “Salazar”
18
Cláusula Order By 15/05/2019Programación distribuida y paralela18 db.usuarios.find().sort({“nombre”:1,”edad”:1}) BD actual Colección NoSQL Relacional SQL SELECT * FROM usuarios ORDER BY nombre, edad ASC SELECT * FROM usuarios ORDER BY nombre, edad DESC 1 para ordenar Ascendente -1 para ordenar Descendente
19
Actualizar documentos 15/05/2019Programación distribuida y paralela19 Relacional SQL UPDATE usuarios SET nombre = “Jorge” Where nombre = “Oscar” NoSQL db.usuarios.update({“nombre”:”Oscar”},{$set:{“nombre”:”Jorge”}})
20
Actualizar múltiples documentos 15/05/2019Programación distribuida y paralela20 Relacional SQL UPDATE usuarios SET nombre = “Jorge” NoSQL db.usuarios.update({“nombre”:”Oscar”}, {$set:{“nombre”:”Jorge”}}, {multi:true})
21
Eliminar un documento 15/05/2019Programación distribuida y paralela21 Relacional SQL DELETE FROM usuarios WHERE nombre = “Jorge” NoSQL db.usuarios.remove({“nombre”:”Oscar”}) db.usuarios.remove({ }) Remueve todos los documentos de una colección DELETE FROM usuarios
22
Eliminar una colección 15/05/2019Programación distribuida y paralela22 Relacional SQL DROP TABLE usuarios NoSQL db.usuarios.drop()
23
Like: contiene, comienza y termina 15/05/2019Programación distribuida y paralela23 Relacional SQL SELECT * FROM TABLE usuarios WHERE nombre LIKE ‘%Oscar%’ NoSQL SELECT * FROM TABLE usuarios WHERE nombre LIKE ‘Oscar%’ SELECT * FROM TABLE usuarios WHERE nombre LIKE ‘%Oscar’ db.usuarios.find({nombre: /Oscar/}); db.usuarios.find({nombre: /^Oscar/}); db.usuarios.find({nombre: /Oscar$/});
24
Between 15/05/2019Programación distribuida y paralela24 Relacional SQL SELECT * FROM TABLE usuarios WHERE edad BETWEEN 20 AND 30 NoSQL db.usuarios.find({edad: {$gte:20,$lte:30}}); SELECT * FROM TABLE usuarios WHERE edad>=20 AND edad <30 db.usuarios.find({edad: {$gte:20,$lt:30}});
25
DISTINCT 15/05/2019Programación distribuida y paralela25 Relacional SQL SELECT DISTINCT nombre FROM TABLE usuarios NoSQL db.usuarios.distinct(“nombre”);
26
Group By https://docs.mongodb.com/manual/reference /operator/aggregation/group/ https://docs.mongodb.com/manual/reference /operator/aggregation/group/ 15/05/2019Programación distribuida y paralela26
27
Documentos embebidos 15/05/2019Programación distribuida y paralela27
28
JOINS, función $lookup https://docs.mongodb.com/manual/reference /operator/aggregation/lookup/ https://docs.mongodb.com/manual/reference /operator/aggregation/lookup/ 15/05/2019Programación distribuida y paralela28
29
Map Reduce https://docs.mongodb.com/manual/tutorial/ map-reduce-examples/ https://docs.mongodb.com/manual/tutorial/ map-reduce-examples/ 15/05/2019Programación distribuida y paralela29
30
Programación distribuida y paralela MSc. Oscar Mauricio Salazar Ospina 15/05/2019Programación distribuida y paralela30
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.