Vue INFORMATION_SCHEMA.INSIGHTS
Pour demander des conseils ou obtenir de l'aide pour cette fonctionnalité, envoyez un e-mail à l'adresse bq-recommendations+feedback@google.com.
La vue INFORMATION_SCHEMA.INSIGHTS
contient des insights sur toutes les recommandations BigQuery du projet en cours. BigQuery récupère les insights pour tous les types d'insights BigQuery à partir du Centre de recommandations et les présente dans cette vue. Les insights BigQuery sont toujours associés à une recommandation.
La vue INFORMATION_SCHEMA.INSIGHTS
accepte les recommandations suivantes :
- Recommandations de partitionnement et de clustering
- Recommandations concernant les vues matérialisées
- Recommandations de rôles pour les ensembles de données BigQuery
Autorisation requise
Pour afficher des insights avec la vue INFORMATION_SCHEMA.INSIGHTS
, vous devez disposer des autorisations requises pour l'outil de recommandation correspondant. La vue INFORMATION_SCHEMA.INSIGHTS
ne renvoie que les insights des recommandations que vous êtes autorisé à consulter.
Demandez à votre administrateur de vous accorder l'accès pour afficher les insights. Pour connaître les autorisations requises pour chaque outil de recommandation, consultez les éléments suivants:
- Autorisations de l'outil de recommandation de partitionnement et de clusters
- Autorisations concernant les recommandations de vues matérialisées
- Autorisations concernant les recommandations de rôles pour les ensembles de données
Schéma
La vue INFORMATION_SCHEMA.INSIGHTS
présente le schéma suivant :
Nom de la colonne | Type de données | Valeur |
---|---|---|
insight_id |
STRING |
ID encodé en base64 contenant le type et l'ID de l'insight |
insight_type |
STRING |
Type de l'insight. Par exemple, google.bigquery.materializedview.Insight . |
subtype |
STRING |
Sous-type de l'insight. |
project_id |
STRING |
ID du projet. |
project_number |
STRING |
Numéro du projet. |
description |
STRING |
Description de la recommandation. |
last_updated_time |
TIMESTAMP |
Ce champ indique l'heure à laquelle l'insight a été actualisé pour la dernière fois. |
category |
STRING |
Catégorie d'optimisation de l'impact. |
target_resources |
STRING |
Noms complets des ressources ciblées par cet insight. |
state |
STRING |
État de l'insight. Pour obtenir la liste des valeurs possibles, consultez Valeur. |
severity |
STRING |
Gravité de l'insight. Pour obtenir la liste des valeurs possibles, consultez la section Gravité. |
associated_recommendation_ids |
STRING |
Noms complets des recommandations auxquelles cet insight est associé. Le nom de la recommandation correspond à la représentation encodée en base64 du type de l'outil de recommandation et de l'ID de la recommandation. |
additional_details |
RECORD |
Informations supplémentaires sur l'insight.
|
Champ d'application et syntaxe
Les requêtes exécutées sur cette vue doivent inclure un qualificatif de région. L'ID de projet est facultatif. Si aucun ID de projet n'est spécifié, le projet dans lequel la requête est exécutée est utilisé.
Nom de la vue | Champ d'application de la ressource | Champ d'application de la région |
---|---|---|
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.INSIGHTS[_BY_PROJECT] |
Niveau Projet | REGION |
Facultatif : PROJECT_ID
: ID de votre projet Google Cloud. Si non spécifié, le projet par défaut est utilisé.
REGION
: tout nom de région d'ensemble de données.
Par exemple, `region-us`
.
Exemple
Pour exécuter la requête sur un projet autre que celui par défaut, ajoutez l'ID du projet en respectant le format suivant :
`PROJECT_ID`.`region-REGION_NAME`.INFORMATION_SCHEMA.INSIGHTS
PROJECT_ID
: ID du projet.REGION_NAME
: région de votre projet
Par exemple, `myproject`.`region-us`.INFORMATION_SCHEMA.INSIGHTS
.
Afficher des insights actifs avec des économies
L'exemple suivant joint la vue "Insights" à la vue "Recommandations" pour renvoyer trois recommandations pour les insights qui sont ACTIFS dans la catégorie "COÛT" :
WITH
insights as (SELECT * FROM `region-us`.INFORMATION_SCHEMA.INSIGHTS),
recs as (SELECT recommender, recommendation_id, additional_details FROM `region-us`.INFORMATION_SCHEMA.RECOMMENDATIONS)
SELECT
recommender,
target_resources,
LAX_INT64(recs.additional_details.overview.bytesSavedMonthly) / POW(1024, 3) as est_gb_saved_monthly,
LAX_INT64(recs.additional_details.overview.slotMsSavedMonthly) / (1000 * 3600) as slot_hours_saved_monthly,
insights.additional_details.observation_period_seconds / 86400 as observation_period_days,
last_updated_time
FROM
insights
JOIN recs
ON
recommendation_id in UNNEST(associated_recommendation_ids)
WHERE
state = 'ACTIVE'
AND
category = 'COST'
LIMIT 3;
Le résultat ressemble à ce qui suit :
+---------------------------------------------------+---------------------+--------------------+--------------------------+-------------------------+---------------------+ | recommender | target_resource | gb_saved_monthly | slot_hours_saved_monthly | observation_period_days | last_updated_time | +---------------------------------------------------+---------------------+--------------------+--------------------------+-------------------------+---------------------+ | google.bigquery.table.PartitionClusterRecommender | ["table_resource1"] | 3934.07264107652 | 10.499466666666667 | 30.0 | 2024-07-01 16:41:25 | | google.bigquery.table.PartitionClusterRecommender | ["table_resource2"] | 4393.7416711859405 | 56.61476777777777 | 30.0 | 2024-07-01 16:41:25 | | google.bigquery.materializedview.Recommender | ["project_resource"]| 140805.38289248943 | 9613.139166666666 | 2.0 | 2024-07-01 13:00:31 | +---------------------------------------------------+---------------------+--------------------+--------------------------+-------------------------+---------------------+