Hello,
Je dispose d'une grosse base de données (plusieurs millions d'entrées). Dans celle-ci, des objets complexes sont stockés et représentés sous forme textuelle dans une table principale.
Dans mon application client, l'utilisateur à la possibilité de faire une recherche avancée qui nécessite de parcourir l'ensemble de la base et d'applique un algorithme de recherche dans le code client.
Quel est alors la meilleur facon de parcourir la base ?
Charger l'ensemble des données en mémoire est exclu vu la quantité de donnée en jeux. Utiliser LIMIT et OFFSET me semble également exclut vu leur lenteur. Je n'ai malheureusement pas de posibilité (immédiate) de représenter mes objets autrement que par une longue chaine de caractère, donc pas vraiment de possibilité de les indexer.
Jusqu'ici, je récupère le min et le max de la clé primaire, et je parcours la base par fenêtre avec SELECT (...) FROM T WHERE t_id BETWEEN n AND n+2000... Mais ca me semble franchement être du bricolage, et je me demande si il n'y a pas mieux...
Merci d'avance vos conseils
Partager