Sunteți pe pagina 1din 16

1.1.A. Identificacin y evolucin de los modelos de datos. Qu son las bases de datos?

Una base de datos es un almacn que nos permite guardar grandes cantidades de informacin de forma organizada para que luego podamos encontrar y utilizar fcilmente. A continuacin te presentamos una gua que te explicar el concepto y caractersticas de las bases de datos. El trmino de bases de datos fue escuchado por primera vez en 1963, en un simposio celebrado en California, USA. Una base de datos se puede definir como un conjunto de informacin relacionada que se encuentra agrupada estructurada. Desde el punto de vista informtico, la base de datos es un sistema formado por un conjunto de datos almacenados en discos que permiten el acceso directo a ellos y un conjunto de programas que manipulen ese conjunto de datos. Cada base de datos se compone de una o ms tablas que guarda un conjunto de datos. Cada tabla tiene una o ms columnas y filas. Las columnas guardan una parte de la informacin sobre cada elemento que queramos guardar en la tabla, cada fila de la tabla conforma un registro. Definicin de base de datos Se define una base de datos como una serie de datos organizados y relacionados entre s, los cuales son recolectados y explotados por los sistemas de informacin de una empresa o negocio en particular. Caractersticas Entre las principales caractersticas de los sistemas de base de datos podemos mencionar:

Independencia lgica y fsica de los datos. Redundancia mnima. Acceso concurrente por parte de mltiples usuarios. Integridad de los datos. Consultas complejas optimizadas. Seguridad de acceso y auditora. Respaldo y recuperacin. Acceso a travs de lenguajes de programacin estndar. Sistema de Gestin de Base de Datos (SGBD) Los Sistemas de Gestin de Base de Datos (en ingls DataBase Management System) son un tipo de software muy especfico, dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan. Se compone de un lenguaje de definicin de datos, de un lenguaje de manipulacin de datos y de un lenguaje de consulta. Ventajas de las bases de datos Control sobre la redundancia de datos: Los sistemas de ficheros almacenan varias copias de los mismos datos en ficheros distintos. Esto hace que se desperdicie espacio de almacenamiento, adems de provocar la falta de consistencia de datos. En los sistemas de bases de datos todos estos ficheros estn integrados, por lo que no se almacenan varias copias de los mismos datos. Sin embargo, en una base de datos no se puede eliminar la redundancia completamente, ya que en ocasiones es necesaria para modelar las relaciones entre los datos. Consistencia de datos: Eliminando o controlando las redundancias de datos se reduce en gran medida el riesgo de que haya inconsistencias. Si un dato est almacenado una sola vez, cualquier actualizacin se debe realizar slo una

vez, y est disponible para todos los usuarios inmediatamente. Si un dato est duplicado y el sistema conoce esta redundancia, el propio sistema puede encargarse de garantizar que todas las copias se mantienen consistentes. Comparticin de datos: En los sistemas de ficheros, los ficheros pertenecen a las personas o a los departamentos que los utilizan. Pero en los sistemas de bases de datos, la base de datos pertenece a la empresa y puede ser compartida por todos los usuarios que estn autorizados. Mantenimiento de estndares: Gracias a la integracin es ms fcil respetar los estndares necesarios, tanto los establecidos a nivel de la empresa como los nacionales e internacionales. Estosestndares pueden establecerse sobre el formato de los datos para facilitar su intercambio, pueden ser estndares de documentacin, procedimientos de actualizacin y tambin reglas de acceso. Mejora en la integridad de datos: La integridad de la base de datos se refiere a la validez y la consistencia de los datos almacenados. Normalmente, la integridad se expresa mediante restricciones o reglas que no se pueden violar. Estas restricciones se pueden aplicar tanto a los datos, como a sus relaciones, y es el SGBD quien se debe encargar de mantenerlas. Mejora en la seguridad: La seguridad de la base de datos es la proteccin de la base de datos frente a usuarios no autorizados. Sin unas buenas medidas de seguridad, la integracin de datos en los sistemas de bases de datos hace que stos sean ms vulnerables que en los sistemas de ficheros. Mejora en la accesibilidad a los datos: Muchos SGBD proporcionan lenguajes de consultas o generadores de informes que permiten al usuario hacer cualquier tipo de consulta sobre los datos, sin que sea necesario que un programador escriba una aplicacin que realice tal tarea. Mejora en la productividad: El SGBD proporciona muchas de las funciones estndar que el programador necesita escribir en un sistema de ficheros. A nivel bsico, el SGBD proporciona todas las rutinas de manejo de ficheros tpicas de los programas de aplicacin. El hecho de disponer de estas funciones permite al programador centrarse mejor en la funcin especfica requerida por los usuarios, sin tener que preocuparse de los detalles de implementacin de bajo nivel. Mejora en el mantenimiento: En los sistemas de ficheros, las descripciones de los datos se encuentran inmersas en los programas de aplicacin que los manejan. Esto hace que los programas sean dependientes de los datos, de modo que un cambio en su estructura, o un cambio en el modo en que se almacena en disco, requiere cambios importantes en los programas cuyos datos se ven afectados. Sin embargo, los SGBD separan las descripciones de los datos de las aplicaciones. Esto es lo que se conoce como independencia de datos, gracias a la cual se simplifica el mantenimiento de las aplicaciones que acceden a la base de datos. Aumento de la concurrencia:

En algunos sistemas de ficheros, si hay varios usuarios que pueden acceder simultneamente a un mismo fichero, es posible que el acceso interfiera entre ellos de modo que se pierda informacin o se pierda la integridad. La mayora de los SGBD gestionan el acceso concurrente a la base de datos y garantizan que no ocurran problemas de este tipo. Mejora en los servicios de copias de seguridad: Muchos sistemas de ficheros dejan que sea el usuario quien proporcione las medidas necesarias para proteger los datos ante fallos en el sistema o en las aplicaciones. Los usuarios tienen que hacer copias de seguridad cada da, y si se produce algn fallo, utilizar estas copias para restaurarlos. En este caso, todo el trabajo realizado sobre los datos desde que se hizo la ltima copia de seguridad se pierde y se tiene que volver a realizar. Sin embargo, los SGBD actuales funcionan de modo que se minimiza la cantidad de trabajo perdido cuando se produce un fallo. Desventajas de las bases de datos Complejidad: Los SGBD son conjuntos de programas que pueden llegar a ser complejos con una gran funcionalidad. Es preciso comprender muy bien esta funcionalidad para poder realizar un buen uso de ellos. Coste del equipamiento adicional: Tanto el SGBD, como la propia base de datos, pueden hacer que sea necesario adquirir ms espacio de almacenamiento. Adems, para alcanzar las prestaciones deseadas, es posible que sea necesario adquirir una mquina ms grande o una mquina que se dedique solamente al SGBD. Todo esto har que la implantacin de un sistema de bases de datos sea ms cara. Vulnerable a los fallos: El hecho de que todo est centralizado en el SGBD hace que el sistema sea ms vulnerable ante los fallos que puedan producirse. Es por ello que deben tenerse copias de seguridad (Backup). Tipos de Campos Cada Sistema de Base de Datos posee tipos de campos que pueden ser similares o diferentes. Entre los ms comunes podemos nombrar:

Numrico: entre los diferentes tipos de campos numricos podemos encontrar enteros sin decimales y reales decimales. Booleanos: poseen dos estados: Verdadero Si y Falso No. Memos: son campos alfanumricos de longitud ilimitada. Presentan el inconveniente de no poder ser indexados. Fechas: almacenan fechas facilitando posteriormente su explotacin. Almacenar fechas de esta forma posibilita ordenar los registros por fechas o calcular los das entre una fecha y otra. Alfanumricos: contienen cifras y letras. Presentan una longitud limitada (255 caracteres). Autoincrementables: son campos numricos enteros que incrementan en una unidad su valor para cada registro incorporado. Su utilidad resulta: Servir de identificador ya que resultan exclusivos de un registro. Tipos de Base de Datos Entre los diferentes tipos de base de datos, podemos encontrar los siguientes:

MySql: es una base de datos con licencia GPL basada en un servidor. Se caracteriza por su rapidez. No es recomendable usar para grandes volmenes de datos. PostgreSql y Oracle: Son sistemas de base de datos poderosos. Administra muy bien grandes cantidades de datos, y suelen ser utilizadas en intranets y sistemas de gran calibre.

Access: Es una base de datos desarrollada por Microsoft. Esta base de datos, debe ser creada bajo el programa access, el cual crea un archivo .mdb con la estructura ya explicada. Microsoft SQL Server: es una base de datos ms potente que access desarrollada por Microsoft. Se utiliza para manejar grandes volmenes de informaciones. Modelo entidad-relacin Los diagramas o modelos entidad-relacin (denominado por su siglas, ERDDiagram Entity relationship) son una herramienta para el modelado de datos de un sistema de informacin. Estos modelos expresan entidades relevantes para un sistema de informacin, sus inter-relaciones y propiedades.

Cardinalidad de las Relaciones El diseo de relaciones entre las tablas de una base de datos puede ser la siguiente:

Relaciones de uno a uno: una instancia de la entidad A se relaciona con una y solamente una de la entidad B. Relaciones de uno a muchos: cada instancia de la entidad A se relaciona con varias instancias de la entidad B. Relaciones de muchos a muchos: cualquier instancia de la entidad A se relaciona con cualquier instancia de la entidad B. Estructura de una Base de Datos Una base de datos, a fin de ordenar la informacin de manera lgica, posee un orden que debe ser cumplido para acceder a la informacin de manera coherente. Cada base de datos contiene una o ms tablas, que cumplen la funcin de contener los campos. En el siguiente ejemplo mostramos una tabla comentarios que contiene 4 campos.

Los datos quedaran organizados como mostramos en siguiente ejemplo:

Por consiguiente una base de datos posee el siguiente orden jerrquico:


Tablas Campos Registros Lenguaje SQL El lenguaje SQL es el ms universal en los sistemas de base de datos. Este lenguaje nos permite realizar consultas a nuestras bases de datos para mostrar, insertar, actualizar y borrar datos. A continuacin veremos un ejemplo de ellos:

Mostrar: para mostrar los registros se utiliza la instruccin Select.Select * From comentarios. Insertar: los registros pueden ser introducidos a partir de sentencias que emplean la instruccin Insert. Insert Into comentarios (titulo, texto, fecha) Values ('saludos', 'como esta', '22-10-2007') Borrar: Para borrar un registro se utiliza la instruccin Delete. En este caso debemos especificar cual o cuales son los registros que queremos borrar. Es por ello necesario establecer una seleccin que se llevara a cabo mediante la clusula Where. Delete From comentarios Where id='1'. Actualizar: para actualizar los registros se utiliza la instruccin Update. Como para el caso de Delete, necesitamos especificar por medio de Where cules son los registros en los que queremos hacer efectivas nuestras modificaciones. Adems, tendremos que especificar cules son los nuevos valores de los campos que deseamos actualizar. Update comentarios Set titulo='Mi Primer Comentario' Where id='1'.

Base de datos Una base de datos o banco de datos es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemticamente para su posterior uso. En este sentido; una biblioteca puede considerarse una base de datos compuesta en su mayora por documentos y textos impresos en papel e indexados para su consulta. Actualmente, y debido al desarrollo tecnolgico de campos como la informtica y la electrnica, la mayora de las bases de datos estn en formato digital (electrnico), y por ende se ha desarrollado y se ofrece un amplio rango de soluciones al problema del almacenamiento de datos. Existen programas denominados sistemas gestores de bases de datos, abreviado DBMS, que permiten almacenar y posteriormente acceder a los datos de forma rpida y estructurada. Las propiedades de estos DBMS, as como su utilizacin y administracin, se estudian dentro del mbito de la informtica. Las aplicaciones ms usuales son para la gestin de empresas e instituciones pblicas. Tambin son ampliamente utilizadas en entornos cientficos con el objeto de almacenar la informacin experimental. Aunque las bases de datos pueden contener muchos tipos de datos, algunos de ellos se encuentran protegidos por las leyes de varios pases. Por ejemplo en Espaa, los datos personales se encuentran protegidos por la Ley Orgnica de Proteccin de Datos de Carcter Personal (LOPD) y en Mxico por la Ley Federal de Transparencia y Acceso a la Informacin Pblica Gubernamental. 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.

Segn la variabilidad de la base de Datos Bases de datos estticas Son bases de datos de solo lectura, utilizadas primordialmente para almacenar datos histricos que posteriormente se pueden utilizar para estudiar el comportamiento de un conjunto de datos a travs del tiempo, realizar proyecciones, tomar decisiones y realizar anlisis de datos para inteligencia empresarial. Bases de datos dinmicas stas son bases de datos donde la informacin almacenada se modifica con el tiempo, permitiendo operaciones como actualizacin, borrado y edicin de datos, adems de las operaciones fundamentales de consulta. Un ejemplo de esto puede ser la base de datos utilizada en un sistema de informacin de un supermercado, una farmacia, un videoclub o una empresa. Segn el contenido Bases de datos bibliogrficas Slo contienen un subrogante (representante) de la fuente primaria, que permite localizarla. Un registro tpico de una base de datos bibliogrfica contiene informacin sobre el autor, fecha de publicacin, editorial, ttulo, edicin, de una determinada publicacin, etc. Puede contener un resumen o extracto de la publicacin original, pero nunca el texto completo, porque si no, estaramos en presencia de una base de datos a texto completo (o de fuentes primarias ver ms abajo). Como su nombre lo indica, el contenido son cifras o nmeros. Por ejemplo, una coleccin de resultados de anlisis 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 coleccin de revistas cientficas. Directorios Un ejemplo son las guas telefnicas en formato electrnico. Bases de datos o "bibliotecas" de informacin qumica o biolgica Son bases de datos que almacenan diferentes tipos de informacin proveniente de la qumica, las ciencias de la vida o mdicas. Se pueden considerar en varios subtipos:

Las que almacenan secuencias de nucletidos o protenas. Las bases de datos de rutas metablicas. Bases de datos de estructura, comprende los registros de datos experimentales sobre estructuras 3D de biomolculasBases de datos clnicas. Bases de datos bibliogrficas (biolgicas, qumicas, mdicas y de otros campos): PubChem, Medline, EBSCOhost.

Modelos de bases de datos Adems de la clasificacin por la funcin de las bases de datos, stas tambin se pueden clasificar de acuerdo a su modelo de administracin de datos. Un modelo de datos es bsicamente una "descripcin" de algo conocido como contenedor de datos (algo en donde se guarda la informacin), as como de los mtodos para almacenar y recuperar informacin de esos contenedores. Los modelos de datos no son cosas fsicas: son abstracciones que permiten la implementacin de un sistema eficiente de base de datos; por lo general se refieren a algoritmos, y conceptos matemticos. Algunos modelos con frecuencia utilizados en las bases de datos: Bases de datos jerrquicas

En este modelo los datos se organizan en forma de rbol invertido (algunos dicen raz), en donde un nodo padre de informacin puede tener varios hijos. El nodo que no tiene padres es llamado raz, y a los nodos que no tienen hijos se los conoce como hojas. Las bases de datos jerrquicas son especialmente tiles en el caso de aplicaciones que manejan un gran volumen de informacin y datos muy compartidos permitiendo crear estructuras estables y de gran rendimiento. Una de las principales limitaciones de este modelo es su incapacidad de representar eficientemente la redundancia de datos. Base de datos de red ste es un modelo ligeramente distinto del jerrquico; su diferencia fundamental es la modificacin del concepto de nodo: se permite que un mismo nodo tenga varios padres (posibilidad no permitida en el modelo jerrquico). Fue una gran mejora con respecto al modelo jerrquico, ya que ofreca una solucin eficiente al problema de redundancia de datos; pero, an as, la dificultad que significa administrar la informacin en una base de datos de red ha significado que sea un modelo utilizado en su mayora por programadores ms que por usuarios finales. Bases de datos transaccionales Son bases de datos cuyo nico fin es el envo y recepcin de datos a grandes velocidades, estas bases son muy poco comunes y estn dirigidas por lo general al entorno de anlisis de calidad, datos de produccin e industrial, es importante entender que su fin nico es recolectar y recuperar los datos a la mayor velocidad posible, por lo tanto la redundancia y duplicacin de informacin no es un problema como con las dems bases de datos, por lo general para poderlas aprovechar al mximo permiten algn tipo de conectividad a bases de datos relacionales. Un ejemplo habitual de transaccin es el traspaso de una cantidad de dinero entre cuentas bancarias. Normalmente se realiza mediante dos operaciones distintas, una en la que se decrementa el saldo de la cuenta origen y otra en la que incrementamos el saldo de la cuenta destino. Para garantizar la atomicidad del sistema (es decir, para que no aparezca o desaparezca dinero), las dos operaciones deben ser atmicas, es decir, el sistema debe garantizar que, bajo cualquier circunstancia (incluso una cada del sistema), el resultado final es que, o bien se han realizado las dos operaciones, o bien no se ha realizado ninguna. Bases de datos relacionales ste es el modelo utilizado en la actualidad para modelar problemas reales y administrar datos dinmicamente. Tras ser postulados sus fundamentos 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 podran considerarse en forma lgica como conjuntos de datos llamados "tuplas". Pese a que sta es la teora de las bases de datos relacionales creadas por Codd, la mayora de las veces se conceptualiza de una manera ms fcil de imaginar. Esto es pensando en cada relacin como si fuese una tabla que est compuesta por registros (las filas de una tabla), que representaran las tuplas, y campos (las columnas de una tabla). En este modelo, el lugar y la forma en que se almacenen los datos no tienen relevancia (a diferencia de otros modelos como el jerrquico y el de red). Esto tiene la considerable ventaja de que es ms fcil de entender y de utilizar para un usuario espordico de la base de datos. La informacin puede ser recuperada o almacenada mediante "consultas" que ofrecen una amplia flexibilidad y poder para administrar la informacin. El lenguaje ms habitual para construir las consultas a bases de datos relacionales es SQL, Structured Query Language o Lenguaje Estructurado de Consultas, un estndar implementado por los principales motores o sistemas de gestin de bases de datos relacionales. Durante su diseo, una base de datos relacional pasa por un proceso al que se le conoce como normalizacin de una base de datos.

Durante los aos 80 la aparicin de dBASE produjo una revolucin en los lenguajes de programacin y sistemas de administracin de datos. Aunque nunca debe olvidarse que dBase no utilizaba SQL como lenguaje base para su gestin. Bases de datos multidimensionales Son bases de datos ideadas para desarrollar aplicaciones muy concretas, como creacin de Cubos OLAP. Bsicamente no se diferencian demasiado de las bases de datos relacionales (una tabla en una base de datos relacional podra serlo tambin en una base de datos multidimensional), la diferencia est ms bien a nivel conceptual; en las bases de datos multidimensionales los campos o atributos de una tabla pueden ser de dos tipos, o bien representan dimensiones de la tabla, o bien representan mtricas que se desean estudiar. Bases de datos orientadas a objetos Este modelo, bastante reciente, y propio de los modelos informticos orientados a objetos, trata de almacenar en la base de datos los objetos completos (estado y comportamiento). Una base de datos orientada a objetos es una base de datos que incorpora todos los conceptos importantes del paradigma de objetos:

Encapsulacin - Propiedad que permite ocultar la informacin al resto de los objetos, impidiendo as accesos incorrectos o conflictos. Herencia - Propiedad a travs de la cual los objetos heredan comportamiento dentro de una jerarqua de clases. Polimorfismo - Propiedad de una operacin mediante la cual puede ser aplicada a distintos tipos de objetos.

En bases de datos orientadas a objetos, los usuarios pueden definir operaciones sobre los datos como parte de la definicin de la base de datos. Una operacin (llamada funcin) se especifica en dos partes. La interfaz (o signatura) de una operacin incluye el nombre de la operacin y los tipos de datos de sus argumentos (o parmetros). La implementacin (o mtodo) de la operacin se especifica separadamente y puede modificarse sin afectar la interfaz. Los programas de aplicacin de los usuarios pueden operar sobre los datos invocando a dichas operaciones a travs de sus nombres y argumentos, sea cual sea la forma en la que se han implementado. Esto podra denominarse independencia entre programas y operaciones. SQL:2003, es el estndar de SQL92 ampliado, soporta los conceptos orientados a objetos y mantiene la compatibilidad con SQL92. Bases de datos documentales Permiten la indexacin a texto completo, y en lneas generales realizar bsquedas ms potentes. Tesaurus es un sistema de ndices optimizado para este tipo de bases de datos. Bases de datos deductivas Un sistema de base de datos deductiva, es un sistema de base de datos pero con la diferencia de que permite hacer deducciones a travs de inferencias. Se basa principalmente en reglas y hechos que son almacenados en la base de datos. Las bases de datos deductivas son tambin llamadas bases de datos lgicas, a raz de que se basa en lgica matemtica. Este tipo de base de datos surge debido a las limitaciones de la Base de Datos Relacional de responder a consultas recursivas y de deducir relaciones indirectas de los datos almacenados en la base de datos. Lenguaje Utiliza un subconjunto del lenguaje Prolog llamado Datalog el cual es declarativo y permite al ordenador hacer deducciones para contestar a consultas basndose en los hechos y reglas almacenados. Ventajas

Uso de reglas lgicas para expresar las consultas. Permite responder consultas recursivas.

Cuenta con negaciones estratificadas Capacidad de obtener nueva informacin a travs de la ya almacenada en la base de datos mediante inferencia. Uso de algoritmos de optimizacin de consultas. Soporta objetos y conjuntos complejos. Fases

Fase de Interrogacin: se encarga de buscar en la base de datos informaciones deducibles implcitas. Las reglas de esta fase se denominan reglas de derivacin. Fase de Modificacin: se encarga de aadir a la base de datos nuevas informaciones deducibles. Las reglas de esta fase se denominan reglas de generacin. Interpretacin

Encontramos dos teoras de interpretacin de las bases de datos deductiva consideramos las reglas y los hechos como axiomas. Los hechos son axiomas base que se consideran como verdaderos y no contienen variables. Las reglas son axiomas deductivos ya que se utilizan para deducir nuevos hechos. Teora de Modelos: una interpretacin es llamada modelo cuando para un conjunto especfico de reglas, stas se cumplen siempre para esa interpretacin. Consiste en asignar a un predicado todas las combinaciones de valores y argumentos de un dominio de valores constantes dado. A continuacin se debe verificar si ese predicado es verdadero o falso. Mecanismos

Existen dos mecanismos de inferencia: Ascendente: donde se parte de los hechos y se obtiene nuevos aplicando reglas de inferencia. Descendente: donde se parte del predicado (objetivo de la consulta realizada) e intenta encontrar similitudes entre las variables que nos lleven a hechos correctos almacenados en la base de datos. Sistema de Gestin de bases de datos distribuida (SGBD)

La base de datos y el software SGBD pueden estar distribuidos en mltiples sitios conectados por una red. Hay de dos tipos: 1. Distribuidos homogneos: utilizan el mismo SGBD en mltiples sitios. 2. Distribuidos heterogneos: Da lugar a los SGBD federados o sistemas multibase de datos en los que los SGBD participantes tienen cierto grado de autonoma local y tienen acceso a varias bases de datos autnomas preexistentes almacenados en los SGBD, muchos de estos emplean una arquitectura cliente-servidor. Estas surgen debido a la existencia fsica de organismos descentralizados. Esto les da la capacidad de unir las bases de datos de cada localidad y acceder as a distintas universidades, sucursales de tiendas, etctera.

Modelo de base de datos

Composicin de cinco modelos de base de datos Un modelo de base de datos es un tipo de modelo de datos que determina la estructura lgica de una base de datos y de manera fundamental determina el modo de almacenar, organizar y manipular los datos. Entre los modelos lgicos comunes para bases de datos se encuentran:

Modelo jerrquico Modelo en red Modelo relacional Modelo entidadrelacin Modelo entidadrelacin extendido modelo de objetos modelo documental Modelo entidadatributovalor modelo en estrella

Los modelos fsicos de datos incluyen:


ndice invertido fichero plano

Otros modelos lgicos pueden ser:


modelo asociativo modelo multidimensional modelo multivalor modelo semntico base de datos XML grafo etiquetado

Triplestore

Relaciones y funciones

Un sistema de gestin de base de datos puede implementar uno o varios modelos. La estructura ptima depende de la natural organizacin de los datos de la aplicacin y de los requisitos de sta, que incluyen ritmo de transacciones, fiabilidad, mantenibilidad, escalabilidad y coste. La mayor parte de los sistemas de gestin de bases de datos estn construidos sobre un modelo de datos concreto, aunque es posible que soporten ms de uno. Sobre los distintos modelos fsicos de datos se puede implementar cualquier modelo lgico. La mayora del software de base de datos ofrece al usuario cierto control sobre la implementacin fsica, dado el impacto que tiene en las prestaciones. Un modelo no es slo un modo de estructurar los datos: tambin define el conjunto de operaciones que se pueden realizar con los datos. Por ejemplo el modelo relacional define operaciones como SELECT y JOIN. Aunque esas operaciones no se ofrezcan explcitamente en un lenguaje de interrogacin dado, proporcionan la base sobre la que un lenguaje de interrogacin se disea. Modelo fichero plano

Modelo fichero plano El modelo de fichero plano consiste en una sola matriz bidimensional de elementos, donde todos los miembros en una columna dada tienen valores del mismo tipo, y todos los miembros de la misma fila estn relacionados entre ellos. Por ejemplo, las columnas para nombre y clave pueden ser usadas para la seguridad de un sistema; cada fila indicar el nombre y su correspondiente clave para un individuo. Las columnas en la tabla suelen tener un tipo asociado, que la define como cadena de caracteres, fecha u hora, entero o nmero de coma flotante. Este modelo tabular fue el precursor del modelo relacional. Modelos tempranos Estos modelos que se describen a continuacin fueron populares en las dcadas 1960-1970, pero hoy en da se encuentran slo en sistemas heredadsos. Se caracterizan pincipalmente por tener caractersticas de navegacin con fuertes conexiones entre la estructura fsica y la lgica, y poseen alta dependencia en los datos. Modelo jerrquico

Modelo jerrquico En un modelo jerrquico, los datos estn organizados en una estructura arbrea (dibujada como rbol invertido o raz), lo que implica que cada registro slo tiene un padre. Las estructuras jerrquicas fueron usadas extensamente en los primeros sistemas de gestin de datos de unidad central, como el Sistema IMS por IBM, y ahora se usan para describir la estructura de documentos XML. Esta estructura permite relaciones 1:N entre los datos, y es muy eficiente para describir muchas relaciones del mundo real: tablas de contenido, ordenamiento de prrafos y cualquier tipo de informacin anidada. Sin embargo, la estructura jerrquica es ineficiente para ciertas operaciones de base de datos cuando el camino completo no se incluye en cada registro. Una limitacin del modelo jerrquico es su incapacidad para representar manera eficiente la redundancia en datos. En la relacin Padre-hijo: El hijo slo puede tener un padre pero un padre puede tener mltiples hijos. Los padres e hijos estn unidos por enlaces. Todo nodo tendr una lista de enlaces a sus hijos. Modelo de red

Modelo en red El modelo de red expande la estructura jerrquica, permitiendo relaciones N:N en una estructura tipo rbol que permite mltiples padres. Antes de la llegada del modelo relacional, el modelo en red era el ms popular para las bases de datos. Este modelo de red (definido por la especificacin CODASYL) organiza datos que usan en dos construcciones bsicas, registros y conjuntos. Los registros contienen campos que puede estar organizados jerrquicamente, 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 nmero de conjuntos. El modelo en red es una generalizacin del modelo jerrquico, en tanto est construido sobre el concepto de mltiples ramas (estructuras de nivel inferior) emanando de uno o varios nodos (estructuras de nivel alto), mientras el modelo se diferencia del modelo jerrquico en que las ramas pueden estar unidas a mltiples nodos. El modelo de red es capaz de representar la redundancia en datos de una manera ms eficiente que en el modelo jerrquico. Las operaciones del modelo de red se realizan por de navegacin: un programa mantiene la posicin actual, y navega entre registros siguiendo las relaciones ente ellos. Los registros tambin pueden ser localizados por valores claves. Aunque no es una caracterstica esencial del modelo, las bases de datos en red implementan sus relaciones mediante punteros directos al disco. Esto da una velocidad de recuperacin excelente, pero penaliza las operaciones de carga y reorganizacin.

Entre los SGBD ms populares que tienen arquitectura en red se encuentran Total e IDMS. IDMS logr una importante base de usuarios; en 1980 adopt el modelo relacional y SQL, manteniendo adems sus herramientas y lenguajes originales. La mayora de bases de datos orientadas a objetos (introducidas en 1990) usan el concepto de navegacin para proporcionar acceso rpido entre objetos en una red. Objectivity/DB, por ejemplo, implementa 1:1, 1:N, N:1 y N:N entre distintas bases de datos. Muchas bases de datos orientadas a objetos tambin soportan SQL, combinando as la potencia de ambos modelos. Modelo de fichero invertido En un fichero invertido o de ndice invertido, los datos contenidos se usan como claves en una tabla de consulta (lookup table), y los valores en la tabla se utilizan como punteros a la localizacin de cada instancia. Esta es tambin la estructura lgica de los ndices de bases de datos modernas, los cuales introducen slo el contenido de algunas columnas en esa tabla de consulta. El modelo de fichero invertido puede poner los ndices en ficheros planos para acceder a sus registros de manera eficiente. Implementaciones notables de este modelo de datos la realiz Adabas de Software AG, aparecida en 1970. Adabas logr una importante base de usuarios y est soportada an hoy. En la dcada de 1980 adopt el modelo relacional y SQL, manteniendo sus propias herramientas y lenguajes. Modelo relacional

El modelo relacional fue introducido por E.F. Codd en 1970 con el objetivo de querer hacer los SGBD ms independientes de las aplicaciones. Es un modelo matemtico definido en trminos de lgica de predicados y teora de conjuntos, y se han implementado con l SGBDs paramainframe, ordenadores medios y microordenadores.
1

Los productos referidos como base de datos relacional de hecho implementan un modelo que es slo una aproximacin al modelo matemtico definido por Codd. Existen tres trminos usados con profusin en el modelo relacional de bases de datos: relaciones, atributos y dominios. Una relacin equivale a una tabla con filas y columnas. Las columnas de una relacin se llaman con rigor atributos, y el dominio es el conjunto de valores que cada atributo puede tomar. La estructura bsica de datos del modelo relacional es la relacin (tabla), donde la informacin acerca de una determinada entidad (p.e. "empleado") se almacena en tuplas (filas), cada una con un conjunto de atributos (columnas). Las columnas de cada tabla enumeran los distintos atributos de la entidad (el nombre del "empleado", direccin y nmero de telfono, p.e.), de modo que cada tupla de la relacin "empleado" representa un empleado especfico guardando los datos de ese empleado concreto. Todas las relaciones (es decir, tablas) en una base de datos relacional han de seguir unas mnimas reglas: 1. el orden de los atributos es irrelevante 2. no puede haber tuplas repetidas 3. cada atributo slo puede tener un valor. Una base de datos puede contener varias tablas, cada una similar al modelo plano. Una de las fortalezas del modelo relacional es que un valor de atributo coincidente en dos registros (filas) -en la misma o diferente tabla- implica una relacin entre esos dos registros. Es posible tambin designar uno o un conjunto de atributos como "clave", que permitir identificar de manera nica una fila en una tabla.

Dicha clave que permite identificar de manera unvoca una fila en una tabla se denomina "clave primaria". Las claves son habitualmente utilizadas para para combinar datos de dos o ms tablas. Por ejemplo una tabla de empleados puede contener una columna denominada "departamento"", cuyo valor coincida con la clave de una tabla denominada "departamentos". Las claves son esenciales a la hora de crear ndices, que facilitan la recuperacin rpidas de datos de tablas grandes. Una clave puede estar formada por cualquier columna o por una combinacin de varias columnas, denominndose clave compuesta. No es necesario definir todas las claves por adelantado; una columna puede usarse como clave incluso si no estaba previsto en origen. Una clave que tenga un significado en el mundo fsico (tal como un nombre de persona, el ISBN de un libro o el nmero de serie de un coche) a veces se denomina clave "natural". Si no existe una clave natural viable, se puede asignar un sucedneo arbitrario (como dar a una persona un nmero de empleado). En la prctica la mayor parte de las bases de datos tienen a la vez claves sucedneas y naturales, dado que las claves sucedneas pueden usarse internamente para crear enlaces ntegros entre filas, mientras que las claves naturales tienen un uso menos fiable a la hora de buscar o enlazar con otras bases de datos. El lenguaje de interrogacin ms comn utilizado con las bases de datos relacionales es el Structured Query Language (SQL). Modelo Dimensional El modelo dimensional es una adaptacin especializada del modelo relacional usada para almacenar datos en depsitos de datos, de modo que los datos fcilmente puedan ser extrados usando consultas OLAP. En el modelo dimensional, una base de datos consiste en una sola tabla grande de datos que son descritos usando dimensiones y medidas. Una dimensin proporciona el contexto de un hecho (como quien particip, cuando y donde pas, y su tipo). Las dimensiones se toman en cuenta en la formulacin de las consultas para agrupar hechos que estn relacionados. Las dimensiones tienden a ser discretas y son a menudo jerrquicas; por ejemplo, la ubicacin podra incluir el edificio, el estado y el pas. Una medida es una cantidad que describe el dato, tal como los ingresos. Es importante que las medidas puedan ser agregados significativamente -por ejemplo, los ingresos provenientes de diferentes lugares puedan sumarse. En una consulta (OLAP), las dimensiones y los hechos son agrupados y aadidos juntos para crear un informe. El modelo dimensional a menudo es puesto en prctica sobre el modelo relacional usando un esquema de estrella, consistiendo en una tabla que contiene los datos y tablas circundantes que contienen las dimensiones. Dimensiones complicadas podran ser representadas usando mltiples tablas, usando un esquema de copo de nieve. Un almacn de datos (data warehouse) puede contener mltiples esquemas de estrella que comparten tablas de dimensin, permitindoles ser usadas juntas. El establecimiento de un conjunto de dimensiones estndar es una parte importante del modelado dimensional. Modelos post-relacionales Los productos que ofrecen un modelo de datos ms general que el relacional se debnominan a veces postrelational.2 Como trminao alternativos se oyen incluyen "bases de datos hbridas", "bases de datos relacionales potenciadas con objectos" entre otros. El modelo de datos de esos productos incorpora relaciones pero no limitadas por las restricciones del principio de informacin de E.F. Codd, que requiere que| toda informacin en la base de datos debe ser modelada en trminos de valores en relaciones nada ms3 }} Algunas de estas extensiones al modelo relacional integran conceptos de tecnologas que preceden el modelo relacional. Por ejemplo permiten representar un grafo dirigido con rboles en los nodos. La compaa sones implementa este concepto en su GraphDB. Algunos productos post-relacionales aplan los sistemas relacionales con caracteriticas no relacionales. Otros han llegado al mismo punto aadiendo caractersticas relacionaes a modelos pre-relacionales. Paradjicamente esto ha permitido a productos histricamente pre-relacionales, como por ejemplo PICK y MUMPS, razonar su esencia post-relactional. El Resource Space Model es un modelo de datos no relacional basado en clasificacin multi-dimensional.4 Modelo de grafo

Las bases de datos de grafos permiten incluso una estructura ms general que una base de datos en red, cualquier nodo puede estar conectado a cualquier otro. Modelo multivaluados Las bases de datos multivaluadas contienen datos arracimados, en el sentido de que pueden almacenar los datos del mismo modo que las bases de datos relacionales, pero adems permiten un nivel de profundidad al que las relacionales slo se pueden aproximar utilizando subtablas. Esto es prcticamente igual al modo en que XML representa los datos, donde un campo/atributo dado puede contener mltiples valores a la vez. El multivalor se puede considerar una forma de XML comprimida. Un ejemplo puede ser una factura, la que puede ser vista como: 1. Encabezado, una entrada por factura 2. Detalle, una entrada por concepto En el modelo multivaluado tenemos la opcin de almacenar los datos como una sola tabla (1), con tablas imbuidas representando el detalle. Tiene la ventaja que la correspondencia entre la factura conceptual y la de la factura como representacin de datos es biunvoca. Esto redunda en menor nmero de lecturas, menos problemas de integridad referencial y una fuerte disminucin del hardware necesario para soportar un volumen de transacciones dado. Modelo orientado a objetos

Modelo orientado a objetos En la dcada de 1990, el paradigma de la orientacin a objetos se aplic a las bases de datos creando un nuevo modelo llamado base de datos orientada a objetos. Esto tuvo el fin de reducir la impedancia objetorelacional, la sobrecarga de convertir la informacin de su representacin en la base de datos -como filas en tablas- a su representacin en el programa -tpicamente como objeto. Incluso ms, los tipos de datos usados en una aplicacin pueden definirse directamente en la base de datos, preservando as la base de datos la misma integridad de datos. Las bases de datos orientadas a objetos tambin introducen las ideas clave de la programacin orientada a objetos -encapsualcin y polimorfismo- en el mundo de las bases de datos. Se han propuesto distintos modos de almacenar objetos en una base de datos. Algunos se han aproximado desde la prespectiva de la programacin, haciendo los objetos manipulados por el programa persistentes. Esto tpicamente requiere la adicin de algn tipo de lenguaje de interrogacin, ya que lo lenguajes tradicionales no tienen la posibilildad de encontrar objetos basados en su contenido. Otros se han proximado al problema desde la prespectiva de la base de datos, definiendo un modelo orientado a objetos para la base de datos, y definiendo un lenguaje de programacin de dicha base de datos que permite tanto capacidades de programacin como de interrogacin.

Las bases de datos orientadas a objetos sufren falta de estandarizacin; aunque han sido definidos estndares por en Object Database Management Group nunca han sido implementados con generalidad suficiente como para permitir la interoperabilidad entre productos. Sin embargo, las bases de datos orientadas a objetos han sido empleadas efiocazmente en distintas aplicaciones: generalmente en nichos especializados como ingeniera o biologa molecular, pero no de forma general con soporte comercial. Sin embargo algunas de las ideas que ha aportado han sido recogidas por los fabricantes de bases de datos relacionales y se han aplicado en extensiones al lenguaje SQL. Una alternativa a la traduccin entre objetos y relaciones es la de usar una librera Object-Relational Mapping (ORM).

S-ar putea să vă placă și