Capítulo 1: Conceptos Básicos de Bases de Datos

Anuncio
Capı́tulo 1: Conceptos Básicos de Bases de Datos
Dr. José Torres Jiménez
Laboratorio de Tecnologı́as de Información
Centro de Investigación y de Estudios Avanzados del IPN
Cinvestav-Tamaulipas
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
1 / 57
Definición de base de datos
Outline
1
2
3
4
5
6
7
8
9
Definición de base de datos
Sistemas Manejadores de Bases de Datos
Búsqueda Secuencial
Búsqueda binaria
Búsqueda indizada
Tipos de datos en una base de datos
Enfoques para bases de datos
Enfoque Jerárquico
Enfoque de Redes
Introducción a los Sublenguajes de Datos (DSL)
SQL
DML del SQL
Componentes de un Sistema de Base de Datos
Ventajas de Utilizar una Base de Datos
Conceptos Adicionales
Una Arquitectura para un SMBD
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
2 / 57
Definición de base de datos
Base de datos
Una base de datos es una colección de archivos relacionados con la
finalidad de permitir el manejo de la información de alguna compañı́a.
Cada uno de dichos archivos pueden ser vistos como una colección de
registros y cada registro está compuesto de una colección de campos.Cada
uno de los campos de cada registro permite llevar información n de alguna
caracterı́stica o atributo de alguna entidad del mundo real.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
3 / 57
Definición de base de datos
Base de Datos
Si hablamos de una UNIVERSIDAD, las entidades de interés podrı́an
ser: ALUMNOS, PROFESORES, SALONES, etc. Respecto a la
entidad ALUMNO, los atributos o caracterı́sticas importantes podrı́an
ser: NOMBRE,DIRECCION,TELEFONO,CARRERA, MATRICULA,
etc.
Si hablamos de una INDUSTRIA, las entidades de interés podrı́an ser:
DEPARTAMENTOS,EMPLEADOS,PRODUCTOS, etc. Respecto a la
entidad DEPARTAMENTO, los atributos a caracterı́sticas
importantes podrı́an ser: NOMBRE DEL DEPARTAMENTO,
NOMBRE DEL DIRECTOR DEL DEPARTAMENTO, FUNCION
DEL DEPARTAMENTO, etc.
Un archivo de una base de datos también puede ser pensado como una
tabla en la que tenemos renglones y columnas, cada renglón
correspondiendo a un registro del archivo y cada columna correspondiendo
a un campo.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
4 / 57
Sistemas Manejadores de Bases de Datos
Outline
1
2
3
4
5
6
7
8
9
Definición de base de datos
Sistemas Manejadores de Bases de Datos
Búsqueda Secuencial
Búsqueda binaria
Búsqueda indizada
Tipos de datos en una base de datos
Enfoques para bases de datos
Enfoque Jerárquico
Enfoque de Redes
Introducción a los Sublenguajes de Datos (DSL)
SQL
DML del SQL
Componentes de un Sistema de Base de Datos
Ventajas de Utilizar una Base de Datos
Conceptos Adicionales
Una Arquitectura para un SMBD
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
5 / 57
Sistemas Manejadores de Bases de Datos
SMBD
Los sistemas manejadores de bases de datos han sido usados ampliamente
para:
ORGANIZAR Y MANIPULAR GRANDES VOLUMENES DE DATOS DE
LAS EMPRESAS.
Estos Sistemas Manejadores de Bases de Datos solo podrı́an ser corridos
en instalaciones computacionales grandes (MAINFRAMES).
Afortunadamente esta situación empezó a cambiar debido al bajo costo de
las mini/microcomputadoras y a la aparición de Sistemas Manejadores de
Bases de Datos para las microcomputadoras.
Un sistema manejador de base de datos no es más que UN SISTEMA
COMPUTARIZADO PARA LLEVAR REGISTROS.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
6 / 57
Sistemas Manejadores de Bases de Datos
SMBD
Algunas de las facilidades que proporciona el sistema a los usuarios son:
Agregar Nuevos Archivos a la Base de Datos.
Agregar Nuevos Registros a los Archivos
existentes.
Recuperación de Datos.
Actualización de Datos.
Borrar registros.
Borrar Archivos.
Proporcionar los mecanismos para el control del acceso concurrente a
los datos.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
7 / 57
Sistemas Manejadores de Bases de Datos
Una base de datos es una colección de información útil organizada en una
manera especı́fica. Por ejemplo para llevar el control de los teléfonos de
personas podrı́a ser útil una base de datos que constarı́a de los datos de la
tabla agenda.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
8 / 57
Sistemas Manejadores de Bases de Datos
Nombre
Vargas Rubén
Dı́az Raúl
Ruiz Pedro
Martı́nez Raúl
Teléfono
18-20-67
13-67-90
12-89-90
12-54-46
Cuadro 1: Tabla para llevar una agenda telefónica
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
9 / 57
Sistemas Manejadores de Bases de Datos
Búsqueda Secuencial
Búsqueda Secuencial
El problema de la tabla agenda es que, dado que los datos no están
ordenados, buscar un teléfono en partı́cular puede ser lento. Asumiendo
que tenemos N renglones en la tabla, localizar un elemento en particular
tendrı́a los siguientes casos:
Mejor Caso: Sólo se busca en 1 renglón.
Peor Caso: Se busca en los N renglones.
Caso Promedio: Se busca en
Dr. José Torres Jiménez (Cinvestav-LTI)
N+1
2
renglones.
Capı́tulo 1
Bases de Datos
10 / 57
Sistemas Manejadores de Bases de Datos
Búsqueda Secuencial
Los casos Mejor y Peor son fáciles de derivar para calcular el caso
promedio se ha hecho uso de la fórmula: CasoPromedio= NΣTodosCasos
úmeroCasos . Y
N
P
tenemos que: ΣTodosCasos =
i. Para obtener simbólicamente el valor
i=1
de esta sumatoria sumemos dos veces de la siguiente manera:
1
2
3
... N − 1
N
N
N −1
N −2
... 2
1
de donde
(N + 1) (N + 1) (N + 1) ... (N + 1) (N + 1)
N
P
N(N + 1) = 2
i
i=1
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
11 / 57
Sistemas Manejadores de Bases de Datos
Concluyendo entonces que:
N
P
i=1
i =
Búsqueda Secuencial
N(N+1)
.
2
El valor de NumeroCasos es N
N(N+1)
por lo que concluimos que: CasoPromedio= N2 = (N+1)
2 . Este tipo de
búsqueda se le conoce como búsqueda secuencial y es la única alternativa
de búsqueda cuando los datos no están ordenados y no se cuenta con
estructuras auxiliares.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
12 / 57
Sistemas Manejadores de Bases de Datos
Búsqueda binaria
Búsqueda binaria
Si los datos anteriores son ordenados (lo cuál podrı́a hacerse con un
algoritmo similar al QuickSort que tiene un orden de N log N) esto se
ilustra en la tabla 2. Podemos utilizar una búsqueda binaria. La ventaja de
la búsqueda binaria es que en cada operación el tamaño del problema se
reduce a la mitad.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
13 / 57
Sistemas Manejadores de Bases de Datos
Búsqueda binaria
Nombre
Dı́az Raúl
Martı́nez Raúl
Ruiz Pedro
Vargas Rubén
Teléfono
13-67-90
12-54-46
12-89-90
18-20-67
Cuadro 2: Tabla para llevar una agenda telefónica
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
14 / 57
Sistemas Manejadores de Bases de Datos
Búsqueda binaria
Originalmente el tamaño del problema de búsqueda de un elemento en
particular es N, con el primer intento el tamaño del problema se reduce a:
N
2
N
con el segundo intento se reduce a: 22 = 2N2 , y con el iésimo intento se
reduce a: 2Ni , de esta manera en el peor de los casos se tendrı́an que
realizar tantos intentos como el valor de i en la expresión 2Ni , despejando
de esta fórmula tenemos que: i = ⌈log2 (N)⌉ .
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
15 / 57
Sistemas Manejadores de Bases de Datos
Búsqueda binaria
Como conclusión tenemos entonces:
Mejor Caso= 1
Peor Caso= ⌈log2 (N)⌉ .
Caso Promedio=
1+⌈log2 (N)⌉
2
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
16 / 57
Sistemas Manejadores de Bases de Datos
Búsqueda indizada
Búsqueda indizada
El inconveniente de utilizar una búsqueda binaria es que al hacer altas,
bajas y cambios sobre una tabla ordenada, tenemos que organizar los
datos para que se mantengan ordenados, y esto podrı́a tomar mucho
tiempo. Ante este problema una alternativa es la utilización de un indice
(similar al de la parte final de un libro) que contendrı́a el nombre de la
persona y un apuntador a dónde esta el elemento dentro de la tabla. Como
puede notarse, los datos en la tabla podrán estar fı́sicamente
desordenados, pero a través del ı́ndice se ven lógicamente ordenados. El
ı́ndice (normalmente) es un archivo aparte del archivo que contiene los
datos, la manera más popular de construir y mantener un ı́ndice es a
traves del algoritmo de arboles balanceados B-Tree.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
17 / 57
Sistemas Manejadores de Bases de Datos
Búsqueda indizada
Los casos para este tipo de búsqueda son:
Mejor Caso= 1
Peor Caso= ⌈logm (N)⌉ .
Caso Promedio=
1+⌈logm (N)⌉
2
Dónde m indica el número de vı́as que tiene el árbol. La gran ventaja de
un indice es que el algorimo de mantenimiento es mucho más eficiente que
el algoritmo para mantener un archivo ordenado, y por otro lado es mucho
más rápido dado que m es mayor que 2.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
18 / 57
Tipos de datos en una base de datos
Outline
1
2
3
4
5
6
7
8
9
Definición de base de datos
Sistemas Manejadores de Bases de Datos
Búsqueda Secuencial
Búsqueda binaria
Búsqueda indizada
Tipos de datos en una base de datos
Enfoques para bases de datos
Enfoque Jerárquico
Enfoque de Redes
Introducción a los Sublenguajes de Datos (DSL)
SQL
DML del SQL
Componentes de un Sistema de Base de Datos
Ventajas de Utilizar una Base de Datos
Conceptos Adicionales
Una Arquitectura para un SMBD
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
19 / 57
Tipos de datos en una base de datos
Tipos de datos en una base de datos
Los datos pueden ser divididos en dos grandes categorı́as:
ALFANUMERICA
NUMERICA
Los datos alfanuméricos consisten de caracteres alfabéticos (A a la Z, ó a
la z), caracteres numéricos (0 al 9) y de algunos sı́mbolos especiales como
# $ % . v.g. el número de serie de un televisor: RTA-XA100
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
20 / 57
Tipos de datos en una base de datos
Los datos numéricos están compuestos por los dı́gitos del 0 al 9, punto
decimal y signo. v.g. el sueldo de un empleado: 1000000.00
Adicionalmente a estos tipos existen otros tipos que son utilizados como:
LÓGICO
FECHA
MEMO
GENERAL (Puede contener objetos audio, vı́deo, imágenes,...)
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
21 / 57
Enfoques para bases de datos
Outline
1
2
3
4
5
6
7
8
9
Definición de base de datos
Sistemas Manejadores de Bases de Datos
Búsqueda Secuencial
Búsqueda binaria
Búsqueda indizada
Tipos de datos en una base de datos
Enfoques para bases de datos
Enfoque Jerárquico
Enfoque de Redes
Introducción a los Sublenguajes de Datos (DSL)
SQL
DML del SQL
Componentes de un Sistema de Base de Datos
Ventajas de Utilizar una Base de Datos
Conceptos Adicionales
Una Arquitectura para un SMBD
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
22 / 57
Enfoques para bases de datos
Enfoques para bases de datos
Existen 3 enfoques principales para el manejo de BASES DE DATOS:
ENFOQUE RELACIONAL
ENFOQUE JERÁRQUICO
ENFOQUE DE REDES
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
23 / 57
Enfoques para bases de datos
Enfoque relacional
El enfoque relacional “ve” a los datos como un conjunto de
TABLAS(ARCHIVOS) constando de un conjunto de
RENGLONES(REGISTROS) y cada RENGLON constando de un
conjunto de COLUMNAS(CAMPOS). La RELACION entre las
TABLAS(ARCHIVOS) se establece solo por nombres de atributos
comunes.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
24 / 57
Enfoques para bases de datos
Ejemplo
Tenemos una empresa en la que se necesita tener la información de las
PARTES que utiliza, los PROVEEDORES de la empresa y el detalle de
QUE PARTES SUMINISTRA UN PROVEEDOR y LOS PROVEEDORES
DE UNA PARTE (Relación N a M). Se sabe que un proveedor puede
suministrar 0 ó más partes y que una parte puede ser suministrada por 0
ó más proveedores. Nuestra base de datos podrı́a ser vista como lo ilustra
la figura 1.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
25 / 57
Enfoques para bases de datos
PROVE
NOMBRE
CALIDAD
PARTE
NOMBRE
COLOR
S1
JUAN
9
P1
TUERCA
GRIS
S2
PEDRO
8
P2
CLAVO
GRIS
S3
RAMÓN
10
P3
TUERCA
BLANCO
S4
ANA
7
P4
LÁPIZ
AMARILLO
PROVE
PARTE
S1
P1
CANTIDAD
100
S2
P2
300
S2
P3
500
S3
P4
200
S4
P1
100
S4
P2
150
S4
P3
200
S4
P4
300
Figura 1: Modelo Relacional de la Base de Datos de Partes-Proveedores y Pedidos
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
26 / 57
Enfoques para bases de datos
Enfoque Jerárquico
Enfoque jerarquico
Permite “ver” una base de datos como compuesta de un CONJUNTO DE
RELACIONES PADRE-HIJO, v.g. la base de datos anterior se verı́a como
en la figura 2. En donde se modela claramente las partes que suministra un
proveedor, pero no serı́a posible representar partes que no sean
suministradas (NO PUEDE HABER HIJOS SIN PADRE).
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
27 / 57
Enfoques para bases de datos
Enfoque Jerárquico
PROVE
NOMBRE
CALIDAD
S1
JUAN
9
PARTE
NOMBRE
COLOR
CANTIDAD
P1
TUERCA
GRIS
100
PROVE
NOMBRE
CALIDAD
S2
PEDRO
8
PARTE
NOMBRE
COLOR
CANTIDAD
P2
CLAVO
GRIS
300
P3
TUERCA
BLANCO
500
PROVE
NOMBRE
CALIDAD
S3
RAMÓN
10
PARTE
NOMBRE
COLOR
CANTIDAD
P4
LAPIZ
AMARILLO
200
PROVE
NOMBRE
CALIDAD
S4
ANA
7
PARTE
NOMBRE
COLOR
CANTIDAD
P1
TUERCA
GRIS
100
150
P2
CLAVO
GRIS
P3
TUERCA
BLANCO
200
P4
LAPIZ
AMARILLO
300
Figura 2: Modelo Jerárquico de Bases de Datos de Partes, Proveedores y Pedidos
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
28 / 57
Enfoques para bases de datos
Enfoque Jerárquico
Además no es fácil saber quien suministra una determinada parte, por lo
que se podrı́a modelar la misma base de datos como se ilustra en la figura
3
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
29 / 57
Enfoques para bases de datos
Enfoque Jerárquico
PARTE
NOMBRE
COLOR
P1
TUERCA
GRIS
PROVEE
NOMBRE
CALIDAD
S1
JUAN
9
100
S4
ANA
7
100
PARTE
NOMBRE
COLOR
P2
CLAVO
GRIS
CANTIDAD
PARTE
NOMBRE
COLOR
CANTIDAD
S2
PEDRO
8
300
S4
ANA
7
150
PARTE
NOMBRE
COLOR
P3
TUERCA
BLANCO
PARTE
NOMBRE
COLOR
CANTIDAD
S2
PEDRO
8
500
S4
ANA
7
200
PARTE
NOMBRE
COLOR
P4
LAPIZ
AMARILLO
PROVEE
NOMBRE
CALIDAD
CANTIDAD
S3
RAMON
10
200
S4
ANA
7
300
Figura 3: Otra forma del Modelo Jerárquico de Bases de Datos de Partes,
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
30 / 57
Enfoques para bases de datos
Enfoque Jerárquico
Pero, en este caso, no es posible tener la información de proveedores que
no suministran algo, y no es fácil identificar las partes que suministra un
proveedor. En ambos casos el enfoque jerárquico tiene la desventaja de
una gran redundancia de datos.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
31 / 57
Enfoques para bases de datos
Enfoque de Redes
Enfoque de redes
Modela la información como conjuntos, donde hay dos tipos de conjuntos:
PROPIETARIOS(Equivale a un padre en el enfoque jerárquico) y
MIEMBROS (Equivale a un hijo dentro del enfoque jerárquico).
En el enfoque de REDES la redundancia se reduce al máximo, no se pierde
información debido a que una parte no se suministre o a que un proveedor
no suministre alguna parte.
Es el enfoque más eficiente para representar relaciones N a M, sin
embargo, tiene la desventaja de ser MUY COMPLEJO. El modelo de
bases de datos de este enfoque se puede ver en la figura 4
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
32 / 57
Enfoques para bases de datos
Enfoque de Redes
PROVEE
NOMBRE
CALIDAD
PROVEE
NOMBRE
CALIDAD
PROVEE
NOMBRE
CALIDAD
PROVEE
NOMBRE
CALIDAD
S1
JUAN
9
S2
PEDRO
8
S3
RAMON
10
S4
ANA
7
CANTIDAD
CANTIDAD
CANTIDAD
CANTIDAD
CANTIDAD
CANTIDAD
CANTIDAD
CANTIDAD
100
300
500
200
100
150
200
300
PARTE
NOMBRE
COLOR
PARTE
NOMBRE
COLOR
PARTE
NOMBRE
COLOR
PARTE
NOMBRE
COLOR
P1
TUERCA
GRIS
P2
CLAVO
GRIS
P3
TUERCA
BLANCO
P4
LÁPIZ
AMARILLO
Figura 4: Modelo de redes de Bases de Datos de Partes, Proveedores y Pedidos
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
33 / 57
Enfoques para bases de datos
Enfoque de Redes
De los tres enfoques el más usado y el que tiene bases más formales es el
enfoque relacional, motivo por el cuál casi el 100 de los manejadores son
construidos con este enfoque.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
34 / 57
Introducción a los Sublenguajes de Datos (DSL)
Outline
1
2
3
4
5
6
7
8
9
Definición de base de datos
Sistemas Manejadores de Bases de Datos
Búsqueda Secuencial
Búsqueda binaria
Búsqueda indizada
Tipos de datos en una base de datos
Enfoques para bases de datos
Enfoque Jerárquico
Enfoque de Redes
Introducción a los Sublenguajes de Datos (DSL)
SQL
DML del SQL
Componentes de un Sistema de Base de Datos
Ventajas de Utilizar una Base de Datos
Conceptos Adicionales
Una Arquitectura para un SMBD
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
35 / 57
Introducción a los Sublenguajes de Datos (DSL)
Muchos sistemas manejadores de base de datos tienen un SUBLENGUAJE
DE DATOS (Data Sub Language) que está constituido en dos partes:
Lenguaje de Definición de Datos (Data Definition Language DDL)
Lenguaje de Manipulación de Datos (Data Manipulation Language
DML)
El lenguaje de definición de datos está constituido por las instrucciones
que permiten crear/mantener:
Las estructuras de almacenamiento de los archivos de datos. La estructura
de las estrategias de acceso(Heap, Indice, Hash, etc.)
El lenguaje de manipulación está compuesto por las instrucciones que
permiten realizar ALTAS, BAJAS, CAMBIOS y OBTENCION DE
INFORMACION de los archivos de datos.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
36 / 57
Introducción a los Sublenguajes de Datos (DSL)
SQL
SQL
Dentro de los sublenguajes de datos más difundidos y de amplio uso
tenemos el SQL (Structured Query Language).
DDL del SQL
Como ejemplo del DDL del SQL veremos como se crea una tabla.
Supongamos que deseamos crear una base de datos simple(Compuesta por
una sola tabla), para llevar el control de calificaciones de los exámenes de
alumnos de una materia, suponiendo que los atributos importantes son:
MATRICULA
NOMBRE
PARCIAL 1
PARCIAL 2
PARCIAL 3
FINAL
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
37 / 57
Introducción a los Sublenguajes de Datos (DSL)
SQL
La forma de crear esta tabla serı́a:
CREATE TABLE CALIF(MATRICULA INTEGER NOT NULL,
NOMBRE CHAR(35),
PARCIAL1 SMALLINT,
PARCIAL2 SMALLINT,
PARCIAL3 SMALLINT,
FINAL SMALLINT);
Para soportar el concepto de llave (No duplicados) es necesario crear un
ı́ndice único sobre los atributos llave (que fueron especificados con NOT
NULL):
CREATE UNIQUE INDEX CALIX ON CALIF (MATRICULA);
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
38 / 57
Introducción a los Sublenguajes de Datos (DSL)
SQL
Supongamos que ya se cargaron datos, un ejemplo de contenido es dado
en la tabla 3.
MATRICULA
331243
335467
337890
558967
578990
654321
723445
NOMBRE
JUAN MARTINEZ
PEDRO LOPEZ
MARIA ALONSO
FRIDA GUTIERREZ
DIANA CAMACHO
LUIS PEREZ
FRANCIS RIQUELME
PARCIAL1
8
10
9
7
6
8
8
PARCIAL2
8
10
9
8
7
5
6
PARCIAL3
6
6
6
7
8
9
10
FINAL
7
9
10
10
9
9
8
Cuadro 3: Tabla para control de calificaciones
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
39 / 57
Introducción a los Sublenguajes de Datos (DSL)
DML del SQL
Inserción
INSERT INTO CALIF VALUES (331232,
’LUIS PEREZ MARTINEZ’,
1,1,1,1);
Borrado
DELETE
FROM CALIF
WHERE MATRICULA=331289;
Actualización
UPDATE CALIF
SET PARCIAL1=PARCIAL1+1;
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
40 / 57
Introducción a los Sublenguajes de Datos (DSL)
DML del SQL
Consulta
SELECT AVG(PARCIAL1)
FROM CALIF;
SELECT MATRICULA, NOMBRE
FROM CALIF
WHERE PARCIAL1=PARCIAL2;
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
41 / 57
Componentes de un Sistema de Base de Datos
Outline
1
2
3
4
5
6
7
8
9
Definición de base de datos
Sistemas Manejadores de Bases de Datos
Búsqueda Secuencial
Búsqueda binaria
Búsqueda indizada
Tipos de datos en una base de datos
Enfoques para bases de datos
Enfoque Jerárquico
Enfoque de Redes
Introducción a los Sublenguajes de Datos (DSL)
SQL
DML del SQL
Componentes de un Sistema de Base de Datos
Ventajas de Utilizar una Base de Datos
Conceptos Adicionales
Una Arquitectura para un SMBD
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
42 / 57
Componentes de un Sistema de Base de Datos
Componentes de un sistema de base de datos
Involucra los siguientes componentes: Datos +Hardware +Software
+Usuarios
Datos
Los datos dentro de una base de datos están integrados y son
compartidos: INTEGRADOS Puesto que la base de datos es la unificación
de varios archivos con redundancia parcial o totalmente eliminada.
COMPARTIDOS Esto implica que los datos pueden ser accesados
concurrentemente por diferentes usuarios.
Hardware
Consiste básicamente de unidades de almacenamiento secundario,
principalmente discos duros, discos compactos, cintas magnéticas etc.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
43 / 57
Componentes de un Sistema de Base de Datos
Software
Entre la base de datos fı́sica y los usuarios existe una capa de Software
denominada SISTEMA MANEJADOR DE BASE DE DATOS(SMBD
ó DBMS). Todos los requerimientos de acceso a la base de datos son
manejados por el SMBD.
Usuarios
Hay 3 tipos de Usuarios:
Programador de Aplicaciones: Se encarga de escribir programas para
el manejo de la Base de Datos Usando un lenguaje de alto nivel.
Usuario Final: Es el que utiliza un lenguaje de comandos (Query
Language) y/o Programas de aplicación.
Administrador de la base de datos (DBA): Es el responsable de definir
polı́ticas de acceso a la Base de Datos.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
44 / 57
Ventajas de Utilizar una Base de Datos
Outline
1
2
3
4
5
6
7
8
9
Definición de base de datos
Sistemas Manejadores de Bases de Datos
Búsqueda Secuencial
Búsqueda binaria
Búsqueda indizada
Tipos de datos en una base de datos
Enfoques para bases de datos
Enfoque Jerárquico
Enfoque de Redes
Introducción a los Sublenguajes de Datos (DSL)
SQL
DML del SQL
Componentes de un Sistema de Base de Datos
Ventajas de Utilizar una Base de Datos
Conceptos Adicionales
Una Arquitectura para un SMBD
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
45 / 57
Ventajas de Utilizar una Base de Datos
Ventajas de utilizar una base de datos
Compactez No se necesitan voluminosos archivos de papel.
Velocidad. La velocidad de operación es mayor a la que se tiene con
un sistema manual.
Menos Tedio
Actualización. La información se puede mantener más fácilmente
actualizada.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
46 / 57
Ventajas de Utilizar una Base de Datos
Ventajas de Tener el Control Centralizado de una Base de Datos
Se puede reducir la redundancia. Se evita la inconsistencia. Los datos
pueden ser compartidos. Se pueden reforzar los estándares. Se tiene el
control del acceso. La integridad puede ser mantenida. Se pueden
balancear requerimientos conflictivos.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
47 / 57
Ventajas de Utilizar una Base de Datos
Inconsistencia
Cuando dos instancias del mismo elemento no tienen valores iguales. v.g.
Si hay dos registros para el alumno con matricula 331540 (en diferentes
archivos), los atributos iguales deben tener los mismos valores.
Falta de Integridad
Se da la falta de integridad cuando una instancia de un elemento tiene
valores raros: v.g. Que el número de horas trabajadas a la semana por un
empleado sea de 400.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
48 / 57
Ventajas de Utilizar una Base de Datos
Independencia de Datos
Se dice que un sistema tiene INDEPENDENCIA DE DATOS:
Si los programas de aplicación no tienen que ser modificados al cambiar: la
estructura de almacenamiento y/o la estrategia de acceso.
Dicho de otro modo es:
LA INMUNIDAD DE LAS APLICACIONES A LOS CAMBIOS EN LA
ESTRUCTURA DE ALMACENAMIENTO Y/O LA ESTRATEGIA DE
ACCESO.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
49 / 57
Conceptos Adicionales
Outline
1
2
3
4
5
6
7
8
9
Definición de base de datos
Sistemas Manejadores de Bases de Datos
Búsqueda Secuencial
Búsqueda binaria
Búsqueda indizada
Tipos de datos en una base de datos
Enfoques para bases de datos
Enfoque Jerárquico
Enfoque de Redes
Introducción a los Sublenguajes de Datos (DSL)
SQL
DML del SQL
Componentes de un Sistema de Base de Datos
Ventajas de Utilizar una Base de Datos
Conceptos Adicionales
Una Arquitectura para un SMBD
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
50 / 57
Conceptos Adicionales
Conceptos adicionales
Campo Almacenado: Es la unidad de datos más pequeña que se
encuentra almacenada.
Registro Almacenado: Es una colección de campos almacenados que
están relacionados.
Archivo Almacenado: Es el conjunto de todas las ocurrencias de un
registro almacenado.
Representación de Datos Numéricos: Se pueden almacenar como: Un
String de Caracteres, un Decimal Empacado, en Binario.
Representación de Datos Caracter: Se Pueden almacenar en ASCII,
EBCDIC, etc.
Manejo de Objetos: Se pueden manejar como campos objeto que pueden
ser Gráficas, Sonido, Hojas de Calculo, Textos, etc.
Codificación de Datos: Resulta útil en ocasiones almacenar los datos en
forma codificada. v.g. En lugar de almacenar los nombres de los colores
podrı́amos codificarlos para ahorrar espacio y facilidad de uso de acuerdo a
la tabla 4.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
51 / 57
Conceptos Adicionales
Color
Negro
Café
Rojo
Naranja
Amarillo
Verde
Azul
Violeta
Gris
Blanco
Número
0
1
2
3
4
5
6
7
8
9
Cuadro 4: Tabla de Codificación de Colores
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
52 / 57
Conceptos Adicionales
Materialización de Datos
Existen campos virtuales, debido a que no tienen equivalencia con un
campo almacenado, y para poder ser accesados deben ser calculados. v.g.
Un campo virtual llamado PROMEDIO que depende de otros datos, de
forma que para ser accesado debe ser calculado primero.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
53 / 57
Una Arquitectura para un SMBD
Outline
1
2
3
4
5
6
7
8
9
Definición de base de datos
Sistemas Manejadores de Bases de Datos
Búsqueda Secuencial
Búsqueda binaria
Búsqueda indizada
Tipos de datos en una base de datos
Enfoques para bases de datos
Enfoque Jerárquico
Enfoque de Redes
Introducción a los Sublenguajes de Datos (DSL)
SQL
DML del SQL
Componentes de un Sistema de Base de Datos
Ventajas de Utilizar una Base de Datos
Conceptos Adicionales
Una Arquitectura para un SMBD
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
54 / 57
Una Arquitectura para un SMBD
Una arquitectura para un SMBD
La arquitectura consta de 3 niveles que son ilustrados en la figura 5, los
niveles son:
Nivel Interno: Es el más cercano al almacenamiento fı́sico. Se refiere
a la forma de almacenamiento de los datos.
Nivel Externo: Es el más cercano al usuario, se refiere a la forma en
que el usuario final v̈el̈os datos.
Nivel Conceptual: Es un nivel de indirección entre los otros dos, se
refiere a la forma en que los diseñadores de sistemas ven los datos.
Trata de expresar como son los datos realmente.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
55 / 57
Una Arquitectura para un SMBD
VISTA EXTERNA 1
VISTA EXTERNA 2
VISTA EXTERNA N
VISTA CONCEPTUAL
VISTA INTERNA
Figura 5: Arquitectura de un SMBD de tres niveles
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
56 / 57
Una Arquitectura para un SMBD
Vistas
Solo existe una vista interna.
Solo existe una vista conceptual.
Existen tantas vistas externas según se necesiten.
Entre una vista externa y la vista conceptual existe un mapeo
EXTERNO / CONCEPTUAL.
Entre la vista conceptual y la vista interna existe un mapeo
CONCEPTUAL / INTERNO.
El nivel interno se refiere a la forma en la que son almacenados /
accesados fı́sicamente los datos.
Dr. José Torres Jiménez (Cinvestav-LTI)
Capı́tulo 1
Bases de Datos
57 / 57
Descargar