L’article défend l’idée qu’SQLite, avec une configuration optimisée, peut remplacer des bases de données plus lourdes comme PostgreSQL pour de nombreux cas d’usage, même à grande échelle. Les auteurs ont testé cette hypothèse en construisant un réseau social (Chirp) avec 50 000 utilisateurs et un million de publications, stockés dans un seul fichier de 343 Mo. Toutes les tables étaient configurées en mode STRICT, et le backend reposait sur un seul processus Node.js sans serveur de base de données dédié.
Les benchmarks, réalisés sur un simple ordinateur portable (Apple M1), révèlent des performances impressionnantes : jusqu’à 315 millions de requêtes par jour sur l’endpoint le plus sollicité (la timeline), avec des temps de réponse médians de 13 ms. Même les opérations complexes, comme les jointures sur des millions de lignes, restent fluides grâce à des pragmas adaptés (WAL, cache optimisé, etc.). Les auteurs soulignent que ces résultats rendent superflus des outils comme les connection poolers pour la plupart des applications.
Cependant, l’article reconnaît aussi les limites de SQLite, notamment pour les charges de travail extrêmes ou nécessitant des fonctionnalités avancées (réplication multi-nœuds, requêtes analytiques complexes). En résumé, pour des applications classiques, SQLite en mode WAL offre une solution simple, performante et économique, sans compromis majeurs.