Podcast
Questions and Answers
¿Cuál es el campo que identifica de manera única un documento en MongoDB?
¿Cuál es el campo que identifica de manera única un documento en MongoDB?
- apellido1
- _id (correct)
- nombre
- numSocio
Es necesario usar el método createCollection para crear una colección en MongoDB.
Es necesario usar el método createCollection para crear una colección en MongoDB.
False (B)
¿Qué comando se utiliza para crear una colección con opciones en MongoDB?
¿Qué comando se utiliza para crear una colección con opciones en MongoDB?
db.createCollection(name, options)
El documento que contiene campos embebidos se conoce como un ______.
El documento que contiene campos embebidos se conoce como un ______.
Relaciona los campos de un documento con su descripción:
Relaciona los campos de un documento con su descripción:
¿Cuál de los siguientes es un campo de contacto en el documento de ejemplo?
¿Cuál de los siguientes es un campo de contacto en el documento de ejemplo?
El campo 'apellido2' puede contener nulos en un documento de ejemplo.
El campo 'apellido2' puede contener nulos en un documento de ejemplo.
¿Qué dos opciones se pueden especificar al crear una colección en MongoDB?
¿Qué dos opciones se pueden especificar al crear una colección en MongoDB?
¿Cuál es una desventaja de crear demasiados índices en MongoDB?
¿Cuál es una desventaja de crear demasiados índices en MongoDB?
En MongoDB, una relación uno-a-uno siempre embebe ambos documentos.
En MongoDB, una relación uno-a-uno siempre embebe ambos documentos.
¿Qué tipo de base de datos es MongoDB?
¿Qué tipo de base de datos es MongoDB?
Menciona un tipo de relación que se puede definir en MongoDB.
Menciona un tipo de relación que se puede definir en MongoDB.
MongoDB permite que el esquema de los datos sea _____, permitiendo al desarrollador decidir cómo implementarlo.
MongoDB permite que el esquema de los datos sea _____, permitiendo al desarrollador decidir cómo implementarlo.
La primera versión estable de MongoDB fue lanzada en 2011.
La primera versión estable de MongoDB fue lanzada en 2011.
Asocia los tipos de relaciones de MongoDB con sus descripciones:
Asocia los tipos de relaciones de MongoDB con sus descripciones:
¿Qué significa BSON en el contexto de MongoDB?
¿Qué significa BSON en el contexto de MongoDB?
La última versión de MongoDB publicada hasta ahora es la ___ (número de versión).
La última versión de MongoDB publicada hasta ahora es la ___ (número de versión).
Relaciona cada versión de MongoDB con su año de lanzamiento:
Relaciona cada versión de MongoDB con su año de lanzamiento:
¿Cuál de las siguientes aplicaciones puede utilizar MongoDB?
¿Cuál de las siguientes aplicaciones puede utilizar MongoDB?
MongoDB está disponible solo bajo licencia comercial.
MongoDB está disponible solo bajo licencia comercial.
¿Cuáles son algunas de las áreas donde se utiliza MongoDB?
¿Cuáles son algunas de las áreas donde se utiliza MongoDB?
¿Cuál de los siguientes tipos de índices se crea por defecto en MongoDB?
¿Cuál de los siguientes tipos de índices se crea por defecto en MongoDB?
Un índice multikey se crea sobre cada elemento de un campo array.
Un índice multikey se crea sobre cada elemento de un campo array.
¿Qué permiten garantizar los índices únicos en MongoDB?
¿Qué permiten garantizar los índices únicos en MongoDB?
Un índice que caduca después de un tiempo se llama ______.
Un índice que caduca después de un tiempo se llama ______.
¿Qué método permite ver el plan llevado a cabo para una consulta en MongoDB?
¿Qué método permite ver el plan llevado a cabo para una consulta en MongoDB?
Relaciona los tipos de índices con sus características:
Relaciona los tipos de índices con sus características:
El optimizador de consultas de MongoDB no se reevalúa una vez establecido.
El optimizador de consultas de MongoDB no se reevalúa una vez establecido.
¿Cómo se crea un índice compuesto en MongoDB?
¿Cómo se crea un índice compuesto en MongoDB?
¿Qué estructura se utiliza para modelar la dirección de una persona como subdocumento?
¿Qué estructura se utiliza para modelar la dirección de una persona como subdocumento?
Las relaciones uno-a-varios solo pueden modelarse utilizando subdocumentos en documentos separados.
Las relaciones uno-a-varios solo pueden modelarse utilizando subdocumentos en documentos separados.
¿Qué problema surge al almacenar un array con todos los datos de los subdocumentos?
¿Qué problema surge al almacenar un array con todos los datos de los subdocumentos?
Los libros pueden almacenarse en un array como subdocumentos de los documentos de los _____ .
Los libros pueden almacenarse en un array como subdocumentos de los documentos de los _____ .
Relacione los siguientes conceptos con su descripción:
Relacione los siguientes conceptos con su descripción:
¿Cuál es una ventaja de modelar datos utilizando documentos embebidos?
¿Cuál es una ventaja de modelar datos utilizando documentos embebidos?
Es recomendable almacenar en un array un número ilimitado de documentos.
Es recomendable almacenar en un array un número ilimitado de documentos.
¿Cómo se denomina la estructura que permite a un socio tener varias direcciones?
¿Cómo se denomina la estructura que permite a un socio tener varias direcciones?
¿Cuál es la sintaxis correcta para crear una Hashed Shard Key?
¿Cuál es la sintaxis correcta para crear una Hashed Shard Key?
Una Hashed Shard Key puede ser única.
Una Hashed Shard Key puede ser única.
¿Qué tipo de índice debe tener una colección que haga sharding?
¿Qué tipo de índice debe tener una colección que haga sharding?
Para crear una Ranged Shard Key, se debe indicar el ______ de la misma.
Para crear una Ranged Shard Key, se debe indicar el ______ de la misma.
¿Cuál de las siguientes afirmaciones es cierta respecto a la Shard Key?
¿Cuál de las siguientes afirmaciones es cierta respecto a la Shard Key?
Relaciona el tipo de Shard Key con su característica:
Relaciona el tipo de Shard Key con su característica:
¿Cuál de las siguientes opciones se usa para crear un índice compuesto en una Shard Key?
¿Cuál de las siguientes opciones se usa para crear un índice compuesto en una Shard Key?
Una colección vacía crea automáticamente el índice cuando se aplica la instrucción de sharding.
Una colección vacía crea automáticamente el índice cuando se aplica la instrucción de sharding.
Flashcards
MongoDB
MongoDB
Un gestor de base de datos NoSQL orientada a documentos.
Base de Datos NoSQL
Base de Datos NoSQL
Base de datos que no sigue el modelo relacional.
Base de Datos Orientada a Documentos
Base de Datos Orientada a Documentos
La información se almacena en documentos, semejante a JSON.
Versión estable de MongoDB
Versión estable de MongoDB
Signup and view all the flashcards
BSON
BSON
Signup and view all the flashcards
Aplicaciones de MongoDB
Aplicaciones de MongoDB
Signup and view all the flashcards
Licencia AGPL
Licencia AGPL
Signup and view all the flashcards
Primera versión publicada
Primera versión publicada
Signup and view all the flashcards
Documento embebido
Documento embebido
Signup and view all the flashcards
Colección (MongoDB)
Colección (MongoDB)
Signup and view all the flashcards
Modelo de datos
Modelo de datos
Signup and view all the flashcards
Identificador del documento (_id)
Identificador del documento (_id)
Signup and view all the flashcards
Campo (MongoDB)
Campo (MongoDB)
Signup and view all the flashcards
db.createCollection()
db.createCollection()
Signup and view all the flashcards
Creación automática de colecciones
Creación automática de colecciones
Signup and view all the flashcards
Opciones de creación de colecciones
Opciones de creación de colecciones
Signup and view all the flashcards
Optimización de índices MongoDB
Optimización de índices MongoDB
Signup and view all the flashcards
Relaciones One-to-one (1 a 1) en MongoDB
Relaciones One-to-one (1 a 1) en MongoDB
Signup and view all the flashcards
Relación One-to-many embebido (1 a muchos) en MongoDB
Relación One-to-many embebido (1 a muchos) en MongoDB
Signup and view all the flashcards
Relacion One-to-many con referencias (1 a muchos) en MongoDB
Relacion One-to-many con referencias (1 a muchos) en MongoDB
Signup and view all the flashcards
Esquema flexible en MongoDB
Esquema flexible en MongoDB
Signup and view all the flashcards
Índices en MongoDB
Índices en MongoDB
Signup and view all the flashcards
Índice _id
Índice _id
Signup and view all the flashcards
Índice de un solo campo
Índice de un solo campo
Signup and view all the flashcards
Índice compuesto
Índice compuesto
Signup and view all the flashcards
Índice TTL
Índice TTL
Signup and view all the flashcards
Índice único
Índice único
Signup and view all the flashcards
Función explain()
Función explain()
Signup and view all the flashcards
Optimizador de consultas
Optimizador de consultas
Signup and view all the flashcards
¿Qué es la relación uno-a-varios?
¿Qué es la relación uno-a-varios?
Signup and view all the flashcards
¿Cómo se modela una relación uno-a-varios?
¿Cómo se modela una relación uno-a-varios?
Signup and view all the flashcards
Ejemplo de relación uno-a-varios
Ejemplo de relación uno-a-varios
Signup and view all the flashcards
¿Cuándo usar un array embebido?
¿Cuándo usar un array embebido?
Signup and view all the flashcards
¿Problema de almacenar arrays muy grandes?
¿Problema de almacenar arrays muy grandes?
Signup and view all the flashcards
¿Qué es un enfoque alternativo a los arrays grandes?
¿Qué es un enfoque alternativo a los arrays grandes?
Signup and view all the flashcards
¿Cuándo usar referencias?
¿Cuándo usar referencias?
Signup and view all the flashcards
Ejemplo de array grande
Ejemplo de array grande
Signup and view all the flashcards
Shard Key
Shard Key
Signup and view all the flashcards
Hashed Shard Key
Hashed Shard Key
Signup and view all the flashcards
Ranged Shard Key
Ranged Shard Key
Signup and view all the flashcards
sh.shardCollection()
sh.shardCollection()
Signup and view all the flashcards
Índice para Shard Key
Índice para Shard Key
Signup and view all the flashcards
Unicidad en la Shard Key
Unicidad en la Shard Key
Signup and view all the flashcards
Ventajas de usar Sharding
Ventajas de usar Sharding
Signup and view all the flashcards
Study Notes
MongoDB - NoSQL Database
- MongoDB is a document-oriented NoSQL database.
- It's derived from the English word "humongous" (enormous, extraordinarily long).
- First version released in March 2009, version 0.9.
- Open-source under AGPL license.
- First stable version released in August 2009, version 1.0
- In 2011, version 1.4, the first considered suitable for production and distribution
- Latest version released October 29, 2024, version 8.0
- Only versions 5.0 and later are currently maintained.
Uses of MongoDB
- Industrial IoT (Internet of Things), Bosch group.
- Real-time geospatial visualization of city elements (Boston city).
- Content management (Sourceforge).
- Mobile applications (e.g., Expedia).
- Video games (e.g., Go-FIFA).
- Event logging (e.g., Facebook for accessing ads).
- Popular users include Ebay, Expedia, Orange, Barclays, Adobe, and Telefónica.
MongoDB Architecture Concepts
- Mongod: Primary process (daemon) managing data access.
- Mongos: Routing service between the application and the database.
- Config Server: Stores metadata to locate data for required operations.
- Replica Set: Group of mongod processes that store identical copies of the data.
- Primary: Holds the main copies.
- Secondary: Holds backup copies of the Primary.
- Arbiter: Decides which Secondary becomes Primary if the Primary fails.
- Shard: Replica set that stores a portion of the database.
- Sharding is a method to distribute data across multiple machines.
Sharding
- Chunks: Data segments used to distribute documents across shards.
- Shard Key: Key used to determine chunk distribution.
- The key must be a field within the document, and indexable.
- In
range-based sharding
, chunks are created based on the value range of this key. - In
hash-based sharding
, chunks are created using a hash function based on the value of this key.
- In
MongoDB Replication
- Data Replication: Copies of the primary data are kept.
- Replicated Data: Each replica is managed by a separate mongod process.
- Primary: Primarily used for write operations; a primary server holds the original copy of the data.
- Secondary: Used primarily for read operations; secondary hosts mirrored copies.
- Replication: Data changes from the primary are copied to the secondaries with a log.
- Heartbeat: Periodic communication between nodes to ensure they are operational (every 2 seconds).
- Failover (Failure): When a primary server fails, secondary servers can quickly become a new primary server.
- Arbiters: Are present in the replica set, to resolve potential ties and select a new primary server to make the replacement.
- If an arbiter does not respond in ten seconds, it is considered to be failed.
Replica Set Data Considerations
- Priority 0: Secondary servers that cannot be promoted to primary.
- Hidden replica sets: Secondary servers invisible to application clients.
- Delayed replica Set: Data copies are replicated with a delay.
Data Configuration
- Read Configuration: Allows specifying how data is read from multiple servers, prioritizing the primary or preferring secondary servers based on availability.
- Write Configuration (Write Concerns): Specify how data writes are confirmed, defining whether confirmation is only needed in the journal, with the primary, or all secondaries.
Data Storage Strategy
- Snapshot: Keeps a memory copy of recently written/modified data.
- Checkpoint: Periodically saves snapshots to disk every 60 seconds or when 2GB of data is accumulated, creating a persistent copy.
- Journal: Stores transaction logs of snapshots to allow recovery from errors between checkpoints.
MongoDB Administration
- Backup Strategies: MongoDB Cloud Manager and Ops Manager support deployment operations, monitoring, backups, and scaling.
- Configuration & Maintenance: Parameters, security considerations, configuration of replication, and sharding for database analysis through dedicated software or tools
Data Modeling
- Collections: Collections are analogous to a table in relational databases.
- Documents: Documents within a collection can have different fields, similar to different rows.
- Fields (Key-Value Pairs): Each field in the document contains a key-value pair (field name and value)
- Data Types: Numerous data types support various modeling requirements (numeric, String, Date, Arrays, etc.).
Querying Types
- CRUD: Create, Read, Update, Delete.
- Find: Used for retrieving data, functioning similarly to a SELECT statement.
- Insert: Used for inserting new data, similar to INSERT in SQL.
- Update: Used for updating existing data, equivalent to an UPDATE command in SQL.
- Remove: Used for deleting documents from the database, analogous to a DELETE command in SQL.
- Operators: Special MongoDB operators used for querying and updating (e.g., comparison operators, logical operators, etc.) to manipulate records.
- The
$gt
operator is used for greater than, and$lt
is used for less than, values in the field specified.
Additional Considerations
- Indexes:
- TTL: Time-to-live indexes.
- Unique: Unique indexes.
explain
method: A tool to analyze how MongoDB executes queries.
Sharding Key Strategy
- Hashed Strategy:
- Ranged Strategy:
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Explora las características y la historia de MongoDB, una base de datos NoSQL orientada a documentos. Descubre sus usos en aplicaciones industriales, gestión de contenido y mucho más. Aprenderás sobre la arquitectura de MongoDB y sus versiones a lo largo del tiempo.