Bases de datos NoSQL en MongoDB
45 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

¿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.

    False

    ¿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 ______.

    <p>documento embebido</p> Signup and view all the answers

    Relaciona los campos de un documento con su descripción:

    <p>_id = Identificador único del documento nombre = Nombre de la persona contacto = Información de contacto numSocio = Número de socio asociado</p> Signup and view all the answers

    ¿Cuál de los siguientes es un campo de contacto en el documento de ejemplo?

    <p>correo</p> Signup and view all the answers

    El campo 'apellido2' puede contener nulos en un documento de ejemplo.

    <p>True</p> Signup and view all the answers

    ¿Qué dos opciones se pueden especificar al crear una colección en MongoDB?

    <p>size, autoIndexId</p> Signup and view all the answers

    ¿Cuál es una desventaja de crear demasiados índices en MongoDB?

    <p>Aumenta la sobrecarga en operaciones de escritura</p> Signup and view all the answers

    En MongoDB, una relación uno-a-uno siempre embebe ambos documentos.

    <p>False</p> Signup and view all the answers

    ¿Qué tipo de base de datos es MongoDB?

    <p>NoSQL orientada a documentos</p> Signup and view all the answers

    Menciona un tipo de relación que se puede definir en MongoDB.

    <p>Uno a uno, uno a varios embebido, uno a varios con referencias</p> Signup and view all the answers

    MongoDB permite que el esquema de los datos sea _____, permitiendo al desarrollador decidir cómo implementarlo.

    <p>flexible</p> Signup and view all the answers

    La primera versión estable de MongoDB fue lanzada en 2011.

    <p>False</p> Signup and view all the answers

    Asocia los tipos de relaciones de MongoDB con sus descripciones:

    <p>Uno a uno = Uno de los documentos se embebe dentro de otro. Uno a varios embebido = Los documentos se embeben dentro de otro en un array. Uno a varios con referencias = Utiliza referencias al _id de los documentos relacionados. Uno a varios = Puede ser embeido o con referencias.</p> Signup and view all the answers

    ¿Qué significa BSON en el contexto de MongoDB?

    <p>Binary JSON</p> Signup and view all the answers

    La última versión de MongoDB publicada hasta ahora es la ___ (número de versión).

    <p>8.0</p> Signup and view all the answers

    Relaciona cada versión de MongoDB con su año de lanzamiento:

    <p>0.9 = 2009 1.0 = 2009 1.4 = 2011 5.0 = Actualidad</p> Signup and view all the answers

    ¿Cuál de las siguientes aplicaciones puede utilizar MongoDB?

    <p>Gestionar contenido en un sitio web</p> Signup and view all the answers

    MongoDB está disponible solo bajo licencia comercial.

    <p>False</p> Signup and view all the answers

    ¿Cuáles son algunas de las áreas donde se utiliza MongoDB?

    <p>Internet de las cosas, visualización geospacial, gestión de contenidos, aplicaciones móviles, videojuegos.</p> Signup and view all the answers

    ¿Cuál de los siguientes tipos de índices se crea por defecto en MongoDB?

    <p>Default_id</p> Signup and view all the answers

    Un índice multikey se crea sobre cada elemento de un campo array.

    <p>True</p> Signup and view all the answers

    ¿Qué permiten garantizar los índices únicos en MongoDB?

    <p>Unicidad de los valores en el campo indexado.</p> Signup and view all the answers

    Un índice que caduca después de un tiempo se llama ______.

    <p>TTL</p> Signup and view all the answers

    ¿Qué método permite ver el plan llevado a cabo para una consulta en MongoDB?

    <p>explain()</p> Signup and view all the answers

    Relaciona los tipos de índices con sus características:

    <p>TTL = Índice que caduca después de un tiempo Unique = Garantiza unicidad Partial = Índice sobre documentos con valores concretos Sparse = Índice que solo se crea en documentos con el campo presente</p> Signup and view all the answers

    El optimizador de consultas de MongoDB no se reevalúa una vez establecido.

    <p>False</p> Signup and view all the answers

    ¿Cómo se crea un índice compuesto en MongoDB?

    <p>db.socios.createIndex({'campo1': 1, 'campo2': -1})</p> Signup and view all the answers

    ¿Qué estructura se utiliza para modelar la dirección de una persona como subdocumento?

    <p>Un subdocumento dentro del documento principal</p> Signup and view all the answers

    Las relaciones uno-a-varios solo pueden modelarse utilizando subdocumentos en documentos separados.

    <p>False</p> Signup and view all the answers

    ¿Qué problema surge al almacenar un array con todos los datos de los subdocumentos?

    <p>El array podría crecer en exceso, lo que haría que las búsquedas sean ineficientes.</p> Signup and view all the answers

    Los libros pueden almacenarse en un array como subdocumentos de los documentos de los _____ .

    <p>editores</p> Signup and view all the answers

    Relacione los siguientes conceptos con su descripción:

    <p>Subdocumento = Elemento embebido dentro de un documento principal Array = Estructura que puede contener múltiples elementos Relación uno-a-uno = Un documento tiene exactamente un subdocumento asociado Relación uno-a-varios = Un documento puede tener múltiples subdocumentos asociados</p> Signup and view all the answers

    ¿Cuál es una ventaja de modelar datos utilizando documentos embebidos?

    <p>Permite representar relaciones complejas sin hacer múltiples consultas</p> Signup and view all the answers

    Es recomendable almacenar en un array un número ilimitado de documentos.

    <p>False</p> Signup and view all the answers

    ¿Cómo se denomina la estructura que permite a un socio tener varias direcciones?

    <p>Campo array con subdocumentos</p> Signup and view all the answers

    ¿Cuál es la sintaxis correcta para crear una Hashed Shard Key?

    <p>sh.shardCollection(“db.socios”, {numSocio : “hashed”})</p> Signup and view all the answers

    Una Hashed Shard Key puede ser única.

    <p>False</p> Signup and view all the answers

    ¿Qué tipo de índice debe tener una colección que haga sharding?

    <p>Un índice que soporte la Shard Key.</p> Signup and view all the answers

    Para crear una Ranged Shard Key, se debe indicar el ______ de la misma.

    <p>ordenamiento</p> Signup and view all the answers

    ¿Cuál de las siguientes afirmaciones es cierta respecto a la Shard Key?

    <p>El campo _id puede ser el único en la colección.</p> Signup and view all the answers

    Relaciona el tipo de Shard Key con su característica:

    <p>Hashed = Distribuye documentos aleatoriamente Ranged = Distribuye documentos según rangos de valores Unicidad = Un índice único en la Shard Key Índice compuesto = Shard Key como primer campo</p> Signup and view all the answers

    ¿Cuál de las siguientes opciones se usa para crear un índice compuesto en una Shard Key?

    <p>sh.shardCollection(“db.socio”, {nombre : 1})</p> Signup and view all the answers

    Una colección vacía crea automáticamente el índice cuando se aplica la instrucción de sharding.

    <p>True</p> Signup and view all the answers

    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.

    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.

    Quiz Team

    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.

    More Like This

    Use Quizgecko on...
    Browser
    Browser