3. conceptos en bases de datos

Anuncio
Autor: Luis Felipe Wanumen Silva
1
ENCICLOPEDIA CONOCIENDO
TOMO XL
TEORIA DE
BASES DE DATOS
ELABORADO POR:
LUIS FELIPE WANUMEN SILVA
INGENIERO DE SISTEMAS
Y AUTOR DE LA ENCICLOPEDIA CONOCIENDO
CONTIENE
DEFINICIONES,
CONCEPTOS,
TEOREMAS,
ENUNCIADOS Y ALGO
MÁS.
PRIMERA VERSIÓN AUN NO REVISADA
SANTAFE DE BOGOTA D.C.
AGOSTO DE 2003.
Enciclopedia Conociendo
Teoría de Bases de Datos
Autor: Luis Felipe Wanumen Silva
2
1. TEORIA SOBRE BASES DE DATOS RELACIONALES
1.1. DOMINIO:
Un dominio es un conjunto de valores. En la mayoría de libros los autores denotan a un
dominio con la letra “D”. Pero bueno, con el ánimo de lograr mayor claridad de esta
definición, a continuación se muestran algunos ejemplos de dominios:
D(color) ={amarillo, azul, rojo, verde, violeta, magenta, púrpura, gris}
D(enteros) = Todos los números enteros
Para los dos dominios descritos anteriormente podemos hacer las siguientes
aclaraciones:
D(color)
Es un dominio finito
Matemáticamente fue escrito por
extensión
Dominio numerado que detalla con
precisión los elementos que
componen dicho dominio
D(enteros)
Es un dominio infinito
Matemáticamente fue escrito por
generalización
Dominio no enumerado, el cual se detalla
por medio de una expresión que generalice
a los elementos que constituyen el
dominio. A esta forma de expresar los
elementos se le conoce comúnmente como
predicado
1.2. ATRIBUTO:
Un atributo es una pareja ordenada (N, D) donde N es el nombre del atributo y D es el
Dominio. Por ejemplo los siguientes son atributos válidos basados en el dominio
D(color):
(Color_puerta, D(color) )
(Color_carro, D(color) )
1.3. ESQUEMA:
Un esquema es una pareja ordenada (T, A) en la cual “T” hace referencia al nombre de
la tabla y “A” hace referencia a un conjunto de atributos obviamente todos con atributos
diferentes para poder identificarlos.
Ejemplo: Expresar la siguiente tabla en notación matemática:
Enciclopedia Conociendo
Teoría de Bases de Datos
Autor: Luis Felipe Wanumen Silva
CODIGO
Entre 1 y 5000
3
ESTUDIANTE
ESTATURA
EDAD
Entre 20cm y 250cm Entre 1 y 120 años
COLOR_DE_PIEL
Negra, blanca,
trigueña, canela,
amarilla, morena
Lista de dominios
D1 = {x! x es entero y 1<= x <= 5000}
D2 = {x! x es real y 20<= x <= 250}
D3 = {x! x es entero y 1<= x <= 120}
D4 = {negra, blanca, trigueña, canela, amarilla, morena}
Lista de atributos
A1 = (CODIGO, D1)
A2 = (ESTATURA, D2)
A3 = (EDAD, D3)
A4 = (COLOR_DE_PIEL, D4)
Conjunto finito de atributos
C = {A1, A2, A3, A4}
Relación de “ESTUDIANTE”
(ESTUDIANTE, C)
Podemos pues comprobar que matemáticamente una tabla se define como una relación,
pues una relación es una pareja ordenada conformada por un nombre de la relación y un
conjunto finito de atributos que para este caso son: {A1, A2, A3, A4}.
1.4. ASOCIACIÓN:
Es una pareja ordenada basada en un atributo. Por ejemplo para el atributo:
A1 = (CODIGO, D1)
Expuesto en el ejercicio anterior, podemos asegurar que una asociación es una pareja
(CODIGO, VALOR), donde VALOR  D1. Por decir algo, algunos ejemplos de
asociaciones para el atributo A1 son:
(CODIGO, 5)
(CODIGO, 6)
(CODIGO, 20)
(CODIGO, 50)
(CODIGO, 359)
(CODIGO, 4970)
No es que se quiera ser un poco extenso en la explicación de las asociaciones, lo que
sucede es que dado que es un tema de mucha importancia para comprender los
Enciclopedia Conociendo
Teoría de Bases de Datos
Autor: Luis Felipe Wanumen Silva
4
conceptos que después vienen, es necesario realizar un ejercicio que ejemplifique y
aclare posibles dudas sobre las asociaciones.
Expresar en términos puramente matemáticos la siguiente tabla:
CODIGO
Entre 1 y 5000
ESTUDIANTE
ESTATURA
EDAD
Entre 20cm y 250cm Entre 1 y 120 años
12
18
50
163 cm
174 cm
150 cm
25 años
21 años
34 años
COLOR_DE_PIEL
Negra, blanca,
trigueña, canela,
amarilla, morena
trigueña
canela
blanca
Lista de dominios
D1 = {x! x es entero y 1<= x <= 5000}
D2 = {x! x es real y 20<= x <= 250}
D3 = {x! x es entero y 1<= x <= 120}
D4 = {negra, blanca, trigueña, canela, amarilla, morena}
Lista de atributos
A1 = (CODIGO, D1)
A2 = (ESTATURA, D2)
A3 = (EDAD, D3)
A4 = (COLOR_DE_PIEL, D4)
Conjunto finito de atributos
C = {A1, A2, A3, A4}
Relación de “ESTUDIANTE”
(ESTUDIANTE, C)
Asociaciones basadas en el atributo A1 = (CODIGO, D1)
(CODIGO, 12)
(CODIGO, 18)
(CODIGO, 50)
Asociaciones basadas en el atributo A2 = (ESTATURA, D2)
(ESTATURA, 163)
(ESTATURA, 174)
(ESTATURA, 150)
Asociaciones basadas en el atributo A3 = (EDAD, D3)
(EDAD, 25)
(EDAD, 21)
(EDAD, 34)
Asociaciones basadas en el atributo A4 = (COLOR_DE_PIEL, D4)
(COLOR_DE_PIEL, trigueña)
Enciclopedia Conociendo
Teoría de Bases de Datos
Autor: Luis Felipe Wanumen Silva
5
(COLOR_DE_PIEL, canela)
(COLOR_DE_PIEL, blanca)
1.5. TUPLA:
En términos de un usuario normal de una base de datos se puede definir una tupla como
un registro, una fila o en términos castizos como un renglón específico de una tabla.
Pero para definir matemáticamente una tupla es necesario definirla basada en los
atributos de la misma.
Comencemos diciendo que dado un esquema (T, C) (Recordemos que T hace referencia
al nombre de la tabla y C al conjunto finito de atributos), en donde C = {A1, A2, - - An}, y donde cada atributo Ai está relacionado con el Dominio Di. En otras palabras
cada atributo Ai se define así:
Ai = (Nombre(i), Di)
Y para cada atributo Ai existen las siguientes asociaciones:
(Nombre(i), x(j,i))
en donde 1<= j <= Número máximo de filas
Una tupla será pues el conjunto de asociaciones
(Nombre(i), x(j,i))
en donde 1<= i <= n, para un j específico que concuerda exactamente con el número
de fila o de tupla que se quiere obtener.
Como podemos apreciar pues, una tupla es un conjunto de asociaciones, una por cada
atributo Ai del esquema.
1.6. CUERPO DE UNA RELACIÓN:
En la sección anterior habíamos concluido que una tupla era el siguiente conjunto de
asociaciones:
(Nombre(i), x(j,i))
en donde 1<= i <= n, para un j específico que concuerda exactamente con el número
de fila o de tupla que se quiere obtener.
Pues bien, el cuerpo de una relación es un conjunto de tuplas
(Nombre(i), x(j,i)) 1<= i <= n que van desde la tupla para j=1, hasta la tupla j=K, donde
K es el número total de tuplas en el esquema.
Enciclopedia Conociendo
Teoría de Bases de Datos
Autor: Luis Felipe Wanumen Silva
6
1.7. CARDINALIDAD:
En términos bien sencillos podemos decir que la cardinalidad hace referencia al número
de filas de una tabla, es decir que para el caso de la notación que venimos utilizando, el
cuerpo de una relación puede ser expresado así:
Todas las asociaciones
(Nombre(i), x(j,i)) 1<= i <= n que van desde la tupla para j=1, hasta la tupla j=K
Donde K es la cardinalidad en el esquema.
1.8. GRADO:
En términos bien sencillos, podemos afirmar que el grado es el número de columnas de
una tabla. Con lo cual podemos expresar el cuerpo de una relación de la siguiente
manera:
Todas las asociaciones
(Nombre(i), x(j,i)) 1<= i <= n que van desde la tupla para j=1, hasta la tupla j=K
Donde K es la cardinalidad en el esquema.
Y donde n es el grado en el esquema.
1.9. UNA RELACIÓN:
Es un conjunto de esquemas relacionales, junto con el cuerpo correspondiente a dicho
esquema.
1.10. UNA BASE DE DATOS RELACIONAL:
Es un conjunto finito de relaciones, en donde los nombres de las relaciones no pueden
estar repetidos.
1.11. EQUIVALENCIA DE LOS TÉRMINOS MATEMÁTICOS:
Términos matemáticos
Dominio
Atributo
Esquema
Asociación
Tupla
Cuerpo de una relación
Enciclopedia Conociendo
Equivalencia en términos de tablas
Conjunto de valores posibles que puede
tomar una columna
Nombre de una columna de una tabla
Encabezados de una tabla
Celda de una tabla
Fila de una tabla
Todas las filas de una tabla (Sin incluir los
Teoría de Bases de Datos
Autor: Luis Felipe Wanumen Silva
Cardinalidad
Grado
Una relación
Una base de datos relacional
7
encabezados)
Número de filas de una tabla
Número de columnas de una tabla
Encabezados y filas de una tabla (Osea la
tabla completa)
Conjunto de tablas
2. NACIMIENTO Y TIPOS DE BASES DE DATOS
Las necesidades de las diversas empresas han dado lugar al desarrollo de nuevos
sistemas de almacenamiento y dado que dichas necesidades en la actualidad siguen
cambiando y creciendo, van entonces surgiendo nuevos términos para ayudar a describir
los tipos de bases de datos que pueden ayudar a solucionar dichos problemas. Incluso
más adelante como el amigo lector podrá apreciar se muestra que el mismo concepto de
bases de datos surge como una necesidad frente a problemas que se tenían en el manejo
de la información.
2.1. COMO SURGEN LAS BASES DE DATOS
2.1.1. NECESIDAD DE INTEGRACIÓN
En realidad las bases de datos surgen como una necesidad de almacenamiento. Por
ejemplo en un principio se escribían aplicaciones que almacenaban información, pero
dicha información era almacenada por una aplicación específica y solamente podía ser
recuperada por mencionada aplicación. Surgen entonces las siguientes preguntas: ¿como
obtener la información de las diversas aplicaciones en una forma común? ¿Qué pasa si
la información se repite en las diversas aplicaciones? ¿Cómo integrar los datos comunes
de las diversas aplicaciones?
2.1.2. NECESIDAD DE PERSISTENCIA
Antiguamente se escribían programas orientados a requisitos, es decir que solucionaban
un problema específico de acuerdo a unos requerimientos y necesidades y todo el
programa implementaba la solución de dichos requisitos, sin apoyarse de ninguna
aplicación adicional. En muchas ocasiones se corría el programa, pero se necesitaba que
en la posterior ejecución se guardara información producto de la anterior ejecución del
programa. Esto obviamente, se atacó inicialmente con almacenamiento de ficheros
planos, pero posteriormente se vió la necesidad de hacerlo de otras formas más robustas.
La necesidad de almacenar información entre la ejecución de un aplicativa una vez y la
ejecución del mismo aplicativo la siguiente ejecución, se conoce como la necesidad de
almacenamiento persistente. La persistencia, tiene que ver entonces con la capacidad
que los datos y la información persiste en el tiempo.
Enciclopedia Conociendo
Teoría de Bases de Datos
Autor: Luis Felipe Wanumen Silva
8
2.2. CONCEPTO DE BASE DE DATOS
Un base de datos es una colección organizada de datos, en la cual los datos se pueden
recuperar por medio de un mecanismo establecido con el fin de extractar información
que le sea útil a la organización y que solucione un objetivo específico de necesidad de
información.
Bueno, en realidad los conceptos de bases de datos sin inmensos y podríamos pasarla
escudriñando en las diversas definiciones de conceptos de bases de datos, pero esto
obviamente tendía menos importancia que el continuar con otros temas más importantes
de bases de datos.
2.3. CLASIFICACIONES DE LAS BASES DE DATOS
Hoy en día, de acuerdo al tamaño, al tipo y a la función que ejerza una base de datos se
la puede clasificar en un tipo, pero dicha clasificación en ocasiones es subjetiva. Por
ejemplo imagine amigo lector / estudiante que a una base de datos de gran tamaño se le
llame: “Base de datos Gigante”, es muy probable que a una específica base de datos de
50 GB se le considere “Gigante”, pero es muy probable que si algún día salieran
disquetes que almacenaran esta cantidad de información, con seguridad este término ya
no sería aplicable a una base de este tamaño, sino a una base de datos de por lo menos
1000 GB.
Lo anterior, es por poner ejemplos de la subjetividad de estos conceptos y para dar una
guía, más que una definición exacta de los términos
2.3.1. BD GLOBALES Y ESPECÍFICAS
Las bases de datos que apoyan las necesidades de información a nivel global y general
de información de una empresa se denominan “Bases de datos globales”. Mientras tanto
a las bases de datos creadas para suplir las necesidades de información específicas de un
área pequeña de la empresa se les denomina “Bases de datos operacionales”
Algunas personas opinan que las bases de datos operacionales son más pequeñas que las
bases de datos globales y que en muchas ocasiones, las bases de datos globales se sirven
de la información contenida en las bases de datos operacionales para su existencia, en
otras palabras: “Las bases datos operacionales actúan como fuente de datos de las bases
de datos globales”
Con frecuencia algunos autores sostienen que las bases de datos
operacionales también pueden considerarse como bases de datos de
producción.
Enciclopedia Conociendo
Teoría de Bases de Datos
Autor: Luis Felipe Wanumen Silva
9
2.3.2. BD SIMPLES Y ALMACENES DE DATOS
Otros autores opinan que las bases de datos formadas por la unión o integración de otras
bases de datos, se llaman bases de datos tipo almacén de datos y las bases de datos
simples son las que no están formadas por la unión o integración de otras bases de
datos.
2.3.3. DATA MART Y DATA WARE HOUSE
El concepto de almacén de datos está ligado a la unión de varias bases de datos, cuando
este almacén de datos es a nivel departamental, se le denomina con frecuencia: “Data
Mart” (DM) y cuando se unen varias bases de datos departamentales en un gran base de
datos se le denomina “Data Warehouse” (DW)
Es posible que un almacén de datos esté conformado por varias bases de
datos grandes y que sirva más que a un departamento a una necesidad
global de la empresa y en este caso particular se podría considerar como
una base de datos tipo “Data WareHouse”
2.3.4. BASE DE DATOS GRANDE Y PEQUEÑA
Cuando una base de datos almacena gran cantidad de datos, se le denomina “Very large
Database” (VLDB), mientras que cuando no, se le denomina “Base de datos pequeña”.
Es preciso que el amigo lector / estudiante, no se confunda y trate de imaginar que una
base de datos grande es lo mismo que un almacén de datos, por cuanto el almacén de
datos por lo general es una base de datos grande, pero conformada por varias bases de
datos, mientras que una base de datos tipo (VLDB) es una base de datos grande, pero no
conformada por otras bases de datos.
2.4. TIPOS DE BASE DE DATOS
2.4.1. BASES DE DATOS JERÁRQUICAS
2.4.2. BASES DE DATOS DE RED
2.4.3. BASES DE DATOS RELACIONALES
2.4.4. BASES DE DATOS ORIENTADAS A OBJETOS
Enciclopedia Conociendo
Teoría de Bases de Datos
Autor: Luis Felipe Wanumen Silva
10
3. CONCEPTOS EN BASES DE DATOS
Es preciso que se comprendan ciertos conceptos antes de abordar el conocimiento de un
motor de bases de datos, con el fin de sacarle el mayor provecho a la herramienta y de
hacer mejores aplicaciones de acceso a bases de datos. Para ayudar a este fin, a
continuación se muestran algunos conceptos fundamentales que todo administrador de
bases de datos y en general toda persona relacionada con las bases de datos de manera
directa o indirecta debe conocer.
3.1. INTEGRIDAD
La integridad de los datos en una base de datos se refiere a la consistencia y exactitud
Enciclopedia Conociendo
Teoría de Bases de Datos
Autor: Luis Felipe Wanumen Silva
Enciclopedia Conociendo
11
Teoría de Bases de Datos
Autor: Luis Felipe Wanumen Silva
12
TABLA DE CONTENIDO
1. TEORIA SOBRE BASES DE DATOS RELACIONALES ___________ 2
1.1. DOMINIO: ____________________________________________________
1.2. ATRIBUTO: ___________________________________________________
1.3. ESQUEMA: ___________________________________________________
1.4. ASOCIACIÓN: _________________________________________________
1.5. TUPLA: _______________________________________________________
1.6. CUERPO DE UNA RELACIÓN: _________________________________
1.7. CARDINALIDAD: _____________________________________________
1.8. GRADO: ______________________________________________________
1.9. UNA RELACIÓN: ______________________________________________
1.10. UNA BASE DE DATOS RELACIONAL:_________________________
1.11. EQUIVALENCIA DE LOS TÉRMINOS MATEMÁTICOS: ________
2
2
2
3
5
5
6
6
6
6
6
2. NACIMIENTO Y TIPOS DE BASES DE DATOS __________________ 7
2.1. COMO SURGEN LAS BASES DE DATOS ________________________ 7
2.1.1. NECESIDAD DE INTEGRACIÓN _______________________________ 7
2.1.2. NECESIDAD DE PERSISTENCIA ______________________________ 7
2.2. CONCEPTO DE BASE DE DATOS ______________________________ 8
2.3. CLASIFICACIONES DE LAS BASES DE DATOS _________________ 8
2.3.1. BD GLOBALES Y ESPECÍFICAS _______________________________ 8
2.3.2. BD SIMPLES Y ALMACENES DE DATOS _______________________ 9
2.3.3. DATA MART Y DATA WARE HOUSE __________________________ 9
2.3.4. BASE DE DATOS GRANDE Y PEQUEÑA _______________________ 9
2.4. TIPOS DE BASE DE DATOS ____________________________________ 9
2.4.1. BASES DE DATOS JERÁRQUICAS _____________________________ 9
2.4.2. BASES DE DATOS DE RED ___________________________________ 9
2.4.3. BASES DE DATOS RELACIONALES ___________________________ 9
2.4.4. BASES DE DATOS ORIENTADAS A OBJETOS __________________ 9
TABLA DE CONTENIDO __________________________________________ 12
Enciclopedia Conociendo
Teoría de Bases de Datos
Autor: Luis Felipe Wanumen Silva
Enciclopedia Conociendo
13
Teoría de Bases de Datos
Autor: Luis Felipe Wanumen Silva
Enciclopedia Conociendo
14
Teoría de Bases de Datos
Descargar