- Postgres est une plateforme unifiée capable de gérer dans une seule base de données des fonctions variées comme la recherche, les vecteurs, les séries temporelles et les files de messages
- Utiliser plusieurs bases de données spécialisées entraîne des inefficacités et des risques en matière d’administration, de sécurité, de sauvegarde et de gestion des incidents
- À l’ère de l’IA, il faut pouvoir cloner, tester et supprimer rapidement des bases de données ; une architecture à système unique garantit donc simplicité et agilité
- Les extensions de Postgres utilisent les mêmes algorithmes qu’Elasticsearch, Pinecone ou InfluxDB, avec des performances déjà démontrées
- Pour la plupart des entreprises (99 %), un seul Postgres suffit ; les architectures distribuées complexes ne sont nécessaires que pour une infime minorité de très grandes entreprises
La nécessité de consolider les bases de données
- L’article compare les bases de données à une maison et présente Postgres comme une structure qui réunit plusieurs fonctions sous un même toit
- Recherche, vecteurs, séries temporelles, files de messages : tous ces usages peuvent être traités dans un seul système
- À l’inverse, le conseil consistant à « utiliser le bon outil au bon endroit » conduit en pratique à faire fonctionner plusieurs bases de données en parallèle
- Sept systèmes sont cités en exemple : Elasticsearch, Pinecone, Redis, MongoDB, Kafka, InfluxDB et PostgreSQL
- Il faut gérer séparément leurs langages de requête, sauvegardes, politiques de sécurité, supervision et réponses aux pannes
- Cette architecture distribuée complique la mise en place des environnements de test et la résolution des problèmes, avec une complexité maximale lors des incidents en pleine nuit
La simplicité à l’ère de l’IA
- Les agents IA doivent pouvoir créer, valider et supprimer rapidement des bases de données de test
- Avec une base unique, une seule commande suffit ; avec plusieurs systèmes, il faut synchroniser les snapshots et ajuster les configurations
- Administrer plusieurs bases de données simultanément exige une complexité de niveau R&D
- À l’ère de l’IA, la simplicité est présentée comme un élément indispensable
Le mythe de la « supériorité » des bases spécialisées
- L’idée selon laquelle les bases de données spécialisées sont meilleures sur certaines tâches est décrite comme un effet marketing exagéré
- En pratique, les extensions Postgres utilisent des algorithmes identiques, voire meilleurs
- Selon le tableau comparatif, les extensions Postgres correspondent aux bases spécialisées suivantes
| Fonction |
Base spécialisée |
Extension Postgres |
Algorithme identique |
| Recherche plein texte |
Elasticsearch |
pg_textsearch |
BM25 |
| Recherche vectorielle |
Pinecone |
pgvector + pgvectorscale |
HNSW/DiskANN |
| Séries temporelles |
InfluxDB |
TimescaleDB |
Partitionnement temporel |
| Cache |
Redis |
UNLOGGED tables |
Stockage en mémoire |
| Documents |
MongoDB |
JSONB |
Indexation documentaire |
| Géospatial |
GIS |
PostGIS |
Standard industriel |
- pgvectorscale affiche une latence 28 fois plus faible et un coût 75 % inférieur à Pinecone
- TimescaleDB offre des performances équivalentes ou supérieures à InfluxDB, et pg_textsearch utilise le même classement BM25 qu’Elasticsearch
Les coûts cachés de la dispersion des bases de données
- Exploiter plusieurs systèmes multiplie par 7 tous les coûts de gestion liés aux sauvegardes, à la supervision, aux correctifs de sécurité et à la gestion des incidents
- Charge cognitive : il faut apprendre SQL, Redis, Elasticsearch DSL, MongoDB, Kafka, InfluxDB et d’autres langages
- Problèmes de cohérence des données : un échec de synchronisation entre Postgres et Elasticsearch peut provoquer une dérive des données
- Baisse de disponibilité : les SLA de plusieurs systèmes se multiplient entre eux, ce qui réduit le taux de disponibilité global (ex. : 99,9 % × 3 = 99,7 %)
La pile Postgres moderne
- Les extensions Postgres sont déjà validées en production depuis des années
- PostGIS (2001), Full-text search (2008), JSONB (2014), TimescaleDB (2017), pgvector (2021)
- Plus de 48 000 entreprises, dont Netflix, Spotify, Uber, Reddit, Instagram et Discord, utilisent PostgreSQL
- Extensions pour l’ère de l’IA
| Extension |
Remplace |
Caractéristiques |
| pgvectorscale |
Pinecone, Qdrant |
Algorithme DiskANN, latence 28 fois plus faible, coût réduit de 75 % |
| pg_textsearch |
Elasticsearch |
Implémente directement le classement BM25 dans Postgres |
| pgai |
Pipelines IA externes |
Synchronisation automatique des embeddings lors des changements de données |
- Il est possible de construire une application RAG avec un seul Postgres : un seul langage de requête, une seule sauvegarde, un seul environnement de test
Exemples d’extensions majeures
- pg_textsearch : remplace Elasticsearch, avec une recherche basée sur BM25
- pgvector + pgvectorscale : remplace Pinecone, avec une recherche vectorielle basée sur DiskANN
- TimescaleDB : remplace InfluxDB, avec compression des séries temporelles et prise en charge de SQL
- UNLOGGED tables : remplace Redis, pour implémenter des tables de cache
- pgmq : remplace Kafka, en fournissant une file de messages
- JSONB : remplace MongoDB, pour le stockage et l’indexation de données documentaires
- PostGIS : prend en charge le traitement géospatial
- pg_cron : automatise les tâches planifiées
- pg_trgm : prend en charge la recherche tolérante aux fautes de frappe
- Recursive CTEs : permettent d’implémenter l’exploration de graphes
Conclusion
- Postgres est une maison avec plusieurs pièces, qui intègre diverses capacités de traitement des données dans un même ensemble
- Pour la plupart des entreprises (99 %), un seul Postgres suffit ; seule une très petite minorité (1 %) a besoin de systèmes distribués à très grande échelle
- Le conseil du « bon outil au bon endroit » est présenté comme une logique marketing destinée à vendre des bases de données
- Le principe proposé est le suivant : commencez avec Postgres et n’ajoutez de la complexité que lorsque c’est réellement nécessaire
- La conclusion est claire : en 2026, il suffit d’utiliser Postgres
Aucun commentaire pour le moment.