Gérer les tâches
Après avoir envoyé une tâche BigQuery, vous pouvezafficher les détails de la tâche ,répertorier les tâches, annuler une tâche, répéter une tâche ou supprimer les métadonnées de tâches.
Une fois envoyée, une tâche peut être déterminée par l'un des états suivants :
PENDING
: la tâche est planifiée et attend d'être exécutée.RUNNING
: la tâche est en cours d'exécution.DONE
: la tâche est terminée. Si la tâche est terminée sans erreur, BigQuery signale cet état commeSUCCESS
. Si la tâche se termine avec des erreurs, BigQuery signale cet état commeFAILURE
.
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. Les autorisations requises pour effectuer une tâche (le cas échéant) sont répertoriées dans la section "Autorisations requises" de la tâche.
Afficher les informations sur la tâche
Vous pouvez afficher les détails du job à l'aide de la console Google Cloud, de l'outil de ligne de commande bq, de l'API ou des bibliothèques clientes. Les détails incluent les données et les métadonnées, telles que le type de job, l'état du job et l'utilisateur qui l'a créée.
Autorisations requises
Pour afficher les détails d'une tâche, vous devez disposer de l'autorisation IAM bigquery.jobs.get
.
Vous disposez automatiquement de cette autorisation pour les tâches que vous créez.
Chacun des rôles IAM prédéfinis suivants inclut les autorisations dont vous avez besoin pour afficher les détails de la tâche :
roles/bigquery.admin
(vous permet d'afficher les détails de toutes les tâches du projet)roles/bigquery.user
(vous permet d'afficher les détails de vos tâches)roles/bigquery.jobUser
(vous permet d'afficher les détails de vos tâches)
Pour en savoir plus sur les rôles et les autorisations IAM dans BigQuery, consultez la page Rôles prédéfinis et autorisations.
Afficher les informations sur la tâche
Pour afficher les détails d'une tâche, procédez comme suit :
Console
Accédez à la page BigQuery.
Développez le volet Historique des jobs.
Sélectionnez le type d'historique des tâches à afficher :
- Pour afficher des informations sur vos tâches récentes, cliquez sur Historique personnel.
- Pour afficher les informations sur les tâches récentes de votre projet, cliquez sur Historique du projet.
Pour afficher les détails d'une tâche, cliquez sur la tâche.
bq
Exécutez la commande bq show
avec l'option --job=true
et un ID de tâche.
Lorsque vous fournissez l'ID de la tâche, vous pouvez l'utiliser sous sa forme complète ou abrégée. Par exemple, les ID de tâches répertoriés dans la console Google Cloud sont complets. En d'autres termes, ils incluent le projet et l'emplacement:
my-project-1234:US.bquijob_123x456_123y123z123c
Les ID de tâches dans l'outil de ligne de commande sont répertoriés sous forme abrégée. L'ID et l'emplacement du projet ne sont pas inclus :
bquijob_123x456_123y123z123c
Pour spécifier l'emplacement de la tâche, définissez l'option --location
sur la valeur correspondant à votre emplacement. Cette option est facultative si vous utilisez l'ID de tâche complet. Si vous incluez l'option --location
et que vous utilisez l'ID de tâche complet, l'option --location
est ignorée.
La commande suivante demande des informations sur une tâche :
bq --location=LOCATION show --job=true JOB_ID
Remplacez les éléments suivants :
LOCATION
: nom de l'emplacement dans lequel la tâche est exécutée Par exemple, si vous utilisez BigQuery dans la région de Tokyo, vous pouvez définir la valeur de l'option surasia-northeast1
. Vous pouvez définir une valeur par défaut correspondant à l'emplacement à l'aide du fichier.bigqueryrc
. Si l'emplacement n'est pas spécifié dans l'ID de la tâche ou à l'aide de l'option--location
, l'emplacement par défaut est utilisé.JOB_ID
: ID de la tâche
Exemples
La commande suivante permet d'obtenir des informations récapitulatives sur la tâche US.bquijob_123x456_123y123z123c
exécutée dans myproject
:
bq show --job=true myproject:US.bquijob_123x456_123y123z123c
Le résultat ressemble à ce qui suit :
Job Type State Start Time Duration User Email Bytes Processed Bytes Billed Billing Tier Labels ---------- --------- ----------------- ---------- ------------------- ----------------- -------------- -------------- -------- extract SUCCESS 06 Jul 11:32:10 0:01:41 [email protected]
Pour afficher tous les détails de la tâche, renseignez les éléments suivants :
bq show --format=prettyjson --job=true myproject:US.bquijob_123x456_789y123z456c
Le résultat ressemble à ce qui suit :
{ "configuration": { "extract": { "compression": "NONE", "destinationUri": "[URI removed]", "destinationUris": [ "[URI removed]" ], "sourceTable": { "datasetId": "github_repos", "projectId": "bigquery-public-data", "tableId": "commits" } } }, "etag": "\"[etag removed]\"", "id": "myproject:bquijob_123x456_789y123z456c", "jobReference": { "jobId": "bquijob_123x456_789y123z456c", "projectId": "[Project ID removed]" }, "kind": "bigquery#job", "selfLink": "https://bigquery.googleapis.com/bigquery/v2/projects/federated-testing/jobs/bquijob_123x456_789y123z456c", "statistics": { "creationTime": "1499365894527", "endTime": "1499365894702", "startTime": "1499365894702" }, "status": { "errorResult": { "debugInfo": "[Information removed for readability]", "message": "Operation cannot be performed on a nested schema. Field: author", "reason": "invalid" }, "errors": [ { "message": "Operation cannot be performed on a nested schema. Field: author", "reason": "invalid" } ], "state": "DONE" }, "user_email": "[email protected]" }
API
Appelez jobs.get, puis indiquez les paramètres jobId
et projectId
. (Facultatif) Fournissez le paramètre location
et définissez la valeur sur l'emplacement dans lequel la tâche est exécutée. Ce paramètre est facultatif si vous utilisez l'ID de tâche complet qui inclut l'emplacement, par exemple my-project-1234:US.bquijob_123x456_123y123z123c
.
Go
Avant d'essayer cet exemple, suivez les instructions de configuration pour Go du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Go.
Pour vous authentifier auprès de BigQuery, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Java
Avant d'essayer cet exemple, suivez les instructions de configuration pour Java du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Java.
Pour vous authentifier auprès de BigQuery, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Node.js
Avant d'essayer cet exemple, suivez les instructions de configuration pour Node.js du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Node.js.
Pour vous authentifier auprès de BigQuery, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Python
Avant d'essayer cet exemple, suivez les instructions de configuration pour Python du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Python.
Pour vous authentifier auprès de BigQuery, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Si vous avez besoin d'informations supplémentaires pour résoudre des problèmes liés à une tâche, consultez les vues INFORMATION_SCHEMA.JOBS*
et les journaux.
Répertorier les tâches dans un projet
BigQuery enregistre un historique de tâche de six mois pour toutes les tâches d'un projet.
Vous pouvez afficher l'historique des tâches de différentes manières :
- En utilisant Google Cloud Console
- En exécutant la commande
bq ls
- En appelant la méthode API
jobs.list
- En utilisant les bibliothèques clientes
L'historique des tâches comprend les tâches à l'état RUNNING
et DONE
(indiqué par le signalement de l'état SUCCESS
ou FAILURE
).
Autorisations requises
Pour répertorier tous les jobs que vous avez créés dans un projet, vous devez disposer de l'autorisation IAM bigquery.jobs.create
. Pour répertorier tous les jobs créés par tous les utilisateurs d'un projet, vous devez disposer de l'autorisation IAM bigquery.jobs.list
. Vous pouvez uniquement afficher les détails complets des jobs que vous créez. Les détails des jobs créés par d'autres utilisateurs sont masqués.
Chacun des rôles IAM prédéfinis suivants inclut les autorisations dont vous avez besoin pour répertorier les tâches :
roles/bigquery.admin
(vous permet de répertorier toutes les tâches du projet)roles/bigquery.user
(vous permet de répertorier toutes les tâches du projet)roles/bigquery.jobUser
(vous permet de répertorier vos tâches)
Pour répertorier toutes les tâches d'un projet, y compris leurs détails, vous devez disposer de l'autorisation IAM bigquery.jobs.listAll
.
Chacun des rôles IAM prédéfinis suivants inclut les autorisations dont vous avez besoin pour répertorier toutes les tâches, y compris leurs détails :
roles/bigquery.admin
roles/bigquery.resourceAdmin
Pour en savoir plus sur les rôles et les autorisations IAM dans BigQuery, consultez la page Rôles prédéfinis et autorisations.
Répertorier des tâches
BigQuery répertorie les tâches pour tous les emplacements.
Pour répertorier les tâches dans un projet, procédez comme suit :
Console
Accédez à la page BigQuery.
Développez le volet Historique des jobs.
Pour répertorier toutes les tâches d'un projet, cliquez sur Historique du projet. Si vous n'êtes pas le propriétaire du projet, vous ne disposez peut-être pas de l'autorisation nécessaire pour en afficher toutes les tâches. Les tâches les plus récentes sont répertoriées en premier.
Pour répertorier vos tâches, cliquez sur Historique personnel.
bq
Exécutez la commande bq ls
avec l'une des options suivantes :
--jobs=true
ou-j
: identifie les jobs sous la forme du type de ressource à répertorier.--all=true
ou-a
: répertorie les jobs de tous les utilisateurs. Pour afficher les détails complets (non masqués) de toutes les tâches, vous devez disposer des autorisationsbigquery.jobs.listAll
.--min_creation_time
: répertorie les jobs intervenant après une valeur d'horodatage fournie. Cette valeur est représentée par un horodatage Unix en millisecondes.--max_creation_time
: répertorie les jobs intervenant avant une valeur d'horodatage fournie. Cette valeur est représentée par un horodatage Unix en millisecondes.- Les options
--max_results
ou-n
limitent les résultats. La valeur par défaut est 50 résultats.
bq ls --jobs=true --all=true \ --min_creation_time=MIN_TIME \ --max_creation_time=MAX_TIME \ --max_results=MAX_RESULTS \ PROJECT_ID
Remplacez les éléments suivants :
MIN_TIME
: entier représentant un horodatage d'époque Unix en millisecondes.MAX_TIME
: entier représentant un horodatage d'époque Unix en millisecondes.MAX_RESULTS
: entier indiquant le nombre de jobs renvoyés.PROJECT_ID
: l'ID du projet contenant les tâches que vous répertoriez Si vous définissez un projet par défaut, vous n'avez pas besoin de spécifier le paramètrePROJECT_ID
.
Exemples
La commande suivante répertorie toutes les tâches pour l'utilisateur actuel. L'exécution de cette commande nécessite les autorisations bigquery.jobs.list
.
bq ls --jobs=true myproject
La commande suivante répertorie toutes les tâches pour tous les utilisateurs. L'exécution de cette commande nécessite les autorisations bigquery.jobs.listAll
.
bq ls --jobs=true --all=true myproject
La commande suivante répertorie les 10 tâches les plus récentes dans myproject
:
bq ls --jobs=true --all=true --max_results=10 myproject
La commande suivante répertorie toutes les tâches soumises avant le 3 mars 2032 à 4:04:00. Cet horodatage (en millisecondes) est équivalent à la valeur entière suivante : 1961899440000
.
bq ls --jobs=true --max_creation_time=1961899440000
API
Appelez jobs.list et spécifiez le paramètre projectId
. Pour répertorier les tâches pour tous les utilisateurs, définissez le paramètre allUsers
sur true
. Pour définir allUsers
sur true
, vous devez disposer des autorisations bigquery.jobs.listAll
.
Go
Avant d'essayer cet exemple, suivez les instructions de configuration pour Go du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Go.
Pour vous authentifier auprès de BigQuery, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Java
Avant d'essayer cet exemple, suivez les instructions de configuration pour Java du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Java.
Pour vous authentifier auprès de BigQuery, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Node.js
Avant d'essayer cet exemple, suivez les instructions de configuration pour Node.js du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Node.js.
Pour vous authentifier auprès de BigQuery, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Python
Avant d'essayer cet exemple, suivez les instructions de configuration pour Python du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Python.
Pour vous authentifier auprès de BigQuery, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Annuler des tâches
Vous pouvez annuler une tâche RUNNING
ou PENDING
de différentes manières :
- Utiliser la console Google Cloud.
- En utilisant la commande
bq cancel
. - En utilisant la procédure système
BQ.JOBS.CANCEL
dans une requête SQL - En appelant la méthode API
jobs.cancel
- Utiliser les bibliothèques clientes
Même si la tâche peut être annulée, le succès de l'opération n'est pas garanti. La tâche peut se terminer au moment de l'envoi de la demande d'annulation ou se trouver dans une étape ne permettant pas son annulation.
Autorisations requises
Pour annuler une tâche, vous avez besoin de l'autorisation IAM bigquery.jobs.update
.
Vous disposez automatiquement de cette autorisation pour les tâches que vous créez.
Chacun des rôles IAM prédéfinis suivants inclut les autorisations dont vous avez besoin pour annuler une tâche :
roles/bigquery.admin
(vous permet d'annuler n'importe quelle tâche du projet)roles/bigquery.user
(vous permet d'annuler vos tâches)roles/bigquery.jobUser
(vous permet d'annuler vos tâches)
Pour en savoir plus sur les rôles et les autorisations IAM dans BigQuery, consultez la page Rôles prédéfinis et autorisations.
Annuler une mission
Il faut généralement moins d'une minute pour annuler une tâche.
Pour annuler une tâche, procédez comme suit :
Console
Accédez à la page BigQuery.
Cliquez sur Saisir une nouvelle requête et saisissez une requête.
Pour exécuter la requête, cliquez sur Run (Exécuter).
Pour annuler une tâche, cliquez sur Cancel (Annuler).
SQL
Utilisez la procédure système BQ.JOBS.CANCEL
:
CALL BQ.JOBS.CANCEL('JOB_ID');
Remplacez JOB_ID par l'ID de la tâche à annuler.
Si vous vous trouvez dans un projet différent, mais dans la même région que la tâche que vous souhaitez annuler, vous devez également inclure l'ID du projet :
CALL BQ.JOBS.CANCEL('PROJECT_ID.JOB_ID');
Remplacez les éléments suivants :
PROJECT_ID
: l'ID du projet contenant la tâche à annulerJOB_ID
: l'ID de la tâche à annuler
La procédure s'affiche immédiatement, et BigQuery annule la tâche peu de temps après. Si la tâche a déjà réussi ou échoué, la procédure n'a aucun effet.
bq
Exécutez la commande bq cancel
avec l'argument JOB_ID
. Vous pouvez demander une annulation et afficher immédiatement le résultat à l'aide de l'option --nosync=true
. Par défaut, les demandes d'annulation attendent la fin de l'opération.
Lorsque vous fournissez l'argument JOB_ID
, vous pouvez utiliser l'ID complet ou la forme abrégée. Par exemple, les ID de tâches répertoriés dans la console Google Cloud sont complets. En d'autres termes, ils incluent le projet et l'emplacement :
my-project-1234:US.bquijob_123x456_123y123z123c
Les ID de tâches dans l'outil de ligne de commande bq sont répertoriés sous forme abrégée. L'ID et l'emplacement du projet ne sont pas inclus :
bquijob_123x456_123y123z123c
Pour spécifier l'emplacement de la tâche, définissez l'option --location
sur la valeur correspondant à votre emplacement. Cette option est facultative si vous utilisez l'ID de tâche complet. Si vous incluez l'option --location
et que vous utilisez l'ID de tâche complet, l'option --location
est ignorée.
La commande suivante demande l'annulation de la tâche et attend la fin de l'opération. Si l'ID de tâche complet est fourni, l'option --location
est ignorée :
bq --location=LOCATION cancel JOB_ID
La commande suivante demande l'annulation de la tâche et l'affiche immédiatement. Si l'ID de tâche complet est fourni, l'option --location
est ignorée :
bq --location=LOCATION --nosync cancel JOB_ID
Remplacez les éléments suivants :
LOCATION
(facultatif) : le nom de la zone dans laquelle la tâche est exécutée Par exemple, si vous utilisez BigQuery dans la région de Tokyo, vous pouvez définir la valeur de l'option surasia-northeast1
. Vous pouvez définir une valeur par défaut correspondant à l'emplacement à l'aide du fichier.bigqueryrc
.JOB_ID
: l'ID du job à annuler Si vous copiez l'ID du job à partir de la console Google Cloud, l'ID et l'emplacement du projet sont inclus dans l'ID du job. Exemple :my-project-1234:US.bquijob_123x456_123y123z123c
.
Exemples
La commande suivante annule la tâche my-project-1234:US.bquijob_123x456_123y123z123c
exécutée dans l'emplacement multirégional US
dans le projet my-project-1234
et attend la fin de l'opération. Comme l'ID de tâche complet est utilisé, l'option d'emplacement n'est pas fournie.
bq cancel my-project-1234:US.bquijob_123x456_123y123z123c
La commande suivante annule la tâche bquijob_123x456_123y123z123c
exécutée dans l'emplacement multirégional US
dans le projet my-project-1234
et attend la fin de l'opération. Comme la forme abrégée de l'ID de tâche est utilisée, l'option --location
est fournie.
bq --location=US cancel bquijob_123x456_123y123z123c
La commande suivante annule la tâche bquijob_123x456_123y123z123c
exécutée dans l'emplacement multirégion US
dans le projet my-project-1234
et affiche immédiatement le résultat.
Comme l'ID de tâche complet est utilisé, l'option --location
n'est pas fournie.
bq --nosync cancel my-project-1234:US.bquijob_123x456_123y123z123c
API
Appelez jobs.cancel, puis indiquez les paramètres jobId
et projectId
. Fournissez le paramètre location
et définissez la valeur sur l'emplacement dans lequel la tâche est exécutée.
Go
Avant d'essayer cet exemple, suivez les instructions de configuration pour Go du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Go.
Pour vous authentifier auprès de BigQuery, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Java
Avant d'essayer cet exemple, suivez les instructions de configuration pour Java du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Java.
Pour vous authentifier auprès de BigQuery, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Node.js
Avant d'essayer cet exemple, suivez les instructions de configuration pour Node.js du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Node.js.
Pour vous authentifier auprès de BigQuery, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Python
Avant d'essayer cet exemple, suivez les instructions de configuration pour Python du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Python.
Pour vous authentifier auprès de BigQuery, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Supprimer les métadonnées de tâche
Vous pouvez supprimer les métadonnées d'un job spécifique à l'aide de l'outil de ligne de commande bq et de la bibliothèque cliente Python. BigQuery conserve un historique des jobs exécutés au cours des six derniers mois. Cette méthode vous permet de supprimer les informations sensibles éventuellement présentes dans les instructions de requête. Les métadonnées d'une tâche ne peuvent être supprimées qu'une fois la tâche terminée. Si une tâche a créé des tâches enfants, elles sont également supprimées. Il n'est pas possible de supprimer des tâches enfants. Seules les tâches parentes ou de niveau supérieur peuvent être supprimées.
Autorisations requises
Pour supprimer les métadonnées de tâche, vous devez disposer de l'autorisation IAM bigquery.jobs.delete
.
Le rôle Cloud IAM prédéfini roles/bigquery.admin
inclut l'autorisation dont vous avez besoin pour supprimer les métadonnées de tâche.
Pour en savoir plus sur les rôles et les autorisations IAM dans BigQuery, consultez la page Rôles prédéfinis et autorisations.
Supprimer les métadonnées de tâche
bq
Exécutez la commande bq rm
avec l'option -j
et un ID de tâche.
Lorsque vous fournissez l'ID de la tâche, vous pouvez l'utiliser sous sa forme complète ou abrégée. Par exemple, les ID de tâches répertoriés dans la console Google Cloud sont complets. En d'autres termes, ils incluent le projet et l'emplacement:
my-project-1234:US.bquijob_123x456_123y123z123c
Les ID de jobs dans l'outil de ligne de commande bq sont répertoriés sous forme abrégée. L'ID et l'emplacement du projet ne sont pas inclus :
bquijob_123x456_123y123z123c
Pour spécifier l'emplacement de la tâche, définissez l'option --location
sur la valeur correspondant à votre emplacement. Cette option est facultative si vous utilisez l'ID de tâche complet. Si vous incluez l'option --location
et que vous utilisez l'ID de tâche complet, l'option --location
est ignorée.
La commande suivante supprime une tâche:
bq --location=location \ --project_id=project_id \ rm -j job_id
Python
Avant d'essayer cet exemple, suivez les instructions de configuration pour Python du guide de démarrage rapide de BigQuery : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API BigQuery pour Python.
Pour vous authentifier auprès de BigQuery, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez la page Configurer l'authentification pour les bibliothèques clientes.
Répéter des tâches
Il n'est pas possible de répéter une tâche en utilisant le même ID. À la place, vous devez créer un job avec la même configuration. Lorsque vous envoyez la nouvelle tâche dans la console Google Cloud ou dans l'outil de ligne de commande bq, un nouvel ID de tâche est attribué. Lorsque vous envoyez la tâche via l'API ou les bibliothèques clientes, vous devez générer un nouvel ID de tâche.
Autorisations requises
Pour exécuter une tâche, vous avez besoin de l'autorisation IAM bigquery.jobs.create
.
Chacun des rôles IAM prédéfinis suivants inclut les autorisations dont vous avez besoin pour exécuter une tâche :
roles/bigquery.admin
roles/bigquery.user
roles/bigquery.jobUser
Pour en savoir plus sur les rôles et les autorisations IAM dans BigQuery, consultez la page Rôles prédéfinis et autorisations.
Répéter une tâche
Pour répéter une tâche, procédez comme suit :
Console
Pour répéter une tâche de requête, procédez comme suit :
Accédez à la page BigQuery.
Développez le volet Historique des jobs.
Pour répertorier toutes vos tâches, cliquez sur Historique personnel. Pour répertorier toutes les tâches d'un projet, cliquez sur Historique du projet.
Cliquez sur une tâche de requête pour en afficher les détails.
Pour répéter une requête, cliquez sur Ouvrir en tant que nouvelle requête.
Cliquez sur Exécuter.
Pour répéter une tâche de chargement, procédez comme suit :
Accédez à la page BigQuery.
Développez le volet Historique des jobs.
Pour répertorier toutes vos tâches, cliquez sur Historique personnel. Pour répertorier toutes les tâches d'un projet, cliquez sur Historique du projet.
Cliquez sur une tâche de chargement pour en afficher les détails.
Pour répéter un job, cliquez sur Répéter le job de chargement.
bq
Relancez votre commande pour que BigQuery génère automatiquement une tâche avec un nouvel ID de tâche.
API
Il n'existe pas de méthode d'appel unique pour répéter une tâche. Pour répéter une tâche spécifique, vous devez procéder comme suit :
Appelez
jobs.get
pour récupérer la ressource de la tâche à répéter.Supprimez les champs id, status et statistics. Remplacez le champ jobId par une nouvelle valeur générée par votre code client. Modifiez les autres champs si nécessaire.
Appelez
jobs.insert
avec la ressource modifiée et le nouvel ID de tâche pour démarrer la nouvelle tâche.