MongoDB: Conceptos basicos por @karlseguin

mongoDB Si estan empezando con MongoDB este estos conceptos seran de mucha utilidad para ti.

Comenzamos nuestro viaje conociendo la mecánica básica de trabajar con MongoDB. Obviamente este es el núcleo para entender MongoDB, pero también nos ayuda a responder dudas técnicas acerca de MongoDB.

Para comenzar, hay seis simples conceptos que necesitamos entender.

  • MongoDB tiene el mismo concepto de ‘base de datos’ con el que probablemente estés familiarizado (o un schema para los amigos de Oracle). En una instancia de MongoDB puedes tener cero o mas bases de datos, cada una actuando como un contenedor de alto nivel para todo lo demás.
  • Una base de datos puede tener cero o mas ‘colecciones’. Una colección comparte lo suficiente con lo que es tradicionalmente una tabla por lo que puedes pensar en ellas como la misma cosa.
  • Las colecciones están hechas de cero o mas ‘documentos’. De nuevo, un documento puede ser visto como una ‘fila’.
  • Un documento esta compuesto de uno o mas ‘campos’, probablemente puedas adivinar que son las ‘columnas’.
  • ‘Indices’ en MongoDB funcionan muy parecido a sus equivalentes en RDBMS.
  • ‘Cursores’ son un concepto diferente de los otros 5 pero son tan importantes, y comúnmente pasados por alto, que pienso valdría la pena crear un tema de discusión para ellos. Lo importante a entender sobre los cursores es que cuando le pides datos a MongoDB, mongo retorna un cursor, con el que podemos hacer algunas cosas, como contar o saltar algún dato, sin descargarlos de hecho.

Para resumir

MongoDB esta hecho de bases de datos que contienen colecciones. Una coleccion esta hecha de documentos. Cada documento esta compuesto de campos. Las colecciones pueden ser indexadas, lo cual mejora la búsqueda y ordenamiento. Finalmente, cuando obtenemos datos de MongoDB lo hacemos a través de un cursor cuya ejecución es retrasada hasta que sea necesario.

Te preguntaras, porque usar una nueva terminología (<b>colecciones</b> vs tablas, <b> documentos</b> vs filas y campos vs colum-
nas). Es solo para hacer las cosas mas complicadas? La verdad es que mientras estos conceptos son similares a sus contrapartes en base de datos relacionales, no son idénticos. La diferencia principal viene del hecho de que las bases de datos relacionales definen columnas a nivel de la tabla mientras que bases de datos orientadas a documentos definen sus campos a nivel de documento. Eso es, cada documento dentro de una coleccion puede tener su propio y único set de campos. Por lo tanto una coleccion es un contenedor silencioso en comparación a una tabla, mientras que un documento tiene mucha mas información que una fila.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s