¿Qué
es mongoDB?
MongoDB es
una base de datos NOSQL orientada a documentos, desarrollada con código abierto.
¿Qué
significa que es “NoSQL”?
En el gráfico se aprecia la relación de una base de datos relacional (RDBMS) tanto la escalabilidad como la
velocidad se ven afectados ante un número elevado de elementos en la base de
datos MongoDB.
Desde hace 7 años que fue
creada ha venido implementando características para ser usada como una
base para la producción de uso y con muchas características. Una de las características principales
que es es un base datos con un modelo de datos diferente, ya que está “orientada
a documentos” con el esquema de un JSON como almacenamiento.
JSON
¿Qué ventajas tiene la
representación de nuestros datos utilizando un formato JSON?
JSON presenta un framework flexible
y conciso tanto para consultas,como para almacenar registros.
La sintaxis JSON es similar a la de
otras estructuras de datos utilizados en muchos lenguajes de programación y es
por tanto, familiar para los desarrolladores.
JSON es independiente del lenguaje de
programación que se utilice.
¿Que tipos de
datos puede almacenar un JSON?
6 tipos de datos:
- cadenas
- números
- textos boolenaos (verdadero/falso)
- nulos
- arrays
- objetos/documentos
Estructura:
{
"id" : 5010,
"ciudad" : "Ibarra",
"distrito" : "Ciudad Blanca"
"Zona" : "Zona 1 Norte"
}
¿Cómo se realiza una consulta en MongoDB?
Esta estructura de JSON presenta ventajas de rendimiento al hacer Joins y transacciones ya que es una operación más rápida y limpia que realizar la misma consulta en SQL.
En una base de datos NoSQL no hay consultas SQL de tipo SELECT * FROM WHERE.
Las consultas se hacen pasando objetos JSON como parámetro. Por ejemplo:
db.Clientes.find({Nombre:"David"});
La consulta anterior buscará todos los clientes cuyo nombre sea David.
MongoDB viene de serie con una consola desde la que podemos ejecutar los distintos comandos.MongoDB se está utilizando en aplicaciones web de alto rendimiento. PostGIS se utiliza principalmente en proyectos gubernamentales o empresariales.
MongoDB destaca en la gestión de datos
geoespaciales de gran volumen (big data). Es por lo tanto una solución a
un problema real, la gestión de grandes volúmenes de datos. Este sistema
responde también a las necesidades de escalabilidad horizontal que tienen cada
vez más empresas.
En cuanto a las funcionalidades
geométricas, MongoDB soporta algunas funcionalidades geométricas por lo que es
una buena opción para gestionar datos geográficos sencillos.
PostGIS tiene una capacidad de análisis espacial mucho más sofisticada, es un
autentico sistema GIS. Por otra parte MongoDB utiliza índices B-Tree y
PostGIS índices R-Tree. Un B-tree no puede ser utilizado de manera
eficiente para indexar polígonos.
Por último mencionar que es algo complicado aprender a gestionar estas bases de datos NoSQL.
No hay comentarios:
Publicar un comentario