Introduzione a INFORMATION_SCHEMA

Le viste INFORMATION_SCHEMA di BigQuery sono viste di sola lettura definite dal sistema che forniscono informazioni sui metadati degli oggetti BigQuery. La seguente tabella elenca tutte le visualizzazioni INFORMATION_SCHEMA che puoi interrogare per recuperare le informazioni sui metadati:

Tipo di risorsa Visualizzazione INFORMATION_SCHEMA
Controllo degli accessi OBJECT_PRIVILEGES
BI Engine BI_CAPACITIES
BI_CAPACITY_CHANGES
Configurazioni EFFECTIVE_PROJECT_OPTIONS
ORGANIZATION_OPTIONS
ORGANIZATION_OPTIONS_CHANGES
PROJECT_OPTIONS
PROJECT_OPTIONS_CHANGES
Set di dati SCHEMATA
SCHEMATA_LINKS
SCHEMATA_OPTIONS
SHARED_DATASET_USAGE
SCHEMATA_REPLICAS
SCHEMATA_REPLICAS_BY_FAILOVER_RESERVATION
Job JOBS_BY_PROJECT
JOBS_BY_USER
JOBS_BY_FOLDER
JOBS_BY_ORGANIZATION
Job per intervallo di tempo JOBS_TIMELINE_BY_PROJECT
JOBS_TIMELINE_BY_USER
JOBS_TIMELINE_BY_FOLDER
JOBS_TIMELINE_BY_ORGANIZATION
Consigli e approfondimenti INSIGHTS
RECOMMENDATIONS
RECOMMENDATIONS_BY_ORGANIZATION
Prenotazioni 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
Routine PARAMETERS
ROUTINES
ROUTINE_OPTIONS
Indici di ricerca SEARCH_INDEXES
SEARCH_INDEX_COLUMNS
SEARCH_INDEX_COLUMN_OPTIONS
SEARCH_INDEX_OPTIONS
SEARCH_INDEXES_BY_ORGANIZATION
Sessioni SESSIONS_BY_PROJECT
SESSIONS_BY_USER
Streaming STREAMING_TIMELINE_BY_PROJECT
STREAMING_TIMELINE_BY_FOLDER
STREAMING_TIMELINE_BY_ORGANIZATION
Tabelle 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_FOLDER
TABLE_STORAGE_BY_ORGANIZATION
TABLE_STORAGE_USAGE_TIMELINE
TABLE_STORAGE_USAGE_TIMELINE_BY_FOLDER
TABLE_STORAGE_USAGE_TIMELINE_BY_ORGANIZATION
Indici vettoriali VECTOR_INDEXES
VECTOR_INDEX_COLUMNS
VECTOR_INDEX_OPTIONS
Visualizzazioni VIEWS
MATERIALIZED_VIEWS
API Write WRITE_API_TIMELINE_BY_PROJECT
WRITE_API_TIMELINE_BY_FOLDER
WRITE_API_TIMELINE_BY_ORGANIZATION

Per le visualizzazioni *BY_PROJECT, il suffisso BY_PROJECT è facoltativo. Ad esempio, le query INFORMATION_SCHEMA.JOBS_BY_PROJECT e INFORMATION_SCHEMA.JOBS restituiscono gli stessi risultati.

Prezzi

Per i progetti che utilizzano i prezzi on demand, le query sulle viste INFORMATION_SCHEMA comportano un addebito minimo di 10 MB di elaborazione dei dati, anche se i byte elaborati dalla query sono inferiori a 10 MB. 10 MB è l'importo minimo di fatturazione per le query on demand. Per maggiori informazioni, vedi Prezzi on demand.

Per i progetti che utilizzano i prezzi basati sulla capacità, le query sulle viste e sulle tabelle INFORMATION_SCHEMA consumano gli slot BigQuery acquistati. Per ulteriori informazioni, consulta la sezione Prezzi basati sulla capacità.

Poiché le query INFORMATION_SCHEMA non vengono memorizzate nella cache, ti viene addebitato un importo ogni volta che esegui una query INFORMATION_SCHEMA, anche se il testo della query è lo stesso ogni volta che la esegui.

Non ti vengono addebitati costi di archiviazione per le visualizzazioni INFORMATION_SCHEMA.

Sintassi

Una vista INFORMATION_SCHEMA deve essere qualificata con un set di dati o una regione.

Qualificatore del set di dati

Se presente, un qualificatore del set di dati limita i risultati al set di dati specificato. Ad esempio:

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

Le seguenti visualizzazioni INFORMATION_SCHEMA supportano i qualificatori del set di dati:

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

Qualificatore della regione

I qualificatori di regione sono rappresentati utilizzando una sintassi region-REGION. Per REGION può essere utilizzato qualsiasi nome della località del set di dati. Ad esempio, i seguenti qualificatori di regione sono validi:

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

Se presente, un qualificatore di regione limita i risultati alla località specificata. Ad esempio, la seguente query restituisce i metadati per tutti i set di dati in un progetto nella regione multiregionale US:

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

Le seguenti visualizzazioni INFORMATION_SCHEMA non supportano i qualificatori di regione:

Se non viene specificato un qualificatore di regione o di set di dati, riceverai un errore.

Le query su una vista INFORMATION_SCHEMA qualificata per regione vengono eseguite nella regione specificata, il che significa che non puoi scrivere una singola query per unire i dati delle viste in regioni diverse. Per combinare le visualizzazioni INFORMATION_SCHEMA di più regioni, leggi e combina i risultati della query a livello locale oppure copia le tabelle risultanti in una regione comune.

Qualificatore progetto

Se presente, un qualificatore di progetto limita i risultati al progetto specificato. Ad esempio:

-- 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;

Tutte le visualizzazioni INFORMATION_SCHEMA supportano i qualificatori di progetto. Se non viene specificato un qualificatore di progetto, la visualizzazione utilizzerà per impostazione predefinita il progetto in cui viene eseguita la query.

La specifica di un qualificatore di progetto per le visualizzazioni a livello di organizzazione (ad es. STREAMING_TIMELINE_BY_ORGANIZATION) non ha alcun impatto sui risultati.

Limitazioni

  • Le query BigQuery INFORMATION_SCHEMA devono essere nella sintassi GoogleSQL. INFORMATION_SCHEMA non supporta l'SQL precedente.
  • I risultati della query INFORMATION_SCHEMA non vengono memorizzati nella cache.
  • Le viste INFORMATION_SCHEMA non possono essere utilizzate nelle istruzioni DDL.
  • Le visualizzazioni INFORMATION_SCHEMA non contengono informazioni sui set di dati nascosti.
  • Le query INFORMATION_SCHEMA con qualificatori di regione potrebbero includere metadati di risorse in quella regione provenienti da set di dati eliminati che rientrano nella finestra di Time Travel.
  • Quando elenchi le risorse da una visualizzazione INFORMATION_SCHEMA, le autorizzazioni vengono controllate solo a livello principale, non a livello di singola riga. Pertanto, qualsiasi criterio di negazione (anteprima) che ha come target in modo condizionale una singola riga utilizzando i tag viene ignorato.