Retour à la leçonMission
Mission : choisir le bon outil de stockage pour trois problèmes de recherche différents
Diagnostiquer une requête JSON lente et choisir entre JSONB, tableau natif et recherche plein texte selon le besoin réel.
Contexte
La plateforme de tracking d'événements a mis en production la table evenements avec sa colonne payload JSONB, mais sans index dessus. La requête WHERE payload->>'utilisateur_id' = '42' met maintenant plusieurs secondes à répondre sur 5 millions de lignes. Au même moment, l'équipe éditoriale se plaint que la recherche d'articles avec LIKE '%mot%' ne trouve jamais les bons résultats, et veut aussi pouvoir filtrer les articles qui ont à la fois les tags "sql" et "tutoriel".