curso bases de datos i - Campus Virtual

Anuncio
16/08/2014
CURSO
BASES DE DATOS I
Código : 750030M
Créditos : 4
Intensidad: 4 h/sem.
Habilitable: No
Validable: No
Profesor: Mauricio E. Fernández N.
Oficina: 2172
E-MAIL: mauricio.e.fernandez @ correounivalle.edu.co
(La mejor forma de contactarme)
En el curso se trabajará con el Campus Virtual de
Univalle
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
1
Textos a Utilizar
Database Systems: The Complete Book, by Garcia-Molina, Ullman, y
Widom (first edition), Prentice Hall, 2002.
Otros Recomendados:
A Guide to the SQL Standard: A User's Guide to the Standard Database
Language SQL, (4a. edition), C.J. Date y H. Darwen, Addison-Wesley,
2000.
SQL: 1999 - Understanding Relational Language Components, (1a.
edition), Melton y Simon, Morgan Kaufmann, 2002.
PostgreSQL: Introduction and Concepts, Bruce Momjian, AddisonWesley, 2001.
Ramakrishnan, Raghu, and Johannes Gehrke. Database Management
Systems. New York, NY. McGraw-Hill, 2002. ISBN: 0072465638.
Communications of the ACM
Usted podrá consultar material sobre:
Bases de datos (Databases), Unix, Perl, PHP y CGI.
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
2
1
16/08/2014
Forma de Evaluación
Laboratorios (25%)
Trabajo Final (25%):
3 entregas (Fase 1: 20%, Fase 2:
30% y Fase 3: 50% - informe y
sustentación)
Primer Examen Parcial
(25%)
Segundo Examen Parcial (25%)
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
3
Trabajo Final del Curso
Usted podrá construir su aplicación usando el
manejador de bases de datos relacional
Postgres, que pueda ser accedido vía web.
El proyecto tiene 3 partes (fases), iniciando
con la presentación del tema, desarrollando
luégo el diseño y finalizando con la aplicación
completa.
La conexión a la base de datos debe de
realizarla mediante programas escritos en
Java (JDBC).
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
4
2
16/08/2014
Precaución
Este curso tiene bastante trabajo, pero
lo vale!
No deje tema para más adelante,
manténgase al día en su estudio.
De todos los cursos que usted toma en
la Universidad del Valle, éste puede ser
el que le ayude a conseguir un trabajo.
Aprovechelo!
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
5
Qué es una base de datos
Sistema Administrador de base de datos
(DBMS): Un DBMS es un sistema de software que
facilita la creación, mantenimiento y uso de una
base de datos electrónica
C. Date: “Una base de datos es un sistema
computarizado cuyo propósito general es
mantener información y dejar esta disponible
para quien lo demande"
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
6
3
16/08/2014
Qué se quiere de una base de datos?
 Dar respuesta a consultas sobre datos
 Actualización de los datos
 Mantener los datos almacenados (persistencia)
 Almacenar grandes cantidades de datos
 Proteger de accidentes y evitar accesos no
autorizados (Seguridad)
 Acceso a los datos mediante un lenguaje
 Permitir y controlar el acceso a datos a múltiples
usuarios (concurrencia)
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
7
Una base de datos
Aplicación de
Procesamiento de
Clientes
Usuario
Aplicación de
Procesamiento de
Ventas
Base de
Datos
Usuario
Otras
Aplicaciones
Usuario
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
8
4
16/08/2014
BD vs. Archivos
 La aplicación debe mantener grandes conjuntos de
datos entre la memoria principal y el almacenamiento
secundario (ejemplo: buffering, acceso orientado a la
página, direccionamiento de 32 bits, etc)
 Se debe generar código especial para diferentes
consultas
 Se deben de proteger los datos de inconsistencias
producidas por múltiples usuarios accediendo
concurrentemente a los datos
 Recuperación por daños
 Seguridad y control de acceso
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
9
BD vs. Archivos
•
•
•
•
Aplicación de
Procesamiento de
Clientes
Archivo de
Clientes
Aplicación de
Procesamiento
de Ventas
Archivo de
Ventas
Datos separados y aislados; archivos independientes
Datos generalmente duplicados;
Aplicaciones dependientes del formato del archivo;
Los archivos generalmente no son compatibles con otros;
diferentes formatos para datos compatibles
• Difícil representar datos desde la perspectiva del usuario;
difícil representar relaciones
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
10
5
16/08/2014
Procesamiento en BD
• Datos Integrados; una sola base de datos
• Se reducen los datos duplicados;
• Independencia de los programas de los datos;
Cambios de formato o de relaciones sin consecuencias sobre programas
• Fácil representar datos desde la perspectiva del usuario;
Las relaciones son parte de la base de datos
Una base de datos es una colección de registros
autodescritos e integrados.
• Autodescritos: diccionario de datos, metadatos, estructura
de la DB
• Integrados: archivos, metadatos, índices, metadatos de la
aplicación.
Consultas, actualizaciones ↔ transacciones
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
11
Aplicaciones Clásicas
 Sistema de Reservaciones en Aerolíneas :
Pasajeros, vuelos, itinerarios, sillas, precios
de tiquetes, disponibilidad
 Sistemas Bancarios: Clientes, cuentas,
préstamos, balances de cuentas, retiros,
consignaciones, máquinas ATM
 Registros corporativos: Ventas, cuentas,
empleados, Costos, Compras
 Sistemas de Personal: Empleados, Pagos,
Descuentos, Pensionados, Nomina, Historias
Laborales
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
12
6
16/08/2014
Primeros DBMS
 Los primeros DBMS aparecen a fines de los años 60. Estos
sistemas evolucionaron a partir de los sistemas de
archivos, los cuales soportaban almacenamiento de
grandes volúmenes de datos, por largo tiempo. Sin
embargo, los sistemas de archivo no garantizaban la
perdida de los datos, a menos que se tuvieran copias; no
soportaban un acceso eficiente a los datos que se
encontraban en una posición desconocida del archivo.
 Los sistemas de archivo no tenian la posibilidad
consultar datos usando un lenguaje apropiado. Solo
podía crear el esquema para los datos (limitado a
estructura del archivo). Tampoco manejaba el control
acceso de varios usuarios a la vez.
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
de
se
la
de
13
Arquitectura de un SGBD
Usuarios
Nivel
lógico
E.E. 1
E.E. 2
E.E. n
Esquemas
Externos
Nivel
físico
Base de
Datos
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
14
7
16/08/2014
Ejemplo de Esquema Externo
Sea una BD que en el esquema conceptual tiene la entidad Alumno con atributos:
nroMatri, nombre, apellido, numDI, direccion, fechanac, telefono. Nos interesa que
unos determinados usuarios vean la BD formada de acuerdo con un esquema
externo que tenga definidas dos entidades, denominadas Estudiante y Persona.
a) La entidad Estudiante podría tener los atributos numeroMatricula (definido
como derivable directamente de nroMatri), el atributo nombrePila (de nombre), el
atributo apellido y el atributo nDI (de numDI).
b) La entidad Persona podría tener el atributo nDI (obtenido de numDI), el atributo
nombre (concatenación de nombre y apellido), el atributo direccion y el atributo
edad (que deriva de fechanac).
El esquema interno o físico contendrá la descripción de la organización física de la
BD: caminos de acceso (índices, hashing, apuntadores, etc.), codificación de los
datos, gestión del espacio, tamaño de la página, etc.
El esquema interno responde a las temas de rendimiento (espacio y tiempo)
planteadas al hacer el diseño físico de la BD y al ajustarlo posteriormente
a las necesidades cambiantes.
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
15
Objetivos de una Base de Datos
Dentro de los objetivos de una base de datos podemos
enumerar: la independencia, minimizar la redundancia,
integridad de los datos, seguridad y control central de
recursos.
INDEPENDENCIA
Se refiere a la protección en los programas de aplicación al
ocurrir modificaciones ocasionadas cuando se altera la
organización física o la estructura lógica de la base.
Independencia física: protección contra modificaciones a
los programas de aplicación debido a cambios de la
estructura del archivo.
Independencia lógica: protección de algunos programas de
aplicación cuando se modifica el esquema debido a
cambios hechos en algunos programas de la aplicación.
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
16
8
16/08/2014
Objetivos de una Base de Datos
INDEPENDENCIA
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
17
Objetivos de una Base de Datos
MINIMIZAR LA REDUNDANCIA EN LOS DATOS
Redundancia: un mismo dato almacenado en forma
repetida.
Guardar datos redundantes produce desperdicio de espacio
de almacenamiento.
El problema más serio, producto de la redundancia, es su
inconsistencia. Esto ocurre debido a las actualizaciones
incompletas de datos duplicados.
Una consecuencia de este problema es el elevado costo de
mantenimiento, además este mantenimiento es una tarea
difícil y propensa a errores.
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
18
9
16/08/2014
Objetivos de una Base de Datos
INTEGRIDAD DE LOS DATOS
Se refiere a medidas de seguridad usadas para mantener
correctos los datos en la base de datos.
Como introducir errores:
i. Falla del equipo (hardware), ejemplo un aterrizaje de las
cabezas sobre el disco que pueden destruir físicamente los
datos en el mismo; o una falla del sistema (caída del
sistema), lo que puede ocasionar una actualización
incompleta.
ii. Actualización incompleta.
iii. Defectos en el software.
iv. Inserción de datos no validos.
v. Errores humanos.
Formas de recuperación: en avance (roll-forward) o en
retroceso (roll-back).
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
19
Objetivos de una Base de Datos
FLUJO DE DATOS Y DE
CONTROL
a) Empieza con una llamada (1) del programa
al SGBD, enviando la operación de consulta.
El SGBD verifica que la sintaxis sea correcta,
que el usuario esté autorizado, etc. Para
hacerlo, el SGBD se basa (2) en el esquema
externo y en el esquema conceptual.
b) Si la consulta es válida, el SGBD
determina, consultando el esquema interno
(3), qué mecanismo debe seguir para
responderla. Hay varias formas y diferentes
caminos para responder a una consulta.
Supongamos que ha elegido aplicar un
hashing al valor del DI, que es el parámetro
de la consulta, y el resultado es la dirección
de la página donde se encuentra (entre
muchos otros) el registro del alumno buscado.
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
20
10
16/08/2014
Objetivos de una Base de Datos
FLUJO DE DATOS Y DE
CONTROL
c) Cuando ya se sabe cuál es la página, el SGBD
comprobará (4) si esta página ya se encuentra en el
área de los buffers (tal vez como resultado de una
consulta anterior de este usuario o de otro). Si no
está, el SGBD, la busca en disco y la carga en los
buffers (5). Si ya está, se ahorra el acceso a disco.
d) Ahora, la página deseada ya está en la memoria
principal. El SGBD extrae, de entre los diferentes
registros, el registro buscado, e interpreta la
codificación y el resultado según lo que diga el
esquema interno.
e) El SGBD aplica a los datos las eventuales
transformaciones lógicas que implica el esquema
externo y las lleva al área de trabajo del programa
(6).
f) Luego el SGBD retorna el control al programa
del usuario (7) y da por termina la ejecución de la
consulta.
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
21
Objetivos de una Base de Datos
SEGURIDAD DE LOS DATOS
 Protección a la b.d. contra accesos o modificaciones no
autorizadas.
 Sin el control de seguridad, los usuarios no tendrían privacidad
en sus datos y el sistema no podría mantener la integridad de los
mismos.
 Mecanismos para el control de seguridad: subesquemas, los
códigos de control de acceso y el (encriptamiento).
CONTROL CENTRAL DE RECURSOS DE DATOS
Debe existir un administrador de la base de datos (DBA) quien
tiene como funciones principales:
Formular y coordinar los requerimientos de la base de datos.
Diseñar los esquemas conceptuales y externos de la base.
Implantar y mantener el sistema de base de datos.
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
22
11
16/08/2014
Modelos de Bases de Datos
 Inicios
 Sistema de Archivos
– Archivos Secuenciales
– Archivos Relativos
– Archivos Indexados
 Modelo
 Modelo
 Modelo
 Modelo
 Modelo
Jerárquico
Red
Relacional
Orientado a Objetos
Relacional Extendido
[Nav92] Shankant B. Navathe, Evolution of Data Modeling
PARA MÁS INFORMACIÓN... for Databases. Communications of the ACM. 35(9), 1992.
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
23
Evolución histórica de las BD
4000-1200 AC – Los Sumerios graban registros sobre tablas de arcilla
296 AC – Ptolomeo comienza a coleccionar libros para la biblioteca de
Alejandría
2000 - AC Se inventa el papel en China
1450 – Johannes Guttenberg inventa la prensa
1879 – Gottlob Frege funda la disciplina moderna de la logica
matemática
1937 – Alan Turing presenta los conceptos de la máquina de Turing
1941 – Alfred Tarski aplica el modelo teórico del cálculo de relaciones
binarias
1962 – Charles Bachman desarrolla la base de datos en red (IDMS)
Integrated Data Management System
1966 – IBM desarrolla el método de acceso Secuencial Indexado
1970-1971 – Edgar F. (Ted) Codd introduce el Modelo Relacional junto
con el Álgebra Relacional y el Cálculo Relacional
PARA MÁS INFORMACIÓN...
11/02/2013
[Nav92] Shankant B. Navathe, Evolution of Data Modeling
for Databases. Communications of the ACM. 35(9), 1992.
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
24
12
16/08/2014
Evolución histórica de las BD
1971 – Rudolf Bayer y Edward McCreight publican un artículo sobre
Btrees, base del mecanismo de indexación en bases de datos
1972 – Se introduce la forma normal Boyce-Codd en el diseño de bases de
datos.
1973 – Charles Bachman gana el premio Turing por su trabajo sobre bases
de datos en el modelo red
1974 – La teoria de las dependencias funcionales y la teoria de
normalización toman importancia
1976 – Eswaran, Gray, Lorie, y Traiger definen los niveles de isolation
levels, serializability, and two-phase locking
Mitad 1970s – Se introduce el commit de Dos-Fases y es implementado en
varios sistemas
1976 – Peter Chen introduce el modelo Entidad-Relación
1977 – Akifumi Makinouchi describe un modelo relacional anidado,
precursor del modelo relacional-objeto
PARA MÁS INFORMACIÓN...
11/02/2013
[Nav92] Shankant B. Navathe, Evolution of Data Modeling
for Databases. Communications of the ACM. 35(9), 1992.
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
25
Evolución histórica de las BD
1979 – Home H. Gallaire y Jack Minker introducen las bases de datos
basadas en lógica, conocidas como bases de datos deductivas
1979 – Fagin, Nievergelt, Pippenger y Strong definen el Hashing
1981 – Edgar F. Codd gana el premio Turing Award por sus
contribuciones a la teoria de las bases de datos
1985 – Se introducen las bases de datos activas
1988 – Las bases de datos Deductive y objeto-relacional se unifican en un
solo modelo.
1985-1993 Se desarrolla la tecnología de las bases de datos orientadas a
Objetos y las bases de datos relacional-objeto
1995 – Se introducen los operadores Datacube OLAP
1995 – Se desarrolla el modelo de datos semi-estructurado
1998 – Jim Gray gana el premio Turing por sus contribuciones en el
campo de las bases de datos y el procesamiento de transacciones
[Nav92] Shankant B. Navathe, Evolution of Data Modeling
PARA MÁS INFORMACIÓN... for Databases. Communications of the ACM. 35(9), 1992.
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
26
13
16/08/2014
Aplicaciones de las bases de datos
2000 - AC Se inventa el papel en China
1450 – Johannes Guttenberg inventa la prensa
1884 – Herman Hollerith inscribe la perforadora de tarjetas para una
patente
1956 – IBM inventa el primer sistema de almacenamiento en disco para
computador
1959 – G. E. libera el sistema 32 ERMA (Electronic Recording Machine
and Accounting) para el Bank of America, que llevará la automatización
a la industria bancaria
1963 – American Airlines introduce el sistema de reservación de línea
aérea de SABRE
1968 – IBM libera IMS (Information Management System), the primer
DBMS[ data Basemanagement System] comercial
1971 – CODASYL publica el reporte del Data Base Task Group (DBTG)
sobre el modelo red
[Nav92] Shankant B. Navathe, Evolution of Data Modeling
PARA MÁS INFORMACIÓN... for Databases. Communications of the ACM. 35(9), 1992.
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
27
Aplicaciones de las bases de datos
1974 – La Universidad de California en Berkeley publica y distribuye el
DBMS Ingres que utiliza el lenguaje de consulta QUEL
1975 – IBM desarrolla System R, un DBMS relacional experimental,
que introduce muchos conceptos hoy comunes, incluyendo el Structured
Query Language (SEQUEL, llamado luego SQL)
1975 – IBM desarrolla Query By Example (QBE), el primer lenguaje de
consulta gráfico desarrollado por Moshe Zloof
1976 – Se publican por IBM las especificaciones de SQL
1977 – Se funda Relational Software Inc., que luego será Oracle
Corporation, la primera compañía en liberar un sistema de bases de datos
relacional basado en el System R, de IBM y usando SQL
1983 – Es liberado el sistema de bases de datos DB2 por IBM
1986 – Ingres compra IngresStar, el primer producto de bases de datos
distribuidas
[Nav92] Shankant B. Navathe, Evolution of Data Modeling
PARA MÁS INFORMACIÓN... for Databases. Communications of the ACM. 35(9), 1992.
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
28
14
16/08/2014
Aplicaciones de las bases de datos
1986 – GemStone compra el primer sistema de bases de datos orientado a
objectos
1986 – La American National Standards Institute (ANSI) publica el
estándar de SQL 1.0
1986 – LDL, un lenguaje de bases de datos basados en lógica es
implementado por MCC Corporation
1987 – Investigadores de la Universidad de California-Berkeley definen
los niveles del RAID (Redundant Arrays of Inexpensive Disks)
1991 – Tim Berners-Lee, un científico del CERN en Génova,
Suiza, desarrolla la www o World Wide Web
1992 – Open Database Connectivity (ODBC) es desarrollado permitiendo
a las máquinas una comunicación transparentecon múltiples bases de
datos
[Nav92] Shankant B. Navathe, Evolution of Data Modeling
PARA MÁS INFORMACIÓN... for Databases. Communications of the ACM. 35(9), 1992.
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
29
Aplicaciones de las bases de datos
1993 – Se publica ODMG 1.0 el estándard para sistemas de bases de
datos orientadas a objetos
1998 – Unified Modeling Language (UML) es estandarizado como una
herramienta de modelaje para diseño de datos y de software
1998 – Es desarrollado eXtensible Markup Language (XML) un
estándard para el intercambio de información, particularmente entre
DBMSs
1999 – Se publica el estándard SQL 3
[Nav92] Shankant B. Navathe, Evolution of Data Modeling
PARA MÁS INFORMACIÓN... for Databases. Communications of the ACM. 35(9), 1992.
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
30
15
16/08/2014
Evolución histórica de las B.D.
60´s
Modelo
Jerárquico
70´s
80´s
Modelo Relacional
Opción para la mayoría de
las nuevas aplicaciones
90´s
Modelo
Orientado a Objeto
B
a
s
e
s
d
e
C
o
n
o
c
i
m
i
e
n
t
o
Hoy
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
31
Evolución Histórica de las BD
Modelo Jerárquico
De los modelos de BD citados, el que apareció primero, a
principios de los años 60, fue el modelo jerárquico. Sus
estructuras son registros interrelacionados en forma de
árboles. El SGBD clásico de este modelo es el IMS/DL1 de
IBM.
Limitaciones
–No representan una estructura de datos
–Excesiva manipulación con estructuras no arbóreas
–Características lógicas y físicas no están separadas
–Enfoque sin soporte teórico
Características
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
32
16
16/08/2014
Evolución Histórica de las BD
Modelo Jerárquico
Vistas lógicas
Llave
PADRE
OWNER
MASTER
DISJOINT
A
Relación
EQUIPO
B
JUGADOR
ENTRENADOR
HIJO
MEMBER
SLAVE
EMBEDED
DIRECTIVO
EXPERIENCIA
Lenguaje de definición de datos DL/I
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
33
Evolución histórica de las BD
Modelo Red
 La red forma natural de representar relaciones
 Conference On Data SYstem Language (CODASYL) – Data
Base Task Group (DBTG)
 Objetos y Relaciones
 Arquitectura de tres niveles
 Grafo dirigido: Nodos – Arcos
 Maneja relaciones binarias uno a muchos (enlaces)
 Registros cuentan con una llave invisible (identificador)
 Registros tipo: (owner: lado 1 – member: lado N)
 Instancia u Ocurrencia
 Conjunto (SET): Relación compuesta por un registro tipo
owner y el nombre del set
 Lenguaje de definición de datos: DDL- DBTG
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
34
17
16/08/2014
Evolución histórica de las BD
CLIENTE
ORD X CLI
ORDEN
TIPO
SET NAME IS ORDXCLI;
OWNER IS CLIENTES;
ORDER IS PERMANENT SORTED BY DEFINED KEYS;
MEMBER IS ORDENES;
ORD X CLI INSERTION IS AUTOMATIC
RETENTION IS MANDATORY;
KEY IS ASCENDING COD-CLIE-ORD IN ORDENES
DUPLICATES NOT ALLOWED
ORDENES NULL IS NOT ALLOWED;
SET SELECTON IS THRU ORDXCLI OWNER
IDENTIFIED BY IDENTIFIER COD-CLIE-CLI IN CLIENTES.
COMANDO TRABAJO
Navegación
Recuperación
Actualización
de
Registros
FIND
GET
ERASE
STORE
MODIFY
Actualización
De
Conjuntos
CONNECT
Adiciona un registro a un set
DISCONNECT Remueve un registro de un set.
RECONNECT Permite a un miembro del conjunto (SET) ser modificado.
11/02/2013
Selecciona y localiza un registro o una instancia de un conjunto.
Recupera el registro actual.
Borra registros.
Adiciona registros a la B.D.
Actualiza un registro.
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
35
Evolución histórica de las BD
Modelo Relacional




Edgar F. Codd: Padre del modelo relacional (1970)
Solidez teórica del modelo: Álgebra y cálculo relacional
Simplicidad: tablas – relaciones
El Modelo Relacional se basa en el concepto de relaciones lógicas
entre los datos
 Álgebra y Calculo relacional: lenguajes de manipulación de datos con
mayor poder en acceso y procesamiento
 Conceptos: relación – tuplas – atributos – dominio –clave candidata –
clave primaria
 Restricciones:
–
–
–
–
No hay dos tuplas iguales en una relación
El orden de las tuplas es irrelevante
El orden de los atributos no es importante
Cada atributo solo puede tomar un solo valor de su dominio
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
36
18
16/08/2014
Evolución histórica de las BD
Modelo Relacional











Correspondencia entre el M. R. y el modelo E-R.
Entidades y relaciones se convierten en tablas
Teoría de la normalización.
Formas normales: 1FN, 2FN, 3FN, FNBC, 4FN, 5FN
Independencia entre datos y su manejo
Independencia lógica y física de los datos
Lenguaje SQL conocido (declarativo)
Poderoso motor y excelente optimizador
Excelente manipulación de operaciones
Buena eficiencia en aplicaciones comerciales
Existen estándares y metodologías de desarrollo
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
37
Evolución histórica de las BD
Modelo Relacional
 Soporte teórico matemático solo funciona con el modelo
original
 Pobre abstracción del mundo real
 La descomposición del mundo real no es natural
 El modelo de datos lógico es pobre para desarrollar
aplicaciones modernas
 El lenguaje SQL tiene limitaciones para ser único lenguaje
usado en el desarrollo de aplicaciones
 Problema de “impedance mistmach”: se debe conocer dos
lenguajes para el desarrollo de una aplicación
 La solidez de los SMBDR tambalea si se agrega más
potencia al modelo de datos lógico y su lenguaje de consulta
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
38
19
16/08/2014
Evolución histórica de las BD
Modelo Orientado a
Objetos
 Permitir el manejo de modelos
de datos que describen el
mundo real de las nuevas
aplicaciones.
 Aplicar la esencia de la POO:
flexibilidad, extensibilidad,
reutilizabilidad, mantenibilidad.
 Mantener las mejores
cualidades del modelo
relacional
 Ofrecer un excelente
optimizador que garantice
eficiencia en el modelo de
datos.
11/02/2013
Objetos: estructura y comportamiento
Estructura: atributos
Comportamiento: métodos
Clases: reagrupan objetos con igual
estructura y comportamiento
Leng. de manipulación de datos
Leng. de programación de BD-OO
Leng. consulta estructurado OQL
Lenguaje algebraico
Lenguaje de cálculo de predicados
Varias álgebras objeto propuestas
Varios cálculos de predicados
propuestos
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
39
Evolución histórica de las BD
Consulta en OQL
Proceso Sintáctico
Expresión algebráica OO ejecutable
SMBDOO
Optimización Lógica y Física
Expresión algebráica OO ejecutable
BD
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
40
20
16/08/2014
Evolución histórica de las BD
Ventajas
– Abstracción en EOO se acerca mucho al mundo real
– Alto grado de independencia entre datos y tratamiento
– Leng. poderoso (LPOO+OQL) busca resolver problema de
”impedance mismatch”
– Lenguaje OQL es superset de SQL
– Fuerte motor con buen optimizador
– Se heredan desarrollos del modelo relacional
Desventajas
– Soporte teórico no esta maduro (en parte formal)
– La experiencia del usuario debe ser más elevada
– No hay estándares de desarrollo lo que retarda su aceptación
– Los SMBDOO no tienen la aceptación de sus predecesores
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
41
Evolución histórica de las BD
Modelo Relacional Extendido
 Aplicaciones modernas no soportan el desarrollo con el modelo
relacional
 Modelo OO ha guiado esta ampliación del modelo relacional
 Se busca integrar lo mejor de los dos enfoques
 Los fabricantes de SMBDR buscan mantener cautivo su mercado
Existe un álgebra relacional extendida?
Existe un nuevo cálculo relacional extendido?
El SQL3 es un superset de SQL




Soporte teórico pobre.
No hay estándares de desarrollo R-E
Motor de los SMBDRE pasa a ser incógnita y a crear desconfianza
Queda la duda teórica sobre la eficiencia de los SMBDRE
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
42
21
16/08/2014
El Futuro de las BD
OLTP: On Line Transaction Proccesing
DATAWAREHOUSE
– Se refiere a arquitecturas, algoritmos, herramientas y técnicas para llevar
datos de diversas fuentes en un repositorio ajustado para consultas y
análisis (BD de solo lectura)
– Almacena información táctica que responde a preguntas de “quien” y
“que”, acerca de eventos pasados
– Usa tecnologías relacionales – esquema en “estrella” y “copo de nieve”
– Extracción y carga, limpieza y conversión de datos, copias y archivado,
manejo de consultas.
OLAP
– Usa múltiples vistas de datos agregados (almacenados en un DWH)
– Permite responder preguntas como “que si” y “porque”
– Operaciones: Drill Down – Roll Up y Slice–Dice
– Tiempo: componente integral de las aplicaciones analíticas
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
43
El Futuro de las BD
DATAMINING (Minería de datos)
– Se refiere una técnica de descubrimiento que no responde a preguntas
particulares.
– Usa algoritmos específicos para analizar los datos e informar que se
ha descubierto.
– DM busca respuestas a preguntas que no han sido respondidas
– Formas: relaciones entre ciertos datos, un agrupamiento de datos o
modelos presentes en un conjunto de datos, para inferir reglas, las
que se usarán para predecir funcionamientos, descubrir modelos, etc.
KDD (Knowledge Data Discovery)
– Se refiere a las técnicas para el descubrimiento de conocimiento
existente en datos y no conocido.
– Utiliza técnicas estadísticas, descubrimiento de conocimiento,
Clustering, Datamining, IA, etc.
PARA MÁS INFORMACIÓN... Ballard, Herreman, Shau, Bell, Kim y Valencic.
Data
Modeling Techniques for Data WareHousing. IBM. 1998.
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
44
22
16/08/2014
El Futuro de las BD
Bases de datos NOSQL (Not Only SQL)
– Se origina en la evolución del Internet;
– No es un tipo de base de datos, sino un conjunto de tipos de bases de
datos, por ejemplo, las bases de datos documentales que son las más
conocidas.
– En NoSQL NO existe ACID (Atomicity, Consistency, Isolation,
durability) como en las bases de datos relacionales.
– Existe BASE (Basic Availability, Soft State, Eventual Consistency)
que da características para el manejo de datos.
 Manipulación de bases de datos por medio
de dispositivos móviles
PARA MÁS INFORMACIÓN... Ballard, Herreman, Shau, Bell, Kim y Valencic.
Data
Modeling Techniques for Data WareHousing. IBM. 1998.
11/02/2013
E.I.S.C. - Prof. Mauricio Fernández - Curso: Bases de Datos I
45
23
Descargar