Page 1 sur 1

Utilisation de soundex2 (comparaison formulaire à BDD)

Posté : 10 oct. 2008, 19:46
par uspy62
Bonjour à tous, j 'utilise l'algorithme soundex2 sur mon site, mais le problème c'est que c'est assez long à rechercher.
Voici comment je procède, dans ma BDD il n'y a pas de champ soundex_nom, ... donc je dois faire une boucle qui va comparer tous les champs de la table dans laquelle je recherche, puis je vais mettre les id des lignes correspondantes dans un tableau, et je vais ensuite refaire une boucle pour afficher les lignes qui ont le même son que mon champ recherché, y a t-il moyen d'accèlérer ce processus.

Merci d'avance.

Posté : 10 oct. 2008, 19:48
par Cyrano
Peut-être bien oui, en indexant la colonne sur laquelle s'effectue la recherche. À tester :-k

Attention toutefois à un revers sur cette médaille : indexer une colonne accélère notablement la lecture, mais ralentit les écritures. Il faut donc indexer avec mesure.

Posté : 10 oct. 2008, 21:05
par uspy62
Oui, en fait j'ai indexé toutes les clés étrangère de mes tables.
Mais je ne pense pas qu'il faut indexer les champ 'nom', 'prenom', ...
Tant pis pour le gain de temps.
Merci quand même.

Posté : 10 oct. 2008, 22:11
par Cyrano
...Mais je ne pense pas qu'il faut indexer les champ 'nom', 'prenom', ...
Encore une fois, il faut y aller avec mesure.

Si la table en question a un nombre limité d'écritures mais se trouve très souvent sollicitée en lecture, alors ça peut valoir la peine d'indexer certaines colonnes en plus des clés étrangères. Tu peux toujours faire des tests en mesurant les différences avec par exemple une série de requêtes en boucle, d'abord sur l'écriture puis sur la lecture sans rien changer des index, puis la même chose en indexant les colonnes de texte.

Comme tu mentionnes des colonnes de nom et prénom, ça sous-entend des membres : ils ne seront pas forcément des millions et après quelques temps, la courbe des inscriptions va se calmer, les lectures en revanche augmentant significativement. CQFD, l'indexation peut devenir une seconde étape après la stabilisation du rythme des inscriptions :-k

Posté : 11 oct. 2008, 14:53
par uspy62
Ok merci pour cette remarque très constructive, je vais essayer de faire de cette manière.
Merci encore pour ta réponse.