martes, 29 de marzo de 2011

TIPOS DE DATOS

¿Qué es una base de datos?
Una base de datos o banco de datos (en ocasiones abreviada con la sigla BD o con la abreviatura b. d.) es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso. En este sentido, una biblioteca puede considerarse una base de datos compuesta en su mayoría por documentos y textos impresos en papel e indexados para su consulta. En la actualidad, y debido al desarrollo tecnológico de campos como la informática y la electrónica, la mayoría de las bases de datos están en formato digital (electrónico), que ofrece un amplio rango de soluciones al problema de almacenar datos.
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.
BASES DE DATOS ESTÁTICAS. É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.
BASES DE DATOS DINÁMICAS. É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;

 BASES DE DATOS BIBLIOGRÁFICAS. Solo contienen un subrogante (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.
 BASES DE DATOS DE TEXTO COMPLETO. Almacenan las fuentes primarias, como por ejemplo, todo el contenido de todas las ediciones de una colección de revistas científicas.
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ímica, las ciencias de la vida o médicas. 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 BIBLIOGRÁFICAS (biológicas, químicas, médicas y de otros campos):

DESCRIPCION DIAGRAMA BD
Una ventaja importante sería mantener en lo posible la misma estructura general para las tres lenguas, porque esto facilitaría enormemente las tareas de mantenimiento y modificación de la base de datos. Esto no significa que las propiedades hayan de ser las mismas, pero sí las entidades y relaciones. Por ejemplo, las tres lenguas tienen verbos, sustantivos, adjetivos, adverbios y un conjunto cerrado de unidades léxicas, aunque las propiedades de cada una de ellas puedan ser diferentes.
En nuestro diseño hemos tratado de aprovechar estas características isomórficas de modo que la estructura básica de entidades y relaciones es la misma para las tres lenguas. La Figura 5.3 muestra un diagrama E/R donde las "XXX" pueden ser sustituidas por las iniciales de cualquiera de las tres lenguas (ENG, SPA, GER).
Este diseño implica que en la base de datos existe una tabla ENG_Lemma, una tabla SPA_Lemma y una tabla GER_Lemma, así como las tablas ENG_Verb, SPA_Verb, GER_Verb, etc., manteniendo una estructura isomórfica.
Las "nubes" de este diagrama son otra convención que indican que el esquema no acaba ahí sino que continúan las relaciones y entidades. Hemos marcado con línea más gruesa la sección del diagrama que hemos desarrollado completamente, es decir, la información correspondiente a los predicados verbales, que describimos a continuación.
Asistente para la base de datos.- Haciendo click sobre el icono con la "varita mágica" se abre una ventana donde aparecen diversos modelos de asistentes, entre los cuales existe la posibilidad de escoger el que más le interese (por ejemplo, "Inventario doméstico"). Es el programa quien realiza automáticamente todas las estructuras necesarias tales como las tablas, máscaras, consultas, etc. Los asistentes pueden utilizarse también como punto de partida par su diseño principal e integrarlo después en otras tablas, consultas, etc. Es en realidad, un pequeño programa que coloca unas preguntas en sucesión a las cuales debemos responder sobre lo que deseamos realizar.
Base de datos en blanco.- Seleccionado esta opción tras abrir el programa se nos pregunta dónde deseamos guardar la base de datos y con qué nombre. Tras esto, debe hacer click sobre Crear y se abrirá la ventana Database, que contiene los seis tipos de objetos que caracterizan la estructura de Access:
significan :
-Tablas: son el "corazón" de la Base de datos y aparecen en una hoja electrónica formada por filas (informes) y columnas (campos). El informe contiene una voz de la Base de datos, mientras que el campo contiene cada uno de los detalles.
-Consultas (Query): son "herramientas" que sirven para "eliminar" todos los datos que no interesan haciendo aparecer únicamente aquellos que interesan.
-Máscaras o formularios: permiten la visualización y la gestión de los datos contenidos en las tablas y en las consultas. Normalmente representan la interface principal entre el programa y el usuario para que de este modo resulte más fácil la introducción de los datos.
-Report o informes: recopilan los datos de las tablas o consultas para permitir su impresión o análisis, facilitando la individualización de los datos más improtantes.
-Macros: automatizan las funciones de la base de datos
-Módulos: registran de Access Basic (programación).
Las tablas, informes, formularios y consultas aparecen en diversos momentos, pero están vinculados entre ellos. Las tablas representan el centro de cada actividad: el resto de objetos interactúan con los datos indicados en las tablas.
BASES DE DATOS RELACIONALES
Una base de datos relacional es una base de datos en donde todos los datos visibles al usuario están organizados estrictamente como tablas de valores, y en donde todas las operaciones de la base de datos operan sobre estas tablas.
Estas bases de datos son percibidas por los usuarios como una colección de relaciones normalizadas de diversos grados que varían con el tiempo.
El modelo relacional representa un sistema de bases de datos en un nivel de abstracción un tanto alejado de los detalles de la máquina subyacente, de la misma manera como, por ejemplo, un lenguaje del tipo de PL/1 representa un sistema de programación con un nivel de abstracción un tanto alejado de los detalles de la máquina subyacente. De hecho, el modelo relacional puede considerarse como un lenguaje de programación mas bien abstracto, orientado de manera específica hacia las aplicaciones de bases de datos.
En términos tradicionales una relación se asemeja a un archivo, una tupla a un registro, y un atributo a un campo. Pero estas correspondencias son aproximadas, en el mejor de los casos. Una relación no debe considerarase como ``solo un archivo'', sino mas bien como un archivo disciplinado, siendo el resultado de esta disciplina una simplificación considerable de las estructuras de datos con las cuales debe interactuar el usuario, lo cual a su vez simplifca los operadores requeridos para manejar esas estructuras.
Características principales de los ``archivos'' relacionales:
Cada ``archivo'' contiene solo un tipo de registros
-Los campos no tienen un orden específico, de izquierda a derecha
-Los registros no tienen un orden específico, de arriba hacia abajo
-Cada campo tiene un solo valor.
Los registros poseen un campo identificador único (o combinación de campos) llamado clave primaria.
Así, todos los datos en una base de datos relacional se representan de una y solo una manera, a saber, por su valor explícito (esta se denomina en ocasiones ``principio básico del modelo relacional''). En particular, las conexiones lógicas dentro de una relación y entre las relaciones se representan mediante esos valores; no existen ``ligas'' o apuntadores visibles para el usuario, ni ordenamientos visibles para el usuario, ni grupos repetitivos visibles para el usuario, etc.
Actualmente algunos de los manejadores de bases de datos, utilizan un sistema de búsqueda con algoritmos de árboles b. Pero las búsquedas que se pueden realizar con estos algoritmos son sólo para memoria principal.
Los algoritmos implementados para realizar búsquedas con listas salteadas o por bloques (skip lists) son eficientes para realizar búsquedas en memoria secundaria. Como tienen varios niveles en cada nodo de la lista, nos permite dar saltos mas largos al realizar las búsquedas, esto provoca que las sean mas rápidas.
                                                MODELO DE DATOS 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.
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 relacion de uno a varios. El ejemplo más aprobado de base de datos jerárquica modela es un IMS diseñado por la IBM.
                                                     BASE DE DATOS DE RED
Éste es un modelo ligeramente distinto del jerárquico; su diferencia fundamental es la modificación del concepto de nodo: se permite que un mismo nodo tenga varios padres (posibilidad no permitida en el modelo jerárquico).
Fue una gran mejora con respecto al modelo jerárquico, ya que ofrecía una solución eficiente al problema de redundancia de datos; pero, aun así, la dificultad que significa administrar la información en una base de datos de red ha significado que sea un modelo utilizado en su mayoría por programadores más que por usuarios finales.
                            EN UNA BASE DE DATOS ORIENTADA A OBJETOS
En una base de datos orientada a objetos, la información se representa mediante objetos como los presentes en la programación orientada a objetos. Cuando se integra las características de una base de datos con las de un lenguaje de programación orientado a objetos, el resultado es un sistema gestor de base de datos orientada a objetos (ODBMS, object data base management system). Un ODBMS hace que los objetos de la base de datos aparezcan como objetos de un lenguaje de programación en uno o más lenguajes de programación a los que dé soporte. Un ODBMS extiende los lenguajes con datos persistentes de forma transparente, control de concurrencia, recuperación de datos, consultas asociativas y otras capacidades.
Las bases de datos orientadas a objetos se diseñan para trabajar bien en conjunción con lenguajes de programación orientados a objetos como Java, C#, Visual Basic.NET y C++. Los ODBMS usan exactamente el mismo modelo que estos lenguajes de programación. Los ODBMS son una buena elección para aquellos sistemas que necesitan un buen rendimiento en la manipulación de tipos de dato complejos.
Los ODBMS proporcionan los costes de desarrollo más bajos y el mejor rendimiento cuando se usan objetos gracias a que almacenan objetos en disco y tienen una integración transparente con el programa escrito en un lenguaje de programación orientado a objetos, al almacenar exactamente el modelo de objeto usado a nivel aplicativo, lo que reduce los costes de desarrollo y mantenimiento.