1. Bases de dades relacionals

1.1. Introducció

El model relacional és un model de dades basat en la lògica de predicats i en la teoria de conjunts. La seva idea fonamental és l’ús de relacions. Aquestes relacions podrien considerar-se de forma lògica, com a conjunts de dades anomenades tuples. Pensem cada relació com si fos una taula que està composta per registres: cada fila de la taula seria un registre o tupla, i columnes, també anomenades camps.

Entre els paradigmes actuals de bases de dades, el model relacional està molt estès i s’adapta a la majoria d’entorns bioinformàtics per la seva eficiència i simplicitat.

Un altre avantatge d’aquest paradigma és que existeixen nombroses implementacions open source que proporcionen els serveis complets d’un sistema gestor de base de dades relacional amb diferents interfícies gràfiques d’usuari.

Formalment, el paradigma relacional està dividit en tres components bàsics:

  • Les taules i les relacions entre aquestes estructuren les dades.
  • L’àlgebra relacional opera sobre la informació.
  • Un conjunt d’axiomes manté la integritat del sistema.

Una taula modela un element del món real, caracteritzant els seus atributs. Una relació entre dues taules emula les associacions lògiques existents entre dos elements de diferents classes en la realitat, permetent l’accés creuat d’informació.

Per a un univers de dades en particular, l’organització de les taules i les relacions que el conformen reben el nom d’esquema relacional. Una vegada definida aquesta estructura, s’ha de crear una base de dades per ser poblada amb les dades reals (conegudes com a instàncies o registres), sent administrada des d’aquell moment per un sistema de gestió de bases de dades.

Utilitzant l’àlgebra relacional, l’usuari pot realitzar consultes per extreure’n nova informació i actualitzar-la.

Per realitzar un disseny eficient de la base de dades hem de seguir aquestes regles:

  • Estimular totes les classes d’informació que desitgem guardar.
  • Estructurar de forma lògica la informació en diferents categories.
  • Definir els atributs que caracteritzen cada categoria.
  • Assignar identificadors suficientment descriptius als atributs.
  • Decidir el tipus de dades associat a cada atribut.
  • Descompondre cada peça d’informació en la unitat més elemental.
  • Seleccionar els atributs que identifiquen de forma única cada categoria.
  • Identificar les relacions entre categories.