Esta publicación tiene 15 meses de antigüedad, te invitamos a buscar publicaciones más recientes relacionados a este tema aquí.

Hola chicos, en esta publicación hablaremos sobre MongoDB, espero que esta publicación les sea de utilidad.

 

En pocas palabras se dice que MongoDB es Documented Oriented Database. MongoDB es un documento BSON que se destaca para JSON(JavaScript Object Notation) es un estándar abierto desarrollado para el intercambio de datos legible por humanos. También podemos encontrar en el siguiente enlace las especificaciones de BSON. Desde que MongoDB guarda los datos como documentos BSON, este se trata cómo un Document Oriented Database.

En el siguiente ejemplo tenemos un JSON:

{
  "firstName":"Cristina",
  "secondName":"Elizabeth",
  "age":27,
  "phoneNumbers":[
    {fixedLine:"123456"},
    {mobile:"654321"}
  ],
  "residentialAddress":{
	lineOne:"?", 
	lineTwo:"?", 
	city:"?", 
	state:"?", 
	zip:"?", 
	country:"?"
  }
}

Cómo podemos ver un documento JSON siempre inicia y termina con una llave y contiene todo el contenido dentro de esas llaves, también múltiples campos y valores son separados por comas. El nombre del campo siempre inicia con un nombre tipo cadena y el valor puede ser un tipo cadena, número, fecha, array o también puede ser otro documento JSON. 

¿Porqué MondoBD se necesita?

Claro muchos de nosotros conocemos las bases de datos relacionales y claro, las bases de datos relacionales tienen bastantes características muy buenas. Utilizamos bases de datos relacionales para escalabilidad y gran flexibilidad.  

Hay dos formas en las cuales podemos escalar nuestros sistema; uno es escala hacia arriba(ó también conocida cómo escala vertical) y la segunda es la escala hacia afuera(ó también conocida cómo escala horizontal). Ahora bien la escala vertical un decir sería: ¿Necesitamos más capacidad de procesamiento? entonces necesitamos un equipo más grande con más núcleos y memoria. 

Ahora bien, por otro lado tenemos la escalabilidad tipo horizontal la cual se podría decir que: ¿Se necesita más capacidades de procesamiento? Entonces solo agregamos más servidores y multiplicar las capacidades de procesamiento. 

MongoDB nos permite escalabilidad horizontal fácilmente, y al mismo tiempo se ocupa de los problemas relacionados con la ampliación horizontal en gran medida. El resultado final es que es muy fácil de escalar MongoDB con el aumento de los datos en comparación con bases de datos relacionales.

Facilidad de desarrollo 

MongoDB no tiene el concepto de creación de esquema cómo lo tenemos en las bases de datos relacionales. El documento que vimos anteriormente puede tener una estructura arbitrariamente cuando lo guardamos en la base de datos. De hecho es más natural hacer uso de JSON en el desarrollo de aplicaciones en lugar de usar un mundo relacional. 

MongoDB todavía es atómica pero la atomicidad para las inserciones y actualizaciones se garantiza a nivel de documento y no a través de varios documentos. Por lo tanto, MongoDB no es una buena opción para escenarios donde se necesitan operaciones complejas, como en un aplicaciones bancarias OLTP. 

Instalacion MongoDB

Aquí el siguiente enlace para la descarga de MongoDB 

A continuación los conceptos de una base de datos relacional y MongoDB:

Conceptos Relacionales        Conceptos MongoDB
Database                                   Database
Table                                          Collection
Record                                       Document
Column                                      Field
Primary Key                               Primary Key
Index                                          Index

Fuente: Instant MongoDB by Amol Nayak

@telecristy.

¿Te gustó esta publicación? Márcala como favorita