Está en la página 1de 74

Administracin de Base de Datos Unidad 2

Para trabajar con nuestras BD, los SGBD necesitan conocer su estructura (qu entidades tipo habr, qu atributos tendrn, etc.).

El esquema de la BD es un elemento fundamental de la arquitectura de un SGBD. Permite independizar el SGBD de la BD; de este modo,
se puede cambiar el diseo de la BD (su esquema) sin tener que hacer ningn cambio en el SGBD

Existen dos niveles de representacin informtica:


nivel lgico nivel fsico.

El nivel lgico nos oculta los detalles de cmo se almacenan los datos, cmo se mantienen y cmo se accede fsicamente a ellos. En este nivel slo se habla de entidades, atributos y reglas de integridad.
Por cuestiones de rendimiento, nos podr interesar describir elementos de nivel fsico como, por ejemplo, cmo y dnde (en qu espacio fsico) queremos que se agrupen fsicamente los registros.

Hay tres caractersticas importantes inherentes a los sistemas de bases de datos:


la separacin entre los programas de aplicacin y los datos, el manejo de mltiples vistas por parte de los usuarios y el uso de un catlogo para almacenar el esquema de la base de datos.

En el periodo 1975-1982, ANSI intentaba establecer las bases para crear estndares en el campo de las BD.

En 1975, el comit ANSI-SPARC (American National Standard Institute Standards Planning and Requirements Committee) propuso una arquitectura de tres niveles para los sistemas de bases de datos, que resulta muy til a la hora de conseguir estas tres caractersticas.

El comit conocido como ANSI/SPARC recomend que la arquitectura de los SGBD previese tres niveles de descripcin de la BD, no slo dos.

El objetivo principal de la arquitectura ANSI/SPARC es definir un SGBD con el mximo grado de independencia, separando las aplicaciones de usuario y la base de datos fsica. Para ello se utilizan tres niveles de abstraccin conocidos como interno, conceptual y externo.

1. El nivel interno es el ms cercano a la mquina. Es una representacin a bajo nivel de la BD en la que se define la forma en la que los datos se almacenan fsicamente en la mquina

2. El nivel conceptual tiene un esquema conceptual, que describe la estructura de los datos que van a ser almacenados en la base de datos.
3. El nivel externo o nivel de vista incluye varios esquemas externos o vistas de usuario. Cada esquema externo describe la parte de la base de datos en la que est interesado un grupo de usuarios en particular y esconde el resto de la base de datos para esos usuarios.

El nivel externo es el ms cercano a los usuarios, es decir, es el que se ocupa de la forma en la que los usuarios perciben los datos.
El nivel externo es del usuario individual. Estos usuarios pueden ser o bien programadores de aplicaciones o usuarios finales con conocimientos muy variables de informtica.

En el caso del programador de aplicaciones, dicho lenguaje ser o bien un lenguaje de programacin convencional, o bien un lenguaje de cuarta generacin (4GL) especfico para el sistema en cuestin.

Para el usuario final ser o bien un lenguaje de consulta, o algn lenguaje de aplicacin especial, quiz manejado mediante formas o mens, adaptado a los requerimientos de ese usuario y apoyado por algn programa de aplicacin en lnea (cuya funcin es servir a un usuario final que tiene acceso a la base de datos desde una terminal en lnea).

Al usuario individual (en general), slo le interesar una porcin de la base de datos total; la forma como ese usuario percibe dicha porcin casi siempre ser un tanto abstracta comparada con el almacenamiento fsico de los datos.
El trmino ANSI/SPARC para la vista individual de un usuario es vista externa. As, una vista externa es el contenido de la base de datos tal como lo percibe algn usuario determinado (es decir, para ese usuario la vista externa es la base de datos).

El nivel conceptual es un nivel de mediacin entre el nivel interno y externo.

La vista conceptual es una representacin de toda la informacin contenida en la base de datos, tambin (como en el caso de una vista externa) en una forma un tanto abstracta si se compara con el almacenamiento fsico de los datos.
La vista conceptual se define mediante un esquema conceptual, el cual incluye definiciones de cada uno de los tipos de registro conceptual.

El esquema conceptual esconde los detalles del almacenamiento fsico y se concentra en describir entidades, tipos de datos, relaciones, operaciones de usuario y restricciones.

El tercer nivel de la arquitectura es el nivel interno. La vista interna es una representacin de bajo nivel de toda la base de datos; se compone de varias ocurrencias de varios tipos de registro interno (registro almacenado).

La vista interna se define mediante el esquema interno, el cual no slo define los diversos tipos de registros almacenados sino tambin especifica que ndices hay, cmo se representan los campos almacenados, en qu secuencia fsica se encuentran los registros almacenados, etc.

Se definen caractersticas como los dispositivos en donde se almacenan los datos, el espacio que se reserva, las estrategias de acceso, la creacin de ficheros de ndices, etc. Es dependiente de la mquina en que se vaya a instalar la BD, del sistema operativo que exista, etc.

Para describir un mismo grupo de datos, un sistema puede gestionar varios niveles de esquemas, para lo cual el DBMS debe poder garantizar la transferencia de los datos desde el formato correspondiente de un nivel al formato correspondiente a otro nivel; este proceso se denomina transformacin de datos o mapping. Hay dos niveles de correspondencia en la arquitectura ANSI/SPARC:
uno entre los niveles externo y conceptual del sistema, y otro entre los niveles conceptual e interno.

Es la que existe entre las vista conceptual y la base de datos almacenada; especifica cmo se representan los registros y campos conceptuales en el nivel interno.
Si se modifica la estructura de la base de datos almacenada (es decir, si se altera la definicin de la estructura de almacenamiento), la correspondencia conceptual/interna deber modificarse tambin de acuerdo con ello, para que no vare el esquema conceptual (el administrador de la base de datos se debe encargar de controlar tales modificaciones). Dicho de otra manera, los efectos de las alteraciones debern aislarse por debajo del nivel conceptual, a fin de conservar la independencia de los datos.

La independencia fsica es la capacidad de modificar el esquema interno sin tener que alterar el esquema conceptual (o los externos). Por ejemplo, puede ser necesario reorganizar ciertos ficheros fsicos con el fin de mejorar el rendimiento de las operaciones de consulta o de actualizacin de datos.

Es la que existe entre una determinada vista externa y la vista conceptual.

Las diferencias que pueden existir entre estos dos niveles son similares a las que pueden existir entre la vista conceptual y la base de datos almacenada. Por ejemplo, los campos pueden tener distintos tipos de datos, los nombre de los campos y los registros pueden diferir, pueden combinarse varios campos conceptuales para formar un solo campo externo (virtual), etc. Puede existir cualquier cantidad de vistas externas; cualquier nmero de usuarios puede compartir una determinada vista externa.

La independencia lgica es la capacidad de modificar el esquema conceptual sin tener que alterar los esquemas externos ni los programas de aplicacin. Se puede modificar el esquema conceptual para ampliar la base de datos o para reducirla.

Si, por ejemplo, se reduce la base de datos eliminando una entidad, los esquemas externos que no se refieran a ella no debern verse afectados.

Dado que la independencia fsica se refiere slo a la separacin entre las aplicaciones y las estructuras fsicas de almacenamiento, es ms fcil de conseguir que la independencia lgica.
Independencia lgica de datos: separacin del esquema externo del esquema conceptual.

Independencia fsica de datos: separacin del esquema conceptual del esquema interno.

En que ao se propuso una arquitectura de 3 niveles? Objetivo de la arquitectura ANSI/SPARC? Cuntos y que niveles constituyen la arquitectura ANSI/SPARC?

A que se le denomina Mapping o Mapeo?


Cules son los 2 niveles de correspondencia en la arquitectura ANSI/SPARC?

1.- En 1975 2.- El objetivo principal de la arquitectura ANSI/SPARC es definir un SGBD con el mximo grado de independencia, separando las aplicaciones de usuario y la base de datos fsica. 3.- Son 3 niveles : Nivel Externo, Nivel Conceptual, Nivel Interno 4.- Es una tcnica de programacin para convertir datos entre el sistema de tipos utilizado en un lenguaje de programacin orientado a objetos y el utilizado en una base de datos relacional, utilizando un motor de persistencia. 5.- conceptual/interna y externa/conceptual

La arquitectura de un sistema define su estructura. Identificando:


Sus componentes Funcin de cada componente Interrelacin e interaccin entre componentes

Para la especificacin de una arquitectura de un sistema se requiere:


Identificacin de mdulos Interfaces e interrelaciones

ANSI/SPARC Cliente servidor Peer to Peer Multi base de datos

Un sistema cliente/servidor es aquel en el que uno o ms clientes y uno o ms servidores, conjuntamente con un sistema operativo y un sistema de comunicacin entre procesos, forma un sistema compuesto que permite cmputo distribuido, anlisis, y presentacin de los datos.

Los clientes, a travs de la red, pueden realizar consultas al servidor. El servidor tiene el control sobre los datos; sin embargo los clientes pueden tener datos privados que residen en sus computadoras.

Las principales caractersticas de la arquitectura cliente/servidor son:


El servidor presenta a todos sus clientes una interfaz nica y bien definida. El cliente no necesita conocer la lgica del servidor, slo su interfaz externa. El cliente no depende de la ubicacin fsica del servidor, ni del tipo de equipo fsico en el que se encuentra, ni de su sistema operativo. Los cambios en el servidor implican pocos o ningn cambio en el cliente.

PROCESO GENERAL DE UN SISTEMA C/S La parte cliente de la aplicacin maneja la entrada de datos, acepta consultas de los usuarios y muestra los resultados.

La parte cliente no procesa las consultas. En su lugar, enva la consulta del usuario al computador servidor, donde la parte servidor de la aplicacin procesa la consulta. El servidor devuelve los resultados al cliente, que es quien se las muestra al usuario.

PARTES DE UN SISTEMA C/S


Los principales componentes de un sistema cliente/servidor son:

El ncleo (back-end o seccin posterior). Es el SGBD propiamente (servidor). El interfaz (front-end o seccin frontal). Aplicaciones que funcionan sobre el SGBD (cliente).

El ncleo (back-end o seccin posterior): SERVIDOR

Es el SGBD propiamente Permite llevar a cabo todas las funciones bsicas de un SGBD: definicin de datos, manipulacin de datos, seguridad, integridad, etc... Permite establecer todos los aspectos de los niveles externo, conceptual e interno (arquitectura ANSI/SPARC)

El ncleo (back-end o seccin posterior): SERVIDOR Funciones:

Aceptar las solicitudes de la base de datos de los clientes Procesar dichas solicitudes. Dar formato a los resultados y transmitirlos al cliente. Llevar a cabo la verificacin de integridad. Mantener los datos generales de la base de datos. Proporcionar control de acceso concurrente. Llevar a cabo la recuperacin. Optimizar el procesamiento de consultas y actualizacin.

El interfaz (front-end o seccin frontal). CLIENTE Aplicaciones ejecutadas sobre el SGBD Funciones:
Administrar la interfaz grfica de usuario. Aceptar datos del usuario. Procesar la lgica de la aplicacin Generar las solicitudes para la base de datos. Transmitir las solicitudes de la base de datos al servidor. Recibir los resultados del servidor.
Dar formato a los resultados.

El interfaz (front-end o seccin frontal). CLIENTE

Forma de trabajar:

Consulta: cualquier accin que el usuario puede hacer a la BD Tipo de consulta: creada en el instante o ser una consulta preprogramada o almacenada anteriormente. Despus la aplicacin cliente convierte la consulta al SQL usado por el servidor de la base de datos y la enva a travs de la red al servidor. Finalmente, el usuario ve la respuesta en la pantalla y puede manipular los datos, o modificar la consulta y empezar el proceso de nuevo.

Formas de invocar una consulta


Consulta compilada de forma esttica Consulta dinmica

Formas de invocar una consulta Consulta compilada de forma esttica

Llega al Servidor slo una vez, all se compila y se almacena para ser re-llamada tantas veces cuantas sea preciso. De esta forma, el Servidor almacena el cdigo compilado de la consulta en forma parametrizada; y, en cada invocacin del cliente (tpicamente se invoca a un procedimiento), basta con pasar los valores de los parmetros que en cada caso corresponda.
Es la forma ideal, que funcione en el modo de consulta esttica (compila una vez y se guarda en el Servidor), para ser re-llamada de continuo, cuantas veces se precise su ejecucin en el Servidor.

Formas de invocar una consulta Consulta dinmica,

El Cliente enva al Servidor la consulta como un string de caracteres, y all es compilada y ejecutada cada vez. Est pensado para un tipo de consulta espordica o no frecuente, su rendimiento es ms bajo que el de la invocacin esttica y por tanto con un tiempo de respuesta mayor.

El dispatcher

Los procesos del Servidor estn activos permanentemente para ir recibiendo solicitudes de los Clientes desde la cola de entrada, y dejan en la cola de salida los resultados que el Servidor obtiene para envirselos a cada respectivo Cliente. El dispatcher gestiona las colas del Servidor.

Tipos de Servidores

iterativos y concurrentes.

Servidor iterativo realiza los siguientes pasos:

1.2.3.4.-

Espera que llegue una consulta de un cliente. Procesa la consulta. Enva la respuesta al cliente que envi la consulta. Vuelve al estado inicial.

El problema del servidor iterativo es el paso 2. Durante el tiempo en el que el servidor est procesando la consulta, ningn otro cliente es servido.

Servidor concurrente realiza los siguientes pasos:

1.- Espera que llegue la consulta de un cliente. 2.- Cuando le llega una nueva consulta, comienza un nuevo proceso para manejar esta consulta (cmo se realiza este paso depende del sistema operativo). El nuevo servidor maneja la totalidad de la consulta. Cuando se ha procesado completamente, este nuevo proceso termina. 3.- Se vuelve al primer paso.

La ventaja del servidor concurrente es que el servidor ejecuta un nuevo proceso para manejar cada consulta. Cada cliente tiene su "propio" servidor. Asumiendo que el sistema operativo permite la multiprogramacin, clientes mltiples y servicio concurrente.

Interoperabilidad: los componentes clave (cliente, servidor y red) trabajan juntos. Flexibilidad: la nueva tecnologa puede incorporarse al sistema. Escalabilidad: cualquiera de los elementos del sistema puede reemplazarse cuando es necesario, sin impactar sobre otros elementos. Si la base de datos crece, las computadoras cliente no tienen que equiparse con memoria o discos adicionales. Esos cambios afectan solo a la computadora en la que se ejecuta la base de datos. Usabilidad: mayor facilidad de uso para el usuario. Integridad de los datos: entidades, dominios, e integridad referencial son mantenidas en el servidor de la base de datos. Accesibilidad: los datos pueden ser accedidos desde mltiples clientes. Rendimiento: se puede optimizar el rendimiento por hardware y procesos. Seguridad: la seguridad de los datos est centralizada en el servidor.

Hay una alta complejidad tecnolgica al tener que integrar una gran variedad de productos. El mantenimiento de los sistemas es ms difcil pues implica la interaccin de diferentes partes de hardware y de software, distribuidas por distintos proveedores, lo cual dificulta el diagnstico de fallos. Requiere un fuerte rediseo de todos los elementos involucrados en los sistemas de informacin (modelos de datos, procesos, interfaces, comunicaciones, almacenamiento de datos, etc.). Adems, en la actualidad existen pocas herramientas que ayuden a determinar la mejor forma de dividir las aplicaciones entre la parte cliente y la parte servidor. Es ms difcil asegurar un elevado grado de seguridad en una red de clientes y servidores que en un sistema con un nico ordenador centralizado (cuanto ms distribuida es la red, mayor es su vulnerabilidad). A veces, los problemas de congestin de la red pueden reducir el rendimiento del sistema por debajo de lo que se obtendra con una nica mquina Existen multitud de costes ocultos (formacin en nuevas tecnologas, cambios organizativos, etc.) que encarecen su implantacin. La arquitectura cliente/servidor es una arquitectura que est en evolucin, y como tal no existe estandarizacin.

CLIENTE/SERVIDOR
1. 2. 3. 4. 5. 6. 7.

Menciona 3 caractersticas principales de este tipo de arquitectura. Describe el proceso general de esta arquitectura Describe al menos 3 funciones de c/u de los elementos que intervienen en esta arquitectura Menciona y describe las 2 formas de invocar una consulta en este tipo de arquitectura. Menciona 3 ventajas y 3 desventajas de esta arquitectura. Menciona y describe los 2 tipos de servidores Cual es la funcin de un dispatcher?

Red peer-to-peer, red de pares, red entre iguales, red entre pares o red punto a punto. Red de computadoras donde los nodos se comportan como iguales entre s. Es decir, actan simultneamente como clientes y servidores.

Caractersticas Generales

El procesamiento de los datos puede llevarse a cabo en cualquier nodo

Permiten el intercambio directo de informacin, en cualquier formato (conexin de ordenadores directo) Aprovechan, administran y optimizan el uso del ancho de banda obteniendo ms rendimiento en las conexiones y transferencias.

Caractersticas Generales

La eficacia de los nodos en el enlace y transmisin de datos puede variar segn su configuracin local (velocidad de proceso, disponibilidad de ancho de banda, capacidad de almacenamiento en disco). Cada nodo puede iniciar, detener o completar una transaccin.

Alcance mundial

Caractersticas deseables

Escalabilidad. Cuantos ms nodos estn conectados, mejor ser su funcionamiento, ya que cada nodo comparte sus propios recursos y los recursos totales del sistema aumentan. Robustez: Incremento de robustez en caso de fallos. Los peer encuentran la informacin sin hacer peticiones a un servidor centralizado. Descentralizacin: todos los nodos son iguales, no existen nodos con funciones especiales y en teora ningn nodo es imprescindible para el funcionamiento de la red.

Caractersticas deseables

Distribucin de costes: se comparten o donan recursos a cambio de recursos (archivos, ancho de banda, almacenamiento en disco) Anonimato; deseable que el autor quede annimo, el editor, el lector, el servidor que lo alberga, y la peticin para encontrarlo. Seguridad: caracterstica deseable menos implementada.

Componentes
Procesador de usuario Procesador de datos

Componentes
Procesador de usuario El controlador de interfaz de usuario es el responsable de interpretar los comandos de usuario.

El controlador de la semntica de los datos utiliza las restricciones de integridad y autorizaciones que se definen como parte del esquema conceptual global para comprobar si el la consulta del usuario puede ser procesada, tambin es responsable de la autorizacin y otras funciones.

Componentes
Procesador de usuario El optimizador y descompositor de consultas determina una estrategia de ejecucin para minimizar una funcin de coste, y para la generacin de la mejor estrategia para ejecutar las operaciones de combinacin distribuida.

El monitor de ejecucin distribuida o administrador de transacciones distribuidas, coordina la ejecucin distribuida de la peticin del usuario.

Componentes

Procesador de datos El optimizador de consultas locales, selector de ruta de acceso, es responsable de elegir el mejor forma de acceder a cualquier elemento de datos. El gestor de recuperacin local es responsable de asegurarse de que la base de datos local permanece constante aunque se produzcan fallos.

El procesador de apoyo de tiempo de ejecucin es el responsable de mantener los buffers de memoria principales y la gestin de los accesos de datos.

Aplicaciones

Intercambio y bsqueda de ficheros.

Sistemas de telefona por Internet, como Skype. Alternativa a la distribucin convencional de pelculas y programas de televisin.
Clculos cientficos que procesen enormes bases de datos (bioinformtica).

Ventajas
Creacin de grandes base de datos de manera gratuita Velocidades de transferencia mayores. Mayor robustez (si falla un nodo, los otros nodos no se ven afectados).

Desventajas
Seguridad

P2P
Sin ctes y servidores Conectado a travs de una red Siempre activa la transferencia

C/S
Se requiere de servidores y clientes Conectados a travs de un servidor Al tener el servidor cado las peticiones de clientes no pueden ser atendidas Menor robustez Funciones particulares para cada nodo Ancho de banda limitado Mayor velocidad Menor escalabilidad Mayor costo

Incremento de robustez en caso de fallos No existen nodos con funciones especiales Ancho de banda optimo Lentitud Mayor escalabilidad Menor costo

1.
2. 3. 4.

5. 6. 7.

Menciona 3 caractersticas generales de este tipo de arquitectura. Menciona y describe 3 caractersticas deseables de este tipo de arquitectura Menciona los dos principales componentes de esta arquitectura. Qu componente de la arquitectura P2P es el encargado de coordinar la ejecucin distribuida de la peticin del usuario? Cul es la funcin del componente controlador de interfaz de usuario? Menciona que ventajas y desventajas tiene esta arquitectura Menciona 3 aplicaciones de esta arquitectura

Concepto
Sistema mltiple de base de datos, en el cual cada nodo en la federacin mantiene su autonoma en los datos y define un conjunto de esquemas de exportacin, a travs de los cuales se hacen disponibles los datos a otros nodos.

Funcin General

Compartir solo la informacin que quieran compartir las entidades participantes, adems de que los usuarios locales podrn acceder de forma transparente a los dems datos compartidos y ver los suyos, como si fuera una sola base de datos.

Objetivo

Proporcionar al usuario una vista para administracin y manipulacin del sistema transparente a la distribucin de los datos y a la heterogeneidad de los componentes.

Caractersticas

Distribucin: Los datos pueden estar ubicados entre mltiples bases de datos.

Heterogeneidad: Se debe permitir diferencias en el hardware, software y en los sistemas de comunicacin.

Caractersticas

Heterogeneidad de semntica: Ocurre cuando hay discrepancias acerca del significado, interpretacin o pretensin de utilizacin de los mismos datos o datos relacionados.

Autonoma: Se define como la capacidad de manejar su propio sistema de base de datos, es decir, que tengan control separado e independiente.

Arquitectura (5 niveles) Esquema local: Es un esquema conceptual de un componente de base de datos. Esquema de componente: Es derivado traduciendo el esquema local en un modelo de datos comn (CDM) o cannico. Esquema de exportacin: Representa un subconjunto de un esquema de componente disponible en los sistemas de bases de datos federadas. Esquema federado: Es una integracin de mltiples esquemas de exportacin. Esquema externo: Define un esquema para un usuario o aplicacin o clase de usuarios/aplicaciones

Arquitectura de 3 niveles

Esquema privado: Describe la porcin de los componentes de datos que es local al componente. Esquema de exportacin: La porcin de esquemas de exportacin de un componente que especifica la informacin que el componente est dispuesto a compartir con otros componentes de la federacin.

Esquema de importacin: El esquema de importacin de un componente especifica la informacin que el componente desea utilizar de otro componente.

Funcionamiento

Hay dos tipos de tareas que describen el funcionamiento de los sistemas de bases de bases de datos federadas.
Tareas de desarrollo Tareas de operacin

Tareas de desarrollo

Traduccin de esquemas: Se ejecuta cuando un esquema representado en un modelo de datos es mapeado a un esquema equivalente representado en diferente modelo de datos.

Control de acceso: Un sistema federado debe estar diseado para controlar el acceso a los componentes de la base de datos por usuarios federados.

Tareas de desarrollo

Negociacin: Es el dialogo entre dos administradores para alcanzar un acuerdo respecto a los esquemas de exportacin y a las operaciones permitidas, se debe hacer por medio de un protocolo para el intercambio de mensajes. Integracin de esquemas: Se refiere a la integracin de mltiples vistas de usuarios en un solo esquema.

Tareas de operacin

Formulacin de consultas: El lenguaje de consultas puede ser el mismo que se utiliza para bases de datos centralizados, debido a que las bases de datos federadas son transparentes en ese aspecto.

Transformacin de comandos: Debe existir un procesador de transformaciones de comandos, que traduce esos comandos en un lenguaje, llamado lenguaje origen, a otro lenguaje, llamado lenguaje destino.

Tareas de operacin

Procesamiento de consultas y optimizacin: El procesamiento implica convertir una consulta de un esquema federado a un esquema de exportacin y luego ejecutarlas. Respecto a los procesos de optimizacin y de procesamiento son similares a los de las bases de datos distribuidas. Administracin de transacciones globales: Es el responsable de mantener la consistencia entre las bases de datos, mientras se permita cierta concurrencia a travs de mltiples bases de datos, aunque esta tarea es muy complicada en ambientes heterogneos.

1.
2. 3. 4. 5. 6. 7. 8.

Menciona el concepto de este tipo de arquitectura. Cul es la funcin general de este tipo de arquitectura? Menciona y describe 3 caractersticas principales de este tipo de arquitectura. Cul es el objetivo de esta arquitectura? Menciona al menos 3 esquemas de la arquitectura de 5 niveles. Menciona los 3 esquemas de la arquitectura de 3 niveles. Menciona los 2 tipos de tareas de esta arquitectura Con que otro nombre se le conoce a este tipo de arquitectura?

También podría gustarte