TIN : recherche plein texte ultra-rapide pour Postgres
Original : Tin: full-text search for Postgres
Pourquoi c'est important
La recherche plein texte native dans Postgres réduit la dépendance à Elasticsearch ou Typesense.
PlanetScale lance TIN (Text INdex), une extension de recherche plein texte pour Postgres, disponible en GA dès le 16 septembre 2026. Compatible avec toutes les bases Postgres et Neki, TIN supporte expressions booléennes, requêtes de phrases, flou et scoring BM25, testé sur un corpus de 150 millions de documents.
PlanetScale a annoncé TIN, une extension de recherche plein texte pour Postgres, co-développée par Eric Ridge et Patrick Reynolds. L'outil se déploie en une ligne : `CREATE INDEX … USING tin(colonne)`, et introduit l'opérateur `==>` pour les requêtes textuelles.
TIN couvre l'ensemble des besoins courants : expressions booléennes, requêtes de phrases et de proximité (span queries), correspondance floue, wildcards, expressions régulières, normalisation casse et accents, comptage `COUNT(*)` et classement BM25 top-k. Contrairement aux trois extensions existantes pour Postgres, TIN gère simultanément les mises à jour continues, la réplication, les sauvegardes et la visibilité transactionnelle MVCC.
Pour les benchmarks, l'équipe a utilisé un export Stack Exchange de 85 Go et 150 millions de documents, mais a aussi testé sur Wikipedia, 2,3 To de commentaires Reddit et un corpus mixte de 797 Go (articles scientifiques, documents juridiques, livres). Les résultats détaillés couvrent le temps de construction d'index, les requêtes mixtes, les requêtes conjonctives et disjonctives avec écritures concurrentes. PlanetScale cite des identifiants sur 48 bits, une vectorisation agressive et une architecture par segments comme leviers de performance.