Présentation de BigQuery INFORMATION_SCHEMA

INFORMATION_SCHEMA est une série de vues donnant accès aux ressources suivantes :

Tarifs

Pour les projets appliquant la tarification à la demande, les requêtes exécutées sur les vues INFORMATION_SCHEMA engendrent des frais de traitement de données de 10 Mo minimum, même si le nombre d'octets traités par la requête est inférieur à cette valeur. Il s'agit du montant minimal de facturation pour les requêtes à la demande. Pour en savoir plus, consultez la section Tarifs à la demande.

Pour les projets qui utilisent la tarification forfaitaire, les requêtes portant sur des vues et des tables INFORMATION_SCHEMA consomment les emplacements BigQuery achetés. Pour en savoir plus, consultez la section Tarifs forfaitaires.

Étant donné que les requêtes INFORMATION_SCHEMA ne sont pas mises en cache, des frais vous sont facturés chaque fois que vous exécutez une requête INFORMATION_SCHEMA, même si le texte de la requête est identique à chaque exécution.

Vous ne payez pas de frais de stockage pour les vues INFORMATION_SCHEMA.

Syntaxe

Une vue INFORMATION_SCHEMA peut nécessiter un spécificateur.

Aucun spécificateur

Les vues INFORMATION_SCHEMA suivantes ne doivent pas être associées à un spécificateur :

  • INFORMATION_SCHEMA.SCHEMATA
  • INFORMATION_SCHEMA.SCHEMATA_OPTIONS

Exemple :

SELECT * FROM `INFORMATION_SCHEMA.SCHEMATA`

Pour obtenir les métadonnées d'un autre projet, ajoutez l'ID du projet à la vue.

SELECT * FROM `myOtherProject.INFORMATION_SCHEMA.SCHEMATA`;

Spécificateur d'ensemble de données

Les vues INFORMATION_SCHEMA suivantes doivent être associées à un spécificateur d'ensemble de données :

  • INFORMATION_SCHEMA.COLUMNS
  • INFORMATION_SCHEMA.COLUMN_FIELD_PATHS
  • INFORMATION_SCHEMA.ROUTINES
  • INFORMATION_SCHEMA.ROUTINE_OPTIONS
  • INFORMATION_SCHEMA.PARAMETERS
  • INFORMATION_SCHEMA.TABLES
  • INFORMATION_SCHEMA.TABLE_OPTIONS
  • INFORMATION_SCHEMA.VIEWS

Exemple :

SELECT * FROM `myDataset.INFORMATION_SCHEMA.COLUMNS`

Pour obtenir les métadonnées d'un autre projet, ajoutez l'ID du projet à la vue.

SELECT * FROM `myOtherProject.myDataset.INFORMATION_SCHEMA.TABLES`;

Spécificateur régional

Les vues INFORMATION_SCHEMA suivantes doivent être associées à un spécificateur régional.

  • INFORMATION_SCHEMA.ASSIGNMENT_CHANGES_BY_PROJECT
  • INFORMATION_SCHEMA.CAPACITY_COMMITMENT_CHANGES_BY_PROJECT
  • INFORMATION_SCHEMA.JOBS_BY_ORGANIZATION
  • INFORMATION_SCHEMA.JOBS_BY_PROJECT
  • INFORMATION_SCHEMA.JOBS_BY_USER
  • INFORMATION_SCHEMA.RESERVATION_CHANGES_BY_PROJECT
  • INFORMATION_SCHEMA.RESERVATION_TIMELINE_BY_PROJECT

Exemple :

SELECT * FROM `region-eu.INFORMATION_SCHEMA.JOBS_BY_USER`

Pour obtenir les métadonnées d'un autre projet, ajoutez l'ID du projet à la vue.

SELECT * FROM `myOtherProject.region-eu.INFORMATION_SCHEMA.JOBS_BY_USER`;

Limites

BigQuery INFORMATION_SCHEMA est soumis aux limitations suivantes :

  • La syntaxe des requêtes BigQuery INFORMATION_SCHEMA doit être en SQL standard. INFORMATION_SCHEMA n'est pas compatible avec l'ancien SQL.
  • Les résultats de requêtes INFORMATION_SCHEMA ne sont pas mis en cache.
  • Actuellement, il est impossible de récupérer des métadonnées sur des partitions de tables partitionnées à l'aide de INFORMATION_SCHEMA.
  • Actuellement, les vues INFORMATION_SCHEMA ne peuvent pas être utilisées dans des instructions LDD.