Partitionnement de table

DéfinitionPartitionnement de table

Le partitionnement d'une table consiste à découper cette table afin qu'elle soit moins volumineuse, permettant ainsi d'optimiser certains traitements sur cette table.

On distingue :

  • Le partitionnement vertical, qui permet de découper une table en plusieurs tables, chacune ne possédant qu'une partie des attributs de la table initiale.

  • Le partitionnement horizontal, qui permet de découper une table en plusieurs tables, chacune ne possédant qu'une partie des enregistrements de la table initiale.

DéfinitionPartitionnement vertical

Le partitionnement vertical est une technique consistant à implémenter des projections d'une table T sur des tables T1, T2, etc. en répétant la clé de T dans chaque Ti pour pouvoir recomposer la table initiale par jointure sur la clé ( Bases de données : objet et relationnel[1]).

Remarque

Ce découpage équivaut à considérer l'entité à diviser comme un ensemble d'entités reliées par des associations 1:1.

MéthodeCas d'usage du partitionnement vertical

Un tel découpage permet d'isoler des attributs peu utilisés d'autres très utilisés, et ainsi améliore les performances lorsque l'on travaille avec les attributs très utilisés (la table étant plus petite).

Cette technique diminue les performances des opérations portant sur des attributs ayant été répartis sur des tables différentes (une opération de jointure étant à présent requise).

Le partitionnement vertical est bien entendu sans intérêt sur les tables comportant peu d'attributs.

DéfinitionPartitionnement horizontal

Technique consistant à diviser une table T selon des critères de restriction en plusieurs tables T1, T2... et de telle façon que tous les tuples de T soit conservés. La table T est alors recomposable par union sur les Ti ( Bases de données : objet et relationnel[1]).

MéthodeCas d'usage

Un tel découpage permet d'isoler des enregistrements peu utilisés d'autres très utilisés, et ainsi améliore les performances lorsque l'on travaille avec les enregistrements très utilisés (la table étant plus petite). C'est le cas typique de l'archivage. Un autre critère d'usage est le fait que les enregistrements soient toujours utilisés selon un partitionnement donné (par exemple le mois de l'année).

Cette technique diminue les performances des opérations portant sur des enregistrements ayant été répartis sur des tables différentes (une opération d'union étant à présent requise).

Le partitionnement horizontal est bien entendu sans intérêt sur les tables comportant peu d'enregistrements.