Visualização SEARCH_INDEX_OPTIONS
A visualização INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS
contém uma linha para cada
índice de pesquisa em um conjunto de dados.
Permissões necessárias
Para ver os metadados do índice de pesquisa, é preciso ter a permissão bigquery.tables.get
ou bigquery.tables.list
do Identity and Access Management (IAM) na tabela com o índice. Cada um dos seguintes papéis predefinidos
do IAM inclui pelo menos uma destas permissões:
roles/bigquery.admin
roles/bigquery.dataEditor
roles/bigquery.dataOwner
roles/bigquery.dataViewer
roles/bigquery.metadataViewer
roles/bigquery.user
Para mais informações sobre as permissões do BigQuery, consulte Controle de acesso com o IAM.
Esquema
Quando você consulta a visualizaçãoINFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS
, os resultados
da consulta contêm uma linha para cada índice de pesquisa em um conjunto de dados.
A visualização INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS
tem o seguinte esquema:
Nome da coluna | Tipo de dados | Valor |
---|---|---|
index_catalog |
STRING |
Nome do projeto que contém o conjunto de dados. |
index_schema |
STRING |
O nome do conjunto de dados que contém o índice. |
table_name |
STRING |
O nome da tabela base em que o índice é criado. |
index_name |
STRING |
O nome do índice. |
option_name |
STRING |
O nome da opção, que pode ser um dos seguintes:
analyzer , analyzer_options ou
data_types .
|
option_type |
STRING |
O tipo da opção. |
option_value |
STRING |
O valor da opção. |
Escopo e sintaxe
As consultas nesta visualização precisam ter um qualificador de conjunto de dados. A tabela a seguir explica o escopo da região dessa visualização:
Acessar nome | Escopo do recurso | Escopo da região |
---|---|---|
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS |
Nível do conjunto de dados | Local do conjunto de dados |
Opcional: PROJECT_ID
: o ID do seu
projeto do Google Cloud. Se não for especificado, o projeto padrão será usado.
DATASET_ID
: ID do conjunto de dados. Para mais informações, consulte Qualificador de conjunto de dados.
Exemplo
-- Returns metadata for search index options in a single dataset.
SELECT * FROM myDataset.INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS;
Exemplo
O exemplo a seguir cria três opções de índice de pesquisa para colunas de
table1
e extrai essas opções dos campos indexados:
CREATE SEARCH INDEX myIndex ON `mydataset.table1` (ALL COLUMNS) OPTIONS ( analyzer = 'LOG_ANALYZER', analyzer_options = '{ "delimiters" : [".", "-"] }', data_types = ['STRING', 'INT64', 'TIMESTAMP'] ); SELECT index_name, option_name, option_type, option_value FROM mydataset.INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS WHERE table_name='table1';
O resultado será semelhante ao seguinte:
+------------+------------------+---------------+----------------------------------+ | index_name | option_name | option_type | option_value | +------------+------------------+---------------+----------------------------------+ | myIndex | analyzer | STRING | LOG_ANALYZER | | myIndex | analyzer_options | STRING | { "delimiters": [".", "-"] } | | myIndex | data_types | ARRAY<STRING> | ["STRING", "INT64", "TIMESTAMP"] | +------------+------------------+---------------+----------------------------------+
O exemplo a seguir cria uma opção de índice de pesquisa para colunas de table1
e extrai essas opções dos campos indexados. Se uma opção
não existir, a opção padrão será produzida:
CREATE SEARCH INDEX myIndex ON `mydataset.table1` (ALL COLUMNS) OPTIONS ( analyzer = 'NO_OP_ANALYZER' ); SELECT index_name, option_name, option_type, option_value FROM mydataset.INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS WHERE table_name='table1';
O resultado será semelhante ao seguinte:
+------------+------------------+---------------+----------------+ | index_name | option_name | option_type | option_value | +------------+------------------+---------------+----------------+ | myIndex | analyzer | STRING | NO_OP_ANALYZER | | myIndex | data_types | ARRAY<STRING> | ["STRING"] | +------------+------------------+---------------+----------------+
O exemplo a seguir não cria opções de índice de pesquisa para colunas de table1
e extrai as opções padrão dos campos indexados:
CREATE SEARCH INDEX myIndex ON `mydataset.table1` (ALL COLUMNS); SELECT index_name, option_name, option_type, option_value FROM mydataset.INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS WHERE table_name='table1';
O resultado será semelhante ao seguinte:
+------------+------------------+---------------+----------------+ | index_name | option_name | option_type | option_value | +------------+------------------+---------------+----------------+ | myIndex | analyzer | STRING | LOG_ANALYZER | | myIndex | data_types | ARRAY<STRING> | ["STRING"] | +------------+------------------+---------------+----------------+