Herramientas de Mineria de Datos

Introducción a la teoría y práctica de Bases de Datos

 

Definiciones

 

Dato

Elemento que se suministra o es obtenido de diferentes fuentes como personas, mediciones, computadoras, etc. en la informática  existen dos tipos de datos, datos de entrada o suministrados y datos de salida.

Los datos de entrada o suministrados son aquellos que provienen de documentos fuentes (reportes, formatos, etc.), personas de las que se necesita obtener información, mediciones o métodos realizados que por su naturaleza pueden generar información.

Los datos de salida son aquellos datos de entrada que han sido ordenados y procesados para que estos puedan generar información mediante reportes, pantallas de computadoras, Smartphone, etc.


Información 

Es el resultado de la acumulación, ordenado, filtrado y procesado de datos (entrada y/o  salida de datos) que pueden generar conocimiento para la toma de decisiones. 

La información puede ser pública al estar al alcance de cualquier persona, institución u organización y puede ser utilizada por estas y privada que solo puede ser utilizada por determinadas personas, instituciones u organizaciones a las cuales les competa dicha información

Modelo Entidad – Relación (E/R)


Las bases de datos que se utilizan para ordenar y almacenar información, son plasmadas como parte del mundo real en tablas las que se encargan de contener los registros y campos dicha base de datos, creándose un modelo parcial de la realidad.

Para la definición y creación física de dichas tablas es conveniente realizar un modelo de datos el cual termina siendo un sistema de información con datos ordenados.

Elementos del modelo Entidad-Relación

·         Entidad, objeto básico en el modelo entidad relación (ER), objeto físico o conceptual

o   Atributo, propiedad especifica de la entidad

o   Tipo de Entidad, esta define al conjunto de entidades que poseen los mismos atributos

·         Relación, es el vínculo entre dos entidades

o   Tipo de relación

o   Ejemplares de relación

o   Grados de relación

o   Atributos de relación

o   Nombre de papeles de relación

o   Vínculos recursivos de la relación

o   Restricciones de la relación




Ejemplo de Diagrama de E/R

 

Modelo Relacional

 

 

Conceptos

Dominio: Conjunto de valores que tiene relación entre el tipo de datos relacionado con el dominio

Tupla: Fila de datos de un dominio

Atributo: Cabecera de los datos del dominio

Campos Clave: Es la asignación de un campo (s) que por sus atributos puedan definir la identidad única e irrepetible de un registro

Vinculación de campos: Es la relación entre campos (con las mismas características físicas y el mismo tipo de datos) entre de diferentes tablas para la recuperación de información

Tipos de relaciones: Estas pueden ser de dos tipos, de tabla a tabla y la modelada en E-R la cual vincula una relación con atributos

Restricción de integridad: Existen diferentes tipos de restricciones de integridad como las de dominio, de clave, de integridad de identidades y de integridad referencial

  • Restricción de dominio, especifica el valor de cada atributo de un dominio.
  • Restricción de clave, con esta, el valor de las tuplas debe ser diferente, esto significa que dos tuplas no pueden tener la misma combinación de valores en su campo (s) clave también llamado superclave.
  • Restricción de integridad, son un conjunto de esquemas de relaciones que  satisfacen las restricciones de integridad especifica.
  • Restricciones de integridad de entidades, los valores de clave primaria no pueden ser nulos ya que dicha clave sirve para identificar las tuplas individuales en una relación.
  • Restricción de integridad referencial y clave externa, sirve para mantener la  consistencia entre las tuplas de una relación
  • Clave externa, con ella se especifica la restricción de integridad referencial entre una relación de dos esquemas.

Normalización y dependencias funcionales

 

Pautas informales de diseño para los esquemas relacionales

En el diseño de un esquema de relación su significado debe ser fácil sin combinar los atributos de las entidades y vínculos en una sola relación buscando que el este sea claro.

Las anomalías de actualización se pueden presentar por:

  • Anomalías de inserción, al insertar un registro nuevo y alguno de sus campos que son relaciones externas no se cumplen
  • Anomalías de modificación, al modificar un registro y existen las anomalías desde la inserción.
  • Anomalías de eliminación, al borrar una tupla, y esta tiene enlaces con otras relaciones.

El diseño de un esquema de relaciones se debe realizar de manera que no haya anomalías de inserción, modificación y eliminación, si estas existieran señalar claramente para evitar problemas en los programas que utilizan la base de datos.

Valores nulos en las tuplas

Estos pueden originar desperdicio de espacio en el almacenamiento, problemas al utilizar la información con algunas funciones como COUNT o SUM además estos se pueden interpretar de diferentes maneras (El atributo no aplica a la Tupla, se desconoce su valor, el valor aún no se ha registrado), es importante evita incluir relaciones con valores nulos, o en su defecto utilizarlas solo como excepción

Tuplas espurias (erroneas)

Al realizar una REUNIÓN NATURAL se debe tener cuidado ya que esta puede originar tuplas espurias.

En el diseño de las relaciones se deberá buscar la reunión mediante condiciones de igualdad entre las claves primarias y externas tratando de evitar la formación de tuplas espurias.

Dependencias funcionales

Las dependencias funcionales son restricciones entre dos conjuntos de atributos de una base de datos

Las reglas de inferencia para las dependencias funcionales son denotadas con F y estas son especificadas sobre el esquema de relación R, regularmente se especifican las dependencias funcionales que semánticamente son obvias pero es común que otras dependencias funcionales se cumplan en todos los ejemplares de relación permitidos que satisfagan las dependencias funcionales de F.

Las equivalencias de conjuntos de dependencias funcionales se presentan cuando un conjunto E es cubierto por un conjunto de dependencias funcinales F o bien, se dice que F cubre a E si toda dependencia funcional de E tambien esta en F, en este caso E esta cubierto si toda dependencia de este puede inferirise a partir de F.

Los conjuntos mínimos de dependencias funcionales lo son cuando se satisfacen las condiciones en un conjunto F;

  • Toda dependencia en F tiene un solo atributo en su miembro derecho.
  • No podemos quitar ninguna dependencia de F y seguir teniendo un conjunto de dependencias equivalentes a F.
  • No podemos reemplazar ninguna dependencia X àA en F por una dependencia Y à A, donde Y es un subconjunto propio de X, y seguir teniendo un conjunto de dependencias equivalentes a F.

Un conjunto mínimo de dependencias es un conjunto de dependencias que está en una forma estándar o canónica sin redundancias en las dependencias, no habrá redundancia en las dependencias debido a las condiciones 2 y 3 mientras que la condición 1 asegura la forma canónica con un solo atributo en el miembro derecho. La cobertura mínima de un conjunto de dependencias funcionales F es un conjunto de dependencias Fmin que es equivalente a F, un conjunto dependencias funcionales pude contar con varias coberturas mínimas y siempre podemos hallar por lo menos una cobertura mínima Fmin para cualquier conjunto de dependencias F.

Normalización de datos

La normalización de datos es considerada como un proceso en el cual los esquemas de relaciones insatisfactorios son descompuestos repartiendo sus atributos entre esquemas de relación más pequeños los cuales poseen propiedades deseables, uno de los objetivos de la normalización es garantizar que no se presenten anomalías de actualización, cabe destacar es que los diseñadores de bases de datos no tienen que normalizar hasta la forma normal más alta posible. Las relaciones pueden dejarse en formas normales inferiores por razones de rendimiento.

La primera forma normal 1FN establece que los dominios de los atributos deben contener los valores atómicos y que el valor de cualquier atributo en una Tupla debe ser un valor individual proveniente del dominio de ese atributo, por tal motio 1FN prohíbe tener un conjunto de valores, una Tupla de valores o una combinación de estos como valor de un atributo para una Tupla individual.

La segunda forma normal 2FN  está basada en el concepto de dependencia funcional total.

Un dependencia funcional total X à Y si la eliminación de cualquier atributo A de X hace que la dependencia deje de ser válida.

Una dependencia funcional es parcial si es posible eliminar A de X y la dependencia sigue siendo válida.

Un esquema de relación R está en 2FN si todo atributo no primo A en R depende funcionalmente de manera total de la clave primaria de R.

La tercera forma normal (3FN) en un esquema de relación R está sí, siempre que una dependencia funcional X à A se cumple en R, o bien:

  • a)    X es una superclave de R
  • b)    A es un atributo primo de R.

Un esquema de relación R viola la definición general de 3FN si una dependencia funcional Xà A válida en R viola ambas condiciones, (a) y (b), de 3FN. La violación de (b) implica que A es un atributo no primo. La violación de (a) implica que X no es un superconjunto de ninguna clave de R; por tanto, X podría ser no primo o podría ser un subconjunto propio de una clave de R. Si X no es primo, por lo regular tenemos una dependencia transitiva que viola ·FN, y si X es un subconjunto propio de una clave R, tenemos una dependencia parcial que viola ·FN (y también 2FN). Por tanto, podemos expresar una definición general alternativa de 3FN como sigue: Un esquema de relación R está en 3FN si todo atributo no primo de R es:

Dependiente funcionalmente de manera total de toda clave de R

Dependiente de manera no transitiva de toda clave de R.

La forma normal de Boyce-Codd (FNBC) es más estricta que la 3FN, lo que significa que toda relación que esté en FNBC también está en 3FN; sin embargo, una relación 3FN no está necesariamente en FNBC.

Un esquema de relación R está en FNBC sí, siempre que una dependencia funcional X à A es válida en R, entonces X es una superclave de R. La única diferencia entre FNBC y 3FN es la condición (b) de 3FN, que permite que A sea primo si X no es una superclave, está ausente en FNBC.

En la práctica, casi todos los esquemas de relación que están en 3FN también están en FNBC. Sólo si existe una dependencia X à A en un esquema de relación R, y X no es una superclave de y A es un atributo primo, R estará en 3FN pero no en FNBC. Es mejor tener esquemas de relación FNBC; si esto no es posible, bastará con que estén en 3FN. Sin embargo, ni 2FN ni 1FN se consideran buenos diseños de esquemas de relación. Estas formas normales se desarrollaron históricamente como escalones para llegar a 3FN y FNBC. 

Reglas de inferencia

En las reglas de inferencia para las dependencias funcionales y multivaluadas al igual que con las dependencias funcionales (DF), se pueden desarrollar reglas de inferencia para las Dependencias Multivaluadas (DMV). No obstante, es mejor desarrollar una armazón unificada que incluya tanto las DF como las DMV para poder considerar en conjunción ambos tipos de restricciones. Las siguientes reglas de inferencia, Ri1 a Ri8, constituyen un conjunto correcto y completo para inferir dependencias funcionales y multivaluadas a partir de un conjunto dado de dependencias. Supongamos que todos los atributos están incluidos en un esquema de relación universal R=[A1,A2,..,An} y que X,Y,Z y W son subconjuntos de R.

La cuarta forma normal (4FN) en un esquema de relación R se presenta respecto a un conjunto de dependencias F si, para cada dependencia multivaluada no trivial X à - > Y en F+, X es una superclave de R.

 

 

La quinta forma normal (5FN) o forma normal de proyección-reunión (FNPR) con respecto a un conjunto de dependencia funcionales, multivaluada y de reunión si, para cada dependencia de reunión no trivial DR(R1,R2,..,Rn) en F+ (esto es, implicada por F), toda R, es una superclave de R.

Es difícil descubrir dependencias de reunión en bases de datos reales con cientos de atributos; es por ello que en la práctica actual para el diseño de bases de datos de les presta poca atención.


Operaciones básicas (selección, proyección, producto cartesiano, reunión, unión, intersección y diferencia)

 

Operación Seleccionar

Esta operación sirve para seleccionar las tuplas de una relación que satisfacen una condición de selección específica, σ(sigma) denota el operador seleccionar y esta es una expresión booleana especificada en términos de los atributos de la relación.

El resultado de la operación seleccionar cuenta con los mismos atributos que la relación específica en <Nombre de la Relación>, la expresión booleana específica en la <Condición de la selección> es compuesta de una o más cláusulas de la manera:

< Nombre de Atributo >  < Operador de Comparación >  < Valor Constante >  o

< Nombre de Atributo >  < Operador de Comparación >  < Nombre de Atributo >

Donde <Nombre de Atributo> es el nombre del atributo de <Nombre de la Relación>  

Normalmente uno de los operadores [ =, <, <=, >, >= <> ] y <Valor Constante> es un valor constante del dominio del atributo, para la conexión entre cláusulas se utilizan los operadores (Y “and”, O “or” y NO “not”) para formar una condición de selección general. 

Los operadores de comparación [ =, <, <=, >, >= <> ] son aplicados a atributos de dominios que son valores ordenados como los numéricos o de fecha, los dominios de cadenas de caracteres son considerados ordenados con base en la secuencia de cotejo de caracteres.

La aplicación de los operadores de comparación [ =, <> ] son utilizados para dominios cuyo atributo sea un conjunto de valores no ordenado

El operador seleccionar se aplica a una sola relación (es unario), es por eso que no se puede utilizar para seleccionar tuplas de mas de una relación

Operación Proyectar

Esta operación selecciona columnas específicas (proyecta solo los atributos que nos interesan)  y desecha las demás π(PI) denota el operador proyectar y < Lista de Atributos > es una lista de atributos de la relación especificada en < Nombre de la relación >, una relación creada de esta manera tiene sólo los atributos especificados en < Lista de Atributos > y el mismo orden en que aparecen en la lista por tal motivo su grado es igual al número de atributos en < Lista de Atributos >, si dicha lista de atributos sólo contiene atributos no clave de una relación probablemente aparecerán tuplas repetidas.

Al ser eliminadas implícitamente las tuplas repetidas en la operación proyectar hace que los resultados de esta sea un conjunto de tuplas y por lo tanto una relación válida.

Las tuplas obtenidas en una relación por la operación proyectar siempre será menor o igual que las de la relación original y si la lista de proyección incluye una clave de relación, el resultado tendrá el mismo número de tuplas que la original.

En esta operación pueden ser utilizados nombre de relaciones intermedias para poder utilizar varias operaciones a la vez

Operaciones de la teoría de conjuntos  

ü  UNIÓN, el resultado de la operación R S, se incluyen todas las tuplas de la relación de R o S o de ambas eliminando las tuplas repetidas.

ü  INTERSECCIÓN, el resultado de esta operación R S, es una relación que incluye las tuplas de que están en R y en S.

 

ü  DIFERENCIA, el resultado de esta operación R-S, es una relación que incluye las tuplas de R pero no de S 

 

Tanto UNIÓN e INTERSECCIÓN son operaciones conmutativas o sea que: 

R S = S R  y  R S = S R 

Y ambas pueden aplicarse a cualquier número de relaciones y son operaciones asociativas 

R (S T) = (R S) T   y    (R S) T = R (S T) 

La operación DIFERENCIA no es conmutativa 

R – S <> S – R 

Producto cartesiano (X)

Es denotado por X, es una operación binaria de conjuntos aunque las relaciones a las que aplica no tienen que ser compatibles con la unión, dicha operación también es conocida como PRODUCTO CRUZADO o REUNIÓN CRUZADA y sirve para combinar tuplas de dos relaciones con la finalidad de identificar las tuplas relacionadas entre si

Operación Reunión

Esta operación sirve para combinar tuplas relacionadas de dos relaciones en una sola Tupla, es una operación importante ya que permite procesar los vínculos entre las realciones.

El resultado de una reunión de una relación Q con n+m atributos Q(A1, A2, …..An, B1, B2, ….Bn), es ese orden; Q tiene una Tupla por cada combinación de tuplas de R y una de S que siempre que la combinación satisfaga la condición reunión


Creación y manipulación de vistas

Vistas

Los objetivos primordiales de las consultas en las bases de datos son

  • La obtención de resultados sobre los datos almacenados
  • La generación de vistas


Las vistas son consultas de selección que son utilizadas como tablas de manera transparente al usuario, estas muestran el contenido de una tabla con un formato, orden y contenido en base a las necesidades del usuario pero limitando el acceso directo a los datos y presentando solo la información que el usuario necesite.

Las consultas pueden tener casi los mismos efectos que una tabla, hacer consultas de una consulta, añadir, modificar o eliminar datos en base a los resultados de una consulta, también se pueden crear formulario, informes, etc. de una consulta sin la necesidad de afectar una tabla.

Existen limitaciones ya que no se permite realizar ciertas operaciones sobre una vista (consulta), dichas limitaciones son la imposibilidad de acceder o insertar de manera automática valores que pueden ser accesados con dicha vista.

Los siguientes tipos de consultas, pueden funcionar como vistas.

 

  • Consultas de selección simple con o sin la condición WHERE que filtre campos
  • Consultas de unión utilizando INNER JOIN
  • Consultas de unión basadas en producto cartesiano (filtradas con WHERE que no utilizan INNER JOIN)
  • Consultas con funciones de agregado (GROUP BY)
  • Consultas de concatenación de tablas
  • Consultas que no sean de selección; inserción, borrado, modificación, definición de datos, etc.

 

En el modelo relacional, las vitas constituyen un mecanismo poderoso en la interacción entre el usuario o las aplicaciones y el esquema relacional o conjunto físico de tablas posibilitando el nombrar de diferentes maneras a los mismos datos formando tablas virtuales o ventanas por medio de las cuales se pueden ver los datos almacenados en las tablas físicas, teniendo como ventaja privacidad y seguridad ya que no todos los usuarios podrán ver el esquema relacional así como la simplificar las interfaces de usuarios, simplificar operaciones complejas, favorecer la independencia lógica de los datos.

Las vistas son definidas con la sentencia CREATE VIEW de la siguiente manera

CREATE VIEW “nombre de la Vista” AS “expresión de Consulta”

Las vistas al ser borradas, no afectan a las tablas físicas que almacenan los datos y estas son borradas con la sentencia DROP VIEW “Nombre de la Vista”

Las vistas son especificadas por medio de una expresión de consulta (sentencia SELECT) que la calcula y que puede realizarse sobre una o más tablas, en un conjunto de tablas relacionales se puede trabajar con un número cualquiera de vistas, los nombres de las vistas pueden hacer referencia a la consulta que las crea, los nombres de las vistas pueden aparecer en cualquier lugar de una sentencia SQL en el cual puede aparecer el nombre de una tabla siempre y cuando sea una consulta y no una inserción, modificación o eliminación de información.

La salida de una vista consiste en tantas columnas o atributos como se generen en la expresión de consulta y se puede acceder en su totalidad o solo en parte, ordenadamente, etc. al igual que a una consulta de tablas con la sentencia SELECT.



Bibliografía

 

“Manejo de Bases de Datos – Módulo 1 – 1.1 ¿Qué son los datos y qué es la información?”, Articulo de Internet recuperado el 29-‘8-2014 de, http://quimor.ath.cx/manejo/

“Manejo de Bases de Datos – Módulo 1 – 1.2 Modelos de datos conceptual: Modelo E-R”, Articulo de Internet recuperado el 5-09-2014 de, http://quimor.ath.cx/manejo/

“El Modelo de Datos Entidad-Relación (E/R)”, Articulo de Internet recuperado el 5-09-2014 de, http://basededatos.umh.es/e_r.htm

“Modelo Entidad Relación – Tutorial rápido”, Video de internet recuperado el 6-09-2014 de, http://www.youtube.com/watch?v=NJp-uJGwg6k

“Manejo de Bases de Datos – Módulo 1 – 1.3 Modelos de datos de implementación: Modelos relacional (conceptos fundamentales) ”, Articulo de Internet recuperado el 13-09-2014 de, http://quimor.ath.cx/manejo/

“Modelo Relacional de Base de Datos (3)”, Video de internet recuperado el 13-09-2014 de, http://www.youtube.com/watch?v=rCOEp_an_IQ

“Manejo de Bases de Datos – Módulo 1 – 1.4 Transformación de Diagramas E-R a tablas”, Articulo de Internet recuperado el 19-09-2014 de, http://quimor.ath.cx/manejo/

“Modelo Relacional de Base de Datos (3)”, Video de internet recuperado el 13-09-2014 de, http://www.youtube.com/watch?v=rCOEp_an_IQ

“Modelo Físico de Base de Datos (4)”, Video de internet recuperado el 19-09-2014 de, http://www.youtube.com/watch?v=G3U698bWxfM

“Manejo de Bases de Datos – Módulo 1 – 1.5 Normalización y dependencias funcionales”, Articulo de Internet recuperado el 26-09-2014 de, http://quimor.ath.cx/manejo/

“Manejo de Bases de Datos – Módulo 1 – 1.6 Manejar ejemplos con las operaciones básicas (selección proyección, producto cartesiano, reunión, unión, intersección y diferencia”, Articulo de Internet recuperado el 30-09-2014 de, http://quimor.ath.cx/manejo/

“Manejo de Bases de Datos – Módulo 4 – 4.9 Creación y manipulación de vistas”, Articulo de Internet recuperado el 30-09-2014 de, http://quimor.ath.cx/manejo/

 



 

Este sitio web fue creado de forma gratuita con PaginaWebGratis.es. ¿Quieres también tu sitio web propio?
Registrarse gratis