Visualizza i suggerimenti su partizioni e cluster

Questo documento descrive come funziona il motore per suggerimenti di partizioni e cluster e come per visualizzare consigli e approfondimenti.

Il motore per suggerimenti di partizionamento e clustering di BigQuery genera partition o cluster per ottimizzare le tabelle BigQuery. Il motore per suggerimenti analizza i flussi di lavoro nelle tabelle BigQuery e offre per ottimizzare i flussi di lavoro e i costi delle query utilizzando il partizionamento delle tabelle o il clustering delle tabelle.

Per ulteriori informazioni sul servizio motore per suggerimenti, consulta Panoramica del motore per suggerimenti.

Come funziona il motore per suggerimenti

Per generare un suggerimento, il motore per suggerimenti di partizionamento e clustering utilizza i dati di esecuzione del carico di lavoro del progetto degli ultimi 30 giorni per analizzare Tabella BigQuery per un partizionamento e un clustering non ottimali configurazioni. Il motore per suggerimenti usa anche il machine learning per prevedere quanto l'esecuzione del carico di lavoro può essere ottimizzata con partizioni o configurazioni di clustering. Se il motore per suggerimenti rileva che il partizionamento il clustering di una tabella consente risparmi significativi, il motore per suggerimenti genera un consiglio per i nostri esperti. Il motore per suggerimenti di partizionamento e clustering genera i seguenti tipi di suggerimenti:

Tipo di tabella esistente Sottotipo di suggerimento Esempio di consiglio
Non partizionato, non in cluster Partition "Risparmia circa 64 ore di slot al mese eseguendo il partizionamento su column_C per DAY"
Non partizionato, non in cluster Cluster "Risparmia circa 64 ore di slot al mese eseguendo il clustering su column_C"
Partizionate, non in cluster Cluster "Risparmia circa 64 ore di slot al mese eseguendo il clustering su column_C"

Ogni consiglio è composto da tre parti:

  • Indicazioni per eseguire il partizionamento o il cluster di una tabella specifica
  • La colonna specifica in una tabella da partizionare o raggruppare
  • Risparmi mensili stimati per l'applicazione del consiglio

Per calcolare i potenziali risparmi sul carico di lavoro, il motore per suggerimenti presuppone che i dati dei carichi di lavoro di esecuzione storici degli ultimi 30 giorni rappresentino il carico di lavoro futuro.

L'API per suggerimenti restituisce anche informazioni sui carichi di lavoro delle tabelle sotto forma di insight. Gli approfondimenti sono risultati che ti aiutano a comprendere il carico di lavoro del progetto, fornendo maggiore contesto su come una partizione il suggerimento del cluster può migliorare i costi dei carichi di lavoro.

Limitazioni

Il motore per suggerimenti di partizionamento e clustering esclude le query SQL precedente nel suo e analisi.

Il motore per suggerimenti di partizionamento e clustering non supporta le risorse archiviati nelle seguenti regioni:

  • europe-central2, europe-west8, europe-west9 europe-west12, europe-north1 e europe-southwest1
  • us-east1, us-east5, us-south1
  • me-central1, me-central2, me-west1
  • australia-southeast2
  • southamerica-west1

Prima di iniziare

Prima di poter visualizzare i suggerimenti su partizioni e cluster, devi abilitare l'API Recommender.

Autorizzazioni obbligatorie

Per ottenere le autorizzazioni necessarie per accedere ai suggerimenti su partizioni e cluster, chiedi all'amministratore di concederti Ruolo IAM Visualizzatore motore per suggerimenti sul clustering e partizionamento BigQuery (roles/recommender.bigqueryPartitionClusterViewer). Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

Questo ruolo predefinito contiene le autorizzazioni necessarie per accedere ai suggerimenti su partizioni e cluster. Per vedere le autorizzazioni esatte obbligatorie, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per accedere ai suggerimenti su partizioni e cluster, sono necessarie le seguenti autorizzazioni:

  • recommender.bigqueryPartitionClusterRecommendations.get
  • recommender.bigqueryPartitionClusterRecommendations.list

Potresti anche riuscire a ottenere queste autorizzazioni con ruoli personalizzati e altri ruoli predefiniti.

Per ulteriori informazioni su ruoli e autorizzazioni IAM in per BigQuery, consulta Introduzione a IAM.

Visualizza i suggerimenti

Questa sezione descrive come visualizzare i suggerimenti su partizioni e cluster e insight utilizzando la console Google Cloud, Google Cloud CLI o l'API Recommender.

Seleziona una delle seguenti opzioni:

Console

  1. Nella console Google Cloud, vai alla pagina BigQuery.

    Vai a BigQuery

  2. Per aprire la scheda Consigli, fai clic su Consigli > Visualizza tutti i consigli.

    Fai clic su Consigli per visualizzare tutti i consigli.

    Nella scheda Consigli sono elencati tutti i consigli disponibili per il tuo progetto.

  3. Nel riquadro Ottimizza i costi dei carichi di lavoro BigQuery, fai clic su Visualizza tutto.

    La tabella dei suggerimenti sui costi elenca tutti i suggerimenti generati per per il progetto attuale. Ad esempio, il seguente screenshot mostra che il motore per suggerimenti ha analizzato la tabella example_table e poi ha consigliato raggruppando la colonna example_column per risparmiare una quantità approssimativa di byte e slot.

    Tabella dei suggerimenti con suggerimenti su partizionamento e clustering.

  4. Per visualizzare ulteriori informazioni sull'approfondimento e sul suggerimento della tabella, fai clic su un consiglio.

gcloud

Per visualizzare i suggerimenti su partizioni o cluster per un progetto specifico, usa Il comando gcloud recommender recommendations list:

gcloud recommender recommendations list \
    --project=PROJECT_NAME \
    --location=REGION_NAME \
    --recommender=google.bigquery.table.PartitionClusterRecommender \
    --format=FORMAT_TYPE \

Sostituisci quanto segue:

Nella tabella seguente vengono descritti i campi importanti della risposta dell'API per suggerimenti:

Proprietà Pertinente per sottotipo Descrizione
recommenderSubtype Partizione o cluster Indica il tipo di suggerimento.
content.overview.partitionColumn Partition Nome della colonna di partizionamento consigliato.
content.overview.partitionTimeUnit Partition Unità di tempo consigliata per il partizionamento. Ad esempio, DAY indica è consigliabile includere partizioni giornaliere nella colonna consigliata.
content.overview.clusterColumns Cluster Nomi delle colonne di clustering consigliati.

Per visualizzare gli insight tabella con gcloud CLI, utilizza il comando Comando gcloud recommender insights list:

gcloud recommender insights list \
    --project=PROJECT_NAME \
    --location=REGION_NAME \
    --insight-type=google.bigquery.table.StatsInsight \
    --format=FORMAT_TYPE \

Sostituisci quanto segue:

La seguente tabella descrive i campi importanti della risposta dell'API Insights:

Proprietà Pertinente per sottotipo Descrizione
content.existingPartitionColumn Cluster Colonna di partizionamento esistente, se presente
content.tableSizeTb Tutti Dimensioni della tabella in terabyte
content.bytesReadMonthly Tutti Byte mensili letti dalla tabella
content.slotMsConsumedMonthly Tutti Millisecondi di slot mensili utilizzati dal carico di lavoro in esecuzione sulla tabella
content.queryJobsCountMonthly Tutti Conteggio mensile dei job in esecuzione nella tabella

API REST

Per visualizzare i suggerimenti su partizioni o cluster per un progetto specifico, utilizzare l'API REST. Con ciascun comando, devi fornire un metodo di autenticazione che puoi ottenere usando gcloud CLI. Per ulteriori informazioni informazioni su come ottenere un token di autenticazione, consulta Metodi per ottenere un token ID.

Puoi utilizzare la richiesta curl list per visualizzare tutti i consigli per un progetto specifico:

curl
    -H "Authorization: Bearer $GCLOUD_AUTH_TOKEN"
    -H "x-goog-user-project: PROJECT_NAME" https://recommender.googleapis.com/v1/projects/my-project/locations/us/recommenders/google.bigquery.table.PartitionClusterRecommender/recommendations

Sostituisci quanto segue:

  • GCLOUD_AUTH_TOKEN: il nome di un indirizzo valido Token di accesso a gcloud CLI
  • PROJECT_NAME: il nome del progetto contenente la tabella BigQuery
Nella tabella seguente vengono descritti i campi importanti della risposta dell'API per suggerimenti:

Proprietà Pertinente per sottotipo Descrizione
recommenderSubtype Partizione o cluster Indica il tipo di suggerimento.
content.overview.partitionColumn Partition Nome della colonna di partizionamento consigliato.
content.overview.partitionTimeUnit Partition Unità di tempo consigliata per il partizionamento. Ad esempio, DAY indica è consigliabile includere partizioni giornaliere nella colonna consigliata.
content.overview.clusterColumns Cluster Nomi delle colonne di clustering consigliati.

Per visualizzare gli insight tabella utilizzando l'API REST, esegui questo comando :

curl
-H "Authorization: Bearer $GCLOUD_AUTH_TOKEN"
-H "x-goog-user-project: PROJECT_NAME" https://recommender.googleapis.com/v1/projects/my-project/locations/us/insightTypes/google.bigquery.table.StatsInsight/insights

Sostituisci quanto segue:

  • GCLOUD_AUTH_TOKEN: il nome di un indirizzo valido Token di accesso a gcloud CLI
  • PROJECT_NAME: il nome del progetto contenente la tabella BigQuery
La seguente tabella descrive i campi importanti della risposta dell'API Insights:

Proprietà Pertinente per sottotipo Descrizione
content.existingPartitionColumn Cluster Colonna di partizionamento esistente, se presente
content.tableSizeTb Tutti Dimensioni della tabella in terabyte
content.bytesReadMonthly Tutti Byte mensili letti dalla tabella
content.slotMsConsumedMonthly Tutti Millisecondi di slot mensili utilizzati dal carico di lavoro in esecuzione sulla tabella
content.queryJobsCountMonthly Tutti Conteggio mensile dei job in esecuzione nella tabella

Risoluzione dei problemi

Problema: non viene visualizzato alcun consiglio per una tabella specifica.

I suggerimenti su partizioni e cluster potrebbero non essere visualizzati nei seguenti elementi circostanze:

  • La tabella è inferiore a 10 GB.
  • La tabella ha un costo di scrittura elevato da parte del data Manipulation Language (DML) operations.
  • La tabella non è stata letta negli ultimi 30 giorni.
  • Il risparmio mensile stimato è troppo trascurabile (meno di un'ora di slot di risparmio).
  • La tabella è già in cluster.

Prezzi

La visualizzazione non comporta alcun costo o impatto negativo sulle prestazioni dei carichi di lavoro personalizzati.

Passaggi successivi