Créer des quotas de requêtes personnalisés
Ce document explique comment définir ou modifier des quotas de requêtes personnalisés pour maîtriser les coûts. Pour savoir comment les analystes BigQuery peuvent estimer et contrôler les coûts, consultez Estimer et contrôler les coûts.
Si vous avez plusieurs projets et utilisateurs BigQuery, vous pouvez maîtriser vos coûts en demandant un quota personnalisé qui limite le volume des données traitées chaque jour. Les quotas quotidiens sont réinitialisés à minuit, heure du Pacifique.
Les quotas personnalisés sont préventifs. Vous ne pourrez donc pas exécuter une requête de 11 To si vous disposez d'un quota de 10 To. Créer un quota personnalisé pour les données traitées vous permet de maîtriser vos coûts au niveau du projet ou de l'utilisateur.
Pour définir des contrôles de coûts personnalisés, vous pouvez modifier un ou les deux quotas de requêtes suivants :
QueryUsagePerDay
: les quotas personnalisés au niveau du projet limitent l'utilisation globale de tous les utilisateurs de ce projet.QueryUsagePerUserPerDay
: le quota personnalisé au niveau de l'utilisateur est appliqué séparément à tous les utilisateurs et comptes de service d'un projet.
Pour en savoir plus sur les quotas BigQuery que vous pouvez définir, consultez Quotas et limites.
Rôle requis
Pour obtenir l'autorisation dont vous avez besoin pour modifier votre quota, demandez à votre administrateur de vous accorder le rôle IAM Administrateur de quotas (role/servicemanagement.quotaAdmin
) sur votre projet.
Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.
Ce rôle prédéfini contient l'autorisation serviceusage.quotas.update
, qui est requise pour modifier votre quota.
Vous pouvez également obtenir cette autorisation avec des rôles personnalisés ou d'autres rôles prédéfinis.
Définir ou modifier des quotas personnalisés
Vous pouvez définir un quota personnalisé ou modifier un quota personnalisé existant pour tout quota affiché sur la page Quotas et limites du système de la console Google Cloud . Lorsque vous demandez un quota inférieur, la modification prend effet en quelques minutes. Si vous demandez un quota plus élevé, votre demande est soumise à un processus d'approbation, qui peut prendre plus de temps. Pour en savoir plus, consultez Demander un ajustement de quota.
Pour définir ou modifier un contrôle des coûts personnalisé, par exemple en limitant la quantité de données BigQuery pouvant être traitées chaque jour, procédez comme suit :
Dans la console Google Cloud , ouvrez la page IAM et administration > Quotas et limites du système :
Utilisez le filtre Service dans le champ de recherche Filtre pour filtrer l'API BigQuery.
Sélectionnez les quotas que vous souhaitez ajuster. Par exemple, pour limiter la quantité de données pouvant être interrogées par jour au niveau du projet et de l'utilisateur, sélectionnez Utilisation des requêtes par jour et Utilisation des requêtes par jour et par utilisateur. Vous devrez peut-être parcourir la liste pour les trouver. Une fois que vous avez sélectionné un quota, une barre d'outils s'affiche.
Dans la barre d'outils, cliquez sur
Modifier. La boîte de dialogue Modifications de quotas s'ouvre.Si l'option Illimité est sélectionnée, désélectionnez-la.
Saisissez la valeur de quota souhaitée en tébioctets dans le champ Nouvelle valeur.
Cliquez sur OK.
Cliquez sur Envoyer la requête.
Pour en savoir plus sur l'affichage et la gestion des quotas, consultez Afficher et gérer les quotas.
Messages d'erreur renvoyés
Lorsque vous avez défini un quota personnalisé, BigQuery vous renvoie une erreur dès que vous le dépassez :
Si vous dépassez un quota personnalisé au niveau du projet, BigQuery renvoie l'erreur
usageQuotaExceeded
:Custom quota exceeded: Your usage exceeded the custom quota for QueryUsagePerDay, which is set by your administrator. For more information, see https://cloud.google.com/bigquery/cost-controls
Si un utilisateur dépasse un quota personnalisé au niveau de l'utilisateur, BigQuery renvoie une erreur
usageQuotaExceeded
avec un message d'erreur différent :Custom quota exceeded: Your usage exceeded the custom quota for QueryUsagePerUserPerDay, which is set by your administrator. For more information, see https://cloud.google.com/bigquery/cost-controls
Vous pouvez exécuter votre requête à partir d'un autre projet qui a accès à vos ensembles de données, et qui n'est pas soumis à un quota personnalisé ou ne l'a pas encore dépassé.
Exemple
Supposons que vous définissiez les quotas personnalisés suivants pour un projet avec 10 utilisateurs, dont un compte de service :
- Au niveau du projet : 50 To par jour
- Au niveau de l'utilisateur : 10 To par jour
Les quotas personnalisés au niveau du projet limitent l'utilisation globale de tous les utilisateurs de ce projet. Les quotas personnalisés au niveau de l'utilisateur sont appliqués séparément à chaque compte utilisateur ou compte de service dans un projet.
Le tableau suivant décrit le quota restant à mesure que les 10 utilisateurs exécutent des requêtes tout au long de la journée.
Utilisation | Quota restant |
---|---|
Au niveau du projet : il reste 0 To. Au niveau de l'utilisateur : il reste 6 To par utilisateur, mais seulement jusqu'à 10 To au total. |
|
Le compte de service exécute ensuite des requêtes à hauteur de 6 To. | Au niveau du projet : il reste 4 To. Au niveau de l'utilisateur : le compte de service ne peut plus utiliser BigQuery. Il reste 6 To par personne pour les autres utilisateurs, mais seulement jusqu'à 4 To au total. |
Un utilisateur exécute ensuite des requêtes à hauteur de 4 To. | Au niveau du projet : il reste 0 To. Au niveau de l'utilisateur : il reste des téraoctets, mais personne ne peut utiliser BigQuery, car le quota au niveau du projet a été dépassé. |
Étant donné que le quota est atteint, BigQuery cesse de fonctionner pour toutes les personnes impliquées dans ce projet.
Étapes suivantes
- Découvrez les tarifs de BigQuery.
- Découvrez comment estimer et contrôler les coûts.
- Découvrez comment analyser les journaux d'audit BigQuery pour surveiller les coûts des requêtes et l'utilisation de BigQuery.
Pour en savoir plus sur la facturation, les alertes et la visualisation des données, consultez les articles suivants :