Está en la página 1de 15

ACID (atomicidad , coherencia , aislamiento , durabilidad)

De Wikipedia, la enciclopedia libre


Para otras aplicaciones, vea cido (desambiguacin) .
En ciencias de la computacin ACID es un conjunto de propiedades que
garantizan que las transacciones de bases de datos se procesan de forma
fiable. En el contexto de las bases de datos , una nica operacin lgica en los
datos se denomina una transaccin. Por ejemplo, una transferencia de fondos de
una cuenta bancaria a otra, incluso la participacin de mltiples cambios, como
debitando una cuenta y acreditar otro, es una sola transaccin.
Jim Gray define estas propiedades de un sistema de transacciones fiable a finales
de 1970 y desarroll tecnologas para lograr de forma automtica.
En 1983, Andreas Reuter y Theo Harder acuaron el acrnimo ACID para
describirlos.
Atomicity
Artculo principal: atomicidad (sistemas de bases de datos)
La atomicidad requiere que cada transaccin es "todo o nada": si una parte de la
transaccin falla, falla toda la transaccin, y el estado de base de datos no se
modifica. Un sistema atmico debe garantizar la atomicidad en cada situacin,
incluyendo fallas de energa, errores y accidentes. Para el mundo exterior,
aparece una transaccin comprometida (por sus efectos en la base de datos) para
ser indivisible ("atmica"), y una transaccin abortada no sucede.
Consistencia
Artculo principal: Consistencia (sistemas de bases de datos)
La consistencia de la propiedad garantiza que toda transaccin traer la base de
datos de un estado a otro vlida. Los datos escritos en la base de datos deben ser
vlidos de acuerdo con todas las reglas definidas, incluyendo pero no limitado
a, las restricciones, las cascadas, los factores desencadenantes , y cualquier
combinacin de los mismos. Esto no garantiza la exactitud de la operacin en
todos los sentidos, el programador de la aplicacin podra haber querido (que es la
responsabilidad del cdigo de nivel de aplicacin), sino simplemente de que los
errores de programacin no violan alguna regla definida.
Aislamiento
Artculo principal: Aislamiento (sistemas de bases de datos)
El aislamiento propiedad asegura que la ejecucin concurrente de las
transacciones resultados en un estado del sistema que se obtendra si las
transacciones fueron ejecutados en serie, es decir, uno despus del
otro. Proporcionar aislamiento es el objetivo principal de control de
concurrencia. Dependiendo del mtodo de control de concurrencia, los efectos de
una transaccin incompleta no podran ser visibles a otra transaccin.
Durabilidad
Artculo principal: Durabilidad (sistemas de bases de datos)
Durabilidad significa que una vez que una transaccin ha sido cometido, lo seguir
siendo, incluso en caso de prdida de energa, accidentes o errores. En una base
de datos relacional, por ejemplo, una vez que un grupo de sentencias SQL
ejecutar, los resultados tienen que ser almacenados de forma permanente (incluso
si la base de datos se bloquea inmediatamente despus). Para defenderse de la
prdida de potencia, las transacciones (o sus efectos) se indicarn en
una memoria no voltil .
Ejemplos
Los siguientes ejemplos ilustran adicionalmente las propiedades ACID. En estos
ejemplos, la tabla de base de datos tiene dos columnas, A y B. Una restriccin de
integridad requiere que el valor en A y el valor de B deben sumar 100. El
siguiente SQL cdigo crea una tabla como se ha descrito anteriormente:
CREAR TABLA Acidtest ( Un INTEGER , B INTEGER CHEQUE ( A + B = 100 )
) ;
Fracaso Atomicity
Supongamos que una transaccin intenta restar 10 de A y aadir 10 a B. Esto es
una transaccin vlida, ya que los datos siguen satisfacer la restriccin despus
de que se ha ejecutado. Sin embargo, se supone que despus de quitar 10 de la
A, la transaccin no puede modificar B. Si la base retenida de un nuevo valor, la
atomicidad requiere que ambas partes de la transaccin, o ninguno, sea completa.
Fracaso Consistencia
La consistencia es un trmino muy general que exige que los datos deben cumplir
con todas las reglas de validacin. En el ejemplo anterior, la validacin es un
requisito de que A + B = 100. Tambin, se puede inferir que tanto A como B deben
ser enteros. Un rango vlido para A y B tambin se puede inferir. Todas las reglas
de validacin deben ser revisados para garantizar la coherencia.
Supongamos que una transaccin intenta restar 10 de la A, sin alterar B. Debido a
la consistencia se comprueba despus de cada transaccin, se sabe que a + b =
100 antes de que comience la operacin. Si la transaccin quita 10 del A con
xito, se lograr la atomicidad. Sin embargo, una comprobacin de validacin
demostrar que A + B = 90, que es incompatible con las reglas de la base de
datos. Toda la transaccin debe ser cancelado y las filas afectadas revierte a su
estado anterior a la transaccin. Si hubiera habido otras restricciones,
disparadores, o cascadas, cada operacin de cambio de un solo habra sido
comprobado en la misma forma que el anterior antes de que se confirm la
transaccin.
Fallo de aislamiento
Para demostrar el aislamiento, asumimos dos operaciones se ejecutan al mismo
tiempo, cada intentar modificar los mismos datos. Uno de los dos debe esperar a
que los dems se completa con el fin de mantener el aislamiento.
Consideremos dos transacciones. T
1
10 transferencias de la A a B.
T
2
transferencias 10 de B a A. Combinada, existen cuatro acciones:
T
1
10 resta de A.
T
1
10 aade a B.
T
2
resta 10 de B.
T
2
aade 10 a A.
Si estas operaciones se llevan a cabo en orden, se mantiene aislada, aunque
T
2
deber esperar. Considere lo que sucede si T
1
falla a mitad de camino a
travs. La base de datos elimina T
1
efectos 's, y T
2
slo ve datos vlidos.
Por entrelazado de las transacciones, el orden real de acciones podra ser:
T
1
10 resta de A.
T
2
resta 10 de B.
T
2
aade 10 a A.
T
1
10 aade a B.
Una vez ms, tenga en cuenta lo que sucede si T
1
falla a medio camino. En el
momento en T
1
falla, T
2
ya ha modificado A, no se puede restaurar en el valor
que tena antes de que T
1
sin salir de una base de datos vlida. Esto se conoce
como un error de escritura-escritura ,
[ cita requerida ]
, ya que dos transacciones
intentan escribir en el mismo campo de datos. En un sistema tpico, el problema se
resolvera volviendo al ltimo estado ptimo, la cancelacin de la transaccin
fallida T
1
, y reiniciar la operacin interrumpida T
2
Del buen estado.
Fracaso Durabilidad
Supongamos que una transaccin transfiere 10 de A a B. Se elimina 10 de A. A
continuacin, agrega 10 a B. En este punto, un mensaje de "xito" se enva al
usuario. Sin embargo, los cambios se siguen en cola en la memoria intermedia del
disco en espera de ser cometido en el disco. Potencia falla y se pierden los
cambios. El usuario asume (con razn) de que se han realizado los cambios.

Implementacin
El procesamiento de una transaccin requiere a menudo una secuencia de
operaciones que est sujeto a un fallo para un nmero de razones. Por ejemplo, el
sistema puede no tener ninguna habitacin libre en sus unidades de disco, o
puede haber agotado su tiempo de CPU asignado.
Hay dos familias populares de tcnicas: escritura anticipada registro y sombra
paginacin . En ambos casos, las cerraduras deben ser adquiridos en toda la
informacin que se actualiza, y en funcin del nivel de aislamiento, posiblemente
en todos los datos que se leen tambin. En el registro de escritura por delante,
atomicidad est garantizada por la copia de los datos originales (sin cambios) en
un registro antes de cambiar la base de datos. Que permite la base de datos para
volver a un estado coherente en el caso de un accidente.
En el sombreado, las actualizaciones se aplican a una copia parcial de la base de
datos, y la nueva copia se activa cuando se confirma la transaccin.
Bloqueo vs multiversioning
Muchas bases de datos dependen de bloqueo para proporcionar capacidades de
ACID. Bloqueo significa que la transaccin marca los datos que se accede de
forma que el DBMS sabe que no debe permitir que otras transacciones modifiquen
hasta que la primera transaccin tiene xito o fracasa. El bloqueo siempre debe
ser adquirido antes de procesar los datos, incluidos los datos que se leen, pero no
modificar. Transacciones no triviales suelen requerir un gran nmero de bloqueos,
lo que resulta en gastos generales sustanciales, as como el bloqueo de otras
transacciones. Por ejemplo, si el usuario A est en marcha una operacin que
tiene que leer una fila de datos que el usuario B quiere modificar, el usuario B
debe esperar hasta que la transaccin del usuario A se completa.bloqueo de dos
fases se aplica con frecuencia para garantizar un aislamiento completo.
[ cita requerida ]

Una alternativa a la de bloqueo es multiversin control de concurrencia , en el que
la base de datos proporciona a cada operacin de lectura de la versin anterior,
sin modificar de los datos que se est modificando por otra transaccin
activa. Esto permite a los lectores a operar sin la adquisicin de bloqueos, es
decir, las operaciones de escritura no bloquean las transacciones de lectura y los
lectores no bloquean a los escritores. Volviendo al ejemplo, cuando la transaccin
del usuario A solicita datos que el usuario B est modificando la base de datos
proporciona una con la versin de que los datos que exista cuando el usuario B
inicia su operacin. El usuario A obtiene una visin consistente de la base de
datos, incluso si otros usuarios estn cambiando datos. Una aplicacin, es decir, el
aislamiento de instantnea , relaja la propiedad de aislamiento.


Las transacciones distribuidas
La garanta de las propiedades ACID de una transaccin distribuida a travs de
una base de datos distribuida , donde hay un nico nodo es responsable de todos
los datos que afectan a una transaccin presenta complicaciones adicionales. Las
conexiones de red pueden fallar, o un nodo podra completar con xito su parte de
la transaccin y luego estar obligados a revertir sus cambios, debido a un error en
otro nodo. El protocolo de confirmacin de dos fases (que no debe confundirse
con el bloqueo de dos fases) proporciona la atomicidad de transacciones
distribuidas para asegurar que cada participante en la transaccin de acuerdo
sobre si la transaccin debe estar comprometido o no. En resumen, en la primera
fase, un nodo (el coordinador) interroga a los otros nodos (los participantes) y slo
cuando toda respuesta de que estn preparados hace el coordinador, en la
segunda fase, la formalizacin de la transaccin.

Modelo entidad-relacin

Este artculo o seccin necesita referencias que aparezcan en
una publicacin acreditada, como revistas especializadas,
monografas, prensa diaria o pginas de Internet fidedignas.
Este aviso fue puesto el 6 de octubre de 2011.
Puedes aadirlas o avisar al autor principal del artculo en su
pgina de discusin pegando: {{subst:Aviso referencias|Modelo
entidad-relacin}} ~~~~


Ejemplo de diagrama E-R.

Un diagrama o modelo entidad-relacin (a veces denominado por sus siglas en
ingls, E-R "Entity relationship", o del espaol DER "Diagrama de Entidad
Relacin") es una herramienta para el modelado de datos que permite representar
las entidades relevantes de un sistema de informacin as como sus
interrelaciones y propiedades.
ndice
[ocultar]
1 Modelado Entidad-Relacin
2 Base terica y conceptual
2.1 Entidad
2.2 Atributos
2.3 Relacin
2.4 Conjunto de relaciones
3 Restricciones
3.1 Correspondencia de cardinalidades
3.2 Restricciones de participacin
4 Claves
5 Diagrama entidad-relacin
5.1 Entidades
5.2 Atributos
5.3 Relaciones
6 Diagramas extendidos
6.1 Entidades fuertes y dbiles
6.2 Cardinalidad de las relaciones
6.3 Atributos en relaciones
6.4 Herencia
6.5 Agregacin
7 Vase tambin
8 Enlaces externos
Modelado Entidad-Relacin[editar]
El Modelo Entidad-Relacin.
Se elabora el diagrama (o diagramas) entidad-relacin.
Se completa el modelo con listas de atributos y una descripcin de otras
restricciones que no se pueden reflejar en el diagrama.
El modelado de datos no acaba con el uso de esta tcnica. Son necesarias otras
tcnicas para lograr un modelo directamente implementable en una base de datos.
Brevemente:
permite mostrar resultados entre otras entidades pertenecientes a las existentes
de manera que se encuentre la normatividad de archivos que se almacenaran
Transformacin de relaciones mltiples en binarias.
Normalizacin de una base de datos de relaciones (algunas relaciones pueden
transformarse en atributos y viceversa).
Conversin en tablas (en caso de utilizar una base de datos relacional).
Base terica y conceptual[editar]
El modelo de datos entidad-relacin est basado en una percepcin del mundo
real que consta de una coleccin de objetos bsicos, llamados entidades, y de
relaciones entre esos objetos.
Entidad[editar]
Representa una cosa u "objeto" del mundo real con existencia independiente, es
decir, se diferencia unvocamente de otro objeto o cosa, incluso siendo del mismo
tipo, o una misma entidad.
Algunos Ejemplos:
Una persona. (Se diferencia de cualquier otra persona, incluso siendo gemelos).
Un automvil. (Aunque sean de la misma marca, el mismo modelo,..., tendrn
atributos diferentes, por ejemplo, el nmero de chasis).
Una casa (Aunque sea exactamente igual a otra, an se diferenciar en su
direccin).
Una entidad puede ser un objeto con existencia fsica como: una persona, un
animal, una casa, etc. (entidad concreta); o un objeto con existencia conceptual
como: un puesto de trabajo, una asignatura de clases, un nombre,etc. (entidad
abstracta).
Una entidad est descrita y se representa por sus caractersticas o atributos. Por
ejemplo, la entidad Persona las caractersticas: Nombre, Apellido, Gnero,
Estatura, Peso, Fecha de nacimiento.
Atributos[editar]
Los atributos son las caractersticas que definen o identifican a una entidad. Estas
pueden ser muchas, y el diseador solo utiliza o implementa las que considere
ms relevantes. Los atributos son las propiedades que describen a cada entidad
en un conjunto de entidades.
En un conjunto de entidades del mismo tipo, cada entidad
tiene valores especficos asignados para cada uno de sus atributos, de esta
forma, es posible su identificacin unvoca.
Ejemplos:
A la coleccin de entidades alumnos, con el siguiente conjunto de atributos en
comn, (id, nombre, edad, semestre), pertenecen las entidades:
(1, Sofa, 38 aos, 2)
(2, Josefa, 19 aos, 5)
(3, Carlos, 20 aos, 2)
...
Cada una de las entidades pertenecientes a este conjunto se diferencia de las
dems por el valor de sus atributos. Ntese que dos o ms entidades diferentes
pueden tener los mismos valores para algunos de sus atributos, pero nunca para
todos.
En particular, los atributos identificativos son aquellos que permiten diferenciar a
una instancia de la entidad de otra distinta. Por ejemplo, el atributo identificativo
que distingue a un alumno de otro es su nmero de id.
Para cada atributo, existe un dominio del mismo, este hace referencia al tipo de
datos que ser almacenado o a restricciones en los valores que el atributo puede
tomar (cadenas de caracteres, nmeros, solo dos letras, solo nmeros mayores
que cero, solo nmeros enteros...).
Cuando algn atributo correspondiente a una entidad no tiene un valor
determinado, recibe el valor nulo, bien sea porque no se conoce, porque no
existe o porque no se sabe nada al respecto del mismo.
Relacin[editar]
Describe cierta dependencia entre entidades o permite la asociacin de las
mismas.
Ejemplo:

Si tenemos dos entidades, "CLIENTE" y "HABITACION", podemos entender la
relacin entre ambas
al tomar un caso concreto (ocurrencia) de cada una de ellas. Entonces, podriamos
tener la
ocurrencia "Habitacin 502", de la entidad "HABITACIN" y la ocurrencia "Henry
Johnson McFly
Bogard", de la entidad "CLIENTE", entre las que es posible relacionar que la
habitacin 502
se encuentra ocupada por el husped de nombre Henry Johnson McFly
Bogard.
Una relacin tiene sentido al expresar las entidades que relaciona. En el ejemplo
anterior, podemos decir que un husped (entidad), se aloja (relacin) en una
habitacin (entidad).
Conjunto de relaciones[editar]
Consiste en una coleccin, o conjunto, de relaciones de la misma naturaleza.
Ejemplo:
Dados los conjuntos de entidades "Habitacin" y "Husped", todas las relaciones
de la forma habitacin-husped, permiten obtener la informacin de los huspedes
y sus respectivas habitaciones.
La dependencia o asociacin entre los conjuntos de entidades es
llamada participacin. En el ejemplo anterior los conjuntos de entidades
"Habitacin" y "Husped" participan en el conjunto de relaciones habitacin-
husped.
Se llama grado del conjunto de relaciones a la cantidad de conjuntos de entidades
participantes en la relacin.
Restricciones[editar]
Son reglas que deben mantener los datos almacenados en la base de datos.
Correspondencia de cardinalidades[editar]
Dado un conjunto de relaciones en el que participan dos o ms conjuntos de
entidades, la correspondencia de cardinalidad indica el nmero de entidades con
las que puede estar relacionada una entidad dada.
Dado un conjunto de relaciones binarias y los conjuntos de entidades A y B, la
correspondencia de cardinalidades puede ser:
Uno a Uno: (1:1) Una entidad de A se relaciona nicamente con una entidad en B
y viceversa (ejemplo relacin vehculo - matrcula: cada vehculo tiene una nica
matrcula, y cada matrcula est asociada a un nico vehculo).
Uno a varios: (1:N)Una entidad en A se relaciona con cero o muchas entidades
en B. Pero una entidad en B se relaciona con una nica entidad en A (ejemplo
vendedor - ventas).
Varios a Uno: (N:1)Una entidad en A se relaciona exclusivamente con una
entidad en B. Pero una entidad en B se puede relacionar con 0 o muchas
entidades en A (ejemplo empleado-centro de trabajo).
Varios a Varios: (N:M)Una entidad en A se puede relacionar con 0 o muchas
entidades en B y viceversa (ejemplo asociaciones- ciudadanos, donde muchos
ciudadanos pueden pertenecer a una misma asociacin, y cada ciudadano puede
pertenecer a muchas asociaciones distintas).
Restricciones de participacin[editar]
Dado un conjunto de relaciones R en el cual participa un conjunto de entidades A,
dicha participacin puede ser de dos tipos:
Total: Cuando cada entidad en A participa en al menos una relacin de R.
Parcial: Cuando al menos una entidad en A NO participa en alguna relacin de R.
Claves[editar]
Es un subconjunto del conjunto de atributos comunes en una coleccin de
entidades, que permite identificar inequvocamente cada una de las entidades
pertenecientes a dicha coleccin. Asimismo, permiten distinguir entre s las
relaciones de un conjunto de relaciones.
Dentro de los conjuntos de entidades existen los siguientes tipos de claves:
Superclave: Es un subconjunto de atributos que permite distinguir unvocamente
cada una de las entidades de un conjunto de entidades. Si se aade un atributo al
anterior subconjunto, el resultado seguir siendo una superclave.
Clave candidata: Dada una superclave, si sta deja de serlo quitando nicamente
uno de los atributos que la componen, entonces sta es una clave candidata.
Clave primaria: Es una clave candidata, elegida por el diseador de la base de
datos, para identificar unvocamente las entidades en un conjunto de entidades.
Los valores de los atributos de una clave, no pueden ser todos iguales para dos o
ms instancias.
Para poder distinguir unvocamente las relaciones en un conjunto de relaciones R,
se deben considerar dos casos:
R NO tiene atributos asociados: En este caso, se usa como clave primaria de R
la unin de las claves primarias de todos los conjuntos de entidades participantes.
R tiene atributos asociados: En este caso, se usa como clave primaria de R la
unin de los atributos asociados y las claves primarias de todos los conjuntos de
entidades participantes.
Si el conjunto de relaciones, R, sobre las que se pretende determinar la clave
primaria est compuesto de relaciones binarias, con los conjuntos de entidades
participantes A y B, se consideran los siguientes casos, segn sus cardinalidades:
R es de muchos a uno de A a B entonces slo se toma la clave primaria de A,
como clave primaria de R.
R es de uno a muchos de A a B entonces se toma slo la clave primaria de B,
como clave primaria de R.
R es de uno a uno de A a B entonces se toma cualquiera de las dos claves
primarias, como clave primaria de R.
R es de muchos a muchos de A a B entonces se toma la unin de los atributos
que conforman las claves primarias de A y de B, como clave primaria de R.
Diagrama entidad-relacin[editar]
Anteriormente detallamos los conceptos relacionados al modelo ER, en esta
seccin profundizaremos en como representarlos grficamente. Cabe destacar
que para todo proceso de modelado, siempre hay que tener en claro los
conceptos, estos nos brindan conocimiento necesario y adems fundamentan
nuestro modelo al momento de presentarlo a terceros.
Formalmente, los diagramas ER son un lenguaje grfico para describir conceptos.
Informalmente, son simples dibujos o grficos que describen informacin que trata
un sistema de informacin y el software que lo automatiza.
Entidades[editar]
Las entidades son el fundamento del modelo entidad relacin. Podemos adoptar
como definicin de entidad cualquier cosa o parte del mundo que es distinguible
del resto. Por ejemplo, en un sistema bancario, las personas y las cuentas
bancarias se podran interpretar como entidades. Las entidades pueden
representar entes concretos, como una persona o un avin, o abstractas, como
por ejemplo un prstamo o una reserva. Se representan por medio de un
rectngulo. que pueden ser de tipo: maestras, transaccionales, historicas y
temporales
Atributos[editar]
Se representan mediante un crculo o elipse etiquetado mediante un nombre en su
interior. Cuando un atributo es identificativo de la entidad se suele subrayar dicha
etiqueta.
Por motivos de legibilidad, los atributos suelen no aparecer representados en el
diagrama entidad-relacin, sino descritos textualmente en otros documentos
adjuntos.
Relaciones[editar]
Se representan mediante un rombo etiquetado en su interior con un verbo. Este
rombo se debe unir mediante lneas con las entidades (rectngulos) que relaciona,
para as saber cul es la relacin que lleva cada uno.
Diagramas extendidos[editar]


DER extendido
Los diagramas Entidad-Relacin no cumplen su propsito con eficacia debido a
que tienen limitaciones semnticas. Por ese motivo se suelen utilizar losdiagramas
Entidad-Relacin extendidos que incorporan algunos elementos ms al lenguaje:
Entidades fuertes y dbiles[editar]
Cuando una entidad participa en una relacin puede adquirir un
papel fuerte odbil. Una entidad dbil es aquella que no puede existir sin participar
en la relacin; es decir, aquella que no puede ser unvocamente identificada
solamente por sus atributos.
Una entidad fuerte (tambin conocida como entidad regular) es aquella que s
puede ser identificada unvocamente. En los casos en que se requiera, se puede
dar que una entidad fuerte "preste" algunos de sus atributos a una entidad dbil
para que esta ltima se pueda identificar.
Las entidades dbiles se representan- mediante un doble rectngulo; es decir, un
rectngulo con doble lnea.
Se puede hablar de la existencia de 2 tipos de dependencias en las entidades
dbiles:
Dependencia por existencia
Las ocurrencias de la entidad dbil pueden identificarse mediante un atributo
identificador clave sin necesidad de identificar la entidad fuerte relacionada.
Dependencia por identidad
La entidad dbil no puede ser identificada sin la entidad fuerte relacionada.
(Ejemplo: si tenemos una entidad LIBRO y otra relacionada EDICIN, para
identificar una edicin necesitamos conocer el identificador del libro).
Cardinalidad de las relaciones[editar]
El tipo de cardinalidad se representa mediante una etiqueta en el exterior de la
relacin, respectivamente: "1:1", "1:N" y "N:M", aunque la notacin depende del
lenguaje utilizado, la que ms se usa actualmente es el unificado. Otra forma de
expresar la cardinalidad es situando un smbolo cerca de la lnea que conecta una
entidad con una relacin:
"0" si cada instancia de la entidad no est obligada a participar en la relacin.
"1" si toda instancia de la entidad est obligada a participar en la relacin y,
adems, solamente participa una vez.
"N" , "M", "*" si cada instancia de la entidad no est obligada a participar en la
relacin y puede hacerlo cualquier nmero de veces.
Ejemplos de relaciones que expresan cardinalidad:
Cada esposo (entidad) est casado (relacin) con una nica esposa (entidad) y
viceversa. Es una relacin 1:1.
Una factura (entidad) se emite (relacin) a una persona (entidad) y slo una, pero
una persona puede tener varias facturas emitidas a su nombre. Todas las facturas
se emiten a nombre de alguien. Es una relacin 1:N.
Un cliente (entidad) puede comprar (relacin) varios servicios (entidad) y un
servicio puede ser comprado por varios clientes distintos. Es una relacin N:M.
Atributos en relaciones[editar]
Las relaciones tambin pueden tener atributos asociados. Se representan igual
que los atributos de las entidades. Un ejemplo tpico son las relaciones de tipo
"histrico" donde debe constar una fecha o una hora. Por ejemplo, supongamos
que es necesario hacer constar la fecha de emisin de una factura a un cliente, y
que es posible emitir duplicados de la factura (con distinta fecha). En tal caso, el
atributo "Fecha de emisin" de la factura debera colocarse en la relacin "se
emite".
Herencia[editar]
La herencia es un intento de adaptacin de estos diagramas al paradigma
orientado a objetos. La herencia es un tipo de relacin entre una entidad "padre" y
una entidad "hijo". La entidad "hijo" hereda todos los atributos y relaciones de la
entidad "padre". Por tanto, no necesitan ser representadas dos veces en el
diagrama. La relacin de herencia se representa mediante un tringulo
interconectado por lneas a las entidades. La entidad conectada por el vrtice
superior del tringulo es la entidad "padre". Solamente puede existir una entidad
"padre" (herencia simple). Las entidades "hijo" se conectan por la base del
tringulo.
Agregacin[editar]


Ejemplo agregacin
Es una abstraccin a travs de la cual las relaciones se tratan como entidades de
un nivel ms alto. Se utiliza para expresar relaciones entre relaciones o entre
entidades y relaciones. Se representa englobando la relacin abstrada y las
entidades que participan en ella en un rectngulo. En la figura se muestra un
ejemplo de agregacin en el que se representa la situacin en la que un profesor,
cuando est impartiendo una clase, puede poner una incidencia ocurrida a lo largo
de sta (se fue la luz, falta la configuracin de un determinado software, etc.).
Vase tambin[editar]
Ingeniera del software. Disciplina donde se encuadra el anlisis y diseo de
datos.
Modelo de datos. Es la visin esttica de un sistema de informacin.

También podría gustarte