Présentation de INFORMATION_SCHEMA

Les vues BigQuery INFORMATION_SCHEMA sont des vues en lecture seule définies par le système qui fournissent des informations de métadonnées sur vos objets BigQuery. Le tableau suivant répertorie toutes les vues INFORMATION_SCHEMA que vous pouvez interroger pour récupérer des informations de métadonnées :

Type de ressource Vue INFORMATION_SCHEMA
Contrôle des accès OBJECT_PRIVILEGES
BI Engine BI_CAPACITIES
BI_CAPACITY_CHANGES
Configurations EFFECTIVE_PROJECT_OPTIONS
ORGANIZATION_OPTIONS
ORGANIZATION_OPTIONS_CHANGES
PROJECT_OPTIONS
PROJECT_OPTIONS_CHANGES
Ensembles de données SCHEMATA
SCHEMATA_LINKS
SCHEMATA_OPTIONS
SHARED_DATASET_USAGE
SCHEMATA_REPLICAS
SCHEMATA_REPLICAS_BY_FAILOVER_RESERVATION
Emplois JOBS_BY_PROJECT
JOBS_BY_USER
JOBS_BY_FOLDER
JOBS_BY_ORGANIZATION
Tâches par tranche horaire JOBS_TIMELINE_BY_PROJECT
JOBS_TIMELINE_BY_USER
JOBS_TIMELINE_BY_FOLDER
JOBS_TIMELINE_BY_ORGANIZATION
Recommandations et insights INSIGHTS
RECOMMENDATIONS
RECOMMENDATIONS_BY_ORGANIZATION
Réservations ASSIGNMENTS_BY_PROJECT
ASSIGNMENT_CHANGES_BY_PROJECT
CAPACITY_COMMITMENTS_BY_PROJECT
CAPACITY_COMMITMENT_CHANGES_BY_PROJECT
RESERVATIONS_BY_PROJECT
RESERVATION_CHANGES_BY_PROJECT
RESERVATIONS_TIMELINE_BY_PROJECT
Routines PARAMETERS
ROUTINES
ROUTINE_OPTIONS
Rechercher dans les index SEARCH_INDEXES
SEARCH_INDEX_COLUMNS
Sessions SESSIONS_BY_PROJECT
SESSIONS_BY_USER
Streaming STREAMING_TIMELINE_BY_PROJECT
STREAMING_TIMELINE_BY_FOLDER
STREAMING_TIMELINE_BY_ORGANIZATION
Tables COLUMNS
COLUMN_FIELD_PATHS
CONSTRAINT_COLUMN_USAGE
KEY_COLUMN_USAGE
PARTITIONS
TABLES
TABLE_OPTIONS
TABLE_CONSTRAINTS
TABLE_SNAPSHOTS
TABLE_STORAGE_BY_PROJECT
TABLE_STORAGE_BY_ORGANIZATION
TABLE_STORAGE_USAGE_TIMELINE
TABLE_STORAGE_USAGE_TIMELINE_BY_ORGANIZATION
Index vectoriels VECTOR_INDEXES
VECTOR_INDEX_COLUMNS
VECTOR_INDEX_OPTIONS
Vues VIEWS
MATERIALIZED_VIEWS
API Write WRITE_API_TIMELINE_BY_PROJECT
WRITE_API_TIMELINE_BY_FOLDER
WRITE_API_TIMELINE_BY_ORGANIZATION

Pour les vues *BY_PROJECT, le suffixe BY_PROJECT est facultatif. Par exemple, l'interrogation de INFORMATION_SCHEMA.JOBS_BY_PROJECT et de INFORMATION_SCHEMA.JOBS renvoie les mêmes résultats.

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 basée sur la capacité, 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 Tarification basée sur la capacité.

É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 doit être qualifiée avec un ensemble de données ou une région.

Qualificatif d'ensemble de données

Lorsqu'un qualificatif d'ensemble de données est présent, il limite les résultats à l'ensemble de données spécifié. Par exemple :

-- Returns metadata for tables in a single dataset.
SELECT * FROM myDataset.INFORMATION_SCHEMA.TABLES;

Les vues INFORMATION_SCHEMA suivantes sont compatibles avec les qualificatifs d'ensemble de données :

  • COLUMNS
  • COLUMN_FIELD_PATHS
  • MATERIALIZED_VIEWS
  • PARAMETERS
  • PARTITIONS
  • ROUTINES
  • ROUTINE_OPTIONS
  • TABLES
  • TABLE_OPTIONS
  • VIEWS

Qualificatif de région

Les qualificatifs de région sont représentés à l'aide d'une syntaxe region-REGION. Tout nom d'emplacement d'ensemble de données peut être utilisé pour REGION. Par exemple, les qualificatifs de région suivants sont valides :

  • region-us
  • region-asia-east2
  • region-europe-north1

Lorsqu'un qualificatif de région est présent, il limite les résultats à l'emplacement spécifié. Par exemple, la requête suivante renvoie les métadonnées de tous les ensembles de données d'un projet dans l'emplacement multirégional US :

-- Returns metadata for all datasets in a region.
SELECT * FROM region-us.INFORMATION_SCHEMA.SCHEMATA;

Les vues INFORMATION_SCHEMA suivantes ne sont pas compatibles avec les qualificatifs de région :

Si aucun qualificatif de région ni aucun qualificatif d'ensemble de données ne sont spécifiés, une erreur est renvoyée.

Les requêtes exécutées sur une vue INFORMATION_SCHEMA qualifiée par région s'exécutent dans la région que vous spécifiez. Par conséquent, vous ne pouvez pas écrire une seule requête pour joindre les données de vues dans différentes régions. Pour combiner des vues INFORMATION_SCHEMA de plusieurs régions, écrivez les résultats de vos requêtes dans des tables, puis copiez vos tables ou déplacez vos ensembles de données vers une région commune.

Qualificatif de projet

Lorsqu'un qualificatif de projet est présent, il limite les résultats au projet spécifié. Par exemple :

-- Returns metadata for the specified project and region.
SELECT * FROM myProject.`region-us`.INFORMATION_SCHEMA.TABLES;

-- Returns metadata for the specified project and dataset.
SELECT * FROM myProject.myDataset.INFORMATION_SCHEMA.TABLES;

Toutes les vues INFORMATION_SCHEMA sont compatibles avec les qualificatifs de projet. Si un qualificatif de projet n'est pas spécifié, la vue est définie par défaut sur le projet dans lequel la requête est exécutée.

La spécification d'un qualificatif de projet pour les vues au niveau de l'organisation (par exemple, STREAMING_TIMELINE_BY_ORGANIZATION) n'a aucun impact sur les résultats.

Limites

  • La syntaxe des requêtes BigQuery INFORMATION_SCHEMA doit être en GoogleSQL. INFORMATION_SCHEMA n'est pas compatible avec l'ancien SQL.
  • Les résultats de requêtes INFORMATION_SCHEMA ne sont pas mis en cache.
  • Les vues INFORMATION_SCHEMA ne peuvent pas être utilisées dans des instructions LDD.
  • Les vues INFORMATION_SCHEMA ne contiennent pas d'informations sur les ensembles de données masqués.
  • Les requêtes INFORMATION_SCHEMA avec des qualificatifs de région peuvent inclure des métadonnées provenant des ressources de cette région à partir d'ensembles de données supprimés qui se trouvent dans votre fenêtre de fonctionnalité temporelle.
  • Lorsque vous listez des ressources à partir d'une vue INFORMATION_SCHEMA, les autorisations ne sont vérifiées qu'au niveau du parent, et non au niveau d'une ligne individuelle. Par conséquent, toute règle de refus (aperçu) qui cible de manière conditionnelle une ligne individuelle à l'aide de tags est ignorée.