domingo, 8 de mayo de 2016

MODELO RELACIONAL


1.    CONTENIDO

ü  Definición

Es un modelo de datos basado en la lógica de predicados y en la teoría de conjuntos.
Tras ser postuladas sus bases 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 esta es la teoría de las bases de datos relacionales creadas por Codd, la mayoría de las veces se conceptualiza de una manera más fácil de imaginar, pensando en cada relación como si fuese una tabla que está compuesta por registros (cada fila de la tabla sería un registro o "tupla") y columnas (también llamadas "campos").
Es el modelo más utilizado en la actualidad para modelar problemas reales y administrar datos dinámicamente.
 

Todo modelo de datos tiene que ver con tres aspectos de los datos:
·         Estructura de datos.
·         Integridad de datos
·         Manejo de datos

Estructura de datos Relacional
 
Terminología Relacional
*      Tupla.  Cada fila de la tabla (caja ejemplar que la tabla representa)
*      Atributo. Cada columna de la tabla.
*      Grado.  Numero de atributos de la tabla.
*      Cardinalidad.  Numero de tuplas de una tabla.
*      Dominio. Conjunto válido de valores representables por un atributo.

Esquema
Un esquema contiene la definición de una estructura (generalmente relaciones o tablas de una base de datos), es decir, determina la identidad de la relación y qué tipo de información podrá ser almacenada dentro de ella; en otras palabras, el esquema contiene los metadatos de la relación. Todo esquema constará de:
•    Nombre de la relación (su identificador).
•    Nombre de los atributos (o campos) de la relación y sus dominios; el dominio de un atributo o campo define los valores permitidos para el mismo, equivalente al tipo de dato por ejemplo character, integer, date, string.

Instancias
Una instancia de manera formal es la aplicación de un esquema a un conjunto finito de datos. En palabras no tan técnicas, se puede definir como el contenido de una tabla en un momento dado, pero también es válido referirnos a una instancia cuando trabajamos o mostramos únicamente un subconjunto de la información contenida en una relación o tabla, como por ejemplo:
•    Ciertos caracteres y números (una sola columna de una sola fila).
•    Algunas o todas las filas con todas o algunas columnas
•    Cada fila es una tupla. El número de filas es llamado cardinalidad.
•    El número de columnas es llamado aridad o grado.

ü  Propiedades

§  Cada relación tiene un nombre distinto.
§  Los valores de los atributos son atómicos (relaciones normalizadas).
§  Cada atributo tiene un nombre distinto.
§  Los atributos no están ordenados.
§  No hay tuplas duplicadas.
§  Las tuplas no están ordenadas.
§   
RELACIÓNES

v Uno a muchos: sabemos que cada profesor pertenece únicamente a un departamento, pero en cada departamento existe más de un profesor. De aquí podemos extraer una relación UNO a MUCHOS entre las tablas Departamentos y Profesores.

 

 


v Uno a Uno: Las relaciones uno a uno no son demasiado frecuentes pero existen así que debemos conocerlas. Como sabemos, un profesor puede ser tutor de un sólo grupo (UNO) y del mismo modo, cada grupo sólo puede tener un tutor.        
   

v Muchos a muchos: Tenemos dos tablas profesores y grupos, la cual  un profesor da clases a varios grupos (1A, 1B, 2C, etcétera) y un grupo recibe clases de varios profesores (Carlos Pérez, Antonio García, etcétera).
 

 

ü  Tipos de Relación

En una BDR, todos los datos se almacenan y se accede a ellos por medio de relaciones.

q  Relaciones base
Las relaciones que almacenan datos son llamadas relaciones base y su implementación es llamada "tabla".

q  Relaciones derivadas
Otras relaciones no almacenan datos, pero son calculadas al aplicar operaciones relacionales. Estas relaciones son llamadas relaciones derivadas y su implementación es llamada "vista" o "consulta". Las relaciones derivadas son convenientes ya que expresan información de varias relaciones actuando como si fuera una sola tabla.

ü  Reglas de Integridad

Restricción que debe cumplirse sobre una BD en todos sus estados
                  Reglas de negocio: reglas de integridad específicas de cada base de datos.
                  Reglas de integridad generales:
· Regla de integridad de entidades (amiga de las claves primarias).
· Regla de integridad referencial (amiga de las claves ajenas).
        Además existen las restricciones de dominio: al definir cada atributo sobre un dominio, se impone una restricción sobre el conjunto de valores permitidos para cada atributo.
REGLA DE INTEGRIDAD DE ENTIDADES
              “Ninguno de los atributos que componen la clave primaria puede ser nulo.”
¡¡ En una base de datos relacional nunca se almacena información de algo que no se puede identificar!!
Observaciones:
· La regla se aplica a las relaciones base (parte directa de la base de datos).
· La regla se aplica solo a la clave primaria (no a las claves alternativas).
REGLA DE INTEGRIDAD REFERENCIAL
si en una relación hay alguna clave ajena, sus valores deben coincidir con los valores de la clave primaria a la que  hace referencia, o bien, deben ser todos nulos.”
 La regla de integridad referencial se enmarca en términos de estados de la base de datos: nos dice lo que es un estado ilegal ¡¡ pero no nos dice cómo podemos evitarlo!!
¿Qué hacer si estando en un estado ilegal, llega una operación que conduce a un estado ilegal? Existen dos opciones:
· Rechazar la operación.
· Aceptar la operación y realizar operaciones adicionales compensatorias que conduzcan a un estado ilegal.
 

REGLAS PARA LAS CLAVES AJENAS

Regla de los nulos: ¿tiene sentido que una clave ajena acepte nulos?
Regla de borrado: ¿Qué hacer si se intenta borrar la tupla referenciada por la clave ajena?
Regla de Modificacion: ¿Qué hacer si se intenta modificar el valor de la clave primaria de la tupla referenciada por la clave ajena?
       Ejemplos:
                          

CLAVES

Clave primaria
Una clave primaria es una clave única (puede estar conformada por uno o más campos de la tabla) elegida entre todas las candidatas que define unívocamente a todos los demás atributos de la tabla para especificar los datos que serán relacionados con las demás tablas. La forma de hacer esto (relación entre tablas) es por medio de claves foráneas.
Clave foránea
Una clave foránea es una referencia a una clave en otra tabla, determina la relación existente en dos tablas. Las claves foráneas no necesitan ser claves únicas en la tabla donde están y sí a donde están referenciadas.
Por ejemplo, el código de departamento puede ser una clave foránea en la tabla de empleados. Se permite que haya varios empleados en un mismo departamento, pero habrá uno y sólo un departamento por cada clave distinta de departamento en la tabla de departamentos.
Clave índice
Las claves índices surgen con la necesidad de tener un acceso más rápido a los datos. Los índices pueden ser creados con cualquier combinación de campos de una tabla. Las consultas que filtran registros por medio de estos campos, pueden encontrar los registros de forma no secuencial usando la clave índice.
Las bases de datos relacionales incluyen múltiples técnicas de ordenamiento, cada una de ellas es óptima para cierta distribución de datos y tamaño de la relación.
Los índices generalmente no se consideran parte de la base de datos, pues son un detalle agregado. Sin embargo, las claves índices son desarrolladas por el mismo grupo de programadores que las otras partes de la base de datos.

Procedimientos almacenados

Un procedimiento almacenado es código ejecutable que se asocia y se almacena con la base de datos. Los procedimientos almacenados usualmente recogen y personalizan operaciones comunes, como insertar un registro dentro de una tabla, recopilar información estadística, o encapsular cálculos complejos. Son frecuentemente usados por un API por seguridad o simplicidad.
Los procedimientos almacenados no son parte del modelo relacional, pero todas las implementaciones comerciales los incluyen.


2.    RESUMEN

El modelo relacional es un modelo de datos basado en la lógica de predicados y en la teoría de conjuntos.
Tras ser postuladas sus bases 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.
Es el modelo más utilizado en la actualidad para modelar problemas reales y administrar datos dinámicamente.
Un esquema contiene la definición de una estructura (generalmente relaciones o tablas de una base de datos).Todo esquema constará de:
•          Nombre de la relación (su identificador).
•          Nombre de los atributos (o campos).
Una instancia es la aplicación de un esquema a un conjunto finito de datos. En palabras no tan técnicas, se puede definir como el contenido de una tabla en un momento dado.
Propiedades de un modelo relacional
·                    Cada relación tiene un nombre distinto.
·                    Los valores de los atributos son atómicos (relaciones normalizadas).
·                    Cada atributo tiene un nombre distinto.
·                    Los atributos no están ordenados.
·                    No hay tuplas duplicadas.
·                    Las tuplas no están ordenadas.
Existen tres tipos de Relación
·                    Uno a muchos
·                    Uno a Uno
·                    Muchos a muchos
Reglas de Integridad
Restricción que debe cumplirse sobre una BD en todos sus estados

REGLA DE INTEGRIDAD DE ENTIDADES

              “Ninguno de los atributos que componen la clave primaria puede ser nulo.”
Observaciones:
•          La regla se aplica a las relaciones base (parte directa de la base de datos).
•          La regla se aplica solo a la clave primaria (no a las claves alternativas).

REGLA DE INTEGRIDAD REFERENCIAL

“si en una relación hay alguna clave ajena, sus valores deben coincidir con los valores de la clave primaria a la que  hace referencia, o bien, deben ser todos nulos.”
CLAVES
Clave primaria
Una clave primaria es una clave única (puede estar conformada por uno o más campos de la tabla) elegida entre todas las candidatas que define unívocamente a todos los demás atributos de la tabla para especificar los datos que serán relacionados con las demás tablas.
Clave foránea
Una clave foránea es una referencia a una clave en otra tabla, determina la relación existente en dos tablas. Las claves foráneas no necesitan ser claves únicas en la tabla donde están y sí a donde están referenciadas.
Clave índice
Las claves índices surgen con la necesidad de tener un acceso más rápido a los datos. Los índices pueden ser creados con cualquier combinación de campos de una tabla. Las consultas que filtran registros por medio de estos campos, pueden encontrar los registros de forma no secuencial usando la clave índice.
Procedimientos almacenados
Un procedimiento almacenado es código ejecutable que se asocia y se almacena con la base de datos.

3.    SUMMARY

The relational model is a data model based on predicate logic and set theory.
After being nominated bases in 1970 by Edgar F. Codd, the IBM labs in San Jose (California), he soon establish itself as a new paradigm in the database model.
It is the model most used today to model real problems and manage data dynamically.
A scheme contains the definition of a structure (usually relationships or tables in a database) .All scheme will consist of:
• Name of the relationship (its identifier).
• Name attributes (or fields).
An instance is the application of a scheme to a finite set of data. In less technical terms, it can be defined as the contents of a table at one time.
Properties of a relational model
• Every relationship has a different name.
• The values ​​of the attributes are atomic (normalized relations).
• Each attribute has a different name.
• The attributes are not ordered.
• There are no duplicate tuples.
• The tuples are not ordered.
There are three types of relationship
• One to many
•          One by one
• Many to many
Integrity Rules
Restriction that must be met on a BD in all its states

RULE OF INTEGRITY OF ENTITIES

              "None of the attributes that make up the primary key can be null."
Observations:
• The rule applies to the base (direct part of the database) relationships.
• The rule applies only to the primary key (not the alternate keys).
Referential integrity rule
"If any foreign key in a relationship, their values ​​must match the values ​​of the primary key to which it refers, or, should all be zero."
KEYS
primary key
A primary key is a unique key ( may consist of one or more fields in the table ) chosen among all candidates that uniquely defines all other attributes of the table to specify the data to be related to other tables.
foreign key
A foreign key is a reference to a key in another table, determines the relationship in two tables. Foreign keys need not be unique keys in the table where they are and where they are referenced itself .
key index
The key indices arise with the need for faster access to data . Indexes can be created with any combination of fields in a table . Queries that filter records by these fields can not find records sequentially using the index key .
Stored Procedures
A stored procedure is executable code that is associated and stored with the database .

4.    RECOMENDACIONES

Para una buena gestión de base de datos se debe tener en cuenta el modelo relacional ya que te permite administrar datos dinámicamente y su idea fundamental es el uso de relaciones.
Cuando hagas un modelo relacional tener en cuenta que no pueden existir dos tablas con el mismo nombre y que cada tabla es a du vez un conjunto de registros, filas o tuplas. También debes tener en cuentas las restricciones, si estas relaciones son de uno a uno, de uno a muchos o de muchos a muchos para así poder construir un buen modelado.

5.    CONCLUSIONES

El presente trabajo se ha dedicado al estudio del modelo Relacional la cual nos hemos dado cuenta que permite obtener un buen modelado de una base de datos. Mediante este trabajo se han alcanzado los objetivos planteado en cuanto ha:

q Definir que es un modelo Relacional, de qué manera te va a ayudar al modelado de una base de datos y en qué se diferencia de los otros modelos.
q  Estudiar los diferentes tipos de relaciones que existen y conocer acerca de las reglas de integración.


1.    APRECIACIÓN DEL EQUIPO

Es muy Importante conocer acerca del modelo relacional ya que es el más utilizado en la actualidad para modelar problemas reales y administrar datos dinámicamente. Este modelo te provee herramientas que garantizan evitar la duplicidad de registros.

7.    GLOSARIO DE TÉRMINOS

Tupla: una secuencia de valores agrupados. Una tupla sirve para agrupar, como si fueran un único valor, varios valores que, por su naturaleza, deben ir juntos.

Aridad: En el análisis matemático, la aridad de un operador matemático o de una función es el número de argumentos necesarios para que dicho operador o función se pueda calcular.

Cardinalidad: Es cuando se define una relación y se especifica si uno o varios artículos de configuración pueden estar en la clasificación de origen y la clasificación de destino.

Foránea: Que procede o es propio de otro lugar.

8.    BIBLIOGRAFÍA O LINKOGRAFÍA


 LINK DE DESCARGA SLIDESHARE:  Modelo Relacional