Sie sind auf Seite 1von 72

Tpicos de base de datos

7 Semestre

1. Sistemas de bases de datos distribuidas


1.1. Conceptos de base de datos distribuidas
1.2. Diseo de base de datos distribuidas

1.3. Procesamiento de operaciones de actualizacin distribuidas


1.4. Procesamiento de consultas distribuidas 1.5. Manejo de transacciones.

2. Sistemas de bases de datos orientadas a objetos


2.1. El modelo de datos orientado a objetos. 2.1.1. Caractersticas de los SGBDOO. 2.1.2. Tipos de SGBDOO. 2.1.3. Productos. 2.2. El estndar ODMG. 2.3. Identidad y estructura de objetos 2.4. Encapsulamiento, herencia y polimorfismo en BDOO. 2.5. Persistencia, concurrencia y recuperacin en BDOO.

3. Sistemas de multibase de datos


3.1. Caractersticas y clasificacin.
3.2. Arquitectura de un sistema de multibase de datos.

3.3. Procesamiento de operaciones de actualizacin.


3.4. Procesamiento de consultas. 3.5. Aplicaciones de Multibase de Datos.

4. Sistemas de gestin de contenidos


4.1. Definicin Introduccin y conceptos.
4.2. Clasificacin de contenidos.

4.3. Arquitectura de un CMS.


4.4. Tipos de CMS en el mercado. 4.5. Modelado y Aplicacin de CMS.

Bibliografa
1. Ramez A. Elmasri, Shamkant B. Navathe, Fundamentos de Sistemas de Bases de Datos, 3. Edicin, Addison Wesley, 2002. 2. Practical Application of Object-Oriented Techniques to Relational Databases. Donald K. Burleson. OMG, 1994. 3. C. J. Date, Introduccin a los Sistemas de Bases de Datos, 7a. edicin, Prentice Hall.

4. Object-Oriented Information Systems: Planning and Implementation. David A. Taylor. Wiley, 1992.

5. Silberschatz, Korth, Sudarshan, Fundamentos de Bases de Datos, 4. Edicin, Mc Graw Hill.


6. Batini Ceri Navathe, Diseo Conceptual de Base de Datos, Edicin Adiso Wessley/Diaz de Santos. 7. Principles of distributed data bases systems, M.Tamer Ozsu, Prentice Hall, 2003, 3a.edicin.

8. Miguel A. Rodrguez, Bases de datos , Mc Graw Hill, Espaa 1992.

Polticas

Asistir a clases
Los celulares en vibrador, sin sonido o apagarlos. Las tareas, casos prcticos, trabajos y exposiciones sern entregados o presentados nicamente en fechas acordadas.

Tener el respeto a sus compaeros, as sea muy insignificante lo que se exponga, pregunte u opine.
En caso de no presentar un examen en la fecha, no habr otra fecha de presentacin a menos que se justifique la falta y este a tiempo.

El rango aprobatorio en el examen de regularizacin es de 70 como mnimo y 90 como mximo

Evaluacin
Participacin Tareas Proyecto/Practicas/Exposiciones Examen 15% 25% 30% 30%

Total

100%

Exmenes
Unidad 1

10 de Septiembre

Unidad 2
8 de Octubre

Unidad 3
5 de Noviembre

Unidad 4

3 de Diciembre

Base de datos
Una BDD, permitir que ya no un usuario, sino un nmero muy alto de usuarios accedan a la informacin, de una manera ordenada, consistente y coherente. Este tipo de BD, permiten que los datos queden repartidos en ms de un ordenador, lo cual es lo ms interesante ya que surge la necesidad de obtener un programa que maneje todas estas partes de la BDD, como si fuese una sola, y le den al usuario la impresin de cmo si l tuviese una BD centralizada.

Definicin de BDD
Una Base de Datos Distribuida (BDD) es un conjunto de mltiples bases de
datos lgicamente relacionadas las cuales se encuentran distribuidas entre diferentes sitios interconectados por una red de comunicaciones, los cuales tienen la capacidad de procesamiento autnomo lo cual indica que puede realizar operaciones locales o distribuidas.

Propiedades de una BDD


Autonoma Local No dependencia de un sitio central Operacin Continua Procesamiento Distribuido de Consultas Independencia con respecto al equipo Independencia con respecto al Sistema Operativo Independencia con respecto a la red con respecto a la Independencia con respecto al DBMS

Independencia localizacin
Independencia fragmentacin

con

respecto

la

Independencia de rplica

Centralizado VS Distribuido
Centralizado
Control centralizado Independencia de Datos Reduccin de redundancia Estructuras eficientes complejas y accesos

Distribuido
Control jerrquico Transparencia en la Distribucin Replicacin de Datos No hay estructuras intersitios Problemas de seguridad intrnsecos

Seguridad

Control centralizado

En las bases de datos distribuidas es posible identificar una estructura de


control jerrquico basado en un Administrador global de bases de datos, el cual tiene la principal responsabilidad de la totalidad de la base de datos, y el Administrador local de bases de datos, quien tiene la responsabilidad de su respectiva base de datos local.

Independencia de datos
La independencia de datos quiere decir, que la organizacin actual de los
datos es transparente a las aplicaciones. Los programas son escritos teniendo una vista conceptual de los datos, llamada esquema conceptual.

La independencia de datos es que los programas no son afectados por los


cambios en la organizacin fsica de los datos.

Reduccin de la redundancia

En las bases de datos distribuidas, se tienen varias razones para considerar la redundancia de los datos como una caracterstica necesaria:

Las aplicaciones pueden verse favorecidas si los datos son replicados en todos los sitios donde la aplicacin las necesita
La razn de disponibilidad del sistema puede incrementarse por este medio, debido a que si el sitio en el que se encuentran los datos fallara, la ejecucin de la aplicacin no se detiene porque existe una copia en algn otro sitio.

Estructuras complejas y acceso eficiente


Es conveniente tomar en cuenta dos cuestiones muy
importantes en el momento de accesar a una base de datos distribuida, la optimizacin local y la optimizacin global de los accesos.

La optimizacin global consiste en determinar qu datos sern accesados en qu sitios y qu archivos de datos sern transmitidos entre sitios. La optimizacin local consiste en decidir como llevar acabo el acceso a la base de datos local en cada sitio.

Seguridad

Los dueos de los datos locales pueden proteger de diferentes maneras su


informacin, esto dependiendo del DBMS local; y segundo, los problemas de seguridad son intrnsecos en los sistemas de bases de datos en general, esto debido a que las comunicaciones en las redes es su punto dbil con respecto a la proteccin

Ventajas de las bases de datos distribuidas sobre las bases de datos centralizadas
Razones organizacionales Interconexin de las bases de datos existentes Desarrollo incremental Reduccin de la sobrecarga de la comunicacin Consideraciones en el desempeo Confiabilidad y disponibilidad

Razones organizacionales

Las bases de datos distribuidas se acercan ms a las necesidades


estructura de la organizacin distribuida.

de la

Interconexin de las bases de datos existentes

Las bases de datos distribuidas son la solucin natural cuando se tienen


varias bases de datos existentes en la organizacin. En este caso, las bases de datos distribuidas son creadas utilizando una estrategia de diseo tipo bottom-up a partir de las bases de datos locales existentes.

Desarrollo incremental

Si una organizacin agrega una nueva unidad, relativamente autnoma,


entonces las bases de datos distribuidas soportaran este crecimiento con el menor grado de impacto a las unidades ya existentes.

Reduccin en la sobrecarga de la comunicacin

En el mximo de que las aplicaciones sean locales es uno de los objetivos


primarios en el diseo de las bases de datos distribuidas.

Consideraciones en el desempeo

La existencia de varios procesadores autnomos dan como resultado un


incremento en el desempeo por medio de un alto grado de paralelismo

Confiabilidad y disponibilidad

Las fallas en una base de datos distribuida pueden ser ms frecuentes que
en las centralizadas, debido al gran nmero de componentes, pero el efecto de cada falla es considerado por cada aplicacin que usa los datos en sitio que fall, y por lo tanto es raro que el sistema en su totalidad falle.

Dos puntos importantes en una BDD


1. 2.
Distribucin: Los datos no estn residentes en el mismo sitio (procesador). Esto permite distinguir una base de datos distribuida de una base de datos centralizada. Correlacin lgica: Los datos tienen algunas propiedades que los relacionan, de tal manera que se puede distinguir una base de datos distribuida de un conjunto de bases de datos locales o archivos residentes en diferentes sitios de una red de computadores

Diseo de bases de datos distribuidas

El Modelo relacional

El modelo relacional hace uso del lgebra relacional, la cual utiliza estrategias de acceso a la base de datos mientras que las herramientas como SQL son programas de aplicacin directamente.

Seleccin Proyeccin Unin Diferencia Producto cartesiano Join Join Natural Semijoin Semijoin Natural Agrupamiento

Seleccin

Produce una relacin con el mismo esquema de la relacin operando y un subconjunto de tuplas del mismo que satisfacen un predicado.

Proyeccin

Genera un conjunto de tuplas derivadas de la relacin operando al proyectar


un subconjunto de atributos de esta. Si hay tuplas repetidas, estas se eliminan

Unin

Produce una relacin con el mismo esquema de cada uno de los operandos y
un conjunto de tuplas resultante de unir las de las relaciones operando.

Diferencia

Est formada por las tuplas de la primera relacin que no se encuentran en


la segunda

Producto cartesiano

Produce una relacin con todas los atributos de los dos relaciones, donde
cada tupla de la primera se combina con todas las tuplas de la segunda

Join
El join de dos relaciones se basa en una frmula que especifica el predicado
del join.

Normalmente est dada por conjunciones de comparaciones entre atributos tomados de los dos operandos. Un join se deriva del producto cartesiano y de la seleccin.

Join Natural

Tambin denominado equijoin, el join natural genera una


relacin en la que de cada par de atributos idnticos se descarta uno. Las tuplas resultantes son las que satisfacen la igualdad en dichos atributos.

Semijoin

Es

el resultante de aplicar proyeccin sobre los atributos del primer operando despus de haber hecho join a los dos operandos. Debe tener en cuenta un predicado, igual que con el join.

Semijoin Natural

Es

el resultante de aplicar proyeccin sobre los atributos del primer operando despus de haber hecho join natural a los dos operandos.

Agrupamiento

Operacin

definida por un conjunto de atributos que determinan el agrupamiento y unas funciones agregadas a ser evaluadas en cada grupo de la relacin.

Modelo

de datos que representa un esquema de base de datos mediante entidades y asociaciones

Describe una base de datos de una forma sencilla y global Se realiza a partir de los requisitos de datos que debe cumplir
una base de datos

Modelo E-R
Describen el esquema de una base de datos

Entidades: Rectngulos, representan objetos reales Atributos: valos, representan propiedades de estos objetos

Relaciones: Rombos, representan enlaces

Ejemplo

Cardinalidad de una relacin


1:1 Uno a uno 1:N Uno a muchos

N:M

Muchos a muchos

Cardinalidad
1:1

PERSONA dirige DEPTO


1:N PERSONA trabaja DEPTO N:N ALUMNO inscrito CURSO

SQL

El lenguaje de consulta estructurado (SQL) es un lenguaje de base de datos


normalizado, utilizado por el motor de base de datos de Microsoft Jet. SQL se utiliza para crear objetos QueryDef, como el argumento de origen del mtodo OpenRecordSet y como la propiedad RecordSource del control de datos.

El lenguaje SQL est compuesto por comandos, clusulas, operadores y


funciones de agregado. Estos elementos se combinan en las instrucciones para crear, actualizar y manipular las bases de datos.

Existen dos tipos de comandos SQL:

DLL: permiten crear y definir nuevas bases de datos, campos e ndices. DML: permiten generar consultas para ordenar, filtrar y extraer datos de la
base de datos.

CREATE Utilizado para crear nuevas tablas, campos e ndices

DROP Empleado para eliminar tablas e ndices


ALTER Utilizado para modificar las tablas agregando campos o cambiando la definicin de los campos.

SELECT Utilizado para consultar registros de la base de


datos que satisfagan un criterio determinado

INSERT Utilizado para cargar lotes de datos en la base de


datos en una nica operacin.

UPDATE Utilizado para modificar los valores de los


campos y registros especificados

DELETE Utilizado para eliminar registros de una tabla de


una base de datos

FROM Utilizada para especificar la tabla de la cual se van a seleccionar los registros WHERE Utilizada para especificar las condiciones que deben reunir los registros que se van a seleccionar GROUP BY Utilizada para separar los registros seleccionados en grupos especficos HAVING Utilizada para expresar la condicin que debe satisfacer cada grupo

ORDER BY Utilizada para ordenar los registros seleccionados de acuerdo con un orden especfico

AND Es el "y" lgico. Evala dos condiciones y devuelve un


valor de verdad slo si ambas son ciertas.

OR Es el "o" lgico. Evala dos condiciones y devuelve un


valor de verdad si alguna de las dos es cierta.

NOT

Negacin lgica. Devuelve el valor contrario de la expresin.

< Menor que > Mayor que <> Distinto de <= Menor Igual que >= Mayor Igual que = Igual que
BETWEEN Utilizado para especificar un intervalo de valores.

LIKE Utilizado en la comparacin de un modelo


In Utilizado para especificar registros de una base de datos

AVG Utilizada para calcular el promedio de los valores de un campo determinado

COUNT Utilizada para devolver el nmero de registros de la seleccin


SUM Utilizada para devolver la suma de todos los valores de un campo determinado MAX Utilizada para devolver el valor ms alto de un campo especificado MIN Utilizada para devolver el valor ms bajo de un campo especificado

Transformaciones equivalentes
Hay dos aspectos que deben tenerse en cuenta: la semntica y la secuencia de operaciones.
La semntica: la cual se entiende con el significado del programa, es decir, lo que debe hacer Secuencia de operaciones: la que se entiende con la forma de lograrlo. Lo que quiere decir que dos expresiones con la misma semntica pueden tener dos secuencias de operaciones diferentes.

Join
La sentencia join en SQL permite combinar registros de dos o ms tablas en una base de datos relacional. En el Lenguaje de Consultas Estructurado (SQL), hay tres tipo de JOIN: interno, externo, y cruzado.
Matemticamente, JOIN es composicin relacional, la operacin fundamental en el lgebra relacional, y generalizando es una funcin de composicin.

Combinacin interna (INNER JOIN)


Con esta operacin se calcula el producto cruzado de todos los registros; as
cada registro en la tabla A es combinado con cada registro de la tabla B; pero slo permanecen aquellos registros en la tabla combinada que satisfacen las condiciones que se especifiquen.

Combinacin Cruzada (CROSS JOIN)


Presenta el producto cartesiano de todos los registros de las dos tablas. El
cdigo SQL para realizar este producto cartesiano enuncia las tablas que sern combinadas, pero no incluye algn predicado que filtre el resultado.

Combinacin externa (OUTER JOIN)


Mediante esta operacin no se requiere que cada registro en las tablas a
tratar tenga un registro equivalente en la otra tabla. El registro es mantenido en la tabla combinada si no existe otro registro que le corresponda.

Este tipo de operacin se subdivide dependiendo de la tabla a la cual se le


admitirn los registros que no tienen correspondencia, ya sean de tabla izquierda, de tabla derecha, o combinacin completa.

De tabla izquierda (LEFT OUTER JOIN o LEFT JOIN)


El resultado de esta operacin siempre contiene todos los registros de la
tabla de la izquierda (la primera tabla que se menciona en la consulta), aun cuando no exista un registro correspondiente en la tabla de la derecha, para uno de la izquierda.

La sentencia LEFT JOIN retorna la pareja de todos los valores de la tabla


izquierda con los valores de la tabla de la derecha correspondientes, o retorna un valor nulo NULL en caso de no correspondencia.

Ejemplo de aprendizaje
Show
databases: Muestra todas las bases de datos.

Para nuestro prctica usaremos la base de datos ejercicio.

Use ejercicio;

= nos permite poner ejecucin la base de datos llamada ejercicio.

Show tables; = Muestra las tablas


que contiene la base de datos que estemos utilizando.

Describe

orden; = Imprime en pantalla los atributos que corresponden a cada tabla, as como la informacin que detalla al atributo.

Las consultas a los


registro podemos hacerla con la sentencia:

Select * from
Nombre_tabla;

Inner Join

Nos permite unir dos tablas en este caso la tabla personas y orden, esta primera consulta asocia a todas las personas que tienen una orden. Este tipo de sentencia se le llama explcita debido a que lleva la palabra Join.

Esta consulta ejecuta lo mismo que la sentencia anterior, este tipo de Join es conocido como implcito, otro dato a observar es que Order by permite ordenar segn el atributo que escojamos.

NATURAL JOIN

Podemos realizar tambin un Natural Join, este caso en particular permite comparar todas las columnas que tengan el mismo nombre en ambas tablas.

CROSS JOIN

Cross Join al igual que Inner Join, tiene una manera implcita y
explcita. Esta que esta mostrada representa la manera Explcita.

Es un producto cartesiano que menciona las tablas que sern


combinadas, pero no incluye algn predicado que filtre el resultado.

La siguiente sentencia es la forma de expresar la manera implcita de un CROSS JOIN, el resultado es el mismo que el de la forma explcita.

OUTER JOIN
Con el OUTER JOIN no es necesario que los registros en las tablas a tratar tenga un registro equivalente en la otra tabla. El registro es mantenido en la tabla combinada si no existe otro registro que le corresponda.

En el caso de Right Outer Join, devuelve cada fila que cumple la combinacin de la segunda entrada (inferior) con cada fila coincidente de la primera entrada (superior).

Das könnte Ihnen auch gefallen