Académique Documents
Professionnel Documents
Culture Documents
web
Luisa Fernanda Rincn Prez
2016-1
Qu haremos hoy?
1. Bases de datos NoSQL
3. MongoDB
Hace parte
del concepto
de BIGDATA
-Clics de los
usuarios
-Selecciones
anteriores
Social
Social
media
media
Mobile
Mobile data
data
Web
Web site
site
content
content
Audio
Audio files
files
Ejm
Ejm llamadas
llamadas
de
de call
call centers
centers
http://www.signiant.com/blog/move-large-files-fastovercoming-the-challenge-of-transferring-huge-unstructureddata-sets/
Por qu NoSQL?
http://callcenterinfo.tmcnet.com/analysis/articles/156051-what-att-purchase-tmobile-means.htm
NoSQL / Bd relacionales
Dato para
una bd
NO-SQL
Sistemas de
almacenamiento
no relacionales
No tienen un
conjunto de tablas
relacionadas entre s
de una manera
ordenada y lgica.
Duplicidad de
informacin SI,
pero ya no es un
problema
https://www.ntt-review.jp/archive/ntttechnical.php?
contents=ntr201212fa3.html
https://www.ntt-review.jp/archive/ntttechnical.php?
contents=ntr201212fa3.html
Soft-sate
Los almacenes no tienen porque ser consistentes ni sus
rplicas en todo momento.
El programador puede verificar esa consistencia.
Ejm. Si se cambia la direccin de correo, es posible que
algn nodo mantenga la informacin desactualizada
Eventual consistency
La consistencia se da eventualmente. En el caso del
correo. En algn momento todos los nodos volvern a
tener la misma informacin.
Replication
Replication
Taxonoma NoSQL
Clave
valor
Taxonoma
NoSQL
Documentos
Grafos
Registros
repartidos entre
muchos nodos
Coleccin
de pares
clave/valor
Difcil de mantener
clave nica cuando
aumentan los datos
Cada clave
es nica
Ejemplo base de
datos NOSQL
Fuente. http://www.sitepoint.com/using-a-graphdatabase-with-ruby-part-i-introduction/
Sql RELACIONAL
Tomado de [2]
Mongo DB
https://www.youtube.com/wat
ch?v=CvIr-2lMLsk
Qu es MongoDB?
Fuente: http://db-engines.com/en/ranking
Descargar MongoDB
http://www.mongodb.org/
http://www.mongodb.org/downloads
http://www.mongodb.org/downloads
Instalacin
1. Descargar, descomprimir, e instalar.
Mongo DB requiere una carpeta Data
para almacenar los datos
Directorio por defecto de los datos
C:\data\db
2. Iniciar el proceso
Instalacin
3. Abrir mongo.exe
Mongo corre por defecto en el puerto
Probar en
27017
consola
Representacin
Binaria de JSON
Utilidades de MongoDB
mongo
mongostat
Estadsticas de una
instancia de Mongo DB en
ejecucin
mongo
Facilita importar/exportar
import/mongo
datos
export
mongodump/ Exportar y restaurar en
mongorestore binario la base de datos
Fuente: http://docs.mongodb.org/manual/core/crudintroduction/
http://www.tutorialspoint.com/mongodb/mongodb_quick_g
uide.htm
Fuente: http://docs.mongodb.org/manual/core/crud-introduction/
Qu selectores existen?
Selector
Selector base
base
{
{ field:
field: value}
value}
{name:
{name: pepe}
pepe}
Selector
Selector filtro
filtro
{field:
{field:
{filtro:valor}}
{filtro:valor}}
Filtros:
Filtros: $gt,
$gt,
$gte,$lt,
$gte,$lt,
$lt3,$ne
$lt3,$ne
$exists:
$exists: se
se
encuentra
encuentra el
el
campo
campo
{name
{name ::
{$exists:
{$exists:
true
true }}
}}
$in:
$in: valores
valores
para hacer
para hacer
match.
match. Arreglo
Arreglo
{name:
{name: {$in:
{$in:
[nomUno,
[nomUno,
nomDos]
nomDos] }}
}}
$or
$or
{name:
{name: {$or:
{$or:
{filro1}, {filtro2
{filro1}, {filtro2
}}
}}
Buscar
Buscar por
por id
id
{_id:
{_id:
ObjectId(id)}
ObjectId(id)}
Otros filtros
Otros filtros
Object_id
Object_id
{name: {$ne:
{name: {$ne:
pepe}}
pepe}}
Tutorial interactivo
Qu incluye?
Consultas
Insercin
Condi-cional
$exist
Id de los
documentos
http://mongly.openmymind.net/tutorial/index
Eliminacin
1: Ascendente
-1: Descendente
Fuente: http://docs.mongodb.org/manual/core/crudintroduction/
Qu
Qu retornan
retornan las
las consultas?
consultas? Un
Un
'm'},
},false,
db.unicorns.remove()
Ejecucin
programa
Insertar un documento
Borrar documentos
Otras funciones
findOne(), save(), limit(), skip(), sort()
MongoLab
Ahora
mlab
Qu es MLab?
Referencias
[1] Enterprise NOSQL for dummies.
Charlie
Brooks.
2014.
MarkLogic
Special Edition.
[2] Neo4j web site http://neo4j.com/
[3] MongoDB web site
https://www.mongodb.org/
[4] MongoLab. https://mongolab.com
[5] http://nosql-database.org/