Análise e deseño detallado de aplicacións de informática e de xestión/Elementos do modelo relacional


Dominios, relacións e atributos editar

O universo do discurso (UD) dunha base de datos relacional está composto por un conxunto de dominios {Di} e de relacións {Ri} definidas sobre os dominios.

Un dominio é un conxunto con nome, finito e homoxéneo de valores atómicos[1]. Cada dominio especifícase loxicamente mediante un nome e un formato, que pode definirse por extensión ─dando os seus posibles valores─ ou por intención ─mediante un tipo de datos─.

Un atributo (A) é a interpretación dun determinado dominio nunha relación, é dicir, o papel que desempeña na mesma. Se D é o dominio de A denótase:

D = Dom(A)

Un atributo e un dominio poden chamarse igual, pero hai que ter en conta que:

  • un atributo está sempre ligado a unha relación, mentres que un dominio ten existencia propia con independencia das relacións;
  • un atributo representa unha propiedade dunha relación;
  • un atributo toma valores dun dominio;
  • varios atributos distintos ─da mesma ou de distintas relacións─ poden tomar os seus valores do mesmo dominio.

Dados unha serie de conxuntos D1, D2, D3, ..., Dn ─non necesariamente distintos─ defínese o produto cartesiano destes conxuntos e denótase D1 × D2 × D3 × ... × Dn coma un novo conxunto formado por todas as tuplas ordenadas posibles (d1, d2, d3, ..., dn), tales que d1 ∈ D1, d2 ∈ D2, d3 ∈ D3, ..., dn ∈ Dn.

Dise que R é unha relación sobre os conxuntos D1, D2, D3, ..., Dn se é un subconxunto do produto cartesiano dos mesmos.

Pódese precisar mellor o concepto de relación se o definimos en base aos seus atributos, distinguindo entre esquema de relación e relación. Un esquema de relación componse dun nome de relación R, dun conxunto de n atributos {Ai} e dun conxunto de n (non necesariamente distintos) {Di}, onde cada atributo se definirá sobre un dominio:

R ( A1 : D1, A2 : D2, ..., An : Dn)

Unha relación r(R) é un conxunto de m elementos denominados tuplas {tl}. Cada tuplal é conxunto de pares (<A1:v1l>, ..., <Ai:vil>, ..., <An:vnl>) onde cada Ai é o nome dun atributo e vil é un valor do correspondente dominio Di sobre o que está definido o atributo:

r(R) = tl { (<A1:v1l>, ..., <Ai:vil>, ..., <An:vnl>) : vil ∈ Di }

Unha relación represéntase utilizando unha táboa onde:

  • As columnas da táboa son os atributos que expresan as propiedades da relación. O número de atributos chámase «grao da relación».
  • Cada fila da táboa, chamada tupla, é un elemento do conxunto que é a relación. O número de tuplas chámase «cardinalidade da relación». A cardinalidade varía co paso do tempo.

Non se deben confundir os conceptos de táboa e de relación, posto que:

  • Unha táboa é unha forma de representar unha relación.
  • Unha relación ten unhas propiedades intrínsecas que non ten unha táboa, e que se derivan da mesma definición matemática da relación, xa que, ao tratarse dun conxunto, nunha relación:
    1. Non pode haber dúas tuplas iguais.
    2. A orde das tuplas non é significativa.
    3. A orde dos atributos non é significativa.
    4. Cada atributo só pode tomar un único valor do dominio simple subxacente. Non se admiten grupos repetitivos (nin outro tipo de estruturas) como valores dos atributos dunha tupla.

Unha relación nunha base de datos relacional ten dous compoñentes: (1) a a intención ou compresión e (2) a extensión, aínda que adoita referirse aos dous compoñentes ao mesmo tempo cando se utiliza o termo “relación”.

  • A intención dunha relación fai referencia á estrutura estática do obxecto do mundo real, que se representa mediante a relación. É o que chamaremos “esquema de relación”. É dicir, a intención vai ser sempre invariante co tempo e trátase da definición das propiedades (atributos) do obxecto do mundo real representado pola relación, das cales cada unha está definida no seu correspondente dominio de datos.
    A intención dunha relación define todas as posibles extensións admisibles para a mesma. A intención dunha relación define dous aspectos:
    1. Unha estrutura de datos nomeados na que tanto a estrutura (o obxecto) coma os elementos de datos que a compoñen (os atributos ou propiedades) teñen asignado un nome único e están definidos nun determinado dominio.
    2. Un conxunto de restricións de integridade.
  • A extensión depende do momento específico no que se ten en conta a relación, e fai referencia ao conxunto de tuplas que forman parte da relación nun certo momento. Conxunto de tuplas que, nun instante determinado, satisfán o esquema de relación e atópanse almacenadas na base de datos. É o que xeralmente se denomina como “relación”. A extensión varía co paso do tempo.

Ás veces utilízase o termo “relación” nun sentido xenérico para referirse a un esquema de relación coas súas posibles extensións.

Notas editar

  1. Únicos, non pode haber dous valores para un mesmo atributo dunha ocorrencia.