En MongoDB, los documentos pueden contener una variedad de tipos de datos. Es fundamental entender estos tipos para modelar y manipular datos de manera efectiva. En esta sección, exploraremos los tipos de datos más comunes en MongoDB, cómo se representan y cómo se utilizan.

Tipos de Datos Comunes en MongoDB

  1. Cadenas de Texto (String)

Las cadenas de texto son uno de los tipos de datos más utilizados en MongoDB. Se utilizan para almacenar texto y se representan como valores de tipo String.

Ejemplo:

{
  "nombre": "Juan Pérez"
}

  1. Números Enteros (Integer)

MongoDB soporta números enteros de 32 bits y 64 bits. Se utilizan para almacenar valores numéricos sin decimales.

Ejemplo:

{
  "edad": 30
}

  1. Números de Punto Flotante (Double)

Los números de punto flotante se utilizan para almacenar valores numéricos con decimales.

Ejemplo:

{
  "altura": 1.75
}

  1. Booleanos (Boolean)

Los valores booleanos representan true o false.

Ejemplo:

{
  "esActivo": true
}

  1. Fechas (Date)

MongoDB utiliza el tipo de datos Date para almacenar fechas y horas. Las fechas se representan en el formato ISODate.

Ejemplo:

{
  "fechaNacimiento": ISODate("1990-05-15T00:00:00Z")
}

  1. Arreglos (Array)

Los arreglos son listas de valores que pueden contener cualquier tipo de dato, incluyendo otros arreglos.

Ejemplo:

{
  "hobbies": ["leer", "viajar", "cocinar"]
}

  1. Documentos Anidados (Embedded Documents)

Los documentos anidados son documentos dentro de otros documentos. Se utilizan para representar estructuras de datos complejas.

Ejemplo:

{
  "direccion": {
    "calle": "Calle Falsa 123",
    "ciudad": "Springfield",
    "pais": "USA"
  }
}

  1. ObjectId

El tipo ObjectId es un identificador único que MongoDB utiliza por defecto para la clave _id de cada documento.

Ejemplo:

{
  "_id": ObjectId("507f1f77bcf86cd799439011")
}

  1. Nulos (Null)

El tipo Null se utiliza para representar valores nulos o campos que no tienen valor.

Ejemplo:

{
  "segundoNombre": null
}

  1. Binarios (Binary Data)

El tipo Binary se utiliza para almacenar datos binarios, como imágenes o archivos.

Ejemplo:

{
  "imagenPerfil": BinData(0, "base64encodedstring")
}

  1. Mapas (Map)

Los mapas son estructuras de datos que almacenan pares clave-valor, similares a los documentos, pero con claves que pueden ser de cualquier tipo.

Ejemplo:

{
  "configuracion": {
    "tema": "oscuro",
    "notificaciones": true
  }
}

Ejercicio Práctico

Ejercicio 1: Crear un Documento con Varios Tipos de Datos

Instrucciones:

  1. Crea un documento que contenga al menos cinco de los tipos de datos mencionados anteriormente.
  2. Inserta el documento en una colección llamada usuarios.

Solución:

db.usuarios.insertOne({
  "nombre": "Ana Gómez",
  "edad": 28,
  "esActivo": true,
  "fechaRegistro": ISODate("2023-10-01T00:00:00Z"),
  "hobbies": ["fotografía", "escalar", "leer"],
  "direccion": {
    "calle": "Avenida Siempre Viva 742",
    "ciudad": "Springfield",
    "pais": "USA"
  },
  "imagenPerfil": BinData(0, "base64encodedstring")
});

Ejercicio 2: Leer y Comprender un Documento

Instrucciones:

  1. Lee el documento que acabas de insertar en la colección usuarios.
  2. Identifica y enumera los tipos de datos presentes en el documento.

Solución:

db.usuarios.findOne({ "nombre": "Ana Gómez" });

Tipos de Datos Identificados:

  • String para el campo nombre.
  • Integer para el campo edad.
  • Boolean para el campo esActivo.
  • Date para el campo fechaRegistro.
  • Array para el campo hobbies.
  • Embedded Document para el campo direccion.
  • Binary para el campo imagenPerfil.

Conclusión

En esta sección, hemos explorado los tipos de datos más comunes en MongoDB y cómo se utilizan en los documentos. Comprender estos tipos de datos es crucial para modelar y manipular datos de manera efectiva en MongoDB. En el próximo módulo, profundizaremos en la indexación y la agregación, dos características clave para optimizar el rendimiento y la eficiencia de las consultas en MongoDB.

© Copyright 2024. Todos los derechos reservados