Estimer les exigences relatives à la capacité d'emplacements

Lorsque vous achetez des emplacements réservés dans BigQuery, vous devez estimer le nombre d'emplacements approprié pour votre charge de travail particulière. L'estimateur d'emplacements BigQuery vous aide à gérer la capacité d'emplacements en fonction des métriques de performances historiques.

Vous pouvez utiliser l'estimateur d'emplacements pour vos charges de travail d'édition, de réservation et à la demande afin d'effectuer les tâches suivantes :

Pour les charges de travail d'édition sélectionnées :

  • Afficher les données sur la capacité et l'utilisation des emplacements au cours des 30 derniers jours puis identifier les périodes de pic d'utilisation lors desquelles le nombre d'emplacements utilisés est le plus grand.
  • Afficher les recommandations économiques concernant les emplacements d'engagement et d'autoscaling avec des performances similaires.
  • Afficher vos paramètres de réservation actuels pour une édition spécifique.

Pour les charges de travail de réservation spécifiques :

  • Afficher les données sur la capacité et l'utilisation des emplacements au cours des 30 derniers jours puis identifier les périodes de pic d'utilisation lors desquelles le nombre d'emplacements utilisés est le plus grand.
  • afficher les centiles de latence des tâches (P90, P95, etc.) pour comprendre les performances des requêtes ;
  • Modélisez l'impact de l'augmentation ou de la réduction du nombre maximal d'emplacements de réservation sur les performances.

Pour les charges de travail de facturation à la demande :

  • Afficher les données d'utilisation des emplacements à la demande au cours des 30 derniers jours, pour l'ensemble de l'organisation ou pour un projet individuel.
  • Afficher les recommandations d'optimisation des coûts pour les engagements et les emplacements avec autoscaling offrant des performances similaires si vous passez à l'édition Enterprise.

Les clients de l'édition Enterprise, de l'édition Enterprise Plus ou de la facturation à la demande peuvent utiliser l'outil de recommandation d'emplacements BigQuery pour afficher l'utilisation des emplacements, optimiser les engagements et améliorer les performances. Pour en savoir plus, consultez la section Afficher les recommandations d'emplacements d'édition.

Limites

  • Les données sont limitées aux 30 derniers jours.
  • Les modèles n'incluent pas les attributions ML_EXTERNAL. Si un grand pourcentage de vos emplacements est utilisé pour les attributions ML_EXTERNAL, les résultats modélisés seront moins précis.

Avant de commencer

Attribuez aux utilisateurs des rôles IAM (Identity and Access Management) incluant les autorisations nécessaires pour effectuer l'ensemble des tâches du présent document.

Autorisations requises

Pour utiliser l'outil d'estimation des emplacements pour les données de réservation, vous avez besoin des autorisations IAM suivantes sur le projet d'administration :

  • bigquery.reservations.list
  • bigquery.reservationAssignments.list
  • bigquery.capacityCommitments.list

Chacun des rôles IAM prédéfinis suivants inclut les autorisations dont vous avez besoin pour utiliser l'estimateur d'emplacement :

  • roles/bigquery.admin
  • roles/bigquery.resourceAdmin
  • roles/bigquery.resourceEditor
  • roles/bigquery.resourceViewer
  • roles/bigquery.user

Pour utiliser l'outil d'estimation des emplacements pour les données d'utilisation à la demande, vous devez activer l'API Reservations sur un projet que vous souhaitez utiliser comme projet d'administration pour gérer les réservations. Outre les autorisations ci-dessus, vous devez également disposer de l'une des autorisations IAM suivantes sur votre organisation afin de pouvoir voir les données au niveau de l'organisation, ou sur le projet afin de pouvoir voir les données au niveau du projet :

  • bigquery.jobs.listExecutionMetadata (ne peut être appliqué qu'au niveau de l'organisation)
  • bigquery.jobs.listAll (peut être appliqué au niveau de l'organisation ou du projet)

Chacun des rôles IAM prédéfinis suivants inclut les autorisations dont vous avez besoin pour utiliser l'estimateur d'emplacement :

  • roles/bigquery.admin
  • roles/bigquery.resourceAdmin
  • roles/bigquery.resourceEditor
  • roles/bigquery.resourceViewer

Pour afficher les recommandations d'emplacements avec engagement, vous devez également disposer des autorisations décrites dans la section Afficher les recommandations d'emplacements d'édition.

Pour en savoir plus sur les rôles IAM dans BigQuery, consultez la page Rôles prédéfinis et autorisations.

Afficher la capacité et l'utilisation des emplacements

Pour afficher la capacité et l'utilisation des emplacements au fil du temps, accédez à l'estimateur d'emplacements :

  1. Dans la console Google Cloud, ouvrez la page "BigQuery".

    Accéder à BigQuery

  2. Sélectionnez votre projet d'administration.

    1. Cliquez sur la liste déroulante Sélectionner située en haut de la page.
    2. Sélectionnez votre projet dans la fenêtre Sélectionner qui s'affiche.
  3. Dans le panneau de navigation, accédez à la section Gestion de la capacité.

  4. Cliquez sur l'onglet Estimateur d'emplacements.

Le graphique d'utilisation indique la capacité et l'utilisation des emplacements au cours des 30 derniers jours, avec une précision horaire.

L'onglet Consommation et utilisation par pourcentage affiche l'utilisation des emplacements sous forme de pourcentage d'utilisation des emplacements par rapport au nombre maximal d'emplacements.

Pourcentage d'utilisation

L'onglet Consommation et utilisation par capacité affiche le nombre maximum d'emplacements et l'utilisation sous forme de valeurs absolues.

Utilisation et capacité

Vous pouvez choisir une édition ou une option à la demande dans la liste déroulante Source afin d'afficher les statistiques pour différents champs d'application. Sélectionner une édition permet de remplir le menu déroulant Réservations avec des réservations pertinentes.

Pour les options à la demande, vous pouvez choisir un projet individuel ou l'ensemble de l'organisation dans la liste déroulante Recommandations pour, sous réserve de disposer des autorisations au niveau de l'organisation. La page "Estimateur d'emplacements" n'affiche que les informations au niveau du projet si vous disposez seulement d'autorisations au niveau du projet.

Options à la demande de l'estimateur d'emplacements

Les statistiques de l'onglet Consommation et utilisation par capacité peuvent varier légèrement en fonction du champ d'application :

  • Pour la source d'édition, il indique le nombre maximal d'emplacements disponibles pour l'ensemble de l'édition, les emplacements d'engagement, la somme des emplacements de base, l'utilisation moyenne des emplacements, l'utilisation des emplacements P99 et l'utilisation des emplacements P50.
  • Pour une réservation spécifique, il indique le nombre maximal d'emplacements de réservation, les emplacements de référence, l'utilisation moyenne des emplacements, l'utilisation des emplacements P99 et l'utilisation des emplacements P50.
  • Pour une source à la demande, il indique l'utilisation moyenne des emplacements, l'utilisation des emplacements P99 et l'utilisation des emplacements P50.

Modéliser les performances des emplacements

Lorsqu'une réservation est sélectionnée, vous pouvez utiliser l'estimateur d'emplacements pour afficher les données de performances des jobs et modéliser l'effet d'une modification du nombre maximal d'emplacements. L'estimateur d'emplacements vous permet de modéliser l'évolution des performances à différents niveaux de capacité allant de 80 à 150 % du nombre maximal d'emplacements actuel. L'option de décrémentation ne peut pas être inférieure à 80 % de la quantité minimale pour le nombre maximal d'emplacements dans la période.

Les modèles supposent une répétition du modèle d'utilisation des 30 jours précédents, où tout reste identique, à l'exception du nombre d'emplacements.

L'amélioration des performances estimée est basée sur plusieurs facteurs. Les facteurs les plus importants sont le nombre d'emplacements dans le modèle et la proportion de tâches dans chaque bucket de centiles qui ont été exécutés pendant les périodes de pointe par rapport aux périodes régulières. Les périodes de pointe correspondent aux durées pendant lesquelles presque tous les emplacements ont été utilisés. Les tâches exécutées pendant ces périodes sont les plus affectées par les conflits d'emplacements. Par conséquent, les emplacements supplémentaires offrent le meilleur gain de performances. Par conséquent, différents buckets de tâches peuvent voir des effets différents de la même augmentation de la capacité, en fonction de leur date d'exécution.

Pour modéliser les performances des emplacements, procédez comme suit :

  1. Dans la console Google Cloud, ouvrez la page "BigQuery".

    Accéder à BigQuery

  2. Sélectionnez votre projet d'administration.

    1. Cliquez sur la liste déroulante Sélectionner située en haut de la page.
    2. Sélectionnez votre projet dans la fenêtre Sélectionner qui s'affiche.
  3. Dans le panneau de navigation, accédez à la section Gestion de la capacité.

  4. Cliquez sur l'onglet Estimateur d'emplacements.

  5. Dans la liste déroulante Réservation, sélectionnez une réservation spécifique. Le modèle inclut le nombre d'emplacements inactifs que la réservation a pu emprunter à un moment donné.

  6. Dans la liste déroulante Modèle avec emplacements supplémentaires en plus du nombre maximal d'emplacements, sélectionnez une ou plusieurs valeurs d'emplacements à modéliser, puis cliquez sur OK.

Le tableau sous Modifications des performances des tâches avec des emplacements supplémentaires affiche les données de performances des tâches des 30 derniers jours, ainsi que l'estimation des performances en termes d'ajout ou de suppression d'emplacements. Les données sont regroupées en pourcentages par durée de tâche pour toutes les tâches exécutées pendant la période sélectionnée. La colonne indiquée par l'icône représentant une ampoule correspond à la recommandation qui améliore les performances de la réservation sélectionnée.

Modélisation d'emplacements

Les données de performance sont ventilées par centile. La table divise les données au maximum sur 12 buckets : P10 à P90, plus P95, P99 et P100. Le bucket P100 représente les 1 % de tâches les plus longues dont l'exécution est la plus longue ; P99 inclut les 96 % à 99 % les plus élevés. P95 inclut les 91 à 95 % les plus élevés. P90 inclut 81 % à 90 %. et ainsi de suite. En fonction des données, la table peut regrouper les données dans moins de buckets. Dans ce cas, la table contient moins de lignes.

Pour chaque centile de bucket, le tableau affiche les informations suivantes :

  • Centile de durée de la tâche : centile de bucket de cette ligne.
  • Durée moyenne d'une tâche : durée moyenne d'exécution des tâches de ce centile de bucket.
  • Nombre de tâches : nombre de tâches dans ce centile de bucket.
  • Pour chaque modèle, la durée moyenne estimée des tâches dans ce centile.

Le tableau fournit également une estimation de la statistique "Variation après 30 jours" pour chaque modèle. Cette valeur correspond à la variation estimée des heures totales de traitement des tâches dans l'historique de 30 jours pour des capacités d'emplacements différentes.

Comprendre les résultats de la modélisation avec l'utilisation des emplacements

Pour les réservations à capacité fixe, si le partage d'emplacements inactifs est activé, les jobs dans cette réservation peuvent emprunter des emplacements inactifs auprès d'autres réservations. Par conséquent, l'utilisation peut dépasser 100 % des emplacements alloués. Si une réservation emprunte systématiquement des emplacements inactifs auprès d'autres réservations, cela peut être un signal pour augmenter la taille de la réservation. En revanche, si une réservation utilise rarement sa capacité totale, cette réservation peut s'avérer trop importante.

Les réservations qui utilisent l'autoscaling utilisent et ajoutent des emplacements selon la priorité suivante :

  1. Nombre d'emplacements de base.
  2. Partage d'emplacements inactifs (si cette option est activée).
  3. Emplacements liés à l'autoscaling.

Si une réservation avec autoscaling atteint régulièrement la limite de capacité des emplacements avec autoscaling, cela peut être un signal pour augmenter le nombre maximal d'emplacements de réservation. Pour en savoir plus sur l'affichage de l'utilisation des emplacements, consultez la section Afficher les graphiques des ressources d'administration.

Tarification

Vous pouvez utiliser l'outil d'estimation des emplacements sans frais.