Вы находитесь на странице: 1из 8

Modelo de base de datos

1
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 de base de datos
2
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 heredados. 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 base de datos
3
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
Modelo de base de datos
4
SQL, manteniendo sus propias herramientas y lenguajes.
Modelo relacional
El modelo relacional fue
introducido por E.F. Codd en 1970
[1]
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 para mainframe, ordenadores medios y microordenadores.
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. 1. el orden de los atributos es irrelevante
2. 2. no puede haber tuplas repetidas
3. 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.
Modelo de base de datos
5
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 denominan a veces post-relational.
[2]
Como trminos 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 ms
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.
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
Modelo de base de datos
6
considerar una forma de XML comprimida.
Un ejemplo puede ser una factura, la que puede ser vista como:
1. 1. Encabezado, una entrada por factura
2. 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
objeto-relacional, 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).
Modelo de base de datos
7
Referencias
[1] E.F. Codd (1970). "A relational model of data for large shared data banks". In: Communications of the ACM archive. Vol 13. Issue 6(June
1970). pp.377-387.
[2] Introducing databases by Stephen Chu, in Conrick, M. (2006) Health informatics: transforming healthcare with technology, Thomson, ISBN
0-17-012731-1, p. 69.
Fuentes y contribuyentes del artculo
8
Fuentes y contribuyentes del artculo
Modelo de base de datos Fuente: http://es.wikipedia.org/w/index.php?oldid=74976910 Contribuyentes: Antonorsi, Aipni-Lovrij, Banfield, Diegusjaimes, Dxtejada, Eduardosalg, Foundling,
Igna, IrwinSantos, Javierito92, Jesusosm, Jkbw, Jorge c2010, Juvalen, LMLM, Leonpolanco, Magomaitin, Osboxs, OsirisCk, Poco a poco, Rubenval, SuperBraulio13, Technopat, 62 ediciones
annimas
Fuentes de imagen, Licencias y contribuyentes
Archivo:Database models.jpg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Database_models.jpg Licencia: Creative Commons Attribution-Sharealike 3.0 Contribuyentes: Marcel
Douwe Dekker
Archivo:Flat File Model.svg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Flat_File_Model.svg Licencia: Public Domain Contribuyentes: Wgabrie (talk) 16:48, 13 March 2009
(UTC)
Archivo:Hierarchical Model.svg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Hierarchical_Model.svg Licencia: Public Domain Contribuyentes: U.S. Department of
Transportation vectorization:
Archivo:Network Model.svg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Network_Model.svg Licencia: Public Domain Contribuyentes: U.S. Department of Transportation
vectorization:
Archivo:Emp Tables (Database).PNG Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Emp_Tables_(Database).PNG Licencia: Public Domain Contribuyentes: Jamesssss
Archivo:Object-Oriented Model.svg Fuente: http://es.wikipedia.org/w/index.php?title=Archivo:Object-Oriented_Model.svg Licencia: Public Domain Contribuyentes: U.S. Department of
Transportation vectorization:
Licencia
Creative Commons Attribution-Share Alike 3.0
//creativecommons.org/licenses/by-sa/3.0/

Вам также может понравиться