Présentation de la gestion des charges de travail

La gestion des charges de travail BigQuery vous permet de contrôler les ressources et les fonctionnalités disponibles pour l'analyse de données dans votre organisation, ainsi que de définir des modèles de facturation. Mesurée en emplacements, la capacité de calcul BigQuery peut être souscrite dans des réservations et des engagements que vous attribuez ensuite à votre organisation pour effectuer des tâches.

BigQuery propose deux modèles de gestion des charges de travail pour l'analyse des données (on parle également de calcul). Avec la facturation à la demande, vous payez pour les octets traités lorsque vous interrogez vos données. Avec la facturation basée sur la capacité, vous réservez de la capacité de traitement pour les charges de travail avec la possibilité d'augmenter ou de réduire automatiquement la capacité.

Vous pouvez basculer entre les modèles de facturation à la demande et basés sur la capacité à tout moment, ou vous pouvez choisir de combiner les deux modèles. Le modèle basé sur la capacité vous confère un contrôle explicite sur les emplacements et la capacité de traitement, contrairement au modèle à la demande.

Compromis des réservations.

Les modèles suivants définissent la manière dont vous gérez les charges de travail et comment vous êtes facturé:

  • Tarifs à la demande : par défaut, vous êtes facturé pour les données analysées par vos requêtes. Vous disposez d'une capacité de traitement de requêtes fixe par projet et vous ne payez que pour le nombre d'octets traités lorsque vous utilisez cette capacité.

  • Tarifs en fonction de la capacité : vous achetez une capacité de traitement de requêtes dédiée ou en autoscaling à prix réduit. La capacité est mesurée en emplacements que vous allouez à des charges de travail ou à certaines parties de votre organisation. La facturation basée sur la capacité vous permet d'utiliser des engagements afin de bénéficier d'un niveau de capacité de traitement fixe sur une période d'un ou trois ans, à prix réduit. Les octets traités en utilisant le modèle basé sur la capacité ne sont soumis à aucuns frais. Les avantages de la tarification basée sur la capacité sont les suivants :

    • Coût La bonne pratique consiste à définir votre utilisation mensuelle minimale d'analyse afin de l'utiliser comme capacité BigQuery avec engagement, dans le but de réduire les coûts.
    • Prévisibilité. Les emplacements basés sur la capacité permettent d'avoir des frais mensuels plus réguliers.
    • Achat centralisé : Vous pouvez acheter des emplacements et les allouer à l'ensemble de votre organisation plutôt qu'individuellement à chaque projet utilisant BigQuery.
    • Flexibilité. Vous choisissez la capacité à allouer à une charge de travail, ou bien vous laissez BigQuery définir un scaling automatique de la capacité en fonction des besoins liés à vos charges de travail. Vous êtes facturé par incréments d'une seconde avec une période d'utilisation minimale d'une minute.

La création d'un engagement de capacité est facultative lorsque vous utilisez des réservations utilisant des éditions BigQuery, mais elle peut réduire les coûts des charges de travail stables.

Vous pouvez combiner les modèles de facturation. Par exemple, vous pouvez exécuter certaines charges de travail avec une tarification à la demande et d'autres avec la tarification en fonction de la capacité. Étant donné que le modèle de facturation est spécifié par projet, cela suppose d'utiliser plusieurs projets pour vos jobs de requête. Pour mieux comprendre la tarification de BigQuery pour les réservations, consultez les pages suivantes :

Emplacements

La capacité de traitement dans BigQuery est mesurée en emplacements. Les emplacements représentent les processeurs virtuels utilisés pour interroger les données. En général, l'accès à davantage d'emplacements vous permet d'exécuter plus de requêtes simultanées, et vos requêtes complexes peuvent s'exécuter plus rapidement. Le modèle de tarification basée sur la capacité vous permet de réserver un volume d'emplacements. Vos requêtes sont traitées dans les limites de cette capacité, et vous payez pour celle-ci en permanence à chaque seconde où elle est déployée. Par exemple, si vous achetez 2 000 emplacements BigQuery, vos requêtes sont limitées à une utilisation totale de 2 000 processeurs virtuels à un moment donné. Vous disposez de cette capacité jusqu'à ce que vous la supprimiez, et vous payez pour 2 000 emplacements jusqu'à leur suppression.

Pour en savoir plus sur les emplacements et leur utilisation, consultez la page Comprendre les emplacements.

Quotas d'emplacements

Les quotas d'emplacements fournissent une protection pour BigQuery. Le type de quota dépend du modèle de tarification des emplacements :

  • Modèle de tarification à la demande : le quota d'emplacements par projet avec une capacité d'utilisation intensive temporaire est suffisant pour la plupart des utilisateurs. En fonction de vos charges de travail, l'accès à un plus grand nombre d'emplacements peut améliorer les performances des requêtes. Pour vérifier le nombre d'emplacements utilisés par votre compte, consultez la page Surveiller BigQuery.

  • Modèle de tarification basé sur la capacité : les quotas et limites de réservation définissent le nombre maximal d'emplacements que vous pouvez acheter dans un même emplacement géographique. Vous ne payez que pour vos réservations et vos engagements, pas pour les quotas.

Pour savoir comment augmenter votre quota d'emplacements, consultez la page Demander une augmentation de quota.

Réservations

Les emplacements sont achetés, attribués à des ressources et allouées aux jobs des pools appelés réservations. Les réservations vous permettent d'attribuer les emplacements d'une manière adaptée à votre organisation. Par exemple, vous pouvez créer une réservation appelée prod pour les charges de travail de production, et une réservation distincte nommée test pour les tests, afin que les tâches de test ne soient pas en concurrence pour les ressources de charges de travail de production. Vous pouvez également créer des réservations pour différents départements dans votre organisation.

Si vous achetez des engagements d'emplacements avant de créer une réservation, une réservation nommée default est créée automatiquement pour plus de commodité. La réservation default n'a pas de comportement spécial. Vous pouvez créer des réservations supplémentaires si nécessaire ou utiliser la réservation par défaut.

Pour en savoir plus sur les tarifs, consultez les sections Tarifs basés sur la capacité et Tarifs à la demande.

Limites de réservation

  • Les réservations que vous créez ne sont pas partagées avec d'autres organisations.
  • Vous devez créer une réservation distincte ainsi qu'un projet d'administration distinct pour chaque organisation.
  • Chaque organisation peut avoir jusqu'à cinq projets d'administration avec des engagements actifs dans un seul emplacement.
  • La capacité d'inactivité ne peut pas être partagée entre des organisations ou entre différents projets d'administration au sein d'une même organisation.
  • Les engagements sont une ressource régionale. Les engagements acquis dans une région ou un ensemble multirégional ne peuvent pas être utilisés dans une autre région ou un autre ensemble multirégional. Les engagements ne peuvent pas être déplacés d'une région à une autre ou d'une région à une autre.
  • Les engagements acquis dans un projet d'administration ne peuvent pas être transférés vers un autre projet d'administration.
  • Les engagements acquis avec une édition ne peuvent pas être utilisés avec des réservations d'une autre édition.
  • Les emplacements inactifs ne sont pas partagés entre les réservations d'éditions différentes.
  • Les emplacements avec autoscaling ne peuvent pas être partagés, car ils subissent un scaling à la baisse lorsqu'ils ne sont plus nécessaires.

Attributions de réservation

Pour utiliser les emplacements que vous achetez, vous devez attribuer un ou plusieurs projets, dossiers ou organisations à une réservation. Une réservation est le niveau le plus bas auquel vous pouvez spécifier une attribution d'emplacements. Lorsqu'un job est exécuté dans un projet, elle utilise les emplacements de la réservation qui lui est attribuée. Les ressources peuvent hériter des attributions de leurs parents dans la hiérarchie des ressources. Même si un projet n'est pas attribué à une réservation, il hérite de l'attribution du dossier ou de l'organisation parent, le cas échéant. Si un projet n'est associé à aucune réservation (héritée ou non), la tâche utilise la tarification à la demande. Pour en savoir plus sur la hiérarchie des ressources, consultez la page Organiser les ressources BigQuery.

Des ressources peuvent être attribuées à None pour représenter l'absence d'attribution. Les projets dont l'attribution est None utilisent toujours la tarification à la demande. Un cas d'utilisation courant des attributions None consiste à attribuer une organisation à une réservation, puis à utiliser None pour désactiver certains projets ou dossiers de cette réservation. Pour en savoir plus, consultez la section Définir l'attribution None pour un projet.

Lorsque vous créez une attribution, vous spécifiez son type de tâche :

  • QUERY : utilisez cette réservation pour les tâches de requête, y compris les requêtes SQL, LDD, LMD et BigQuery ML.

  • PIPELINE : utilisez cette réservation pour les jobs de chargement et d'extraction.

    Par défaut, les tâches de chargement et d'extraction sont gratuites et utilisent un pool d'emplacements partagé. BigQuery ne garantit pas la disponibilité de capacité pour ce pool partagé ni le débit indiqué. Si vous chargez de grandes quantités de données, votre tâche risque de devoir attendre que des emplacements soient disponibles. Dans ce cas, vous pouvez acheter des emplacements dédiés et leur attribuer des tâches PIPELINE. Il est recommandé de créer une réservation dédiée supplémentaire avec l'option Ignorer les emplacements inactifs activée. Pour en savoir plus sur les emplacements inactifs, consultez la section Emplacements inactifs.

    Lorsque des tâches de chargement et d'extraction sont attribuées à une réservation, elles perdent l'accès au pool gratuit. Vous devez surveiller l'utilisation des ressources et les tâches pour vous assurer que vos réservations ont suffisamment de capacité pour être plus performantes que le pool gratuit.

  • BACKGROUND : utilisez cette réservation lorsque vous choisissez d'utiliser votre propre réservation pour exécuter vos jobs de gestion des index de recherche BigQuery ou vos jobs en arrière-plan de capture de données modifiées (CDC) de BigQuery. Utilisez également cette réservation lorsque vous répliquez des bases de données sources vers BigQuery avec les opérations d'application en arrière-plan de Datastream. Les réservations BACKGROUND ne sont pas disponibles dans l'édition Standard.

  • ML_EXTERNAL : utilisez cette réservation pour les requêtes BigQuery ML, qui utilisent des services externes à BigQuery. Pour en savoir plus, consultez la section Attribuer des emplacements aux charges de travail BigQuery ML. Les réservations ML_EXTERNAL ne sont pas disponibles dans l'édition Standard.

Vous ne pouvez pas allouer d'emplacements à des attributions spécifiques. Le programmeur BigQuery gère l'allocation d'emplacements pour les attributions dans une réservation. Pour en savoir plus sur l'utilisation des emplacements, consultez la page Allocation d'emplacements dans une réservation.

Comprendre la gestion des charges de travail

Les réservations BigQuery sont des ressources à l'échelle de l'organisation qui appartiennent généralement à un projet, mais qui peuvent être utilisées par d'autres projets au sein de l'organisation. Vous achetez des réservations de manière centralisée afin de les utiliser dans l'ensemble de votre organisation. Vous pouvez demander à certains services ou divisions de gérer leurs réservations en achetant des engagements de capacité et en les attribuant à ce service ou à cette division. Le projet d'administration est associé à un compte de facturation Cloud Billing, qui est facturé en fonction de la capacité.

Vous pouvez utiliser une organisation Google Cloud distincte pour chacun de vos services ou divisions. Dans ce scénario, vous définissez un projet d'administration pour chaque service et gérez les réservations pour chaque service à partir du projet d'administration correspondant. Les capacités engagées ou inactives ne sont donc pas partagées entre les organisations.

Les emplacements inactifs et non alloués ne sont partagés qu'entre les réservations créées dans le même projet d'administration et dans la même édition. Si vous utilisez plusieurs projets d'administration, les emplacements ne sont pas partagés entre les réservations dans les différents projets d'administration.

Administrer les charges de travail de l'organisation

Lorsque vous créez des engagements et des réservations, ils sont associés à un projet Google Cloud. Ce projet gère les ressources BigQuery Reservations et constitue la principale source de facturation pour ces ressources. Il ne doit pas nécessairement être identique à celui qui contient vos tâches BigQuery.

Il est recommandé de créer un projet dédié aux ressources de réservation. Ce projet est appelé projet d'administration, car il centralise la facturation et la gestion de vos engagements. Attribuez un nom descriptif à ce projet, tel que bq-COMPANY_NAME-admin. Créez ensuite un ou plusieurs projets distincts pour stocker vos jobs BigQuery.

Seuls les projets appartenant à la même ressource Organisation que le projet d'administration peuvent être attribués à une réservation. Si le projet d'administration ne fait pas partie d'une organisation, seul ce projet peut utiliser les emplacements qui lui sont attribués.

Les emplacements sur engagement sont facturés au projet d'administration. Les projets qui utilisent des emplacements appartenant à des réservations du projet d'administration ne sont pas facturés pour ces emplacements. Vous pouvez souscrire plusieurs types de forfaits (par exemple, des engagements d'un an et de trois ans) et placer les emplacements dans le même projet d'administration.

Il est recommandé de créer un projet d'administration pour toutes les réservations. L'utilisation d'un seul projet d'administration simplifie la gestion de la facturation et l'allocation des emplacements. Vous ne devez activer l'API BigQuery Reservations que sur le projet d'administration, afin que tous les engagements soient gérés via ce projet.

Gestion de la charge de travail et des services

Pour isoler votre capacité engagée répartie entre les charges de travail, les équipes ou les services, vous pouvez créer des réservations supplémentaires et attribuer des projets à ces réservations à l'aide de BigQuery Reservations. Chaque réservation correspond à un pool isolé de ressources, qui présente l'avantage de tirer parti de la capacité inutilisée sur l'ensemble de votre organisation.

Par exemple, imaginons que vous ayez une capacité totale engagée de 1 000 emplacements et trois types de charges de travail : data science, ELT et informatique décisionnelle.

  • Vous pouvez créer une réservation ds avec 500 emplacements et attribuer tous les projets Google Cloud pertinents à la réservation ds.
  • Vous pouvez créer une réservation elt avec 300 emplacements et attribuer les projets que vous utilisez pour les charges de travail ELT à la réservation elt.
  • Vous pouvez créer une réservation bi avec 200 emplacements et attribuer les projets associés à vos outils de veille stratégique à la réservation bi.

Supprimer des engagements.

Au lieu de répartir votre capacité entre les charges de travail, vous pouvez choisir de créer des réservations dédiées à des équipes ou des services spécifiques.

Gérer des réservations dans différentes régions

Les réservations sont une ressource régionale. Les emplacements achetés et les réservations créées dans une région ne peuvent pas être utilisés dans une autre région. Les projets, dossiers et organisations peuvent tous être attribués à des réservations dans une région et s'exécuter à la demande dans une autre. Pour gérer les réservations dans une autre région, procédez comme suit :

  1. Dans la console Google Cloud, accédez à la page BigQuery.

    Accéder à BigQuery

  2. Dans le menu de navigation, cliquez sur Gestion de la capacité.

  3. Dans la liste Emplacement, sélectionnez la région dans laquelle vous souhaitez gérer les réservations.

    Après avoir sélectionné une région, vous pouvez créer des réservations, créer des engagements et attribuer un projet à une réservation.

Engagements

Un engagement de capacité est un achat d'emplacements par incréments de 100 emplacements pendant une durée minimale, jusqu'à votre quota d'emplacements. Les engagements de capacité sont facultatifs pour les réservations, mais peuvent vous permettre de réaliser des économies sur les charges de travail stables. Vous pouvez créer autant d'engagements que vous le souhaitez. Vous êtes facturé à partir du moment où votre engagement est accepté. Pour obtenir des informations sur la tarification actuelle, consultez la section Tarifs en fonction de l'engagement de capacité.

  • Engagement sur trois ans. Vous souscrivez un engagement de trois ans. Passé ce délai, vous pouvez choisir de le renouveler ou de passer à un type d'engagement différent.

  • Engagement annuel. Vous souscrivez un engagement de 365 jours. Passé ce délai, vous pouvez choisir de le renouveler ou de passer à un type d'engagement différent.

Quel que soit le forfait que vous choisissez, vos emplacements n'expirent pas à la fin de la période d'engagement. Vous conservez les emplacements, et ils vous sont facturés jusqu'à ce que vous supprimiez l'engagement. Vous pouvez également changer de type de forfait après la durée minimale. Après l'expiration du forfait, vous pouvez supprimer l'engagement à tout moment ou continuer à payer selon les conditions du forfait de renouvellement. Pour plus d'informations sur la suppression des engagements, consultez la section Supprimer un engagement.

Le forfait annuel ou de trois ans vous est facturé chaque mois. Cependant, votre engagement financier s'applique à la période d'engagement entière et ne peut pas être annulé chaque mois. Votre utilisation est mise à jour quotidiennement dans le rapport de facturation et peut être affichée à tout moment.

L'attribution des emplacements dépend de la disponibilité en capacité. Lorsque vous tentez d'acheter des engagements d'emplacements, vous ne pouvez pas être sûr que vous les obtiendrez. Cependant, une fois que votre engagement est accepté, votre capacité est garantie jusqu'à ce que vous supprimiez l'engagement.

Engagements de renouvellement

Vous sélectionnez un forfait de renouvellement lorsque vous souscrivez un forfait d'engagement. Vous pouvez modifier le forfait de renouvellement d'un engagement à tout moment jusqu'à son expiration. Les plans de renouvellement suivants sont disponibles :

  • Aucun : Une fois l'engagement terminé, il est supprimé. Les réservations ne sont pas affectées.
  • Annuel : Une fois l'engagement terminé, il est renouvelé pour un an.
  • Sur trois ans À la fin de la période, votre engagement est renouvelé pour trois ans.

Si vous utilisez le modèle de capacité d'autoscaling, vous pouvez renouveler le forfait annuel ou sur trois ans pour un an ou trois ans. Pour en savoir plus sur l'achat et le renouvellement des engagements, consultez la section Créer un engagement de capacité.

Par exemple, si vous avez souscrit un engagement annuel à 18h le 5 octobre 2019, les frais commencent à vous être facturés à cet instant. Vous pouvez supprimer ou renouveler l'engagement après 18h00 le 4 octobre 2020, sachant que 2020 est une année bissextile. Vous pouvez modifier les forfaits de renouvellement avant le 4 octobre 2020 à 18:00 comme suit :

  • Si vous choisissez de renouveler votre engagement annuel, votre engagement est renouvelé pour une année supplémentaire le 4 octobre 2020 à 18h00.
  • Si vous choisissez de renouveler votre engagement sur trois ans, il est renouvelé pour une période de trois ans le 4 octobre 2020 à 18h00.

Expiration des engagements

Une fois que vous avez créé un engagement, il n'est supprimé qu'après son expiration. Pour supprimer un engagement annuel ou de trois ans, définissez son forfait de renouvellement sur NONE. Une fois l'engagement expiré, il est automatiquement supprimé. Pour en savoir plus sur l'expiration des engagements, consultez la section Expiration des engagements.

Si vous avez souscrit un engagement par accident ou commis une erreur lors de sa configuration, contactez l'assistance Cloud Billing pour obtenir de l'aide.

Étapes suivantes