Análise e deseño detallado de aplicacións de informática e de xestión/Regras das extensións do modelo entidade-relación

En Galilibros, o Wikibooks en galego.
Saltar ata a navegación Saltar á procura
Análise e deseño detallado de aplicacións de informática e de xestión
← Volver a Regras do modelo básico Regras das extensións do modelo entidade-relación Seguir con Grafo relacional


Transformación de dependencias en identificación e existencia[editar]

As dependencias en existencia e en identificación non se recollen directamente no modelo lóxico estándar. Ademais, no caso das dependencias en identificación, a clave primaria da relación na que se transformou a entidade débil debe estar formada pola concatenación das claves das dúas entidades participantes na relación.

Transformación de restricións de relacións[editar]

Para soportar restricións de relacións (exclusión, inclusión, etc.) débense definir as restricións pertinentes en cada caso.

Transformación de tipos e subtipos[editar]

No que respecta aos tipos e subtipos, non son obxectos que se poidan representar explicitamente no modelo relacional. Ante un tipo de entidade e os seus subtipos existen varias solucións de transformación ao modelo relacional, coa conseguinte perda de semántica dependendo da estratexia elixida. Cómpre salientar as seguintes:

  1. Englobar todos os atributos da entidade e os subtipos nunha única relación. En xeral, adoptaremos esta solución cando os subtipos se diferencien en moi poucos atributos e as relacións que os asocian co resto das entidades do esquema sexan as mesmas para todos (ou case todos) os subtipos.
  2. Crear unha relación para o supertipo e tantas relacións coma subtipos haxa, cos seus correspondentes atributos. Esa é a solución axeitada cando existen moitos atributos distintos entre os subtipos e queren manterse de todos xeitos os atributos comúns a todos eles nunha relación. Ao igual que no caso anterior, haberá que crear as restricións e asercións oportunas.
  3. Considerar relacións distintas para cada subtipo, que conteñan ademais dos atributos propios, os atributos comúns. Escolleríase esta opción cando se desen as mesmas condicións ca no caso anterior ─moitos atributos distintos─ e os accesos realizados sobre os datos dos distintos subtipos sempre afectasen a atributos comúns.

Pódese por tanto escoller entre as tres estratexias para a transformación dun tipo e mailos seus subtipos ao modelo relacional. Porén, dende un punto de vista exclusivamente semántico, a segunda opción é a mellor. Por outra banda, dende o punto de vista da eficiencia temos que ter en conta que:

  • Na primeira opción o acceso a unha fila que reflicta toda a información dunha determinada entidade é moito máis rápido (non fai falla combinar varias relacións).
  • A segunda opción é a menos eficiente, aínda que é a mellor dende un punto de vista exclusivamente semántico.
  • Coa terceira opción auméntase a eficiencia ante determinadas consultas (as que afecten a todos os atributos, tanto comúns coma propios, dun subtipo) pero pode diminuír ante outras. Esta solución é na que se perde máis semántica. Ademais, se existe solapamento introdúcese redundancia, que debe controlarse se se queren evitar inconsistencias. Hai que ter en conta que esta solución non vale cando a xeneralización é parcial.

Elixirase unha estratexia ou outra segundo esta aporta a semántica ou a eficiencia que prima para o usuario nun momento determinado.

Transformación da dimensión temporal[editar]

En caso de que no esquema entidade-relación apareza o tempo coma un tipo de entidade, a transformación no esquema relacional estándar non constitúe un gran problema, xa que se tratará coma outro tipo de entidade calquera e, por tanto, crearase unha relación máis.

Porén, cando a dimensión temporal se recolleu no esquema entidade-relación a través de atributos de relacións de tipo DATA, a transformación no modelo lóxico estándar consistirá en pasalos a columnas da relación que corresponda. Sobre este punto cómpre termos coidado á hora de elixir a clave primaria da relación resultante, dependendo dos supostos semánticos do ambiente.

Cómpre observar que esta simplicidade aparente na transformación de algo tan complicado como é a dimensión temporal é debido á pouca semántica e precisión do modelo entidade-relación (ao igual que o modelo relacional) para tratar os aspectos temporais. En sistemas de información nos que a dimensión temporal resulta fundamental, coma é o caso dos sistemas estatísticos, o modelo entidade-relación non resolve moitos dos problemas de modelados relativos á dimensión temporal.

Transformación de atributos derivados[editar]

Para os atributos derivados non existe unha representación directa e concreta no modelo lóxico estándar, senón que se poden tratar coma atributos normais, que pasarán a ser columnas da relación que corresponda.

Neste caso é preciso construír un disparador que calcule o valor do atributo derivado cada vez que se insiran ou borren as ocorrencias dos atributos que interveñen no cálculo deste e engadir as restricións correspondentes.

Outra solución consiste en non almacenar as columnas que proveñan de atributos derivados, creando procedementos que calculen os valores destes cada vez que se recuperen, o que en ocasións poderá xerar problemas de semántica e nalgunhas ocasións de eficiencia.


Análise e deseño detallado de aplicacións de informática e de xestión
← Volver a Regras do modelo básico Regras das extensións do modelo entidade-relación Seguir con Grafo relacional