From: | Dimitri Fontaine <dfontaine(at)hi-media(dot)com> |
---|---|
To: | Guillaume Lelarge <guillaume(at)lelarge(dot)info> |
Cc: | Stephane Bortzmeyer <bortzmeyer(at)nic(dot)fr>, pgsql-fr-generale(at)postgresql(dot)org |
Subject: | Re: Re: Index pour requêtes de non-existence en PostgreSQL |
Date: | 2010-05-20 12:26:36 |
Message-ID: | m2632i92tf.fsf@hi-media.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-fr-generale |
Guillaume Lelarge <guillaume(at)lelarge(dot)info> writes:
>> Oui, avec cela, ça marche, merci. Par contre, l'utilisation de ce
>> second index semble dépendre de si la requête a un joker % au début ou
>> à la fin :
>>
>
> Si un joker est en début, il n'utilisera jamais un index, quelqu'il
> soit. À noter les deux excellents articles de Thomas sur le sujet :
>
> * Utiliser un index pour les recherches sur des motifs tels que «
> colonne LIKE '%chaîne' »
> http://blog.postgresql.fr/index.php?post/drupal/396
>
> * Index inversé, en C
> http://blog.postgresql.fr/index.php?post/drupal/393
Vu de domaine dans lequel la problématique se pose, j'ai comme
l'impression que cette recherche est en fait une recherche des prefix
dans la table qui correspondent au numéro de tel connu.
Il se trouve que j'ai écrit un type de données avec support GiST pour
optimiser ces requêtes :
http://github.com/dimitri/prefix
Je lis ça rapidement depuis le canada, j'espère avoir suffisamment
compris le cas :)
--
dim
From | Date | Subject | |
---|---|---|---|
Next Message | Stephane Bortzmeyer | 2010-05-20 13:56:20 | Re: Index pour requêtes de non-existence en PostgreSQL |
Previous Message | REISS Thomas DSIC BIP | 2010-05-20 12:18:20 | Re: Re: Index pour requêtes de non-existence en PostgreSQL |