Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

Bases de datos, Colecciones y Documentos en MongoDB

9/26
Recursos

Las Bases de Datos son los contenedores físicos para nuestras colecciones. Cada base de datos tiene un archivo propio en el sistema de archivos de nuestra computadora o servidor y un Cluster puede tener múltiples bases de datos.

Las Colecciones son agrupaciones de documentos. Son equivalentes a las tablas en bases de datos relacionales pero NO nos imponen un esquema o estructura rígida para guardar información.

Los Documentos son registros dentro de las colecciones. Son la unidad básica de MongoDB y son análogos a los objetos JSON pero en realidad son BSON.

Aportes 28

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Base de datos:

  • Contenedor físico de colecciones.
  • Cada base de datos tiene su archivo propio en el sistema de archivos.
  • Un cluster puede tener múltiples bases de datos.

Colecciones:

  • Agrupación de documentos.
  • Equivalente a una tabla en las bases de datos relacionales.
  • No impone un esquema.

Documentos:

  • Un registro dentro de una colección.
  • Es análogo a un objeto JSON (BSON).
  • La unidad básica dentro de MongoDB.

BASES DE DATOS

  • Es un contenedor físico de colecciones

  • cuando mongo guarda una base de datos crea un archivo para cada una de ellas

  • podemos tener varias DB en un cluster

COLECCIONES

  • Agrupación de documentos

  • Equivalente a una tabla en las bases de datos relacionales

  • no impone un esquema
    esquema: una estructura que debemos seguir para poder guardar un registro

DOCUMENTOS

  • Un registro dentro de una colección

  • Es análogo a un objeto json

  • La unidad básica dentro de MongoDB

BSON significa Binary JSON y es una representación binaria de estructuras de datos y mapas.

BSON está diseñado para ser eficiente en el espacio, pero en algunos casos no es mucho más eficiente que JSON. En algunos casos, BSON usa incluso más espacio que JSON. La razón de esto es otro de los objetivos de diseño de BSON: la capacidad de desplazamiento. BSON agrega información “adicional” a los documentos, como la longitud de cadenas y subobjetos. Esto hace que el recorrido sea más rápido.

BSON también está diseñado para ser rápido de codificar y decodificar. Por ejemplo, los enteros se almacenan como enteros de 32 (o 64) bits, por lo que no necesitan ser analizados desde y hacia el texto. Esto utiliza más espacio que JSON para los enteros pequeños, pero es mucho más rápido de analizar.

Además de la compacidad, BSON agrega tipos de datos adicionales no disponibles en JSON, especialmente los tipos de datos BinData y Date.

  • Bases de datos: son contenedores físicos para almacenar nuestras colecciones.
  • Colecciones: son agrupaciones de documentos.
  • Documentos: son registros dentro de las colecciones.

Me gusta la forma en que podemos crear documentos con Arrays

Base de datos.
Es un contenedor físico para nuestras colecciones
Cada BD tienes sus archivos de collecciones
Un cluster puede tener multiples base de datos

Colecciones
Agrupación de documentos.
Equivalente a una tabla en las bases de datos relacionales.
No impone un esquema.
Documentos:
Un registro dentro de una colección.
Es análogo a un objeto JSON (BSON) (BSON es un guardado binario de un json).

Bases de datos::🗄🗄
* Contenedor fisico de colecciones.
* Un cluster puede tener multiples bds.

Colecciones::
* Agrupación de documentos.
* Es una tabla en bd relacionales.
* No impone un esquema.
  => Estructura o esqueleto de un docuemnto,
  => en mongo podemos cambiar esa Estructura
  => en cualquir momento.

Documentos::
* Un registro dentro de una colección.
* Se guardan en formato BSON.
  => Formato analogo del json, muy similar.
  => soporta otros tipos de datos como fechas,
  => es la codificación binaria de Json.
* Unidad básica dentro de Mongodb.

Mongo DB al ser una base de datos no relacional los elementos que usa para almacenar los datos difieren un poco de las bases de datos relacionales.
Una base de datos es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso.
Una colección es como una tabla en BD relacionales. La tabla almacena registros (filas) mientras que las colecciones almacenan documentos. Las colecciones son almacenados dentro de una BD y dividen la información en categorías o colecciones como su nombre lo dice. Un ejemplo de estas colecciones de un e-commerce puede ser:

usuarios
productos
categorías
ventas

Es aquí donde comienzan las diferencias importantes entre una base de datos SQL y una NoSQL . El concepto de fila y de documentos son bastante diferentes . Una fila está compuesta de columnas y siempre son las mismas para todas ellas . En cambio un documento está compuesto por claves y valores (key,value) y cada documento puede tener variaciones importantes con el anterior dentro de una colección.

{
nombre:”eugenio”,
cargo:”ventas”,
permisos:[“ventas”,”sup-ventas”]
},
{
nombre:”eugenio”,
cargo:”ventas”,
permisos:[“ventas”,”sup-ventas”],
edad:30
}

Muy buena explicacion

Pregunta de examen:
¿Cuál es la unidad básica dentro de MongoDB?

Excelente Clase!

Entonces los documentos son el equivalente a las filas así como las colecciones son equivalentes a las tablas en bases de datos SQL-based, genial.

Base de datos
- Contenedor fisco de colecciones
- Se guarda en un archivo
- Cluster puede tener multiples db

Colecciones
- Agrupacion de documentos
- Equivalente a una tabla en una base de datos relacional
- No impone esquema

Documentos
- Un registro dentro de una colección
- Equivalente a una columna en una relacional
- Objeto BSON
- Unidad basica de MongoDB

muchas gracias por la explicacion, es muy facil de entender a albert

Entendido

Ya me quedo mucho mas claro que es aqui cada cosa con respecto a las bases de datos relacionales.
Muy buena esta clase!

Muy buena forma de explicar

Genial!

Tengo un inconveniente con el driver para c#, tengo Visual Studio 2019
y la pagina me dice que la conecion se realiza asi
var mongoUrl = new MongoUrl(“mongodb+srv://User:<Password>@pruebachiAAA-verhd.mongodb.net”);
_client = new MongoClient(mongoUrl);
var db = _client.GetDatabase(“myfirstdb”);
var collection = db.GetCollection<Student>(“student”);
Student student = new Student(“Gino”, “Grimaldos”);
collection.InsertOne(student);

al ejecutarla tengo

MongoDB.Driver.MongoAuthenticationException: ‘Unable to authenticate using sasl protocol mechanism SCRAM-SHA-1.’

Como puedo arreglar ello y que la conexion se mantenga

De antemano gracias profe.

  • Base de datos: contenedor donde se almacenaran colecciones.
  • Colecciones: no imponen esquema y son equivalente a una tabla en una db relacional pero estas almacenan documentos.
  • Documentos: son registros de una colección, estos pueden contener diferente estructura y se guardan en formato BSON que permite almacenar más tipos de datos, la conversión de JSON a BSON la hace a través de drivers.

Está padre tener clusters para asi poder ir agregando las db mas fácilmente sin necesidad de todo un proceso.

Esto suena algo muy escalable y robusto para mantener aplicaciones por mucho tiempo!

BSON está diseñado para ser eficiente en el espacio, pero en algunos casos no es mucho más eficiente que JSON. En algunos casos, BSON usa incluso más espacio que JSON. La razón de esto es otro de los objetivos de diseño de BSON: la capacidad de desplazamiento. BSON agrega información “adicional” a los documentos, como la longitud de cadenas y subobjetos. Esto hace que el recorrido sea más rápido.
BSON también está diseñado para ser rápido de codificar y decodificar. Por ejemplo, los enteros se almacenan como enteros de 32 (o 64) bits, por lo que no necesitan ser analizados desde y hacia el texto. Esto utiliza más espacio que JSON para los enteros pequeños, pero es mucho más rápido de analizar.
Además de la compacidad, BSON agrega tipos de datos adicionales no disponibles en JSON, especialmente los tipos de datos BinData y Date.

Existe algun comando para verificar si los drivers estan correctamente instalados y funcionan bien?

Aspectos clave de MongoDB
_ Sobre los documentos:_

  • Mongo almacena información como documentos JSON.
  • Siendo los documentos mapeados como un objeto, permite a los desarrolladores aprender y usuarlos fácilmente.
  • Los documentos pueden estar expresado en jerarquías de relaciones y definirlos en estructuras de datos.

Sobre las colecciones:

  • Una colección es una agrupación de documentos.
  • Al ser flexibles las colecciones de MongoDB, por lo que podemos tener documentos con diferentes campos entre sí.