Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Lecturas Semana 2

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 5

Lecturas semana 2 :

Capítulo 1
Conceptos de bases de datos
Introducción y objetivos
El inicio de un curso sobre bases de datos debe ser, sin duda, la definición
de base de datos y la presentación de los sistemas de gestión de bases de datos
(el software que facilita la creación y manipulación de las mismas por parte
del personal informático). Algunos de estos sistemas, ampliamente utilizados,
son PostgreSQL, MySQL y Oracle.
Ya que este texto está dirigido a estudiantado de las ingenierías informáticas,
es interesante conocer qué papeles puede desempeñar el personal informático
en el entorno de una base de datos. Éstas han tenido sus predecesores
en los sistemas de ficheros y tienen por delante un amplio horizonte, por lo
que antes de comenzar su estudio resulta conveniente ubicarse en el tiempo
haciendo un recorrido por su evolución histórica. El capítulo termina con una
exposición sobre las ventajas y desventajas que las bases de datos conllevan.
Al finalizar este capítulo, el estudiantado debe ser capaz de:
Definir qué es una base de datos y qué es un sistema de gestión de bases
de datos.
Reconocer los subsistemas que forman parte de un sistema de gestión de
bases de datos.
Enumerar las personas que aparecen en el entorno de una base de datos
y sus tareas.
Asociar los distintos tipos de sistemas de gestión de bases de datos a las
generaciones a las que pertenecen.
Enumerar las ventajas y desventajas de los sistemas de bases de datos y
asociarlas al motivo por el que se producen: la integración de datos o el
sistema de gestión de la base de datos.

1.1. Base de datos


Una base de datos es un conjunto de datos almacenados en memoria externa
que están organizados mediante una estructura de datos. Cada base de datos
ha sido diseñada para satisfacer los requisitos de información de una empresa
u otro tipo de organización, como por ejemplo, una universidad o un hospital.
Antes de existir las bases de datos se trabajaba con sistemas de ficheros.
Los sistemas de ficheros surgieron al informatizar el manejo de los archivadores
manuales para proporcionar un acceso más eficiente a los datos almacenados
en los mismos. Un sistema de ficheros sigue un modelo descentralizado, en el
que cada departamento de la empresa almacena y gestiona sus propios datos
mediante una serie de programas de aplicación escritos especialmente para él.
Estos programas son totalmente independientes entre un departamento y otro,
y se utilizan para introducir datos, mantener los ficheros y generar los informes
que cada departamento necesita. Es importante destacar que en los sistemas
de ficheros, tanto la estructura física de los ficheros de datos como la de sus
registros, están definidas dentro de los programas de aplicación.
Cuando en una empresa se trabaja con un sistema de ficheros, los departamentos
no comparten información ni aplicaciones, por lo que los datos comunes
deben estar duplicados en cada uno de ellos. Esto puede originar inconsistencias
en los datos. Se produce una inconsistencia cuando copias de los mismos
datos no coinciden: dos copias del domicilio de un cliente pueden no coincidir
si sólo uno de los departamentos que lo almacenan ha sido informado de que
el domicilio ha cambiado.
Otro inconveniente que plantean los sistemas de ficheros es que cuando los
datos se separan en distintos ficheros, es más complicado acceder a ellos, ya
que el programador de aplicaciones debe sincronizar el procesamiento de los
distintos ficheros implicados para garantizar que se extraen los datos correctos.
Además, ya que la estructura física de los datos se encuentra especificada en
los programas de aplicación, cualquier cambio en dicha estructura es difícil de
realizar. El programador debe identificar todos los programas afectados por el
cambio, modificarlos y volverlos a probar, lo que cuesta mucho tiempo y está
sujeto a que se produzcan errores. A este problema, tan característico de los
sistemas de ficheros, se le denomina también falta de independencia de datos
lógica-física.
Una base de datos se puede percibir como un gran almacén de datos que
se define y se crea una sola vez, y que se utiliza al mismo tiempo por distintos
usuarios. En una base de datos todos los datos se integran con una mínima
cantidad de duplicidad. De este modo, la base de datos no pertenece a un solo
departamento sino que se comparte por toda la organización. Además, la base
de datos no sólo contiene los datos de la organización, también almacena una
descripción de dichos datos. Esta descripción es lo que se denomina metadatos,
se almacena en el diccionario de datos o catálogo y es lo que permite que exista
independencia de datos lógica-física.

Capítulo 2
Modelo relacional
Introducción y objetivos
En este capítulo se presentan los principios básicos del modelo relacional,
que es el modelo de datos en el que se basan la mayoría de los SGBD en uso
hoy en día. En primer lugar, se presenta la estructura de datos relacional y a
continuación las reglas de integridad que deben cumplirse sobre la misma.
Al finalizar este capítulo, el estudiante debe ser capaz de:
Definir qué es un modelo de datos y describir cómo se clasifican los
modelos de datos.
Definir los distintos modelos lógicos de bases de datos.
Definir la estructura de datos relacional y todas sus partes.
Enumerar las propiedades de las relaciones.
Definir los tipos de relaciones.
Definir superclave, clave candidata, clave primaria y clave ajena.
Definir el concepto de nulo.
Definir la regla de integridad de entidades y la regla de integridad referencial.
Definir qué es una regla de negocio.
Dar un ejemplo completo de una base de datos formada por, al menos,
dos relaciones con claves ajenas.

2.1. Modelos de datos


Una de las características fundamentales de los sistemas de bases de datos
es que proporcionan cierto nivel de abstracción de datos, al ocultar las características
sobre el almacenamiento físico que la mayoría de usuarios no necesita
conocer. Los modelos de datos son el instrumento principal para ofrecer dicha
abstracción a través de su jerarquía de niveles. Un modelo de datos es un
conjunto de conceptos que sirven para describir la estructura de una base de
datos, es decir, los datos, las relaciones entre los datos y las restricciones que
deben cumplirse sobre los datos. Los modelos de datos contienen también un
conjunto de operaciones básicas para la realización de consultas (lecturas) y
actualizaciones de datos. Además, los modelos de datos más modernos incluyen
mecanismos para especificar acciones compensatorias o adicionales que se
deben llevar a cabo ante las acciones habituales que se realizan sobre la base
de datos.
Los modelos de datos se pueden clasificar dependiendo de los tipos de conceptos
que ofrecen para describir la estructura de la base de datos, formando
una jerarquía de niveles. Los modelos de datos de alto nivel, o modelos conceptuales,
disponen de conceptos muy cercanos al modo en que la mayoría de
los usuarios percibe los datos, mientras que los modelos de datos de bajo nivel,
o modelos físicos, proporcionan conceptos que describen los detalles de cómo
se almacenan los datos en el ordenador. Los conceptos de los modelos físicos
están dirigidos al personal informático, no a los usuarios finales. Entre estos
dos extremos se encuentran los modelos lógicos, cuyos conceptos pueden ser
entendidos por los usuarios finales, aunque no están demasiado alejados de la
forma en que los datos se organizan físicamente. Los modelos lógicos ocultan
algunos detalles de cómo se almacenan los datos, pero pueden implementarse
de manera directa en un SGBD.
Los modelos conceptuales utilizan conceptos como entidades, atributos y
relaciones. Una entidad representa un objeto o concepto del mundo real como,
por ejemplo, un cliente de una empresa o una de sus facturas. Un atributo
representa alguna propiedad de interés de una entidad como, por ejemplo, el
nombre o el domicilio del cliente. Una relación describe una interacción entre
dos o más entidades, por ejemplo, la relación que hay entre un cliente y las
facturas que se le han realizado.
Cada SGBD soporta un modelo lógico, siendo los más comunes el relacional,
el de red y el jerárquico. Estos modelos representan los datos valiéndose de
estructuras de registros, por lo que también se denominan modelos orientados
a registros. Hay una familia más moderna de modelos lógicos, son los modelos
orientados a objetos, que están más próximos a los modelos conceptuales. En
el modelo relacional los datos se describen como un conjunto de tablas con
referencias lógicas entre ellas, mientras que en los modelos jerárquico y de red,
los datos se describen como conjuntos de registros con referencias físicas entre
ellos (punteros).

Los modelos físicos describen cómo se almacenan los datos en el ordenador:


el formato de los registros, la estructura de los ficheros (desordenados,
ordenados, agrupados) y los métodos de acceso utilizados (índices, tablas de
dispersión).
A la descripción de una base de datos mediante un modelo de datos se le
denomina esquema de la base de datos. Este esquema se especifica durante el
diseño, y no es de esperar que se modifique a menudo. Sin embargo, los datos
que se almacenan en la base de datos pueden cambiar con mucha frecuencia:
se insertan datos, se actualizan, se borran, etc. Los datos que la base de datos
contiene en un determinado momento conforman el estado de la base de datos,
o como también se denomina: una ocurrencia de la base de datos.
La distinción entre el esquema y el estado de la base de datos es muy
importante. Cuando definimos una nueva base de datos, sólo especificamos su
esquema al SGBD. En ese momento, el estado de la base de datos es el estado
vacío, sin datos. Cuando se cargan datos por primera vez, la base datos pasa
al estado inicial. De ahí en adelante, siempre que se realice una operación de
actualización de la base de datos, se tendrá un nuevo estado. El SGBD se
encarga, en parte, de garantizar que todos los estados de la base de datos sean
estados válidos que satisfagan la estructura y las restricciones especificadas en
el esquema. Por lo tanto, es muy importante que el esquema que se especifique
al SGBD sea correcto y se debe tener gran cuidado al diseñarlo. El SGBD
almacena el esquema en su catálogo o diccionario de datos, de modo que se
pueda consultar siempre que sea necesario.
En 1970, el modo en que se veían las bases de datos cambió por completo
cuando E. F. Codd introdujo el modelo relacional. En aquellos momentos, el
enfoque existente para la estructura de las bases de datos utilizaba punteros
físicos (direcciones de disco) para relacionar registros de distintos ficheros. Si,
por ejemplo, se quería relacionar un registro A con un registro B, se debía
añadir al registro A un campo conteniendo la dirección en disco (un puntero
físico) del registro B. Codd demostró que estas bases de datos limitaban en
gran medida los tipos de operaciones que los usuarios podían realizar sobre
los datos. Además, estas bases de datos eran muy vulnerables a cambios en el
entorno físico. Si se añadían los controladores de un nuevo disco al sistema y los
datos se movían de una localización física a otra, se requería una conversión de
los ficheros de datos. Estos sistemas se basaban en el modelo de red y el modelo
jerárquico, los dos modelos lógicos que constituyeron la primera generación de
los SGBD.
El modelo relacional representa la segunda generación de los SGBD. En
él, todos los datos están estructurados a nivel lógico como tablas formadas
por filas y columnas, aunque a nivel físico pueden tener una estructura completamente
distinta. Un punto fuerte del modelo relacional es la sencillez de
su estructura lógica. Pero detrás de esa simple estructura hay un fundamento
teórico importante del que carecen los SGBD de la primera generación, lo que
constituye otro punto a su favor.
Dada la popularidad del modelo relacional, muchos sistemas de la primera
generación se han modificado para proporcionar una interfaz de usuario relacional,
con independencia del modelo lógico que soportan (de red o jerárquico).
En los últimos años, se han propuesto algunas extensiones al modelo relacional
para capturar mejor el significado de los datos, para disponer de los
conceptos de la orientación a objetos y para disponer de capacidad deductiva.
El modelo relacional, como todo modelo de datos, tiene que ver con tres aspectos
de los datos, que son los que se presentan en los siguientes apartados de
este capítulo: qué características tiene la estructura de datos, cómo mantener
la integridad de los datos y cómo realizar el manejo de los mismos.

2.2. Estructura de datos relacional


La estructura de datos del modelo relacional es la relación. En este apartado
se presenta esta estructura de datos, sus propiedades, los tipos de relaciones y
qué es una clave de una relación. Para facilitar la comprensión de las definiciones
formales de todos estos conceptos, se dan antes unas definiciones informales
que permiten asimilar dichos conceptos con otros que resulten familiares.

También podría gustarte