Aller au contenu principal

Monter en charge jusqu'à zéro

Le dimensionnement à zéro suspend automatiquement votre compute Lakebase après une période d'inactivité, ce qui minimise les coûts pour les bases de données qui ne sont pas continuellement actives. Cette fonctionnalité est particulièrement précieuse pour les environnements de développement, de test et de préproduction, ainsi que pour les bases de données de production avec des périodes d'inactivité prévisibles.

Lorsque la mise à zéro est activée :

  • Votre compute se suspend automatiquement après une période d'inactivité. Le délai d'inactivité est default sur 24 heures et peut être configuré entre 60 secondes et 7 jours
  • Vous ne payez que le temps de compute actif, et non les périodes d'inactivité.
  • Le compute se réactive automatiquement en quelques centaines de millisecondes lorsque vous exécutez une nouvelle query.

Ce diagramme illustre le comportement de Monter en charge jusqu'à zéro parallèlement à l'autoscaling, montrant une période inactive suivie d'une suspension automatique jusqu'à ce que la base de données soit à nouveau accédée.

Visualisation de la mise à l'échelle à zéro

La mise à l'échelle à zéro fonctionne indépendamment de l'autoscaling. Le dimensionnement automatique ajuste les ressources de compute pendant les périodes d'activité en fonction de la demande de charge de travail. Monter en charge à zéro suspend entièrement le compute pendant l'inactivité, réduisant les coûts de compute à zéro.

Fonctionnement du dimensionnement à zéro

Suspension automatique

Lorsque votre compute reste inactif (ne recevant aucune requête ou connexion) pendant la période de temporisation configurée, Lakebase le suspend automatiquement. Pendant la suspension :

  • Le compute ne consomme aucune ressource et n'entraîne aucun coût de compute.
  • Vos données restent stockées en toute sécurité et disponibles
  • Les chaînes de connexion et les identifiants restent valides
  • L'Endpoint de compute reste accessible mais inactif.

Réactivation automatique

Lorsqu'une nouvelle query ou demande de connexion arrive à un compute suspendu, Lakebase le réactive automatiquement. Le processus de réactivation :

  • Ne nécessite aucune intervention manuelle.
  • Gère de manière transparente la requête de connexion après être devenue active.
  • Restaure le compute à sa taille minimale configurée (si le dimensionnement automatique est activé)

Les applications doivent implémenter une logique de nouvelle tentative de connexion pour gérer avec élégance la courte période de réactivation.

Configuration du délai d'expiration

Vous configurez le délai d’expiration de la mise à l’échelle à zéro pour contrôler la vitesse à laquelle un compute se met en veille après être devenu inactif. Vous pouvez le définir entre 60 secondes (1 minute) et 7 jours. Le délai d'expiration détermine l'équilibre entre :

  • Des délais d'expiration plus courts (de l'ordre de quelques minutes) : une suspension plus rapide réduit les coûts, mais pourrait entraîner des réactivations plus fréquentes pour les charges de travail intermittentes
  • Délais d'attente plus longs (heures à jours) : moins de réactivations améliorent l'expérience utilisateur pour une activité sporadique. Le délai d'expiration par default de 24 heures convient à la plupart des bases de données de production. Vous pouvez prolonger la fenêtre jusqu'à 7 jours maximum lorsque vous souhaitez que le compute reste actif plus longtemps pendant les périodes d'inactivité.

Avantages de la mise à l'échelle à zéro

  • Réduction des coûts : En suspendant les compute inactifs, vous ne payez que le temps d'utilisation réel. Une base de données de développement utilisée 8 heures par jour coûte un tiers de celle d'un compute toujours actif.
  • Déploiement flexible : la mise à l'échelle vers zéro permet le déploiement rentable de plusieurs environnements. Vous pouvez maintenir des environnements de développement, de test, de préproduction et de prévisualisation distincts sans encourir les coûts de compute 24/7 pour chacun.
  • Pas de gestion manuelle : Le système gère automatiquement la suspension et la réactivation, éliminant ainsi le besoin de start et d'arrêter manuellement les computes en fonction des schémas d'utilisation.
  • Configuration préservée : Tous les paramètres de compute, les détails de connexion et les configurations de base de données restent intacts pendant la suspension. Lorsque le compute se réactive, il reprend avec la même configuration.

Configurez la mise à l'échelle à zéro

Monter en charge à zéro peut être activé ou désactivé pour n'importe quel compute. Lorsqu'il est activé, vous configurez le délai d'inactivité qui Trigger la suspension. La valeur par default est de 24 heures, et la plage autorisée est de 60 secondes à 7 jours.

Le délai d'expiration par default de 24 heures convient à la plupart des bases de données, ce qui réduit les coûts pendant les périodes d'inactivité prolongées tout en maintenant les réactivations peu fréquentes. Si votre charge de travail nécessite une disponibilité continue sans latence de Startup, désactivez la mise à l'échelle à zéro pour ce compute. Pour les Branch de développement, des délais d'expiration plus courts, tels que 30 minutes, réduisent davantage les coûts.

Pour des instructions détaillées sur la configuration des paramètres de mise à l'échelle à zéro, consultez Gérer les computes.

Scénarios courants de mise à l'échelle à zéro

Environnements de développement et de test

Les Branch de développement pour tester les modifications de schémas, valider les pipelines de données ou expérimenter de nouvelles fonctionnalités enregistrent généralement une activité intermittente. La mise à l'échelle à zéro suspend automatiquement ces computes le soir, le week-end et entre les sessions de travail, ce qui réduit considérablement les coûts.

Environnements de préproduction et de prévisualisation

Les environnements de préproduction utilisés pour la validation avant le déploiement ou les environnements de prévisualisation créés pour les demandes de tirage (pull requests) restent souvent inactifs entre les cycles de test. La mise à l'échelle à zéro garantit que ces environnements consomment des ressources uniquement pendant les périodes de tests actifs.

Agents et applications d'IA avec des périodes d'inactivité

Les agents IA, les chatbots ou les outils internes qui opèrent selon des heures d'ouverture spécifiques ou qui ont des modèles d'interruption prévisibles peuvent bénéficier de la mise à l'échelle vers zéro. Le compute est suspendu pendant les heures creuses et se réactive automatiquement lorsque les utilisateurs reviennent.

Bases de données d'applications multi-tenant

Les applications servant plusieurs clients peuvent utiliser la mise à l'échelle à zéro pour les bases de données spécifiques aux tenants. Les computes des tenants inactifs se suspendent automatiquement, réduisant ainsi les coûts de compute agrégés pour tous les tenants.

Considérations importantes

Session context Reset

Lorsqu'un compute se suspend et se réactive par la suite, le contexte de session est Reset. Ceci inclut :

  • Statistiques en mémoire et contenu du cache
  • Tables temporaires et instructions préparées
  • Paramètres de configuration spécifiques à la session
  • Pools de connexions et transactions actives

Si votre application nécessite des données de session persistantes, envisagez de désactiver la mise à l'échelle à zéro pour maintenir une disponibilité continue du compute.

Latence de Startup

La courte période de réactivation (généralement quelques centaines de millisecondes) pourrait avoir un impact sur l'expérience utilisateur pour la première query après la suspension. Pour les applications nécessitant des temps de réponse immédiats, vous pouvez :

  • Désactiver Monter en charge à zéro pour les compute toujours disponibles
  • Implémenter le préchauffage de connexion au niveau de l'application
  • Utilisez des périodes de délai d'expiration plus longues pour réduire la fréquence de réactivation.

Comportement de la branch de production

Lorsque vous créez un projet, la Branch production est créée avec la mise à l'échelle à zéro activée par default, avec un délai d'inactivité de 24 heures. Vous pouvez ajuster le délai d'expiration ou désactiver le Monter en charge à zéro pour la Branch de production si votre charge de travail nécessite une disponibilité continue.

Mise à l'échelle à zéro et mise à l'échelle automatique

La mise à l'échelle jusqu'à zéro complète l'autoscaling pour optimiser à la fois les performances et les coûts :

  • Pendant les périodes d'activité : Le dimensionnement automatique ajuste la taille du compute en fonction de la demande de la charge de travail dans votre plage configurée, augmentant la capacité pendant les périodes de forte activité et la réduisant pendant les charges plus légères.
  • Pendant les périodes d'inactivité : après le délai d'inactivité avant mise à l'échelle à zéro, le compute se suspend entièrement et les coûts de compute tombent à zéro, quelle que soit la plage de mise à l'échelle automatique configurée.
  • Lors de la réactivation : le compute redémarre à la taille de dimensionnement automatique minimale (si le dimensionnement automatique est activé), et le dimensionnement automatique ajuste ensuite les ressources en fonction de la nouvelle charge de travail.

Cette combinaison maximise l'efficacité : la mise à l'échelle automatique optimise l'utilisation des ressources pendant l'activité, tandis que la mise à l'échelle jusqu'à zéro élimine les coûts pendant l'inactivité.

Étapes suivantes

  • Configurer les paramètres de mise à l'échelle à zéro : Découvrez comment activer, ajuster ou désactiver la mise à l'échelle à zéro pour vos computes. Voir Dimensionner à zéro.
  • Afficher les métriques de compute : Voyez comment les métriques reflètent les périodes d'inactivité du compute et le comportement de monter en charge jusqu'à zéro. Consultez Tableau de bord des métriques.
  • Autoscaling : Comprenez comment les computes ajustent les ressources pendant les périodes d'activité. Voir Dimensionnement automatique.
  • Branch de base de données : Créez des environnements de base de données isolés pour le développement et les tests. See Branch.