Você está na página 1de 45

Data Base Selected Topics

EQUIPO 1:

Edgar Roa Castellanos


Marco Antonio Rubio Corts
Carlos Enrique Tule Uscanga
Tabla de contenido
Introduccin
Arquitectura NEXUS
Modelo de Datos
Soluciones, servicios y productos
Qu es MongoDB?

Dnde se puede utilizar


MongoDB?

Introduccin Cmo se instala MongoDB?

Cmo utilizar la consola de


MongoDB?

Cmo funciona MongoDB?


Qu es MongoDB?
MongoDB es un sistema de base de datos NoSQL orientado a documentos.

MongoDB utiliza una especificacin llamada BSON (Binary JSON) utilizando un


esquema dinmico.

Este sistema contiene las siguientes caractersticas.


DESARROLLO RPIDO CONJUNTO
E ITERATIVO INTEGRADO DE
FUNCIONES

FLEXIBLE DATA
MODEL COSTO TOTAL DE
PROPIEDAD

ESCALABILIDAD
Dnde se puede utilizar MongoDB?

Cualquier aplicacin que necesite almacenar datos semi-estructurados puede


usar MongoDB. Un ejemplo son las tpicas aplicaciones CRUD.

MongoDB es especialmente til en entornos que requieren escalabilidad.


Cmo se instala MongoDB?
La instalacin de una instancia del servidor es un juego de nios. Simplemente
tenemos que bajar los binarios para nuestro sistema operativo. Hay versiones
para Windows, Linux y MacOs. Una vez bajados podremos arrancar el servicio de
MongoDB con un solo comando.

mongod --dbpath data

Con este comando arrancamos el servicio mongod, que empezar a escuchar


peticiones por el puerto 27017. Es importante indicar el parmetro --dbpath, con la
ruta dnde se almacenarn los ficheros de nuestra base de datos.
Cmo utilizar la consola de MongoDB?

Escribimos en la consola el siguiente comando:

mongo localhost

Desde ese momento entraremos en la consola y podremos realizar consultas. Si


escribimos help tendremos un listado con los comandos ms comunes y su
descripcin.
Cmo funciona MongoDB?
MongoDB est escrito en C++, aunque las consultas se hacen pasando objetos
JSON como parmetro. Por ejemplo:

db.Clientes.find({Nombre:"Pedro"});

La consulta anterior buscar todos los clientes cuyo nombre sea Pedro.

MongoDB tiene una consola que est construida sobre JavaScript, por lo cual,
podemos utilizar muchas de las funciones propias del lenguaje. Tambin
podemos definir variables, funciones o utilizar bucles.
Arquitectura
NEXUS
Arquitectura NEXUS
Modelo de Arquitectura Multimodelo

Datos como documentos


datos
Arquitectura Multimodelo
MongoDB nicamente permite a los usuarios mezclar y combinar mltiples
motores de almacenamiento dentro de un solo despliegue.

Permite que los datos se muestren como simples pares de clave-valor,


estructuras similares a tablas, a travs de documentos

Los documentos se pueden consultar de muchas maneras: desde bsquedas


sencillas hasta sofisticadas lneas de procesamiento para anlisis de datos y
transformaciones, JOINs y recorridos de grficos.
Datos como documentos
MongoDB almacena los datos como documentos en una representacin binaria llamada BSON (Binary
JSON). Los documentos que comparten una estructura similar se organizan tpicamente como
colecciones. Se puede pensar que las colecciones son anlogas a una tabla en una base de datos
relacional: los documentos son similares a las filas y los campos son similares a las columnas.

Los documentos MongoDB tienden a tener todos los datos de un registro dado en un solo documento,
mientras que en una base de datos relacional la informacin para un registro dado suele estar distribuida
en muchas tablas.
Modelo de Controladores

consulta y Tipos de consulta

Visualizacin de datos
visualizacin
Indexacin
de datos
Controladores

MongoDB proporciona controladores nativos para todos los lenguajes de


programacin populares y marcos para hacer que el desarrollo sea natural. Los
controladores soportados incluyen Java, Javascript, .NET, Python, Perl, PHP, Scala
y otros, adems de 30 drivers desarrollados por la comunidad.
Tipos de consulta
Los desarrolladores pueden crear aplicaciones utilizando consultas complejas,
agregaciones e ndices secundarios que desbloquean el valor en datos
estructurados, semiestructurados y no estructurados.

Los tipos de consulta que hay en MongoDB:


Consultas
geoespaciales
Consultas Consultas tipo
clave-valor framework

Consultas que TIPOS DE


Consultas de
contienen
intervalos
CONSULTA bsqueda

JOINS y
recorridos Consultas
grficos MapReduce
Visualizacin de datos

Con MongoDB Connector para BI, incluido en MongoDB Enterprise Advanced, los
datos que se encuentran en aplicaciones modernas pueden analizarse fcilmente
en plataformas BI. Los analistas de negocio y los cientficos de datos pueden
analizar sin problemas los datos semi y no estructurados gestionados en
MongoDB junto con los datos tradicionales en sus bases de datos SQL utilizando
las mismas herramientas de BI desplegadas en millones de empresas.
Indexacin
Los ndices son un mecanismo crucial para optimizar el rendimiento y la
escalabilidad del sistema, a la vez que proporcionan un acceso flexible a sus
datos.

Puedes definir ndices compuestos, nicos, arreglos, parciales, TTL, geoespacial,


dispersos, hash y de texto para optimizar mltiples patrones de consulta, tipos de
datos y restricciones multi-estructuradas.

La interseccin de ndices permite que MongoDB utilice ms de un ndice para


optimizar una consulta ad-hoc en tiempo de ejecucin.
Tipos de datos
String: Cadenas de caracteres.
Integer: Nmeros enteros.
Double: Nmeros con decimales.
Boolean: Booleanos verdaderos o falsos.
Date: Fechas.
Timestamp: Estampillas de tiempo.
Null: Valor nulo.
Array: Arreglos de otros tipos de dato.
Object: Otros documentos embebidos.
ObjectID: Identificadores nicos creados por MongoDB al crear documentos sin especificar valores para el campo
_id.
Data Binaria: Punteros a archivos binarios.
Javascript: cdigo y funciones Javascript.
Patrones de modelado
Referenciar
Embeber
Busca imitar el comportamiento de las claves forneas para
relacionar datos que deben estar en colecciones diferentes. Este patrn se enfoca en incrustar documentos uno dentro
de otro con la finalidad de hacerlo parte del mismo registro
Se debe tomar en cuenta cuando se est en el proceso de y que la relacin sea directa. Si se tiene experiencia en
modelado que si se piensa hacer muchas actualizaciones bases de datos orientadas o objetos, este patrn seguira el
sobre datos de colecciones relacionadas (en especial mismo principio para la implementacin de un TDA (Tipo de
modificaciones atmicas), debemos tratar en lo posible de Dato Abstracto).
que aquellos datos que se vayan a modificar se encuentren
en el mismo documento.
Modelado de relaciones
Relaciones 1-1.
Supongamos el caso que tenemos una tabla persona y otra tabla documentos personales, donde una
persona tiene un solo juego de documentos personales y que un juego de documentos personales solo
puede pertenecer a una persona.
Modelado de relaciones
El modelado sera el siguiente: Para los casos de relaciones 1-a-1 se utiliza el patrn de
embeber un documento en otro, por lo que el documento
final quedara as:
Modelado de relaciones
Relaciones 1-*
Supongamos ahora el caso de una tabla persona y otra tabla direccin. Donde una persona puede poseer
varias direcciones.
Modelado de relaciones
El modelo en MongoDB sera el siguiente:
Modelado de relaciones
Ahora para transformar la relacin tenemos 2 opciones.
Podemos embeber las direcciones en el documento de la persona al establecer un arreglo de direcciones
embebidas:
Modelado de relaciones
O podemos dejarlo en documentos separados. Para esta segunda opcin tenemos 2 enfoques.
Uno sera agregar un campo de referencia a direccin en persona:
Debemos tratar de utilizar la
Modelado de relaciones opcin de embeber si los
arreglos no van a variar mucho
y el otro sera agregar un campo de referencia a persona en direccin:
ya que al realizar la bsqueda de
la persona obtienes de una vez
las direcciones, al trabajar con
referencias una aplicacin debe
manejar una lgica mltiples
bsquedas para resolver las
referencias, lo que sera el
equivalente a los joins.
Modelado de relaciones

Relaciones *-*

Varias personas pueden pertenecer a la misma direccin.


Modelado de relaciones
Para modelar este caso es muy similar al de relaciones uno a muchos con referencia por lo que se coloca
en ambos tipos de documento un arreglo de referencias al otro tipo. Se agrega una persona adicional
para demostrar mejor el punto:
Modelado de relaciones
Para el caso ms complejo de todos que es donde la tabla intermedia tiene campos adicionales.
Modelado de relaciones
Tomando como base el ejemplo anterior, agregaremos el campo adicional usando el patrn para
embeber de la siguiente manera:
Modelado de relaciones
Soluciones,
servicios y
productos
La mejor manera de utilizar
MongoDB en su centro de datos.
MongoDb Enterprise Advanced
Incluye MongoDB Enterprise Server y
un paquete finamente ajustado de
software avanzado, soporte,
certificaciones y otros servicios
diseados para dar respuesta a las
necesidades de cada negocio.
MongoDB Professional
Brinda acceso al equipo de soporte de
MongoDB 24/7, Cloud Manager, la
plataforma de monitoreo y administracin
ms completa para MongoDB y MongoDB
Compass, una GUI sofisticada que le
permite visualizar fcilmente su esquema y
explorar sus datos.
MongoDB Atlas
Es una base de datos como
servicio para MongoDB, del equipo
que construye la base de datos.
Dispone bajo demanda a travs de
un modelo de pago por uso,
MongoDB Atlas proporciona las
caractersticas de MongoDB sin
todo el trabajo pesado operativo,
lo que le permite centrarse en lo
que mejor sabe hacer.
Cloud Manager
Es una herramienta basada en la nube
que le ayuda a gestionar MongoDB en
su propia infraestructura. Con el
aprovisionamiento automatizado, el
monitoreo de grano fino y las copias de
seguridad continuas, se obtiene una
suite de administracin completa que
reduce la sobrecarga operacional, al
tiempo que se mantiene el control total
sobre sus bases de datos.
Servicios
Soporte tcnico
Supervisin
Automatizacin
Copias de seguridad
Integracin de software empresarial
Seguridad avanzada
Licencia comercial
Certificacin de plataformas
Formacin bajo demanda
Customer Success Program
Creacin de una vista nica de ms de 100 millones de clientes en 70 sistemas en
tan solo 90 das.
Creacin de nuevos negocios conectando sensores con anlisis en tiempo real.
Simplificacin, agilizacin y personalizacin de la planificacin de viajes para
millones de clientes.
Distribucin de un sistema de gestin de clientes (CMS) personalizado en 2
meses y de un nuevo sitio web mvil en 1 mes.
Gracias por su
atencin. :)

Você também pode gostar