PDF. Base de Datos DAM-DAW. Tema 2
PDF. Base de Datos DAM-DAW. Tema 2
2
/ 1. Introducción y contextualización práctica 4
© MEDAC
Reservados todos los derechos. Queda rigurosamente prohibida, sin la autorización escrita de los titulares del copyright,
bajo las sanciones establecidas en las leyes, la reproducción, transmisión y distribución total o parcial de esta obra por
cualquier medio o procedimiento, incluidos la reprografía y el tratamiento informático.
/ 6. Caso práctico 2. “¿Qué modelo usar?” 14
/ 8. Bibliografía 16
Comprender el concepto de base de datos y asimilar sus posibles usos, como base
para ampliar conocimientos.
Conocer los diferentes tipos de bases de datos existentes y las diferencias entre
los mismos.
Entender las diferencias entre las bases de datos centralizadas y bases de datos
distribuidas, en cuanto a concepto y arquitectura.
Esta tecnología nació en la década de los sesenta, cuando varias compañías empezaban a utilizar discos magnéticos
para almacenar datos. A continuación, se crearon los ficheros, que sólo podían ser utilizados de manera secuencial.
Además, los programas utilizados tenían aplicaciones muy concretas y prácticamente no interactuaban entre sí.
Por ejemplo, era habitual que en una empresa se utilizase un programa para
gestionar las ventas de producto, y otro distinto para manejar los stocks
de los almacenes, lo que producía incoherencias y errores. Este problema
se resuelve con la utilización de bases de datos, que permiten trabajar con
ficheros de varios tipos que puedan interrelacionarse entre sí. Evidentemente,
la evolución de las TIC durante estos últimos años ha sido exponencial, lo
que a su vez ha permitido un acceso general a esta tecnología, no sólo en el
ámbito empresarial.
En este tema sentaremos los conceptos básicos sobre las bases de datos, Fig. 1. El uso de BBDD está presente en
algo fundamental para poder ampliar y profundizar más en próximos temas. nuestra vida cotidiana.
Todos estos puntos se corrigen mediante la utilización de bases de datos. El objetivo de éstas es realizar no sólo una
estructura de almacenamiento de datos, sino también facilitar su gestión, manipulación y consulta, garantizando
en todo momento su integridad.
• Entidades: Son los objetos para los que se almacena información, con características distintas entre ellos. En el
caso de una tienda, podrían ser los clientes, el stock de almacén, etc.
• Tablas: Las tablas dan forma a la información que queremos almacenar para cada entidad. Por ejemplo, tabla
clientes contiene los datos de todos ellos: DNI, nombre, apellidos, dirección, etc.
• Campo: Identifica cada tipo de datos distinto, caracterizándose como una columna de la tabla. Por ejemplo, el
campo “dni” en la tabla “clientes”. Se verá más adelante que hay campos clave, es decir, que son únicos para cada
registro. Un ejemplo puede ser el DNI.Los campos pueden contener datos numéricos, alfanuméricos, fechas,
etc.
• Registro: El registro vendría a ser la fila de la tabla. Es decir, en la tabla de clientes, cada cliente sería un registro
distinto.
PERFIL CARACTERÍSTICAS
Deciden la arquitectura de
la base de datos, cómo se
Diseñador
almacenarán los datos y cómo
se relacionarán entre sí.
• Individual: como su nombre indica, se usa sólo por una persona, que hace de administrador, usuario, diseñador
y programador al mismo tiempo.
• Compartida: cuenta con varios usuarios que pueden acceder a la misma información. Los requerimientos del
equipo en el que se sitúe serán mayores, al permitir accesos concurrentes. Por ejemplo, podría ser una base de
datos de una pyme.
TEMA 2. LAS BASES DE DATOS
/7 MEDAC · Instituto Oficial de Formación Profesional
• Bancos de datos: caracterizadas por contener un gran volumen de datos, que normalmente están referidos
a un tema en concreto (publicidad, datos técnicos o científicos, etc). Suelen estar desarrolladas por alguna
organización o empresa determinada, para explotar el servicio de consulta. Un ejemplo de este tipo sería BASE:
https://www.base-search.net/
• Pública: permiten el acceso a cualquier usuario que cuente con los medios técnicos para hacerlo. Por ejemplo, la
base de datos con los datos del catastro.
• Empresariales: almacenan datos sobre una empresa determinada, cuentas, transacciones, etc.
• Científicas: este tipo se construyen con datos útiles para investigadores de diversos campos científicos: Historia,
física, biología, etc.
• Sanitarias: son utilizadas por personal médico, y que contienen, por ejemplo, los historiales médicos.
Las aplicaciones de las bases de datos son muy amplias, prácticamente inabarcables hoy en día. A continuación, se
describen algunas de ellas:
• Médicas: aportan información sobre pacientes. Importante la seguridad de la información y el acceso a la misma
desde diferentes sitios (Centro de Salud y Hospital).
• Sistemas de posición geográfico, para por ejemplo poder utilizar sistemas de navegación GPS.
• Organismos Públicos: contienen información sobre los ciudadanos para poder realizar trámites: certificados,
declaración de Hacienda, citaciones, etc.
TEMA 2. LAS BASES DE DATOS
BASE DE DATOS /8
• Comunicaciones: para establecer cualquier llamada a través de un smartphone se consultan varias bases de
datos, en las que están almacenados datos del origen y del destino, para poder establecer la comunicación.
• Turismo: reservas de hoteles, compra de billetes de tren o de avión, consulta de aplicaciones turísticas sobre
atracciones de un lugar, etc.
• Motores de búsqueda web: se basan en bases de datos con mucha información sobre páginas web.
Nudo: Como diseñadores de la base de datos, el primer paso que tenemos que dar será el de definir la arquitectura
que tendrá nuestra base de datos.
Para ello, debemos decidir qué entidades, tablas, registros y campos consideraremos en este primer diseño.
Recordemos que el objetivo principal es la creación de un sistema de base de datos que le ayude en la gestión de su
almacén, así como en el proceso de ventas y compras.
Desenlace: Una posible propuesta básica de diseño (posteriormente, podrá ampliarse y/o potenciarse para cubrir
otras necesidades) puede ser la que se presenta a continuación.
• Tablas:
• Campos:
Id producto
Id producto Concepto
Id producto
Concepto Unidades
Concepto
Unidades Precio
Unidades
Proveedor Fecha
Cliente
Id producto
Id clente Id proveedor
Concepto
Nombre Nombre
Unidades
Apellido Apellido
Precio
Dirección Dirección
Fecha
Teléfono Teléfono
Proveedor
A continuación, se detallan las principales características de los modelos de bases de datos más conocidos, que dan
lugar a nuevos tipos de bases de datos.
También a raíz de su aparición se creó el lenguaje SQL, para realizar consultas Fig. 5. Representación del modelo relacional.
a estos.
De esta manera, se trata de construir una base de datos en base a objetos (datos), cada uno con sus propiedades
y atributos. Además, las operaciones o procedimientos sobre los mismos se les conoce como métodos, de manera
similar a los lenguajes de programación.
Para ayudar a entender este concepto, se muestra el siguiente ejemplo, sobre una base de datos de empleados:
Jefe de Proyecto
Madrid
Empleados
Consultor de Ventas
Murcia
Este modelo proporciona ventajas frente al relacional, especialmente para gestión de imágenes y documentos o
sistemas multimedia, ya que se trata de modelos de datos más complejos que son difíciles de representar mediante
tablas.
En concreto, permiten añadir a las bases de datos relacionales tipos de datos o procedimientos definidos por el
usuario, realizar consultas recursivas, etc.
A través del siguiente ejemplo, creamos un objeto nuevo en una base de datos Oracle, utilizando el ejemplo anterior
de la Tabla 4:
A modo de resumen, se recogen en la siguiente tabla las principales características de las bases de datos vistas hasta
ahora:
TEMA 2. LAS BASES DE DATOS
BASE DE DATOS / 12
Multidimensional Cubos
Una o varias BBDD
Deductivo Hechos y reglas
Podría decirse que las bases de datos distribuidas son bases de datos unidas entre sí mediante redes de comunicaciones,
a través de las cuáles pueden acceder a la información los diferentes usuarios del sistema.
Consiste en multiplicar las máquinas o nodos que controlan la base de datos, ubicándolos en diferentes lugares y
permitiendo el intercambio y acceso de información entre ellos a través de la red.
TEMA 2. LAS BASES DE DATOS
/ 13 MEDAC · Instituto Oficial de Formación Profesional
Por ejemplo, este podría ser el caso de una empresa que cuenta con varias delegaciones a nivel nacional. Puede
construirse de diferentes maneras:
• Nodo Particionado: no existe copia de la información, pero ésta se encuentra distribuida por todos los nodos.
• Nodo Híbrido: sería una mezcla de las anteriores, siendo la más usada.
Por tanto, es conveniente particionar adecuadamente la información para evitar que haya problemas a la hora de
recuperarla.
En esta línea, es importante tener en cuenta el concepto de “grado de fragmentación”, que básicamente se refiere
al número de veces que troceamos los datos. Este es un concepto importante a la hora de poder ejecutar las
consultas a la base de datos adecuadamente, no siendo permitido un grado de fragmentación cero, o bien un valor
de fragmentación demasiado elevado, dado que no sería viable poder gestionarlo. Este debe ser un valor intermedio,
que dependerá básicamente de lo que se pretenda hacer con la base de datos, así como de la arquitectura de la
misma y de las aplicaciones que se utilicen.
La fragmentación puede llevarse a cabo a nivel de registro (fila) o bien a nivel de campo (columna).
• Fragmentación vertical: Se caracteriza porque cada fragmento obtenido de dividir la información cuenta con
una serie de atributos de la información de partida, que se repiten en todos ellos.
Lo que se pretende con ella es que haya aplicaciones de usuario que se puedan ejecutar sobre un solo fragmento,
para optimizar el tiempo de respuesta ante consultas.
TEMA 2. LAS BASES DE DATOS
BASE DE DATOS / 14
• Fragmentación horizontal: se realiza directamente sobre los registros o filas de las tablas, dividiendo la
información en fragmentos que contienen varias de ellas. Es más sencilla de realizar que la vertical, ya que es
menos complicada de llevar a cabo.
• Fragmentación híbrida: como su nombre indica, es una mezcla de las anteriores. Puede ser VH (vertical +
horizontal) y HV (horizontal + vertical).
Obsoleto. Modelo
Jerárquica X
demasiado rígido.
Amplio soporte y
posibilidades, muy extendidas
Relacional
y totalmente válidas para el
objetivo que se persigue.
Parece demasiado compleja
Orientada a objetos X para lo que se quiere hacer,
aunque sería viable.
Sería una opción válida si se
quiere hacer algo más sofisticado
Objeto relacional
y preparado para otras posibles
funcionalidades a futuro.
No tiene sentido aplicarlo en
Multidimensional X
este caso por complejidad.
Tabla 7. Análisis del modelo a emplear para la base de datos de la tienda de informática
TEMA 2. LAS BASES DE DATOS
/ 15 MEDAC · Instituto Oficial de Formación Profesional
Planteamiento: Dado que seguimos involucrados en ayudar a nuestro amigo con su tienda, tras plantear en el caso
práctico 1 cómo podemos construir la base de datos, tenemos ciertas dudas sobre en qué modelo debemos basarnos.
Nudo: Tras analizar las características principales de todos los modelos existentes, necesitamos decidirnos por aquel
que se adapte mejor a nuestro caso concreto y exponer los motivos que nos llevan a su elección.
Desenlace: La elección del modelo de datos que queremos aplicar dependerá fundamentalmente de las aplicaciones
que contenga la base de datos, así como de las funcionalidades que requieran los usuarios de la misma.
Dado que nuestro amigo solo nos traslada su necesidad de organizar su negocio, lo más lógico parece establecer un
modelo relacional tradicional de partida, que puede ser rápido y sencillo de construir e implementar. Con el tiempo,
además, este modelo se podría llegar a adaptar a un modelo de objeto-relación, en caso de que se requiera potenciar
más funcionalidades. Por otro lado, al únicamente disponer de una tienda, parece que será más sencillo pensar en
una base de datos centralizada, aunque debería ser accesible de manera remota. Podemos llegar, por lo tanto, a las
siguientes conclusiones:
En este tema se han fijado las bases para entender el concepto de base de datos, detallándose su definición y
los principales elementos que las componen. Además, se han descrito los diferentes tipos de usuarios que suelen
intervenir en una base de datos. Todos estos son conceptos en los que se profundizará a lo largo de la asignatura.
También se han presentado los principales modelos de datos que se utilizan en bases de datos, sobre algunos de los
cuáles también se ampliará información en temas posteriores, al ser los más extendidos y utilizados (por ejemplo, el
modelo relacional). Por último, se han planteado las diferencias existentes entre las bases de datos centralizadas
y distribuidas. Este es un concepto muy importante, ya que en función de los objetivos que queramos cubrir con la
base de datos convendrá utilizar uno u otro.
En el caso práctico inicial se planteaban diversas cuestiones para dar respuesta, en relación al proyecto en el que
estamos ayudando a nuestro amigo con la base de datos de su tienda de informática.
Algunas posibles respuestas a las preguntas planteadas podrían ser las siguientes:
• ¿Necesitaremos más información de la que ya tenemos? Si es así, ¿cuál concretamente? En cualquier diseño,
especialmente de base de datos, es fundamental partir de la información adecuada, para lo que es importante
tratar con varios perfiles de usuarios que tenga la aplicación, con el fin de conocer las necesidades de cada uno.
Es muy importante definir el tipo de usuarios que tendrá el sistema, cuál será el medio de alojamiento, qué tipo
de modelo de datos se aplicará, cuáles son los datos que necesitaremos para construir la base de datos (ver caso
práctico 1), etc.
• ¿Cómo vamos a construir la base de datos? A esta pregunta le hemos dado respuesta entre los casos prácticos 1
y 2, en los que hemos definido en gran medida la arquitectura que tendrá nuestra base de datos y la información
que vamos a recoger en la misma. En pasos anteriores hemos definido el medio físico y cómo se accederá a la
información.
• ¿Vamos a aplicar algún modelo en concreto? Dadas las características y necesidades a cubrir, parece lo lógico
plantear la base de datos como una base de datos relacional.
TEMA 2. LAS BASES DE DATOS
BASE DE DATOS / 16
/ 8. Bibliografía
Oppel, A. (2009): Databases: A Beginner’s Guide. Madrid, España: McGraw-Hill.
Elmasri, R.; Navathe, S. (2007): Fundamentos de Bases de Datos (5.a. ed.). Madrid, España: Pearson Addison-Wesley
López, I.; Castellano, M.J. y Ospino, J. (2011) : Bases de datos. Madrid, España: Garceta
Cabrera, G. (2011): Sistemas gestores de bases de datos. Madrid, España: Paraninfo.