jueves, 29 de agosto de 2013

INTRODUCCION


 Desde tiempos remotos, los datos han sido registrados por el hombre en algún tipo de soporte (piedra, papel, madera, etc.) a fin de que quedara constancia de una fenómeno o idea. Los datos han de ser interpretados para que se conviertan en información útil, esta interpretación supone un fenómeno de agrupación y clasificación.

En la era actual y con el auge de los medios informáticos aparece el almacenamiento en soporte electromagnético, ofreciendo mayores posibilidades de almacenaje, ocupando menos espacio y ahorrando un tiempo considerable en la búsqueda y tratamiento de los datos. Es en este momento donde surge el concepto de bases de datos y con ellas las diferentes metodologías de diseño y tratamiento.

El objetivo básico de toda base de datos es el almacenamiento de símbolos, números y letras cadentes de un significado en sí, que con un tratamiento adecuado se convierten en información útil.

Según van evolucionando los tiempos, las necesidades de almacenamiento de datos van creciendo y con ellas las necesidades de transformar los mismos datos en información de muy diversa naturaleza. Esta información es utilizada diariamente como herramientas de trabajo y como soporte para la toma de decisiones por un gran colectivo de profesionales que toman dicha información como base de su negocio. Por este motivo el trabajo del diseñador de bases de datos es cada vez más delicado, un error en el diseño o en la interpretación de datos puede dar lugar a información incorrecta y conducir al usuario a la toma de decisiones equivocadas. Se hace necesario la creación de un sistema que ayude al diseñador a crear estructuras correctas y fiables, minimizando los tiempos de diseño y explotando todos los datos, nace así la metodología de diseño de bases de datos.

La metodología de diseño de datos divide cada modelo en tres esquemas:

A) Modelo Global: se trata de una representación gráfica legible por el usuario y que nos aporta el flujo de información dentro de una organización. No existen reglas para su construcción y se debe realizar siempre el esquema más sencillo posible para la comprensión por parte del usuario de la base de datos. Por ejemplo:




B) Modelo Lógico: se trata de una representación gráfica, mediante símbolos y signos normalizados, de la base de datos. Su objetivo es representar la estructura de los datos y las dependencias de los mismos, garantizando la consistencia y evitando la duplicidad.

C) Modelo Físico: se trata del almacén de los datos, es la base de datos en sí misma, el soporte donde se almacenan los datos y de donde se extraen para convertir los datos en información. En función del gestor de bases de datos empleado las reglas de almacenamiento varían.




TIPOS DE BASE DE DATOS

 

Las bases de datos pueden clasificarse de varias maneras, de acuerdo al contexto que se esté manejando, la utilidad de las mismas o las necesidades que satisfagan.

Según la variabilidad de la base de Datos

Base de Datos Estática

 Éstas son bases de datos de sólo lectura, utilizadas primordialmente para almacenar datos históricos que posteriormente se pueden utilizar para estudiar el comportamiento de un conjunto de datos a través del tiempo, realizar proyecciones y tomar decisiones.




 

Base de datos dinámica

 Éstas son bases de datos donde la información almacenada se modifica con el tiempo, permitiendo operaciones como actualización, borrado y adición de datos, además de las operaciones fundamentales de consulta. Un ejemplo de esto puede ser la base de datos utilizada en un sistema de información de un supermercado, una farmacia, un videoclub o una empresa.

       

 

 

 

 

Según el contenido

Base de Datos Bibliográficas

 Solo contienen un representante de la fuente primaria, que permite localizarla. Un registro típico de una base de datos bibliográfica contiene información sobre el autor, fecha de publicación, editorial, título, edición, de una determinada publicación, etc. Puede contener un resumen o extracto de la publicación original, pero nunca el texto completo, porque si no, estaríamos en presencia de una base de datos a texto completo (o de fuentes primarias —ver más abajo). Como su nombre lo indica, el contenido son cifras o números. Por ejemplo, una colección de resultados de análisis de laboratorio, entre otras.

 

 

 Base de Datos de texto completo

Están constituidas por los propios documentos en formato electrónico, volcado su texto de forma completa. Pueden incorporar, además, campos en los que se contiene la información fundamental para facilitar su descripción y recuperación. En estos sistemas la operación de búsqueda y la consulta del documento se producen sin salir del propio sistema de información.

 

 


Directorios

Un ejemplo son las guías telefónicas en formato electrónico.

Bases de datos o "bibliotecas" de información química o biológica

Son bases de datos que almacenan diferentes tipos de información proveniente de la químicas, las Ciencias de la
 vida  o medicas. Se pueden considerar en varios subtipos:

  • Las que almacenan secuencias de nucleótidos o proteínas.
  • Las bases de datos de rutas metabólicas.
  • Bases de datos de estructura, comprende los registros de datos experimentales sobre estructuras 3D de biomoléculas
  • Bases de datos clínicas.
  • Bases de datos bibliográficas (biológicas, químicas, médicas y de otros campos):PubChem, Medline, EBSCOhost.

     

 

Además de la clasificación por la función de las bases de datos, éstas también se pueden clasificar de acuerdo a su modelo de administración de datos.

Un modelo de datos es básicamente una "descripción" de algo conocido como contenedor de datos (algo en donde se guarda la información), así como de los métodos para almacenar y recuperar información de esos contenedores. Los modelos de datos no son cosas físicas: son abstracciones que permiten la implementación de un sistema eficiente de base de datos; por lo general se refieren a algoritmos, y conceptos matemáticos.

Algunos modelos con frecuencia utilizados en las bases de datos:
  •  Bases de datos jerárquicas
  • Base de datos de red
  • Bases de datos transaccionales
  • Bases de datos relacionales
  • Bases de datos orientadas a objetos
  • Bases de datos multidimensionales
  • Bases de datos documentales
  • Bases de datos deductivas

 

http://es.wikipedia.org/wiki/Base_de_datos

MODELOS DE DATOS

 
                                                                 Un modelo de datos



Es un lenguaje orientado a hablar una Base de Datos. se centra en el planeamiento del desarrollo de aplicaciones  y la decisión de cómo se almacenarán los datos y cómo se accederá a ellos.

A menudo especificados en un lenguaje, los modelos de datos determinan la estructura de
la información, con el objetivo de mejorar la comunicación y la precisión en aplicaciones que usan e intercambian datos. Son terrenos comunes en los cuales los miembros de un equipo de trabajo con diferentes niveles de experiencia y conocimientos técnicos pueden interactuar sin problemas, dado que estos modelos deben tener una única interpretación.
Los modelos de datos son esenciales para el desarrollo de sistemas de información, ya que a través de ellos puede conseguirse la compatibilidad necesaria para manejar cantidades colosales de datos. Además, si se utilizan las mismas estructuras para el almacenamiento y el acceso, entonces distintas aplicaciones pueden compartir información. Un claro ejemplo es un formulario de registro en una página de Internet, donde para nuestro nombre sólo podemos ingresar letras, y para nuestra fecha de nacimiento, números con un orden específicos (día, mes, año). Estas restricciones responden a necesidades de la base de datos y deberían ser iguales en dos bases entre las que se quisiera compartir información. 
  Típicamente un modelo de datos permite describir

  • Las estructuras de datos de la base: El tipo de los datos que hay en la base y la forma en que se relacionan.

  • Las restricciones de integridad: Un conjunto de condiciones que deben cumplir los datos para reflejar correctamente la realidad deseada.

  • Operaciones de manipulación de los datos: típicamente, operaciones de agregado, borrado, modificación y recuperación de los datos de la base.
 Una clasificación de los modelos de datos

Una opción bastante usada a la hora de clasificar los modelos de datos es hacerlo de acuerdo al nivel de abstracción que presentan:

Modelos de Datos Conceptuales
 
Son los orientados a la descripción de estructuras de datos y restricciones de integridad. Se usan fundamentalmente durante la etapa de Análisis de un problema dado y están orientados a representar los elementos que intervienen en ese problema y sus relaciones. El ejemplo más típico es el Modelo Entidad-Relación.
Modelos de Datos Lógicos
 
Son orientados a las operaciones más que a la descripción de una realidad. Usualmente están implementados en algún Manejador de Base de Datos. El ejemplo más típico es el Modelo Relacional, que cuenta con la particularidad de contar también con buenas características conceptuales (Normalización de bases de datos).
Modelos de Datos Físicos
 
Son estructuras de datos a bajo nivel implementadas dentro del propio manejador. Ejemplos típicos de estas estructuras son los Árboles B+, las estructuras de Hash, etc.

MODELO, ESQUEMA

La metodología de diseño de datos divide cada modelo en tres esquemas:

A) Modelo Global: se trata de una representación gráfica legible por el usuario y que nos
aporta el flujo de información dentro de una organización. No existen reglas para su
construcción y se debe realizar siempre el esquema más sencillo posible para la
comprensión por parte del usuario de la base de datos. Por ejemplo:




B) Modelo Lógico: Se trata de una representación gráfica, mediante símbolos y signos normalizados, de la base de datos. Su objetivo es representar la estructura de los datos y las dependencias de los mismos, garantizando la consistencia y evitando la duplicidad.

C) Modelo Físico: se trata del almacén de los datos, es la base de datos en sí misma, el soporte donde se almacenan los datos y de donde se extraen para convertir los datos en información. En función del gestor de bases de datos empleado las reglas de almacenamiento varían.


                                   Categoría de los modelos de datos.



Una clasificación posible de los modelos de datos se realiza de acuerdo al nivel de abstracción que ofrecen para describir la estructura de la base de datos. Existen en este sentido tres categorías:
· Conceptuales.
· Lógicos.
· Físicos.

Modelo de datos conceptual : disponen de conceptos muy cercanos a la forma en que la mayoría de los usuarios percibe los datos. Son los orientados a la descripción de estructuras de datos y restricciones de integridad. Se usan fundamentalmente durante la etapa de Análisis de un problema dado y están orientados a representar los elementos que intervienen en ese problema y sus relaciones.
Un ejemplo conocido de modelo conceptual es el MER (Modelo Entidad Relación).

Modelos de Datos Lógicos: Son orientados a las operaciones más que a la descripción de una realidad. Usualmente están implementados en algún Manejador de datos.
El ejemplo más típico es el modelo relacional que cuenta con la particularidad de contar también con buenas características conceptuales (Normalización de base de datos).

Modelos de Datos Físicos: Son estructuras de datos a bajo nivel implementadas dentro del propio manejador. Ejemplos típicos de estas estructuras son los Árboles B+, las estructuras de Hash, etc.





TIPOS DE ABSTRACCION DE DATOS

 

 
El concepto abstracción implica concentrarse en las cualidades esenciales de un objeto. En
 la abstracción se suprimen los detalles irrelevantes y se aísla la esencia del objeto que se
maneja. En la vida diaria, a menudo usamos este concepto aunque no nos demos cuenta
de ello. Cada vez que usamos un automóvil, lo hacemos sin preocuparnos de la
organización interna del vehículo ni de cómo trabajan los controles del mismo (guía,
pedales, etc.). Sabemos lo que hacen y cómo utilizarlos pero probablemente
desconocemos cómo estos controles realizan su tarea asignada. Otro ejemplo: aún cuando
la mayoría de nosotros no sabemos de que está hecho un televisor ni sabemos al detalle
 como se genera la imagen en la pantalla, esto no evita que lo utilicemos todos los días
 confiados de que trabajará como es debido. Este concepto es fundamental en el estudio de las Ciencias de Computadoras ya que es la base para entender el diseño contemporáneo del software, en especial el diseño orientado a objetos.

La abstracción de datos es la característica de un sistema de bases de datos, que permite al usuario o programador operar con los datos sin necesidad de conocer detalles que para él no son de “importancia”, ofreciendo así una visión abstracta de estos. Para cumplir con tal fin se han definido diferentes niveles de abstracción.

 Nivel Físico. Determina como están almacenados físicamente los datos (pistas, sectores, cilindros), representa el nivel más bajo.

 Nivel Lógico o Conceptual: Determina la organización de los archivos. Índices, llaves, orden de campos, relaciones, tipos de datos.

 Nivel de Vistas: Oculta parte de la información a los usuarios, es decir hace visible solo una parte de la base de datos.


Un tipo de dato abstracto (TDA) o Tipo abstracto de datos (TAD) es un modelo matemático

 compuesto por una colección de operaciones definidas sobre un conjunto de datos para el
 modelo.

La abstracción es la estructuración de un problema nebuloso en entidades bien definidas
 por medio de la definición de sus datos y operaciones. Consecuentemente, estas entidades combinan datos y operaciones.
 
Un Tipo Abstracto de Datos es una abstracción donde se encuentran encapsulados los estados potenciales en los que se puede encontrar una entidad de ese tipo y las operaciones que pueden realizarse sobre ella.
 
 

Abstraer: Separar por medio de una operación intelectual las cualidades de un objeto para
considerarlas aisladamente o para considerar el mismo objeto en su pura esencia o noción.
Como se ha mencionado, se trata de una abstracción.
 
No se incluyen detalles sobre la implementación de las operaciones.
Los TAD son independientes por completo de la implementación.
 
 
 
La abstracción busca las propiedades comunes de un conjunto de objetos reduciendo la
complejidad y ayudando a entender un mundo real.
 
TIPOS DE ABSTRACCIÓN QUE OFRECEN LOS MODELOS:
 
Clasificación/Particularización
Agregación/Desagregación
•Generalización/Especialización
Asociación/Disociación
Jerarquía de Abstracciones

Las estructuras de los TAD se componen de dos partes: la interfaz y la
 implementación.
Esto se debe a que las estructuras de datos reales que utilizamos para almacenar la
 representación de un tipo abstracto de datos son invisibles para los usuarios o clientes.
Mientras que en la interfaz se declaran las operaciones y los datos, la implementación
contiene el código fuente de las operaciones y lo mantiene oculto al usuario.
 
Las principales ventajas que nos aportan los TAD son las siguientes:

 1.    Mejoran la conceptualización y hacen más claro y comprensible el código.
 2.    Hacen que el sistema sea más robusto.
 3.    Reducen el tiempo de compilación.
 4.    Permiten modificar la implementación sin que afecte al interfaz público.
 5.    Facilitan la extensibilidad.
 
 
 
 
 
 
 
 
 
 
 

RESTRICCIONES DE INTEGRIDAD


 El término integridad de datos se refiere a la corrección y complementación de los datos en una base de datos. Cuando los contenidos se modifican con sentencias INSERT, DELETE o UPDATE, la integridad de los datos almacenados puede perderse de muchas maneras diferentes. Pueden añadirse datos no válidos a la base de datos, tales como un pedido que especifica un producto no existente.

Tipos de Restricciones de Integridad:

 

 Datos Requeridos: establece que una columna tenga un valor no NULL. Se define efectuando la declaración de una columna es NOT NULL cuando la tabla que contiene las columnas se crea por primera vez, como parte de la sentencia CREATE TABLE.

 Chequeo de Validez: cuando se crea una tabla cada columna tiene un tipo de datos y el DBMS asegura que solamente los datos del tipo especificado sean ingresados en la tabla.

 Integridad de entidad: establece que la clave primaria de una tabla debe tener un valor único para cada fila de la tabla; si no, la base de datos perderá su integridad. 

 Integridad referencial: asegura la integridad entre las llaves foráneas y primarias (relaciones padre/hijo). Existen cuatro actualizaciones de la base de datos que pueden corromper la integridad referencial:
  • La inserción de una fila hijo se produce cuando no coincide la llave foránea con la llave primaria del padre.
  • La actualización en la llave foránea de la fila hijo, donde se produce una actualización en la clave ajena de la fila hijo con una sentencia UPDATE y la misma no coincide con ninguna llave primaria.
  • La supresión de una fila padre, con la que, si una fila padre -que tiene uno o más hijos- se suprime, las filas hijos quedarán huérfanas.
  • La actualización de la llave primaria de una fila padre, donde si en una fila padre, que tiene uno o más hijos se actualiza su llave primaria, las filas hijos quedarán huérfanas.



     



     

MODELOS DE RED


 
El modelo de red expande la estructura jerárquica, permitiendo relaciones N:N en una estructura tipo árbol que permite múltiples padres. Antes de la llegada del modelo relacional, el modelo en red era el más popular para las bases de datos. Este modelo de red (definido por la especificación CODASYL) organiza datos que usan en dos construcciones básicas, registros y conjuntos. Los registros contienen campos que puede estar organizados jerárquicamente, como en el lenguaje COBOL. Los conjuntos definen relaciones N:N entre registros: varios propietarios, varios miembros. Un registro puede ser un propietario de varios conjuntos, y miembro en cualquier número de conjuntos.


El modelo en red es una generalización del modelo jerárquico, en tanto está construido sobre el concepto de múltiples ramas (estructuras de nivel inferior) emanando de uno o varios nodos (estructuras de nivel alto), mientras el modelo se diferencia del modelo jerárquico en que las ramas pueden estar unidas a múltiples nodos. El modelo de red es capaz de representar la redundancia en datos de una manera más eficiente que en el modelo jerárquico.

Las operaciones del modelo de red se realizan por de navegación: un programa mantiene la posición actual, y navega entre registros siguiendo las relaciones ente ellos. Los registros también pueden ser localizados por valores claves.

Aunque no es una característica esencial del modelo, las bases de datos en red implementan sus relaciones mediante punteros directos al disco. Esto da una velocidad de recuperación excelente, pero penaliza las operaciones de carga y reorganización.






MODELO JERÁRQUICO

Un modelo de datos jerárquico es un modelo de datos en el cual los datos son organizados en una estructura parecida a un árbol. La estructura permite a la información que repite y usa relaciones padre/Hijo: cada padre puede tener muchos hijos pero cada hijo sólo tiene un padre. Todos los atributos de un registro específico son catalogados bajo un tipo de entidad.

Ejemplo de un Modelo Jerárquico:

En una base de datos, un tipo de entidad es el equivalente de una tabla; cada registro individual es representado como una fila y un atributo como una columna. Los tipos de entidad son relacionados el uno con el otro usando 1: Trazar un mapa de n, también conocido como relación de uno a varios. El ejemplo más aprobado de base de datos jerárquica modela es un IMS diseñado por la IBM.

diagrama de modelo jerárquico.



MODELO RELACIONAL

El modelo relacional para la gestión de una base de datos es un modelo de datos basado en la lógica y de predicados y en la teoría de conjuntos. Es el modelo más utilizado en la actualidad para modelar problemas reales y administrar datos dinámicamente. 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.
En este modelo todos los datos son almacenados en relaciones, y como cada relación es un conjunto de datos, el orden en el que éstos se almacenen no tiene relevancia (a diferencia de otros modelos como el jerárquico y el de red). Esto tiene la considerable ventaja de que es más fácil de entender y de utilizar por un usuario no experto. La información puede ser recuperada o almacenada por medio de consultas que ofrecen una amplia flexibilidad y poder para administrar la información.

Este modelo considera la base de datos como una colección de relaciones. De manera simple, una relación representa una tabla que no es más que un conjunto de filas, cada fila es un conjunto de campos y cada campo representa un valor que interpretado describe el mundo real. Cada fila también se puede denominar tupla o registro y a cada columna también se le puede llamar campo o 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 meta datos 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 valido 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.