MF0978_2: Gestión de Archivos
Las bases de datos son herramientas fundamentales para el almacenamiento, organización y recuperación eficiente de la información en entornos empresariales.
Una base de datos es un conjunto estructurado de datos que se organizan de forma que puedan ser fácilmente accedidos, gestionados y actualizados.
Las bases de datos modernas se diseñan para ofrecer:
Década | Avance |
---|---|
1960s | Primeras bases de datos jerárquicas y de red |
1970s | Modelo relacional (E.F. Codd) y SQL |
1980s | Bases de datos comerciales y sistemas de gestión |
1990s | Bases de datos orientadas a objetos |
2000s | Bases de datos NoSQL y Big Data |
2010s | Bases de datos en la nube y NewSQL |
Las bases de datos son esenciales en la gestión documental moderna porque:
Permite realizar consultas complejas combinando múltiples criterios, lo que sería imposible en archivos físicos.
Garantiza la consistencia mediante restricciones y validaciones automáticas que evitan errores humanos.
Múltiples usuarios pueden consultar y modificar información simultáneamente sin conflictos.
Facilita la generación de informes, estadísticas y visualizaciones para la toma de decisiones.
Permite modificar datos masivamente con operaciones automatizadas, reduciendo errores y tiempo.
Control de acceso granular, cifrado y auditoría de operaciones para proteger información sensible.
Para trabajar eficientemente con bases de datos es necesario comprender una serie de conceptos fundamentales que constituyen la base teórica de estos sistemas.
Software que permite crear, mantener y utilizar bases de datos. Ejemplos: MySQL, Oracle, SQL Server, PostgreSQL.
Conjunto de datos estructurados y relacionados entre sí.
Permite interactuar con la base de datos. El más común es SQL (Structured Query Language).
Programas que interactúan con la base de datos para ofrecer funcionalidades al usuario final.
Personas que utilizan la base de datos, con diferentes niveles de acceso y permisos.
El modelo entidad-relación (E-R) es una herramienta para el diseño de bases de datos que permite representar las entidades relevantes de un sistema de información así como sus interrelaciones y propiedades.
Objetos o conceptos del mundo real sobre los que se quiere almacenar información. Se representan como rectángulos en un diagrama E-R.
Ejemplos: Cliente, Producto, Factura, Empleado.
Propiedades o características que describen a las entidades. Se representan como óvalos conectados a su entidad.
Ejemplos: Nombre, Dirección, Fecha de nacimiento, Precio.
Asociaciones entre entidades. Se representan como rombos conectados a las entidades relacionadas.
Ejemplos: Un cliente realiza un pedido, un empleado pertenece a un departamento.
La normalización es un proceso que consiste en aplicar una serie de reglas a las tablas de una base de datos para minimizar la redundancia y mejorar la integridad de los datos.
Forma Normal | Descripción |
---|---|
Primera Forma Normal (1FN) | Elimina grupos repetitivos y garantiza que cada campo contenga un solo valor atómico (no divisible). |
Segunda Forma Normal (2FN) | Cumple 1FN y todos los atributos no clave dependen completamente de la clave primaria. |
Tercera Forma Normal (3FN) | Cumple 2FN y no existen dependencias transitivas (atributos que dependen de otros atributos no clave). |
Forma Normal de Boyce-Codd (FNBC) | Versión más estricta de 3FN que trata casos especiales de dependencias funcionales. |
Cuarta Forma Normal (4FN) | Elimina dependencias multivaluadas no triviales. |
Quinta Forma Normal (5FN) | Trata con dependencias de unión y descomposiciones sin pérdida de información. |
En la práctica, la mayoría de las bases de datos se normalizan hasta la tercera forma normal (3FN), que ofrece un buen equilibrio entre integridad de datos y rendimiento. En algunos casos, puede ser necesario "desnormalizar" ciertas partes de la base de datos para mejorar el rendimiento de consultas frecuentes.
Existen diversos tipos de bases de datos, cada uno con características específicas que los hacen adecuados para diferentes necesidades y contextos de uso.
Las bases de datos relacionales organizan los datos en tablas (relaciones) con filas y columnas. Se basan en el modelo relacional propuesto por E.F. Codd en 1970 y utilizan SQL como lenguaje estándar.
Las bases de datos NoSQL (Not Only SQL) surgieron como alternativa a las bases de datos relacionales para manejar grandes volúmenes de datos no estructurados o semiestructurados, con esquemas flexibles y alta escalabilidad horizontal.
Almacenan datos principalmente en la memoria RAM para acceso ultrarrápido.
Ejemplos: Redis, Memcached, SAP HANA
Usos: Caché, análisis en tiempo real, aplicaciones de alto rendimiento
Almacenan datos como objetos, similar a la programación orientada a objetos.
Ejemplos: ObjectDB, db4o, ObjectStore
Usos: Aplicaciones con modelos de datos complejos, CAD, sistemas multimedia
Especializadas en gestionar datos con dimensión temporal, manteniendo históricos de cambios.
Ejemplos: TimeScale DB, InfluxDB
Usos: Series temporales, monitorización, datos financieros históricos
Combinan las ventajas de las bases de datos relacionales (ACID) con la escalabilidad de NoSQL.
Ejemplos: Google Spanner, CockroachDB, NuoDB
Usos: Aplicaciones que requieren escalabilidad y consistencia transaccional
Se instalan y ejecutan en equipos o servidores locales de la organización.
Servicios de bases de datos alojados en la nube y accesibles a través de internet.
Combinan elementos de bases de datos locales y en la nube para aprovechar las ventajas de ambos enfoques.
La elección del tipo de base de datos debe basarse en:
Las operaciones básicas que se pueden realizar con bases de datos se conocen comúnmente como operaciones CRUD (Create, Read, Update, Delete). Estas cuatro operaciones fundamentales son la base de cualquier sistema de gestión de información.
CRUD es un acrónimo que representa las cuatro operaciones básicas que se pueden realizar con datos persistentes:
SQL (Structured Query Language) es el lenguaje estándar para interactuar con bases de datos relacionales. Permite realizar todas las operaciones CRUD mediante comandos específicos.
Operación | Comando SQL | Descripción | Ejemplo |
---|---|---|---|
Create | INSERT INTO |
Añade nuevos registros a una tabla existente. | INSERT INTO clientes (nombre, email) VALUES ('Ana López', 'ana@correo.com'); |
Read | SELECT |
Recupera datos de una o varias tablas. | SELECT nombre, email FROM clientes WHERE id = 101; |
Update | UPDATE |
Modifica registros existentes. | UPDATE clientes SET email = 'nuevo@correo.com' WHERE id = 101; |
Delete | DELETE |
Elimina registros de una tabla. | DELETE FROM clientes WHERE id = 101; |
CREATE DATABASE
: Crea una nueva base de datosCREATE TABLE
: Crea una nueva tablaALTER TABLE
: Modifica la estructura de una tablaDROP TABLE
: Elimina una tablaCOMMIT
: Confirma una transacciónROLLBACK
: Revierte los cambios de una transacciónGRANT
: Asigna permisos a usuariosREVOKE
: Retira permisos a usuariosExisten diversas aplicaciones y herramientas que facilitan las operaciones con bases de datos sin necesidad de escribir código SQL directamente.
Los gestores gráficos proporcionan una interfaz visual para realizar operaciones con bases de datos sin necesidad de escribir código SQL directamente.
Las suites ofimáticas también ofrecen soluciones para crear y gestionar bases de datos simples, adecuadas para usuarios sin conocimientos técnicos avanzados.
Sistema de gestión de bases de datos relacionales incluido en algunas versiones de Microsoft Office.
Alternativa de código abierto similar a Access, incluida en la suite LibreOffice.
Los informes son representaciones estructuradas de los datos para facilitar su análisis e interpretación.
La exportación permite transferir datos desde la base de datos a otros formatos para su uso en diferentes aplicaciones.