Vue SEARCH_INDEX_OPTIONS
La vue INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS
contient une ligne pour chaque option d'index de recherche d'un ensemble de données.
Autorisations requises
Pour afficher les métadonnées d'index de recherche, vous devez disposer de l'autorisation IAM (gestion de l'authentification et des accès) bigquery.tables.get
ou bigquery.tables.list
sur la table contenant l'index. Chacun des rôles IAM prédéfinis suivants inclut au moins l'une de ces autorisations :
roles/bigquery.admin
roles/bigquery.dataEditor
roles/bigquery.dataOwner
roles/bigquery.dataViewer
roles/bigquery.metadataViewer
roles/bigquery.user
Pour plus d'informations sur les autorisations BigQuery, consultez la page Contrôle des accès avec IAM.
Schéma
Lorsque vous interrogez la vueINFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS
, les résultats de la requête contiennent une ligne pour chaque option d'index de recherche d'un ensemble de données.
La vue INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS
présente le schéma suivant :
Nom de la colonne | Type de données | Valeur |
---|---|---|
index_catalog |
STRING |
Nom du projet qui contient l'ensemble de données. |
index_schema |
STRING |
Nom de l'ensemble de données contenant l'index. |
table_name |
STRING |
Nom de la table de base sur laquelle l'index est créé. |
index_name |
STRING |
Nom de l'index. |
option_name |
STRING |
Nom de l'option, qui peut être l'un des suivants : analyzer , analyzer_options ou data_types .
|
option_type |
STRING |
Type de l'option. |
option_value |
STRING |
Valeur de l'option. |
Champ d'application et syntaxe
Les requêtes exécutées sur cette vue doivent être associées à un qualificatif d'ensemble de données. Le tableau suivant explique le champ d'application de la région pour cette vue :
Nom de la vue | Champ d'application de la ressource | Champ d'application de la région |
---|---|---|
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS |
Niveau de l'ensemble de données | Emplacement d'un ensemble de données |
Facultatif : PROJECT_ID
: ID de votre projet Google Cloud. Si non spécifié, le projet par défaut est utilisé.
DATASET_ID
: ID de votre ensemble de données. Pour en savoir plus, consultez la section Qualificatif d'ensemble de données.
Exemple
-- Returns metadata for search index options in a single dataset.
SELECT * FROM myDataset.INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS;
Exemple
L'exemple suivant crée trois options d'index de recherche pour les colonnes de la table1
, puis extrait ces options à partir des champs qui sont indexés :
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';
Le résultat ressemble à ce qui suit :
+------------+------------------+---------------+----------------------------------+ | 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"] | +------------+------------------+---------------+----------------------------------+
L'exemple suivant crée une option d'index de recherche pour les colonnes de la table1
, puis extrait ces options à partir des champs qui sont indexés. Si aucune option n'existe, l'option par défaut est générée :
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';
Le résultat ressemble à ce qui suit :
+------------+------------------+---------------+----------------+ | index_name | option_name | option_type | option_value | +------------+------------------+---------------+----------------+ | myIndex | analyzer | STRING | NO_OP_ANALYZER | | myIndex | data_types | ARRAY<STRING> | ["STRING"] | +------------+------------------+---------------+----------------+
L'exemple suivant ne crée aucune option d'index de recherche pour les colonnes de la table1
, puis extrait les options par défaut à partir des champs qui sont indexés :
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';
Le résultat ressemble à ce qui suit :
+------------+------------------+---------------+----------------+ | index_name | option_name | option_type | option_value | +------------+------------------+---------------+----------------+ | myIndex | analyzer | STRING | LOG_ANALYZER | | myIndex | data_types | ARRAY<STRING> | ["STRING"] | +------------+------------------+---------------+----------------+