TP2 Bases de Datos
TP2 Bases de Datos
TP2 Bases de Datos
Facultad de Ingenierı́a
Ingenierı́a en Computación
Docentes:
Lic. CONSTANTIN Eduardo
Lic. PODKOWA Lucas
Lic. KORNUTA Carlos
Alumno:
CONTIGIANI, Fabrizio Martin
Consigna 1
¿Qué es un modelo de datos y cuáles son las principales categorı́as de modelos de datos?
Explique brevemente cada categorı́a.
Respuesta
Un modelo de datos es una colección de conceptos que se pueden utilizar para describir la
estructura de una base de datos que proporciona los medios necesarios para conseguir la abstracción
de datos, la cual se refiere generalmente a la supresión de detalles de la organización y el almacena-
miento de datos y a la relevancia de las caracterı́sticas fundamentales para un conocimiento mejorado
de los datos. Por estructura de una base de datos nos referimos a los tipos de datos, relaciones y
restricciones que deben mantenerse para los datos. La mayorı́a de modelos de datos también incluyen
un conjunto de operaciones básicas para especificar las recuperaciones y actualizaciones en la base
de datos. Además de las operaciones básicas proporcionadas por el modelo de datos, es cada vez más
común incluir conceptos en el modelo de datos para especificar el aspecto dinámico o comportamiento
de una aplicación de base de datos.
Modelos de datos de alto nivel o conceptuales: ofrecen conceptos muy cercanos a como
muchos usuarios perciben los datos.
Modelos de bajo nivel o fı́sicos: ofrecen conceptos que describen los detalles de cómo se
almacenan los datos en el computador. Los conceptos ofrecidos por los modelos de datos de
bajo nivel están pensados principalmente para los especialistas en computadores, no para los
usuarios finales normales.
Consigna 2
¿Qué es un esquema de base de datos y en qué se diferencia con el estado de base de datos?
Respuesta
2.1
La descripción de una base de datos se denomina esquema de la base de datos, que
se especifica durante la fase de diseño y no se espera que cambie con frecuencia. La mayorı́a de
2
los modelos de datos tienen ciertas convenciones para la visualización de los esquemas a modo de
diagramas. Un esquema visualizado se denomina diagrama del esquema.
Un diagrama del esquema sólo muestra algunos aspectos de un esquema, como los nombres
de los tipos de registros y los elementos de datos, y algunos tipos de restricciones. Los datos reales
de una base de datos pueden cambiar con mucha frecuencia. Los datos de la base de datos en un
momento concreto se denominan estado de la base de datos o snapshot (captura). También
reciben el nombre de conjunto actual de ocurrencias o instancias de la base de datos. En un estado
dado de la base de datos, cada estructura de esquema tiene su propio conjunto actual de instancias.
Esta distinción entre esquema de la base de datos y estado de la base de datos es muy
importante. Cuando definimos una base de datos nueva, sólo especificamos su esquema al DBMS.
A estas alturas, el estado correspondiente de la base de datos es el estado vacı́o, sin datos. El estado
inicial de la base de datos se da cuando ésta se rellena o carga por primera vez con los datos iniciales.
Desde ese momento, cada vez que sobre la base de datos se aplica una operación de actualización,
obtenemos otro estado de la base de datos. En cualquier momento en el tiempo, la base de datos
tiene un estado actual.
Consigna 3
Describa la arquitectura de tres esquemas. ¿Por qué son necesarios los mapeos entre los niveles
de esquema?
Respuesta
El objetivo de la arquitectura de tres esquemas, ilustrada en la Figura 1, es separar las
aplicaciones de usuario y las bases de datos fı́sicas. En esta arquitectura se pueden definir esquemas
en los siguientes tres niveles:
3. El nivel de vista o externo incluye una cierta cantidad de esquemas externos o vistas de
usuario. Un esquema externo describe la parte de la base de datos en la que un grupo de
usuarios en particular está interesado y le oculta el resto de la base de datos. Como en el
caso anterior, cada esquema externo se implementa normalmente mediante un modelo de datos
3
Figura 1: Arquitectura de tres esquemas.
Observe que los tres esquemas sólo son descripciones de datos; los datos almacenados que
existen en realidad están en el nivel fı́sico. En un DBMS basado en la arquitectura de tres esque-
mas, cada grupo de usuarios sólo se refiere a su propio esquema externo. Por tanto, el DBMS debe
transformar una solicitud especificada en un esquema externo en una solicitud contra el esquema
conceptual, y después en una solicitud en el esquema interno para el procesamiento sobre la base de
datos almacenada. Los procesos para transformar solicitudes y resultados entre niveles se denominan
mapeados.
Consigna 4
Explique en que consiste la independencia lógica de datos y la independencia fı́sica de datos.
Respuesta
La arquitectura de tres esquemas se puede utilizar para explicar el concepto de independen-
cia de los datos, que puede definirse como la capacidad de cambiar el esquema en un nivel de un
sistema de bases de datos sin tener que cambiar el esquema en el siguiente nivel más alto. Se pueden
definir dos tipos de independencia de datos:
4
el esquema conceptual para expandir la base de datos (añadiendo un tipo de registro o un
elemento de datos), para cambiar las restricciones o para reducir la base de datos (eliminando
un tipo de registro o un elemento de datos). En el último caso, no deben verse afectados los
esquemas externos que sólo se refieren a los datos restantes.
2. Independencia fı́sica de datos. Es la capacidad de cambiar el esquema interno sin que haya
que cambiar el esquema conceptual. Por tanto, tampoco es necesario cambiar los esquemas
externos. Puede que haya que realizar cambios en el esquema interno porque algunos archivos
fı́sicos fueran reorganizados (por ejemplo, por la creación de estructuras de acceso adicionales)
de cara a mejorar el rendimiento de las recuperaciones o las actualizaciones. Si en la base
de datos permanecen los mismos datos que antes, no hay necesidad de cambiar el esquema
conceptual.
Consigna 5
Defina y explique qué consiste DDL y DML. Investigue y ejemplifique las sentencias principales
relacionadas a cada uno.
Respuesta
Una vez completado el diseño de una base de datos y elegido un DBMS para implementarla,
el primer paso es especificar los esquemas conceptual e interno para la base de datos y cualesquiera
mapeados entre los dos. En muchos DBMSs donde no se mantiene una separación estricta de niveles, el
DBA y los diseñadores de la base de datos utilizan un lenguaje, denominado lenguaje de definición
de datos (DDL, data definition language), para definir los dos esquemas. El DBMS tendrá un
compilador DDL cuya función es procesar las sentencias DDL a fin de identificar las descripciones
de las estructuras del esquema y almacenar la descripción del mismo en el catálogo del DBMS.
Una vez compilados los esquemas de la base de datos y rellenada ésta con datos, los usuarios
deben disponer de algunos medios para manipularla. Entre las manipulaciones tı́picas podemos citar
la recuperación, la inserción, el borrado y la modificación de datos. El DBMS proporciona un conjunto
de operaciones o un lenguaje denominado lenguaje de manipulación de datos (DML, data
manipulation language) para todas estas tareas.
ALTER: permite modificar objetos de la base de datos, cambiar atributos, cambiar nombres.
SELECT: permite recuperar informacion de una o mas tablas de la base de datos, dependiendo
de las condiciones que especifiquemos.
5
INSERT: nos ayuda a insertar o ingresar filas de datos en las tablas de nuestra base de datos.
UPDATE: modifica los registros de una tabla dependiendo de la condicion que especifiquemos.
Fuente
Consigna 6
¿Cuál es la diferencia entre las arquitecturas cliente/servidor de dos y tres capas?
Respuesta
La arquitectura cliente/servidor se desarrolló para ocuparse de los entornos de compu-
tación en los que una gran cantidad de PCs, estaciones de trabajo, servidores de archivos, impresoras,
servidores de bases de datos, servidores web y otros equipos están conectados a través de una red.
La idea es definir servidores especializados con funcionalidades especı́ficas. De este modo, muchas
máquinas cliente pueden acceder a los recursos proporcionados por servidores especializados. Las
máquinas cliente proporcionan al usuario las interfaces apropiadas para utilizar estos servidores, ası́
como potencia de procesamiento local para ejecutar aplicaciones locales.
Muchas aplicaciones web utilizan una arquitectura denominada de tres capas, que añade
una capa intermedia entre el cliente y el servidor de la base de datos. Esta capa intermedia se
denomina a veces servidor de aplicaciones y, en ocasiones, servidor web, en función de la aplica-
ción. Este servidor juega un papel intermedio almacenando las reglas comerciales (procedimientos
o restricciones) que se utilizan para acceder a los datos del servidor de bases de datos. También
puede mejorar la seguridad de la base de datos al comprobar las credenciales del cliente antes de
enviar una solicitud al servidor de la base de datos. Los clientes contienen interfaces GUI y algunas
reglas comerciales adicionales especı́ficas de la aplicación. El servidor intermedio acepta solicitudes
6
del cliente, las procesa y envı́a comandos de bases de datos al servidor de bases de datos, y después
actúa como un conducto para pasar datos procesados (parcialmente) desde el servidor de bases de
datos a los clientes, donde son procesados de forma más avanzada para su presentación en formato
GUI a los usuarios. De este modo, la interfaz de usuario, las reglas de aplicación y el acceso de datos
actúan como las tres capas.
Consigna 7
Confeccione un mapa conceptual representando la clasificación de los sistemas de administra-
ción de bases de datos.
Respuesta
2.1 El trabajo cumple con todas las consignas propuestas, pero se espera que el alumno realice una comprensión
de los conceptos teóricos y realice su propio resumen. De todas maneras, el trabajo está muy completo, pero
como aclaración sería que es preferente que las respuestas sean elaboradas por el propio alumno.
Cabe destacar el punto 7, la claridad en el gráfico, es muy descriptivo, excelente punto.