L’entreprise slovène Bunny.net, connue pour son CDN agressif sur les prix, vient de lancer Bunny Database en préversion publique : un service de base de données géré compatible SQLite qui se met en veille pendant les périodes d’inactivité pour réduire les coûts à zéro. La tarification démarre à 0,30 $ (environ 0,28 €) par milliard de lignes lues et 0,10 $ (environ 0,09 €) par Go mensuel, avec une disponibilité sur 41 régions mondiales. Et cerise sur le gâteau : c’est gratuit pendant toute la phase de prévisualisation.
« On n’a pas envie de surveiller sa base de données sur une VM, mais on ne veut pas non plus payer la taxe DBaaS », martèle Marek Nalikowski de Bunny.net dans l’annonce. « Nous construisons une troisième voie. »
Le message est clair : les plateformes DBaaS qui ont conquis le cœur des développeurs (Supabase, PlanetScale, Neon) sont toutes parties à la chasse aux gros clients. Suppression ou limitation des tiers gratuits, facturation de la capacité inutilisée, surcoûts pour des petites fonctionnalités, ou regroupement forcé dans des tiers supérieurs. « Difficile de reprocher à quiconque de développer son activité, mais ça ne semble pas juste quand ces services cessent d’avoir du sens pour les gens mêmes qui les ont popularisés en premier lieu », ajoute Nalikowski.
Déploiement en un clic, 41 régions, et réplication automatique
Bunny Database propose un déploiement en un clic sans configuration nécessaire, des SDKs pour TypeScript/JavaScript, Go, Rust et .NET, et surtout une réplication multi-régions pour servir les lectures au plus près des utilisateurs. Le service fonctionne sur 41 régions mondiales avec trois types de déploiement : sélection automatique de région (déploiement en un clic avec latence minimale), déploiement mono-région, ou sélection manuelle multi-régions.
L’éditeur de base de données intégré permet d’insérer des données ou d’exécuter des requêtes sur place, et des métriques instantanées donnent une visibilité sur les lectures, écritures, stockage et latence. Le tout fonctionne sur HTTP, donc vous pouvez brancher n’importe quoi.
Bunny.net a effectué un benchmark de latence en lecture et mesuré la latence p95 dans plusieurs régions du monde. Résultat : servir les lectures au plus près des clients a réduit la latence jusqu’à 99 %. « Les développeurs finissent par introduire des couches de cache, des lectures dénormalisées ou d’autres contournements parce que les plateformes DBaaS populaires sont généralement limitées, complexes ou trop coûteuses en déploiements multi-régions. Ce qui ressemble à un problème de cache est en réalité un problème de localité des données », explique l’équipe.
Tarification à l’usage, mais sans la taxe serverless
Dans le monde des bases de données, la tarification basée sur la capacité offre une certaine prévisibilité. Mais personne n’aime payer pour une capacité inutilisée. Le serverless, d’un autre côté, est censé être rentable, mais peut faire grimper les factures rapidement, surtout quand les DBaaS appliquent des marges importantes sur un calcul déjà cher.
« Nous ne faisons pas dans les hyperscalers, donc nous pouvons facturer un prix équitable pour Bunny Database dans un modèle basé sur l’usage », affirme Bunny.net.
Tarification :
- Lectures : 0,30 $ (environ 0,28 €) par milliard de lignes
- Écritures : 0,30 $ (environ 0,28 €) par million de lignes
- Stockage : 0,10 $ (environ 0,09 €) par Go par région active (mensuel)
Quand Bunny Database ne reçoit pas de requêtes, seuls les coûts de stockage sont facturés. Une région principale est facturée en continu, tandis que les réplicas de lecture n’ajoutent des coûts de stockage que lorsqu’ils servent du trafic (mesuré à l’heure). Votre utilisation est facturée en continu (paiement à l’usage) et facturée mensuellement.
Pendant la phase de prévisualisation publique, Bunny Database est gratuit.
Compatible SQLite via libSQL (fork open source de Turso)
Bunny Database ne serait pas possible sans libSQL, le fork open source et ouvert aux contributions de SQLite créé par Turso. Bunny.net fait tourner Bunny Database sur son propre fork de libSQL, ce qui leur donne la liberté de l’intégrer étroitement avec la plateforme bunny.net et de gérer l’infrastructure et l’orchestration nécessaires pour le faire fonctionner comme un service géré multi-régions.
Qu’est-ce que cela signifie pour la parité des fonctionnalités en amont avec libSQL et SQLite ? Bunny.net ne promet actuellement pas de parité automatique ou complète avec libSQL en amont ou les dernières versions de SQLite. « Bien que libSQL vise à rester compatible avec l’API et le format de fichier de SQLite, il n’avance pas en synchronisation avec SQLite en amont. Nous ne nous attendrions pas à autre chose, surtout depuis que Turso s’est concentré sur une réécriture à long terme de SQLite en Rust », explique l’équipe.
Pour Bunny Database, cela signifie que la compatibilité aujourd’hui est définie par la version libSQL sur laquelle ils sont construits, plutôt que par la poursuite de chaque changement SQLite ou libSQL en amont au fur et à mesure. « Notre focus jusqu’à présent a été de rendre Bunny Database fiable et facile à opérer en tant que service. Nous pensons que l’intégration de changements en amont n’a de sens que lorsqu’ils améliorent clairement les cas d’usage réels, pas juste pour cocher une case de parité. »
Si vous avez des fonctionnalités libSQL spécifiques que vous aimeriez voir exposées dans Bunny Database, ou des fonctionnalités SQLite récentes que vous voudriez qu’ils intègrent, l’équipe invite à rejoindre leur Discord pour discuter des cas d’usage et contribuer à façonner la roadmap.
Feuille de route : sauvegardes automatiques, import/export, API auto-générée
La feuille de route de l’éditeur européen prévoit notamment :
- Des sauvegardes automatiques
- L’import/export de fichiers de base de données
- Une API auto-générée avec awareness du schéma et SDKs type-safe
Bunny Database fonctionne de manière autonome et s’intègre directement dans votre stack via les SDKs (ou vous pouvez brancher n’importe quoi en utilisant l’API HTTP). Mais il joue également bien avec Bunny Edge Scripting et Bunny Magic Containers.
Pendant la phase de prévisualisation publique, vous obtenez 50 bases de données par compte utilisateur, chacune limitée à 1 Go.
