Fundamentos de MongoDB

1

Uso de MongoDB: Consultas y Almacenamiento en NoSQL

2

Bases de Datos NoSQL: MongoDB y Tipos de Escalamiento

3

Documentos y colecciones en bases de datos documentales

4

Creación y gestión de bases de datos NoSQL con MongoDB y Atlas

5

Uso de Mongo Compass para Conectar y Consultar Bases de Datos

6

Consultas de MongoDB en Visual Studio Code con MongoDB for VS Code

7

Instalación de Docker en Windows, macOS y Ubuntu

8

Correr MongoDB en Docker: Configuración y Ejecución Local

9

Conexión a MongoDB usando Mongo SH y Docker

10

Diferencias entre JSON y BSON en MongoDB

CRUD

11

Operaciones CRUD e inserción de documentos en MongoDB

12

Operaciones CRUD en MongoDB: Insertar Documentos en Mongo Atlas

13

Actualización de Documentos en MongoDB con Operadores Básicos

14

Actualización en Masa de Documentos en MongoDB con UpdateMany

15

Actualización y manejo de arrays en MongoDB

16

Gestión de datos de sensores IoT en MongoDB: Insert y Update eficientes

17

Eliminar documentos en MongoDB: métodos y prácticas

Operadores

18

Consultas con Operadores de Comparación en MongoDB

19

Operadores de Comparación en MongoDB: Mayor, Menor e Igualdad

20

Operadores avanzados en MongoDB: consultas y actualizaciones eficientes

21

Búsquedas Avanzadas con Expresiones Regulares en MongoDB

22

Selección de Campos en Consultas MongoDB con Projections

23

Consultas Avanzadas en Arrays con MongoDB

24

Operadores Lógicos en MongoDB: Uso de AND, OR y NOR

25

Consultas avanzadas con el operador expresivo en MongoDB

26

Consultas Avanzadas en Arrays y Subdocumentos en MongoDB

Herramientas comunes al trabajar con MongoDB

27

Análisis de Datos con MongoDB Aggregation Framework

28

Ordenar y Limitar Consultas en MongoDB para Paginación

29

Características y usos avanzados de Mongo Atlas

30

MongoDB: Dominio de CRUD y Consultas Avanzadas

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Diferencias entre JSON y BSON en MongoDB

10/30
Recursos

¿Cuáles son las diferencias entre JSON y BSON?

En el mundo del almacenamiento de datos, elegir el formato adecuado es esencial para optimizar rendimiento y compatibilidad. JSON y BSON son dos formatos ampliamente discutidos en esta área. Entender sus diferencias no solo te ayudará a elegir cuál es mejor para tus necesidades, sino también a comprender cómo MongoDB maneja la información internamente.

¿Qué ventajas ofrece el uso de JSON?

JSON, siglas de "JavaScript Object Notation," es un formato de texto legible para humanos y altamente utilizado. Aquí algunas de sus ventajas más notables:

  • Fácil de leer y escribir: Gracias a su sintaxis basada en clave-valor, es comprensible para cualquier persona con conocimientos de programación.
  • Ampliamente adoptado: Su uso se extiende a múltiples aplicaciones y lenguajes de programación.
  • Compatible con estructuras complejas: Permite almacenar subdocumentos y arrays.

A pesar de sus ventajas, JSON tiene limitaciones. Estar basado en texto implica un mayor consumo de espacio y un set limitado de tipos de datos, como números, strings, booleanos, arrays y subdocumentos.

¿Por qué MongoDB usa BSON en lugar de JSON?

MongoDB utiliza BSON debido a sus ventajas en términos de rendimiento y eficiencia:

  • Representación binaria: Al ser un formato binario, BSON consume menos espacio que JSON, lo cual se traduce en un mejor rendimiento.
  • Mayor variedad de tipos de datos: A diferencia de JSON, BSON admite tipos como fechas, binarios, y una amplia gama de números (enteros, flotantes, BigInts).

No todo es positivo en BSON; al ser un formato más complejo, leerlo sin la intervención de una máquina es complicado, lo que lo hace ideal principalmente para el procesamiento automatizado en lugar de la lectura humana.

¿Qué tipos de datos adicionales proporciona BSON?

Una de las grandes ventajas de BSON sobre JSON es su capacidad para almacenar diversos tipos de datos:

  • Números variados: Incluye enteros de 4 y 8 bytes, dobles y decimales.
  • ObjectID: Un identificador único que MongoDB asigna automáticamente.
  • Fechas y binarios: Permitir el almacenamiento de datos de fecha y binarios directamente.
  • Tipos adicionales: Como MaxKey, MinKey, nulos, un tipo Date, y hasta valores no definidos (undefined).

Estos tipos adicionales permiten a BSON ofrecer flexibilidad y capacidad de almacenamiento que JSON no puede proporcionar.

¿Cómo MongoDB maneja JSON y BSON internamente?

En MongoDB, aunque los usuarios interactúan con datos en formato JSON, el sistema internamente los convierte y almacena en BSON. Esto equilibra la necesidad de legibilidad por parte del desarrollador y las demandas de rendimiento del sistema.

Cuando trabajas con MongoDB, es fundamental entender que, aunque ves JSON, los optimizations internas con BSON aseguran que los datos se manejen de manera eficiente detrás de escena. Con este conocimiento, puedes maximizar las capacidades de MongoDB al trabajar con grandes volúmenes de datos.

Reflexiones finales y ruta a seguir

Teniendo claro cómo MongoDB maneja internamente sus datos y las diferencias entre JSON y BSON, los desarrolladores pueden tomar decisiones más informadas al estructurar y optimizar sus bases de datos. Continúa aprendiendo y explorando las capacidades de MongoDB para sacar el máximo provecho de esta potente herramienta de almacenamiento. ¡No dejes de mejorar y optimizar el rendimiento de tus aplicaciones!

Aportes 8

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

MongoDB soporta muchos tipos de datos. Algunos de ellos son:

  • String: este es el tipo de datos más utilizado para almacenar los datos. La cadena en MongoDB debe ser válida para UTF-8.
  • Integer: este tipo se utiliza para almacenar un valor numérico. El número entero puede ser de 32 o 64 bits, dependiendo de su servidor.
  • Boolean: este tipo se utiliza para almacenar un valor booleano (verdadero / falso).
  • Double: este tipo se utiliza para almacenar valores de punto flotante.
  • Min / Max: este tipo se usa para comparar un valor con los elementos BSON más bajos y más altos.
  • Arrays: este tipo se usa para almacenar arrays o listas o múltiples valores en una clave.
  • Timestamp: Marca de hora. Esto puede ser útil para grabar cuando un documento ha sido modificado o agregado.
  • Object: este tipo de datos se utiliza para documentos incrustados.
  • Null: este tipo se utiliza para almacenar un valor nulo.
  • Symbol: este tipo de datos se utiliza de forma idéntica a una cadena; sin embargo, generalmente se reserva para idiomas que usan un tipo de símbolo específico.
  • Date: este tipo de datos se utiliza para almacenar la fecha u hora actual en formato de hora UNIX. Puede especificar su propia fecha y hora creando el objeto de Fecha y día, mes, año que pasa.
  • ObjectId: este tipo de datos se utiliza para almacenar la ID del documento.
  • Binary: este tipo de datos se utiliza para almacenar datos binarios.
  • Code: este tipo de datos se utiliza para almacenar el código JavaScript en el documento.
  • Regular Expression: este tipo de datos se utiliza para almacenar expresiones regulares.

Ojo: En las ventajas de BSON, dice “No Consume Espacio”, eso es imposible, puede consumir menos, pero no ninguno.

JSON

Ventajas de JSON

  • Amigable.
  • Se puede leer.
  • Es un formato muy usado
    .

Desventajas de JSON

  • Basado en texto.
  • Consume mucho espacio.
  • Es limitado: string, boolean,
    number, arrays.

BSON

Ventajas de BSON

  • Representación binaria de JSON.
  • No consume espacio.
  • Alto rendimiento.
  • Tipos de datos: +, date, raw binary,
    integer, long, float
    .

Desventajas de BSON

  • No es estándar.
  • Es un formato para la máquina.

Json vs Bson

  • Ventajas JSON = Amigable (Fácil organizar la información ), Fácil de leer, Formato muy usado.

  • Desventajas: Basado en texto por ende consume mucho espacio y es limitado a: string, bolean, number, array, subdocumentos(sub-objetos).

  • Ventajas BSON = Representación binaria del JSON no consume tanto espacio, alto rendimiento y más tipos de datos: +, date, raw binary, integer, long, float, objectId, undefined, …

  • Desventajas = No es estándar, formato para maquina.

Nota = nosotros siempre lo vemos como JSON pero Mongo los guarda como BSON

Aqui esta la documentacion oficial de Mongo:

Wow eso si nunca lo había visto, van clases muy buenas, con muy buena información, de aquí me voy a ir a docker

Es muy difícil de leer

**JSON vs BSON** Ventajas de JSON: * Amigable * Fácil de leer * Muy usado Desventajas de JSON: * Basado en texto * Consume mucho espacio * Limitado a: string, boolean, number, arrays Ventajas de BSON * Representación binaria de JSON * Consume poco espacio * Alto rendimiento * Tipos de datos: string, boolean, number, arrays, date, raw binary, integer, long, float Desventajas de BSON * No es estándar * Formato para máquina ![]()