Types d'index

Lorsque vous régénérez les index, PowerAMC détermine le type d'index en fonction des informations contenues dans les statistiques de la table. Il utilise le champ qui indique le nombre d'enregistrements estimé pour la table, ainsi que le pourcentage de valeurs distinctes, afin de calculer le nombre de valeurs uniques. Si l'utilisateur n'a pas spécifié de nombre de lignes pour la table. PowerAMC présume que la table va inclure au moins une ligne de données.

Le processus de régénération crée le plus souvent des index de type FASTPROJECTION pour les colonnes. Dans le cas contraire, ce sont les règles suivantes qui prévalent :

Critère

Type d'index

Si aucune statistique n'est fournie et que la colonne a un type de données indéfini

Aucun index n'est créé

Faible quantité de valeurs uniques dans une colonne

Colonne utilisée dans un prédicat de jointure

LOWFAST

Faible quantité de valeurs uniques dans une colonne

Aucune requête COUNT DISTINCT, SELECT DISTINCT ou GROUP BY requise

HIGHNONGROUP

Colonne utilisée dans un prédicat de jointure

Grande quantité de valeurs uniques dans une colonne (plus de 1000)

Anticipe des requêtes COUNT DISTINCT, SELECT DISTINCT ou GROUP BY

La colonne doit imposer l'unicité

HIGHGROUP

Colonne sans type de données numérique

Aucun index n'est créé

Colonne contenant des données de type date

DATE

Colonne contenant des données de type time

TIME

Colonne contenant des données de type datetime ou smalldatetime

DTTM

Exemple, dans IQ v12.5, la table A contient 1500 lignes

Colonne

% de valeurs distinctes

Valeurs uniques

La régénération d'index génère

Col_1 integer

100

1500

Index HG

Col_2 integer

50

750

Index LF

Col_3 integer

0

0

Aucun index

Col_4 char (10)

100

1500

Aucun index

Col_5 char (10)

50

750

Index LF