Introdução à INFORMATION_SCHEMA
As visualizações INFORMATION_SCHEMA fornecem informações de metadados
sobre seus objetos do BigQuery. Elas são somente leitura e definidas pelo
sistema. A tabela a seguir lista todas as visualizações INFORMATION_SCHEMA que podem ser consultadas
para recuperar informações de metadados:
† Nas visualizações *BY_PROJECT, o sufixo BY_PROJECT é opcional. Por
exemplo, consultar INFORMATION_SCHEMA.JOBS_BY_PROJECT e INFORMATION_SCHEMA.JOBS
retorna os mesmos resultados.
Preços
Para projetos que usam sistema de preços on demand, as consultas nas visualizações INFORMATION_SCHEMA
incorrem um mínimo de 10 MB de cobranças de processamento de dados, mesmo que os bytes
processados pela consulta sejam inferiores a isso. Esse é o valor mínimo
de faturamento para consultas on demand. Para ver mais informações sobre esses preços, acesse
este link.
Para projetos que usam preços baseados em capacidade, as consultas em visualizações e tabelas INFORMATION_SCHEMA
consomem os slots do BigQuery comprados. Para ver
mais informações sobre esses preços, acesse este link.
Como as consultas de INFORMATION_SCHEMA não são armazenadas em cache, a cobrança é feita
sempre que você executa uma consulta de INFORMATION_SCHEMA, ainda que use
sempre o mesmo texto.
Não são cobradas taxas de armazenamento pelas visualizações INFORMATION_SCHEMA.
Sintaxe
Uma visualização INFORMATION_SCHEMA precisa ser qualificada com um conjunto de dados ou uma região.
Qualificador de conjunto de dados
Quando presente, um qualificador de conjunto de dados restringe os resultados ao conjunto de dados especificado. Exemplo:
-- Returns metadata for tables in a single dataset.
SELECT * FROM myDataset.INFORMATION_SCHEMA.TABLES;
As seguintes visualizações INFORMATION_SCHEMA são compatíveis com qualificadores de conjunto de dados:
COLUMNSCOLUMN_FIELD_PATHSMATERIALIZED_VIEWSPARAMETERSPARTITIONSROUTINESROUTINE_OPTIONSTABLESTABLE_OPTIONSVIEWS
Qualificador de região
Os qualificadores de região são representados com o uso de uma
sintaxe region-REGION.
Qualquer nome de local do conjunto de dados pode ser usado para
REGION. Por exemplo, os seguintes qualificadores de região
são válidos:
region-usregion-asia-east2region-europe-north1
Quando presente, um qualificador de região restringe os resultados à região especificada.
Os qualificadores de região não são
hierárquicos. Isso significa que a multirregião da UE não inclui as regiões europe-*,
e a multirregião dos EUA não inclui as regiões us-*. Por exemplo,
a consulta a seguir retorna metadados de todos os conjuntos de dados na multirregião US
para o projeto em que a consulta está sendo executada, mas não inclui conjuntos de dados
na região us-west1:
-- Returns metadata for all datasets in the US multi-region. SELECT * FROM region-us.INFORMATION_SCHEMA.SCHEMATA;
As visualizações INFORMATION_SCHEMA a seguir não são compatíveis com os qualificadores de região:
INFORMATION_SCHEMA.PARTITIONSINFORMATION_SCHEMA.SEARCH_INDEXESINFORMATION_SCHEMA.SEARCH_INDEX_COLUMNSINFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS
Se nenhum qualificador de região ou de conjunto de dados for especificado, você receberá um erro.
As consultas em uma visualização INFORMATION_SCHEMA qualificada por região são executadas na região especificada. Ou seja, não é possível escrever uma única consulta para mesclar dados de visualizações em diferentes regiões. Para combinar visualizações INFORMATION_SCHEMA de várias regiões, leia e combine os resultados da consulta localmente ou copie as tabelas resultantes para uma região comum.
Qualificador de projeto
Quando presente, esse tipo de qualificador restringe os resultados ao projeto especificado. Exemplo:
-- 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;
Todas as visualizações INFORMATION_SCHEMA são compatíveis com qualificadores de projeto. Se um qualificador
de projeto não for especificado, a visualização será padronizada para o
projeto em que a consulta está sendo executada.
Especificar um qualificador de projeto para visualizações no nível da organização
(por exemplo, STREAMING_TIMELINE_BY_ORGANIZATION)
não afeta os resultados.
Limitações
- As consultas
INFORMATION_SCHEMAdo BigQuery precisam estar na sintaxe GoogleSQL.INFORMATION_SCHEMAnão é compatível com o SQL legado. - Os resultados das consultas de
INFORMATION_SCHEMAnão são armazenados em cache. - Atualmente, as visualizações
INFORMATION_SCHEMAnão podem ser usadas em instruções de linguagem de definição de dados (DDL, na sigla em inglês). - As visualizações
INFORMATION_SCHEMAnão contêm informações sobre os conjuntos de dados ocultos. - As consultas
INFORMATION_SCHEMAcom qualificadores de região podem incluir metadados de recursos nessa região provenientes de conjuntos de dados excluídos que estão dentro do período de viagem no tempo. - Quando você lista recursos de uma visualização
INFORMATION_SCHEMA, as permissões são verificadas apenas no nível pai, não em uma linha individual. Portanto, qualquer política de negação (prévia) que segmenta condicionalmente uma linha individual usando tags é ignorada.