Modelos Relacionales, Álgebra Relacional y Consultas-Enmanuel Morles-27.691.096
Modelos Relacionales, Álgebra Relacional y Consultas-Enmanuel Morles-27.691.096
Modelos Relacionales, Álgebra Relacional y Consultas-Enmanuel Morles-27.691.096
Extensión Cabimas
BASE DE DATOS
Y CONSULTAS
Autor:
Enmanuel Morles.
C.I. N° 27.691.096
ÍNDICE
INTRODUCCIÓN 3
Modelo de datos relacional 4
Normalización de relaciones 6
Definición de normalización 6
Dependencias funcionales 6-8
Formas normales 8-9
Lenguajes de consulta 9
Álgebra relacional 10
Pautas a seguir 13
CONCLUSIÓN 14
Enlace15
3
INTRODUCCIÓN
-El siguiente documento tiene por objeto servir como material de estudio y referencia para
el desarrollo de temas referentes a las bases de datos, como lo son: el modelo de datos
relacional, el álgebra relacional y los lenguajes de consulta. Términos importantes para
el entendimiento, análisis, conclusión y aplicación en la carrera de ingeniería en sistemas
o en computación e informática.
Lenguajes de consulta: ¿cómo se definen los lenguajes de consulta y cuáles son sus tipos?
Álgebra relacional: ¿qué significa el álgebra relacional?, y ¿qué son los operadores de la
misma?
Todos/as y cada uno/a plasmados textualmente para luego de su exposición, se llegue a una
conclusión general sobre lo estudiado.
Historia
Fue propuesto en 1970 por Edgar Frank Codd, de los laboratorios IBM en San José
(California), no tardó en consolidarse como un nuevo paradigma en los modelos de base de
datos. Su idea fundamental es el uso de “relaciones”. Estas relaciones podrían considerarse
en forma lógica como conjuntos de datos llamados “tuplas”. Pese a que ésta es la teoría de
las bases de datos relacionales creadas por Edgar Frank Codd, la mayoría de las veces se
conceptualiza de una manera más fácil de imaginar.
Objetivos
Los objetivos que este modelo persigue son:
Independencia Lógica: Las aplicaciones que utilizan la base de datos no deben ser
modificadas por que se inserten, actualicen y eliminen datos.
Flexibilidad: En el sentido de poder presentar a cada usuario los datos de la forma en que
éste prefiera
Uniformidad: Las estructuras lógicas de los datos siempre tienen una única forma
conceptual (las tablas), lo que facilita la creación y manipulación de la base de datos por
parte de los usuarios.
Sencillez: Las características anteriores hacen que este Modelo sea fácil de comprender y
de utilizar por parte del usuario final.
Elementos
Los nombres de sus elementos básicos, que conforman una estructura completa.
5
Tupla
Cada fila de datos es una tupla, conocida también como registro. Cada fila es una n-tupla,
pero la “n-” generalmente se descarta.
Columna
Cada columna de una tupla se llama atributo o campo. La columna representa el conjunto
de valores que puede tener un atributo específico.
Clave
Cada fila tiene una o más columnas que se denomina clave de la tabla. Este valor
combinado es único para todas las filas de una tabla. Mediante esta clave se identificará
cada tupla de forma unívoca. Es decir, la clave no puede estar duplicada. Se le llama clave
primaria.
Por otro lado, una clave externa o secundaria es el campo de una tabla que se refiere a la
clave primaria de alguna otra tabla. Se utiliza para referenciar a la tabla primaria.
Reglas de integridad
Integridad de la clave
La clave primaria debe ser única para todas las tuplas y no puede tener el valor nulo
(NULL). De lo contrario, no podrá identificar la fila de forma exclusiva.
Para una clave compuesta por varias columnas, ninguna de esas columnas puede contener
NULL.
Integridad referencial
Cada valor de una clave externa debe coincidir con un valor de la clave primaria de la tabla
referenciada o primaria.
En la tabla secundaria solo se podrá insertar una fila con una clave externa si ese valor
existe en una tabla primaria.
Restricciones
6
Normalización de relaciones
Definición de normalización
La normalización es el proceso de organización de datos en una base de datos. Esto incluye
crear tablas y establecer relaciones entre dichas tablas de acuerdo con reglas diseñadas
tanto para proteger los datos como para que la base de datos sea más flexible al eliminar la
redundancia y la dependencia incoherente.
Dependencias funcionales
Una dependencia funcional es un tipo de restricción que constituye una generalización del
concepto de clave, como se estudió en el modelo E-R y el modelo relacional. Pero no es tan
sencillo localizar las dependencias, ya que requieren un análisis de los atributos o, con más
precisión, de las interrelaciones entre atributos, y frecuentemente la intuición no es
suficiente a la hora de encontrar y clasificar todas las dependencias. La teoría nos puede
ayudar un poco en ese sentido, clasificando las dependencias en distintos tipos, indicando
qué características tiene cada tipo.
Es importante mencionar que las dependencias se pueden dar entre atributos o entre
subconjuntos de atributos. Estas dependencias son consecuencia de la estructura de la base
de datos y de los objetos del mundo real que describen, y no de los valores actualmente
almacenados en cada relación.
Por ejemplo, si tenemos una relación de Casas en la que almacenamos, entre otros
atributos, el tamaño y el color, y en un determinado momento todas las casas con jardín son
de dos plantas, no podremos afirmar que existe una dependencia entre el color y el tamaño.
Debemos suponer que esto es sólo una coincidencia. Para buscar dependencias no se deben
analizar los datos, sino los entes a los que se refieren esos datos.
Por ejemplo, si tenemos una relación con clientes de un hotel y dos de sus atributos son el
número de cliente y su nombre, podemos afirmar que el nombre tiene una dependencia
funcional del número de cliente; es decir, cada vez que en una tupla aparezca determinado
valor de número de cliente, es seguro que el nombre de cliente será siempre el mismo.
X -> Y.
El símbolo -> se lee como "implica" o "determina", y la dependencia anterior se lee como
X implica Y o X determina Y. Podemos añadir otro símbolo a nuestra álgebra de
dependencias: el símbolo | significa negación. Así: X -> |Y se lee como X no determina Y.
Si tenemos una dependencia completa X => Y, diremos que es una dependencia funcional
elemental si Y es un atributo, y no un conjunto de ellos.
Una dependencia funcional A -> B es trivial cuando B es parte de A. Esto sucede cuando A
es un conjunto de atributos, y B es a su vez un subconjunto de A.
ciudad -> país
país -> continente
8
país -> |ciudad.
Es decir, cada ciudad pertenece a un país y cada país a un continente, pero en cada país
puede haber muchas ciudades. En este caso continente tiene una dependencia funcional
transitiva respecto de ciudad, a través de país.
Dependencia multivaluada
Formas normales
Primer formulario normal
Cree tablas independientes para conjuntos de valores que se aplican a varios registros.
Lenguajes de Consulta
Los lenguajes de consulta pueden ser clasificados de acuerdo a si son lenguajes de consulta de bases
de datos o lenguajes de consulta de recuperación de información. Algunos ejemplos son.
9
SQL :es un lenguaje de consulta muy reconocido para bases de datos relacionales;
Gellish English: es un lenguaje que puede ser usado para consultas en bases de datos
Gellish English,3 para diálogos (pedidos y respuestas) como también para modelado de
información y modelado de conocimiento;
ISBL: es un lenguaje de consulta para PRTV, uno de los más recientes sistemas de
administración de bases de datos;
Lenguaje procedimental:
El usuario da las instrucciones al sistema para que realice una secuencia de operaciones en
la base de datos para calcular el resultado deseado.
Lenguaje no procedimental:
el usuario describe la información deseada sin dar un procedimiento específico para obtener
dicha información.
10
El álgebra relacional
Operadores
Operadores básicos o primitivos.
Se clasifican en:
Proyección (π).
Selección (σ).
Unión (U).
Diferencia (-).
Proyección.
Este operador permite extraer columnas de una relación y de esta manera crea un
subconjunto de atributos de la relación, además elimina las filas duplicadas.
Selección.
Unión.
En esta relación R y S deben ser compatibles es decir que deben estar definidas sobre el
mismo conjunto de atributos.
11
Diferencia.
La diferencia de 2 relaciones R y S es otra relación la cual va a tener los registros que están
en R pero no están en S.
Producto cartesiano.
Es una relación que consiste en la concatenación de cada una de las filas de la relación R
con cada una de las filas de la relación S.
Se clasifican en:
Intersección (∩).
División (/).
Intersección.
Es una relación que contiene el conjunto de todas las filas que están tanto en la relación R
como en S. R y S deben ser compatibles.
Unión natural.
El resultado es una relación con los atributos de ambas relaciones y se obtiene combinando
vas filas de ambas relaciones que tengan el mismo valor en los atributos comunes.
El join se lo usa entre los atributos comunes de las entidades o tablas que poseen la clave
primaria de una tabla foránea correspondiente de otra entidad.
División.
{t / P(t)}
Es un lenguaje de consulta formal que permite expresar las consultas a partir de fórmulas
bien formadas, donde cada variable se interpreta como variante sobre el dominio del
atributo de una relación.
1. Las variables están asociadas a los dominios de los atributos y se denota como
relación (atributo1: variable1, atributo2: variable2, … ).
2. Los predicados utilizados se construyen igual que para el cálculo relacional de
tuplas.
Pautas a seguir
Las tres reglas básicas para convertir un esquema en el modelo E/R al relacional son las
siguientes:
Deben representarse mediante relaciones. Esto implica una pérdida de semántica con
respecto al esquema
E/R, ya que las interrelaciones N:M no se distinguen de las entidades y las l:N se
representan mediante
CONCLUSIÓN
-Los modelos relacionales sirven como un ejemplar que representa un esquema
estructurado de tal forma que el conjunto y sub-conjunto de todos sus elementos aportan un
gran valor y óptimo desarrollo de las bases de datos en cualquier ámbito donde éstas se
presenten, permitiendo y fomentando a una grata y más cómoda forma de realizar,
implementar, y construir una base de datos.
raíz de tomar las bases de datos como puntos de partida; al emplear sus tablas, atributos y
relaciones como las variables de sus fórmulas.
El lenguaje de consulta es el cuerpo lógico que nos permite conectar con información o
datos plasmados de forma digital/eléctronica; un conjunto de sintaxis capaz de ser el
intermediario o puente que une tanto al usuario, como al SGBD, como a la misma BD en
una orgánica unión.
Estos principios son fundamentales para cualquier estudiante, profesional, o persona que
esté interesada, trabaje, o desempeñe un rol dentro del mundo tecnológico que hoy día
gobierna, lidera y corona muy pronunciadamente la sociedad de hoy día. Sin ellos,
representaría una complicación mayor el tener que adentrarse al mundo que conforman las
bases de datos que son, en esencia, bibliotecas organizadas de datos o información de un
tema en concreto, a las que accedemos gracias a las virtudes de la tecnología, y que,
indudablemente, son pilares de las que todos, de alguna u otra forma, somos usuarios
finales de su consumo, aplicación, y estudio.
Muchas gracias~.
Enlace