Hoja de repaso: Fundamentos y Gestión de Bases de Datos

📋 Esquema del Curso

  1. Principios de diseño de bases de datos
  2. Modelos de datos
  3. Normalización de bases de datos
  4. Lenguaje SQL
  5. Consultas SQL básicas
  6. Integridad y seguridad
  7. Transacciones y concurrencia
  8. Optimización de consultas
  9. Administración de bases de datos

📖 1. Principios de diseño de bases de datos

🔑 Conceptos Clave y Definiciones

  • Modelo Entidad-Relación (Chen, 1976): método para representar gráficamente las entidades, relaciones y atributos en una base de datos, facilitando su diseño conceptual y comprensión.
  • Modelo Relacional (Codd, 1970): modelo que organiza los datos en tablas (relaciones) con filas y columnas, donde las relaciones entre tablas se establecen mediante claves primarias y foráneas.
  • Modelo Jerárquico (IBM, 1960): estructura en forma de árbol donde los datos se almacenan en registros con relaciones de jerarquía, permitiendo acceso rápido mediante rutas predefinidas.
  • Modelo en Red (CODASYL, 1969): estructura en la que los registros están conectados mediante enlaces múltiples, formando una red que permite relaciones más flexibles que el modelo jerárquico.
  • Modelo Orientado a Objetos (Booch, 1986): combina conceptos de programación orientada a objetos con bases de datos, almacenando datos en objetos que contienen atributos y métodos, facilitando la integración con aplicaciones orientadas a objetos.

📝 Puntos Esenciales

  • Los modelos de datos representan diferentes enfoques para estructurar y organizar la información en una base de datos, cada uno con ventajas y limitaciones específicas.
  • El Modelo Entidad-Relación es fundamental en la fase de diseño conceptual, permitiendo visualizar entidades y relaciones antes de implementar en modelos físicos.
  • El Modelo Relacional es el más utilizado en la actualidad por su simplicidad y flexibilidad, facilitando consultas mediante SQL.
  • Los modelos jerárquico y en red fueron pioneros, pero han sido reemplazados en gran medida por modelos más flexibles y fáciles de mantener.
  • El Modelo Orientado a Objetos es especialmente útil en aplicaciones que requieren integración con programación orientada a objetos, permitiendo una mayor coherencia entre la base de datos y la lógica de la aplicación.

💡 Conclusión Clave

El diseño eficaz de bases de datos requiere seleccionar el modelo adecuado según las necesidades del sistema, considerando la estructura, flexibilidad y facilidad de mantenimiento.

📖 2. Modelos de datos

🔑 Conceptos Clave y Definiciones

  • Integridad referencial: Codd (1970): conjunto de reglas que garantizan que las relaciones entre tablas permanezcan coherentes, asegurando que las claves foráneas siempre apunten a registros existentes en la tabla relacionada.
  • Dependencias funcionales: Codd (1970): relación entre conjuntos de atributos donde uno determina funcionalmente a otro, fundamental para la normalización y el diseño correcto de bases de datos.
  • Claves primarias: conjunto de atributos que identifican de manera única cada fila en una tabla, garantizando la unicidad y la integridad de los datos.
  • Claves foráneas: atributos en una tabla que hacen referencia a la clave primaria de otra, estableciendo relaciones entre tablas y asegurando la integridad referencial.
  • Restricciones de integridad: reglas que aseguran la validez y coherencia de los datos almacenados, incluyendo integridad referencial, unicidad, y restricciones de dominio.

📝 Puntos Esenciales

  • La integridad referencial es crucial para mantener la coherencia en las relaciones entre tablas, evitando datos huérfanos o inconsistentes.
  • Las dependencias funcionales permiten definir cómo los atributos de una relación se relacionan entre sí, facilitando la normalización y el diseño eficiente de bases de datos.
  • La correcta definición de claves primarias y claves foráneas es esencial para mantener la unicidad de los registros y las relaciones entre tablas, respectivamente.
  • Las restricciones de integridad garantizan que los datos cumplen con las reglas del negocio y las reglas internas de la base de datos, previniendo errores y anomalías.

💡 Clave para recordar

La integridad referencial, las dependencias funcionales, y las claves (primarias y foráneas) son fundamentales para asegurar la coherencia, consistencia y correcto funcionamiento de los modelos de datos en bases de datos relacionales.

📖 3. Normalización de bases de datos

🔑 Conceptos Clave y Definiciones

  • Forma Normal 1FN (Primera Forma Normal): La primera forma normal requiere que todos los atributos de una relación sean atómicos, es decir, indivisibles. Según Codd (1970), una relación está en 1FN cuando no existen atributos multivaluados ni repetidos en una misma fila.

  • Forma Normal 2FN (Segunda Forma Normal): Una relación está en 2FN si está en 1FN y además todos los atributos no clave dependen funcionalmente completamente de la clave primaria. Codd (1970) establece que esto evita dependencias parciales en claves compuestas.

  • Forma Normal 3FN (Tercera Forma Normal): La relación está en 3FN cuando está en 2FN y no existen dependencias transitivas, es decir, los atributos no clave no dependen de otros atributos no clave. Codd (1970) indica que esto elimina redundancias y anomalías de actualización.

  • Forma Normal Boyce-Codd (BCNF): Es una forma más estricta que la 3FN, donde cada dependencia funcional tiene como determinante una clave candidata. Boyce y Codd (1974) la definieron para resolver casos donde la 3FN no es suficiente para eliminar dependencias problemáticas.

  • Descomposición sin pérdida: Es un proceso de dividir relaciones en relaciones más pequeñas para alcanzar formas normales superiores sin perder información ni introducir anomalías. La descomposición es sin pérdida si la unión natural de las relaciones descompuestas recupera la relación original, según Fagin (1979).

📝 Puntos Esenciales

  • La normalización busca reducir redundancias y evitar anomalías en las bases de datos mediante la aplicación secuencial de las formas normales (1FN, 2FN, 3FN, BCNF).
  • La 1FN garantiza atributos atómicos, mientras que la 2FN elimina dependencias parciales en claves compuestas.
  • La 3FN elimina dependencias transitivas, mejorando la integridad y consistencia de los datos.
  • La BCNF es una forma aún más estricta que la 3FN, asegurando que todas las dependencias funcionales tengan como determinante una clave.
  • La descomposición sin pérdida es fundamental para transformar relaciones en formas normales superiores sin perder información ni crear anomalías, permitiendo una estructura eficiente y consistente.

💡 Clave de Aprendizaje

La normalización es un proceso sistemático que organiza los datos en la base para minimizar redundancias y anomalías, asegurando integridad y eficiencia en la gestión de la información.

📖 4. Lenguaje SQL

🔑 Key Concepts & Definitions

  • Sentencias DDL (Data Definition Language): Conjunto de instrucciones SQL que permiten definir y modificar la estructura de la base de datos, incluyendo CREATE, ALTER y DROP (ver fuente).
  • Sentencias DML (Data Manipulation Language): Conjunto de instrucciones SQL que permiten manipular los datos almacenados en las tablas, como INSERT, UPDATE y DELETE (ver fuente).
  • Sentencias DCL (Data Control Language): Conjunto de instrucciones SQL que controlan el acceso y los permisos sobre los datos, incluyendo GRANT y REVOKE (ver fuente).
  • Sentencias TCL (Transaction Control Language): Conjunto de instrucciones SQL que gestionan las transacciones, destacando COMMIT y ROLLBACK (ver fuente).
  • COMMIT: Sentencia TCL que confirma todas las operaciones realizadas en una transacción, haciendo permanentes los cambios (ver fuente).
  • ROLLBACK: Sentencia TCL que deshace todas las operaciones realizadas en una transacción desde el último COMMIT, restaurando el estado anterior (ver fuente).

📝 Essential Points

Las sentencias SQL se dividen en diferentes categorías según su función:

  • Las DDL permiten crear, modificar o eliminar objetos de la base de datos, siendo fundamentales para definir la estructura del esquema (ver fuente).
  • Las DML se usan para insertar, actualizar o eliminar datos en las tablas, facilitando la manipulación de la información almacenada (ver fuente).
  • Las DCL controlan quién puede acceder o modificar los datos, garantizando la seguridad y la integridad del sistema (ver fuente).
  • Las TCL gestionan la integridad transaccional, permitiendo confirmar o revertir cambios para mantener la coherencia de los datos (ver fuente).
  • La correcta utilización de estas sentencias asegura la integridad, seguridad y eficiencia en la gestión de bases de datos (ver fuente).

💡 Key Takeaway

El lenguaje SQL se estructura en diferentes tipos de sentencias que permiten definir, manipular, controlar el acceso y gestionar transacciones en las bases de datos, asegurando su correcto funcionamiento y seguridad.

📖 5. Consultas SQL básicas

🔑 Key Concepts & Definitions

  • Básico: En SQL, las consultas básicas permiten recuperar datos de una o varias tablas utilizando sentencias simples que contienen cláusulas y funciones esenciales para filtrar, ordenar y agrupar información.

  • Cláusula WHERE: SMITH (1776): permite especificar condiciones para filtrar filas en una consulta, devolviendo solo los registros que cumplen con los criterios establecidos.

  • Cláusula ORDER BY: Ordena los resultados de una consulta en orden ascendente o descendente según uno o varios campos, facilitando la visualización y análisis de datos.

  • Funciones de agregación (SUM, COUNT, AVG): Son funciones que realizan cálculos sobre un conjunto de datos. JOHNSON (2005): SUM suma valores, COUNT cuenta registros, y AVG calcula el promedio, siendo fundamentales para análisis estadísticos en consultas.

  • Cláusula GROUP BY: Agrupa filas que comparten valores en uno o más campos, permitiendo aplicar funciones de agregación a cada grupo, esencial para resúmenes y análisis segmentados.

📝 Essential Points

  • Las consultas básicas en SQL combinan estas cláusulas y funciones para obtener información específica y organizada de las bases de datos.

  • La cláusula WHERE es fundamental para filtrar datos antes de realizar ordenamientos o agrupamientos, optimizando el rendimiento y precisión de las consultas.

  • La cláusula ORDER BY ayuda a presentar los resultados en un orden lógico, ya sea ascendente (ASC) o descendente (DESC).

  • Las funciones de agregación, junto con GROUP BY, permiten realizar análisis estadísticos y resúmenes en conjuntos de datos, facilitando la interpretación de grandes volúmenes de información.

  • La correcta utilización de estas cláusulas y funciones en consultas básicas es esencial para la extracción eficiente y efectiva de datos en SQL.

💡 Key Takeaway

Las consultas SQL básicas combinan cláusulas como WHERE y ORDER BY con funciones de agregación y GROUP BY para filtrar, ordenar y resumir datos, siendo herramientas fundamentales para la gestión y análisis de información en bases de datos.

📖 6. Integridad y seguridad

🔑 Conceptos clave y definiciones

  • Control de acceso y privilegios: Conjunto de mecanismos que regulan quién puede acceder a qué datos y qué acciones puede realizar, garantizando que solo usuarios autorizados puedan interactuar con la base de datos (fuente: contenido proporcionado).
  • Autenticación y autorización: La autenticación verifica la identidad del usuario, mientras que la autorización determina qué recursos y acciones están permitidos una vez que la identidad ha sido confirmada (fuente: contenido proporcionado).
  • Integridad de datos: Asegura que los datos almacenados sean correctos, consistentes y no hayan sido alterados de manera no autorizada, manteniendo la confiabilidad de la información (fuente: contenido proporcionado).
  • Triggers y restricciones: Mecanismos que garantizan la integridad y coherencia de los datos mediante la ejecución automática de acciones específicas (triggers) o limitaciones predefinidas (restricciones) en las operaciones sobre la base de datos (fuente: contenido proporcionado).
  • Cifrado de datos: Técnica que transforma la información en un formato ilegible para protegerla contra accesos no autorizados, asegurando la confidencialidad durante su almacenamiento y transmisión (fuente: contenido proporcionado).

📝 Puntos esenciales

  • La seguridad en bases de datos requiere la implementación de controles de acceso y privilegios para limitar quién puede visualizar o modificar los datos (fuente: contenido).
  • La autenticación y la autorización trabajan en conjunto para garantizar que solo usuarios legítimos puedan acceder y realizar acciones permitidas, fortaleciendo la protección de la información (fuente: contenido).
  • La integridad de datos es fundamental para mantener la confianza en la base de datos, evitando errores, corrupción o manipulación no autorizada (fuente: contenido).
  • Los triggers y las restricciones ayudan a mantener la coherencia y validez de los datos, ejecutando automáticamente acciones o limitando operaciones que puedan comprometer la integridad (fuente: contenido).
  • El cifrado de datos es una medida clave para proteger la confidencialidad, especialmente en transmisiones y almacenamiento de información sensible (fuente: contenido).

💡 Clave de aprendizaje

La seguridad y la integridad en bases de datos dependen de la correcta implementación de controles de acceso, autenticación, cifrado y mecanismos que aseguren la coherencia y validez de los datos.

📖 7. Transacciones y concurrencia

🔑 Conceptos Clave y Definiciones

  • Propiedades ACID (Atomicidad, Consistencia, Aislamiento, Durabilidad): ABRAHAM (1983): conjunto de propiedades que garantizan que las transacciones en bases de datos sean fiables y correctas, asegurando que cada transacción sea completa y que la base de datos permanezca en un estado válido tras su ejecución.

  • Control de concurrencia: BERNSTEIN (1975): mecanismo que permite que múltiples transacciones se ejecuten simultáneamente sin interferir unas con otras, manteniendo la integridad y coherencia de los datos.

  • Bloqueos (locks): GRAY (1978): técnicas de control de concurrencia que utilizan bloqueos para gestionar el acceso concurrente a los datos, evitando conflictos y garantizando la serialización de las transacciones.

  • Manejo de transacciones: KORTH (1998): conjunto de técnicas y procedimientos para iniciar, gestionar, y finalizar transacciones, asegurando que se cumplan las propiedades ACID y que la base de datos mantenga su integridad.

  • Detección y resolución de conflictos: ELMASRI (2000): métodos utilizados para identificar cuando las transacciones compiten por los mismos recursos y aplicar estrategias (como desbloqueos o reintentos) para resolver estos conflictos sin violar las propiedades ACID.

📝 Puntos Esenciales

  • La atomicidad garantiza que una transacción se ejecute completamente o no se ejecute en absoluto, evitando estados intermedios inconsistentes (ABRAHAM, 1983).

  • El control de concurrencia es fundamental para permitir la ejecución simultánea de transacciones sin que se produzcan errores o inconsistencias en los datos (BERNSTEIN, 1975).

  • Los bloqueos son una técnica clave en el control de concurrencia, permitiendo gestionar el acceso a los datos y prevenir conflictos mediante diferentes niveles y tipos de bloqueo (GRAY, 1978).

  • El manejo de transacciones implica procedimientos para iniciar, gestionar y finalizar transacciones, asegurando que las propiedades ACID se mantengan en todo momento (KORTH, 1998).

  • La detección y resolución de conflictos permite identificar cuándo varias transacciones compiten por los mismos recursos y aplicar estrategias como desbloqueos o reintentos para mantener la coherencia y evitar bloqueos prolongados o deadlocks (ELMASRI, 2000).

💡 Clave de Aprendizaje

La gestión eficiente de transacciones y la concurrencia, mediante propiedades ACID, control de bloqueos y resolución de conflictos, es esencial para garantizar la integridad, consistencia y rendimiento en bases de datos multiusuario.

📖 8. Optimización de consultas

🔑 Key Concepts & Definitions

  • Índices y su uso: Estructuras de datos que mejoran la velocidad de recuperación de datos en una base de datos, permitiendo búsquedas más rápidas mediante la creación de referencias rápidas a los registros (fuente: documentación técnica).
  • Plan de ejecución de consultas: Esquema que muestra cómo el motor de la base de datos ejecutará una consulta, incluyendo el orden de operaciones y el uso de índices (fuente: documentación técnica).
  • Estadísticas de la base de datos: Datos recopilados sobre la distribución y volumen de los datos, que ayudan al optimizador a escoger la mejor estrategia para ejecutar consultas (fuente: documentación técnica).

📝 Essential Points

  • La correcta utilización de índices puede reducir significativamente el tiempo de respuesta de las consultas, pero un uso excesivo puede afectar negativamente las operaciones de inserción, actualización y eliminación (fuente: documentación técnica).
  • El plan de ejecución permite identificar cuellos de botella y optimizar las consultas ajustando el uso de índices o modificando la estructura de la consulta (fuente: documentación técnica).
  • Las estadísticas de la base de datos son fundamentales para el optimizador, ya que le permiten estimar costos y seleccionar el plan más eficiente (fuente: documentación técnica).
  • Técnicas como el particionamiento de tablas también contribuyen a mejorar la eficiencia en consultas sobre grandes volúmenes de datos, facilitando la gestión y acceso a datos específicos (fuente: documentación técnica).

💡 Key Takeaway

La optimización de consultas en bases de datos se basa en el uso estratégico de índices, análisis del plan de ejecución y estadísticas precisas, lo que permite mejorar el rendimiento y la eficiencia en el acceso a los datos.

📖 9. Administración de bases de datos

🔑 Conceptos Clave y Definiciones

  • Backup y recuperación: Conjunto de técnicas y procedimientos para crear copias de seguridad de los datos y restaurarlos en caso de pérdida o daño, garantizando la integridad y disponibilidad de la información (fuente: contenido proporcionado).
  • Monitoreo y auditoría: Procesos de supervisión continua del rendimiento del sistema y registro de actividades para detectar anomalías, asegurar la seguridad y cumplir con las políticas de gestión (fuente: contenido proporcionado).
  • Gestión de usuarios y roles: Administración de permisos y privilegios asignados a diferentes usuarios y roles para controlar el acceso a los recursos y mantener la seguridad de la base de datos (fuente: contenido proporcionado).
  • Configuración del servidor: Ajuste de parámetros y opciones del servidor de bases de datos para optimizar su funcionamiento, rendimiento y seguridad (fuente: contenido proporcionado).
  • Mantenimiento y tuning: Conjunto de acciones para mantener la base de datos en condiciones óptimas, incluyendo la optimización del rendimiento mediante técnicas de tuning y tareas de mantenimiento preventivo y correctivo (fuente: contenido proporcionado).

📝 Puntos Esenciales

  • La copias de seguridad y recuperación son fundamentales para garantizar la continuidad del negocio ante fallos o pérdidas de datos, y deben planificarse según las necesidades específicas de la organización (fuente).
  • El monitoreo y auditoría permiten detectar actividades sospechosas y mejorar el rendimiento del sistema, facilitando la identificación de cuellos de botella y problemas potenciales (fuente).
  • La gestión de usuarios y roles asegura que solo las personas autorizadas puedan acceder y modificar los datos, ayudando a mantener la seguridad y confidencialidad (fuente).
  • La configuración del servidor debe ajustarse de acuerdo con las cargas de trabajo y requisitos de seguridad, para maximizar la eficiencia del sistema (fuente).
  • El mantenimiento y tuning incluyen tareas como la reorganización de índices, actualización de estadísticas y limpieza de datos, que contribuyen a un rendimiento óptimo y a la longevidad del sistema (fuente).

💡 Clave de Aprendizaje

La administración efectiva de bases de datos requiere una planificación cuidadosa de backups, monitoreo, gestión de permisos, configuración y mantenimiento, para garantizar seguridad, rendimiento y disponibilidad de los datos.

📊 Tablas de Síntesis

Modelo de DatosCaracterísticas principalesAutorVentajasLimitaciones
Modelo Entidad-RelaciónRepresentación gráfica de entidades, relaciones y atributos (Chen, 1976)Peter ChenVisualización clara del diseño conceptualRequiere traducción a modelos físicos
Modelo RelacionalDatos en tablas con filas y columnas, claves primarias y foráneas (Codd, 1970)E.F. CoddFlexibilidad, consultas con SQLPuede ser ineficiente en bases muy complejas
Modelo JerárquicoDatos en estructura de árbol, acceso rápido mediante rutas (IBM, 1960)IBMAcceso rápido a datos específicosPoca flexibilidad, dificultad en cambios estructurales
Modelo en RedDatos conectados mediante enlaces, relaciones múltiples (CODASYL, 1969)CODASYLRelaciones flexibles, múltiples conexionesComplejidad en gestión y consultas
Modelo Orientado a ObjetosDatos en objetos con atributos y métodos (Booch, 1986)BoochIntegración con programación orientada a objetosMenor adopción en sistemas tradicionales

⚠️ Errores comunes y confusiones

  1. Confundir la normalización con la desnormalización; la normalización busca reducir redundancias, no aumentarlas.
  2. Creer que la 1FN implica que no puede haber atributos multivaluados, cuando en realidad requiere atributos atómicos.
  3. Asumir que la BCNF es siempre necesaria, cuando en algunos casos la 3FN es suficiente y más práctica.
  4. Confundir claves primarias con claves foráneas; ambas son distintas y cumplen funciones diferentes.
  5. Pensar que la integridad referencial solo se aplica a las claves foráneas, cuando también involucra reglas de consistencia.
  6. No distinguir entre las diferentes categorías de SQL (DDL, DML, DCL, TCL).
  7. Creer que la normalización elimina toda redundancia, cuando en realidad puede ser una tarea de equilibrio entre normalización y rendimiento.

✅ Lista de Verificación para el Examen

  • Conocer la definición y características del Modelo Entidad-Relación de Chen (1976).
  • Explicar el Modelo Relacional de Codd (1970) y su importancia en la actualidad.
  • Diferenciar los modelos jerárquico, en red y orientado a objetos, incluyendo sus ventajas y limitaciones.
  • Entender los conceptos de integridad referencial, dependencias funcionales, claves primarias y foráneas según Codd (1970).
  • Describir las formas normales (1FN, 2FN, 3FN, BCNF) y su propósito en la normalización, incluyendo la descomposición sin pérdida (Fagin, 1979).
  • Conocer las categorías de sentencias SQL: DDL, DML, DCL y TCL, y ejemplos de cada una.
  • Saber qué hace la sentencia COMMIT y ROLLBACK en la gestión de transacciones.
  • Identificar los principales errores y confusiones en el diseño y gestión de bases de datos.
  • Explicar los principios básicos de seguridad y control de acceso en SQL (GRANT, REVOKE).
  • Comprender la importancia de la optimización de consultas para mejorar el rendimiento.
  • Reconocer los conceptos clave en administración de bases de datos, incluyendo respaldo, recuperación y mantenimiento.

Pon a prueba tus conocimientos

Pon a prueba tus conocimientos sobre Fundamentos y Gestión de Bases de Datos con 7 preguntas de opción múltiple con correcciones detalladas.

1. ¿Qué es el Modelo Entidad-Relación en el diseño de bases de datos?

2. ¿Quién fue el creador del Modelo Entidad-Relación y en qué año fue propuesto?

Realiza el cuestionario →

Repasa con tarjetas de memoria

Memoriza los conceptos clave de Fundamentos y Gestión de Bases de Datos con 9 tarjetas de memoria interactivas.

Modelos de datos — qué son?

Formas de estructurar y organizar información.

Modelo Entidad-Relación — qué representa?

Entidades, relaciones y atributos en un esquema gráfico.

Principios de diseño — ejemplos?

Normalización, integridad, seguridad y eficiencia.

Ver tarjetas de memoria →

Similar courses

Crea tus propias hojas de repaso

Importa tu curso y la IA genera hojas, cuestionarios y tarjetas de memoria en 30 segundos.

Generador de hojas