Está en la página 1de 8

Un modelo de base de datos es un tipo de modelo de datos que determina la estructura lógica de una base de datos y de manera fundamental

determina el modo de almacenar, organizar y manipular los datos. Entre los modelos lógicos comunes para bases de datos se encuentran:
        

Modelo jerárquico Modelo en red Modelo relacional Modelo entidad–relación Modelo entidad–relación extendido Modelo de objetos Modelo documental Modelo entidad–atributo–valor Modelo en estrella

Los modelos físicos de datos incluyen:
 

Índice invertido Fichero plano

Otros modelos lógicos pueden ser:
      

Modelo asociativo Modelo multidimensional Modelo multivalor Modelo semántico Base de datos XML Grafo etiquetado Triplestore

Relaciones y funciones: Un sistema de gestión de base de datos puede implementar uno o varios modelos. La estructura óptima depende de la natural organización de los datos de la aplicación y de los requisitos de ésta, que incluyen ritmo de transacciones, fiabilidad, mantenibilidad, escalabilidad y coste. La mayor parte de los sistemas de gestión de bases de datos están construidos sobre un modelo de datos concreto, aunque es posible que soporten más de uno. Sobre los distintos modelos físicos de datos se puede implementar cualquier modelo lógico. La mayoría del software de base de datos ofrece al

donde todos los miembros en una columna dada tienen valores del mismo tipo. cada fila indicará el nombre y su correspondiente clave para un individuo. dado el impacto que tiene en las prestaciones.usuario cierto control sobre la implementación física. y es muy eficiente para describir . que la define como cadena de caracteres. Modelo jerárquico En un modelo jerárquico. Este modelo tabular fue el precursor del modelo relacional. Las columnas en la tabla suelen tener un tipo asociado. Un modelo no es sólo un modo de estructurar los datos: también define el conjunto de operaciones que se pueden realizar con los datos. pero hoy en día se encuentran sólo en sistemas heredados. entero o número de coma flotante. y ahora se usan para describir la estructura de documentos XML. Por ejemplo. Esta estructura permite relaciones 1: N entre los datos. y poseen alta dependencia en los datos. Aunque esas operaciones no se ofrezcan explícitamente en un lenguaje de interrogación dado. Modelos tempranos Estos modelos que se describen a continuación fueron populares en las décadas 1960-1970. Las estructuras jerárquicas fueron usadas extensamente en los primeros sistemas de gestión de datos de unidad central. proporcionan la base sobre la que un lenguaje de interrogación se diseña. los datos están organizados en una estructura arbórea (dibujada como árbol invertido o raíz). Por ejemplo el modelo relacional define operaciones como SELECT y JOIN. las columnas para nombre y clave pueden ser usadas para la seguridad de un sistema. Modelo fichero plano El modelo de fichero plano consiste en una sola matriz bidimensional de elementos. lo que implica que cada registro sólo tiene un padre. como el Sistema IMS por IBM. y todos los miembros de la misma fila están relacionados entre ellos. fecha u hora. Se caracterizan principalmente por tener características de navegación con fuertes conexiones entre la estructura física y la lógica.

Sin embargo.muchas relaciones del mundo real: tablas de contenido. permitiendo relaciones N:N en una estructura tipo árbol que permite múltiples padres. la estructura jerárquica es ineficiente para ciertas operaciones de base de datos cuando el camino completo no se incluye en cada registro. Modelo de red El modelo de red expande la estructura jerárquica. Los registros contienen campos que puede estar organizados jerárquicamente. Todo nodo tendrá una lista de enlaces a sus hijos. 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). Un registro puede ser un propietario de varios conjuntos. como en el lenguaje COBOL. . Una limitación del modelo jerárquico es su incapacidad para representar manera eficiente la redundancia en datos. El modelo en red es una generalización del modelo jerárquico. Antes de la llegada del modelo relacional. Los conjuntos definen relaciones N:N entre registros: varios propietarios. ordenamiento de párrafos y cualquier tipo de información anidada. Este modelo de red (definido por la especificación CODASYL) organiza datos que usan en dos construcciones básicas. varios miembros. y miembro en cualquier número de conjuntos. El modelo de red es capaz de representar la redundancia en datos de una manera más eficiente que en el modelo jerárquico. el modelo en red era el más popular para las bases de datos. registros y conjuntos. Los padres e hijos están unidos por enlaces. En la relación Padre-hijo: El hijo sólo puede tener un padre pero un padre puede tener múltiples hijos. mientras el modelo se diferencia del modelo jerárquico en que las ramas pueden estar unidas a múltiples nodos.

1:N.Las operaciones del modelo de red se realizan por de navegación: un programa mantiene la posición actual. Entre los SGBD más populares que tienen arquitectura en red se encuentran Total e IDMS. pero penaliza las operaciones de carga y reorganización. en 1980 adoptó el modelo relacional y SQL. manteniendo además sus herramientas y lenguajes originales. Existen tres términos usados con profusión en el modelo . Es un modelo matemático definido en términos de lógica de predicados y teoría de conjuntos. Adabas logró una importante base de usuarios y está soportada aún hoy. La mayoría de bases de datos orientadas a objetos (introducidas en 1990) usan el concepto de navegación para proporcionar acceso rápido entre objetos en una red. por ejemplo. Modelo de fichero invertido En un fichero invertido o de índice invertido. implementa 1:1. combinando así la potencia de ambos modelos. aparecida en 1970. Codd en 1970 con el objetivo de querer hacer los SGBD más independientes de las aplicaciones. Implementaciones notables de este modelo de datos la realizó Adabas de Software AG. N:1 y N:N entre distintas bases de datos. Muchas bases de datos orientadas a objetos también soportan SQL. y los valores en la tabla se utilizan como punteros a la localización de cada instancia. Esta es también la estructura lógica de los índices de bases de datos modernas. y se han implementado con él SGBDs para mainframe. las bases de datos en red implementan sus relaciones mediante punteros directos al disco. los datos contenidos se usan como claves en una tabla de consulta (lookup table). Aunque no es una característica esencial del modelo. En la década de 1980 adoptó el modelo relacional y SQL. Los registros también pueden ser localizados por valores claves. manteniendo sus propias herramientas y lenguajes. ordenadores medios y microordenadores. Objectivity/DB. Modelo relacional El modelo relacional fue introducido por E. El modelo de fichero invertido puede poner los índices en ficheros planos para acceder a sus registros de manera eficiente. los cuales introducen sólo el contenido de algunas columnas en esa tabla de consulta. Los productos referidos como base de datos relacional de hecho implementan un modelo que es sólo una aproximación al modelo matemático definido por Codd. IDMS logró una importante base de usuarios. y navega entre registros siguiendo las relaciones ente ellos. Esto da una velocidad de recuperación excelente.F.

dirección y número de teléfono. atributos y dominios. La estructura básica de datos del modelo relacional es la relación (tabla). 3. "empleado") se almacena en tuplas (filas). Una clave puede estar formada por cualquier columna o por una combinación de varias columnas. Una relación equivale a una tabla con filas y columnas. cada una similar al modelo plano. Todas las relaciones (es decir. una columna puede usarse como clave incluso si no estaba previsto en origen. Una clave que tenga un significado en el mundo físico (tal como un nombre de persona. Las columnas de cada tabla enumeran los distintos atributos de la entidad (el nombre del "empleado". donde la información acerca de una determinada entidad (p.e. cada atributo sólo puede tener un valor. Si no existe una clave natural viable. Es posible también designar uno o un conjunto de atributos como "clave". cada una con un conjunto de atributos (columnas). 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 relación entre esos dos registros.e. denominándose clave compuesta. 2. En la . que facilitan la recuperación rápida de datos de tablas grandes. el ISBN de un libro o el número de serie de un coche) a veces se denomina clave "natural". el orden de los atributos es irrelevante. Una base de datos puede contener varias tablas. No es necesario definir todas las claves por adelantado.relacional de bases de datos: relaciones. Las claves son habitualmente utilizadas para combinar datos de dos o más tablas.). y el dominio es el conjunto de valores que cada atributo puede tomar. tablas) en una base de datos relacional han de seguir unas mínimas reglas: 1. que permitirá identificar de manera única una fila en una tabla. no puede haber tuplas repetidas. Por ejemplo una tabla de empleados puede contener una columna denominada "departamento"". cuyo valor coincida con la clave de una tabla denominada "departamentos". se puede asignar un sucedáneo arbitrario (como dar a una persona un número de empleado). Las claves son esenciales a la hora de crear índices. p. de modo que cada tupla de la relación "empleado" representa un empleado específico guardando los datos de ese empleado concreto. Las columnas de una relación se llaman con rigor atributos. Dicha clave que permite identificar de manera unívoca una fila en una tabla se denomina "clave primaria".

Una medida es una cantidad que describe el dato. Dimensiones complicadas podrían ser representadas usando múltiples tablas. y su tipo). Una dimensión proporciona el contexto de un hecho (como quien participó. En una consulta (OLAP). Codd. Como términos alternativos se incluyen "bases de datos híbridas". usando un esquema de copo de nieve. mientras que las claves naturales tienen un uso menos fiable a la hora de buscar o enlazar con otras bases de datos. Un almacén de datos (data warehouse) puede contener múltiples esquemas de estrella que comparten tablas de dimensión. Las dimensiones se toman en cuenta en la formulación de las consultas para agrupar hechos que están relacionados. las dimensiones y los hechos son agrupados y añadidos juntos para crear un informe. dado que las claves sucedáneas pueden usarse internamente para crear enlaces íntegros entre filas. una base de datos consiste en una sola tabla grande de datos que son descritos usando dimensiones y medidas. El modelo dimensional a menudo es puesto en práctica sobre el modelo relacional usando un esquema de estrella. por ejemplo.F. El lenguaje de interrogación más común utilizado con las bases de datos relacionales es el Structured Query Language (SQL). Es importante que las medidas puedan ser agregados significativamente -por ejemplo. En el modelo dimensional. permitiéndoles ser usadas juntas. tal como los ingresos. de modo que los datos fácilmente puedan ser extraídos usando consultas OLAP. el estado y el país. El establecimiento de un conjunto de dimensiones estándar es una parte importante del modelado dimensional.práctica la mayor parte de las bases de datos tienen a la vez claves sucedáneas y naturales. "bases de datos relacionales potenciadas con objetos" entre otros. Las dimensiones tienden a ser discretas y son a menudo jerárquicas. Modelo Dimensional El modelo dimensional es una adaptación especializada del modelo relacional usado para almacenar datos en depósitos de datos. consistiendo en una tabla que contiene los datos y tablas circundantes que contienen las dimensiones. El modelo de datos de esos productos incorpora relaciones pero no limitadas por las restricciones del principio de información de E. la ubicación podría incluir el edificio. . los ingresos provenientes de diferentes lugares puedan sumarse. Modelos post-relacionales Los productos que ofrecen un modelo de datos más general que el relacional se denominan a veces post-relational. cuando y donde pasó.

Algunos productos post-relacionales amplían los sistemas relacionales con características no relacionales. Algunas de estas extensiones al modelo relacional integran conceptos de tecnologías que preceden el modelo relacional. Otros han llegado al mismo punto añadiendo características relacionales a modelos pre-relacionales.Encabezado. Esto es prácticamente igual al modo en que XML representa los datos. como por ejemplo PICK y MUMPS. Paradójicamente esto ha permitido a productos históricamente pre-relacionales. menos problemas de integridad referencial y una fuerte . Esto redunda en menor número de lecturas. Un ejemplo puede ser una factura. una entrada por concepto. El multivalor se puede considerar una forma de XML comprimida. En el modelo multivaluado tenemos la opción de almacenar los datos como una sola tabla. .Detalle. La compañía sones implementa este concepto en su GraphDB. con tablas imbuidas representando el detalle. una entrada por factura. Tiene la ventaja que la correspondencia entre la factura conceptual y la de la factura como representación de datos es biunívoca. Modelo multivaluado Las bases de datos multivaluadas contienen datos arracimados.que requiere que toda información en la base de datos debe ser modelada en términos de valores en relaciones nada más. Por ejemplo permiten representar un grafo dirigido con árboles en los nodos. donde un campo/atributo dado puede contener múltiples valores a la vez. cualquier nodo puede estar conectado a cualquier otro. razonar su esencia post-relactional. la que puede ser vista como: . pero además permiten un nivel de profundidad al que las relacionales sólo se pueden aproximar utilizando subtablas. en el sentido de que pueden almacenar los datos del mismo modo que las bases de datos relacionales. El Resource Space Model es un modelo de datos no relacional basado en clasificación multi-dimensional. Modelo de grafo Las bases de datos de grafos permiten incluso una estructura más general que una base de datos en red.

las bases de datos orientadas a objetos han sido empleadas eficazmente en distintas aplicaciones: generalmente en nichos especializados como ingeniería o biología molecular. el paradigma de la orientación a objetos se aplicó a las bases de datos creando un nuevo modelo llamado base de datos orientada a objetos. haciendo los objetos manipulados por el programa persistentes. y definiendo un lenguaje de programación de dicha base de datos que permite tanto capacidades de programación como de interrogación. Sin embargo. definiendo un modelo orientado a objetos para la base de datos. los tipos de datos usados en una aplicación pueden definirse directamente en la base de datos. Modelo orientado a objetos En la década de 1990. Incluso más. Otros se han aproximado al problema desde la perspectiva de la base de datos.a su representación en el programa -típicamente como objeto. preservando así la base de datos la misma integridad de datos.en el mundo de las bases de datos. Las bases de datos orientadas a objetos también introducen las ideas clave de la programación orientada a objetos encapsulación y polimorfismo. Una alternativa a la traducción entre objetos y relaciones es la de usar una librería Object-Relational Mapping (ORM). pero no de forma general con soporte comercial.disminución del hardware necesario para soportar un volumen de transacciones dado. aunque han sido definidos estándares por en Object Database Management Group nunca han sido implementados con generalidad suficiente como para permitir la interoperabilidad entre productos. 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. la sobrecarga de convertir la información de su representación en la base de datos -como filas en tablas. Las bases de datos orientadas a objetos sufren falta de estandarización. . Se han propuesto distintos modos de almacenar objetos en una base de datos. ya que lo lenguajes tradicionales no tienen la posibilidad de encontrar objetos basados en su contenido. Esto tuvo el fin de reducir la impedancia objeto-relacional. Esto típicamente requiere la adición de algún tipo de lenguaje de interrogación. Algunos se han aproximado desde la perspectiva de la programación.