12.07.2015 Views

Le resume linguistique de donnees structurees comme ... - APMD

Le resume linguistique de donnees structurees comme ... - APMD

Le resume linguistique de donnees structurees comme ... - APMD

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

94 CHAPITRE 5 — In<strong>de</strong>xation <strong>de</strong> donnéesen taille. L’autre option consiste à utiliser un in<strong>de</strong>x non-<strong>de</strong>nse : une entrée d’in<strong>de</strong>x correspondimplicitement à plusieurs valeurs <strong>de</strong> la clé <strong>de</strong> recherche, présentes ou non parmi les données. Lacontrepartie au volume plus faible est un traitement ultérieur en mémoire plus long. La figure5.2 montre un exemple d’in<strong>de</strong>x <strong>de</strong>nse et d’in<strong>de</strong>x non <strong>de</strong>nse sur un fichier contenant les co<strong>de</strong>sd’aéroports du Texas. <strong>Le</strong> traitement ultérieur en mémoire peut être la recherche séquentielle ausein d’un bloc <strong>de</strong> données à partir d’une position. Par exemple, la recherche <strong>de</strong> « Austin » s’effectueen <strong>de</strong>ux étapes : la détermination d’une position du fichier où <strong>comme</strong>ncer la recherche,donnée par « Abilene », et la recherche séquentielle à partir <strong>de</strong> cette position.Notons que tout in<strong>de</strong>x non-<strong>de</strong>nse est nécessairement groupé (autrement la recherche <strong>de</strong>viendraitpurement séquentielle) et que tout in<strong>de</strong>x secondaire est nécessairement <strong>de</strong>nse.Dans la suite <strong>de</strong> cette section sont présentées les métho<strong>de</strong>s d’in<strong>de</strong>xation portant sur un attribut: les tables <strong>de</strong> hachage, l’in<strong>de</strong>x ISAM et les in<strong>de</strong>x <strong>de</strong> la famille <strong>de</strong> l’arbre B.5.1.4 Tables <strong>de</strong> hachage<strong>Le</strong>s tables <strong>de</strong> hachage fournissent un accès direct à un enregistrement spécifique t grâce àune fonction f dite fonction <strong>de</strong> hachage. La fonction, qui a <strong>comme</strong> argument la valeur d’unattribut A (dit « champ <strong>de</strong> hachage ») <strong>de</strong> l’enregistrement, retourne une valeur Ax :Ax = f(t.A) .L’attribut A peut être la clé primaire ou n’importe quel autre attribut. À l’insertion <strong>de</strong> l’enregistrement,la valeur Ax est utilisée pour déterminer l’emplacement <strong>de</strong> l’enregistrement t. Demême, Ax sert pour les recherches ; le même calcul est effectué et l’emplacement désigné restele même.La valeur Ax peut fournir directement l’adresse physique <strong>de</strong> t. Mais cette solution, dite<strong>de</strong> hachage direct, se révèle peu pratique et n’entre pas dans la catégorie <strong>de</strong>s in<strong>de</strong>x [48] : lehachage direct n’autorise en effet qu’un champ <strong>de</strong> hachage par fichier <strong>de</strong> données. Dans uneautre option, le hachage indirect, la valeur Ax désigne une entrée dans une table associée à unesection physique (une ou plusieurs pages) du fichier in<strong>de</strong>xé. On parle <strong>de</strong> collision lorsque lesvaleurs Ax 1 = f(t 1 .A) et Ax 2 = f(t 2 .A) d’emplacement calculées pour <strong>de</strong>ux enregistrementst 1 et t 2 sont égales. Ce phénomène est intrinsèque au principe même du hachage. Il a fait l’objet<strong>de</strong> plusieurs travaux, notamment en cryptographie (voir [7, 123, 131]). L’ensemble <strong>de</strong> départ(ici, l’ensemble <strong>de</strong>s valeurs possibles <strong>de</strong> l’attribut <strong>de</strong> hachage) a un cardinal plus grand quel’ensemble d’arrivée (l’intervalle <strong>de</strong>s indices <strong>de</strong> la table) ; il est donc inévitable que <strong>de</strong>s valeursdifférentes aient <strong>de</strong>s images i<strong>de</strong>ntiques.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!