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 il nostro consiglio. 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
eeurope-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 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
Nella console Google Cloud, vai alla pagina BigQuery.
Per aprire la scheda Consigli, fai clic su > Visualizza tutti i consigli.
ConsigliNella scheda Consigli sono elencati tutti i consigli disponibili per il tuo progetto.
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 colonnaexample_column
per risparmiare una quantità approssimativa di byte e slot.Per ulteriori informazioni sull'approfondimento e sul suggerimento della tabella, fai clic su un consiglio.
In alternativa, puoi visualizzare tutti i suggerimenti disponibili per il tuo progetto o organizzazione facendo clic su Consigli nella barra di navigazione laterale.
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:
PROJECT_NAME
: il nome del progetto che contiene la tabella BigQueryREGION_NAME
: la regione in cui si trova il tuo progetto nelFORMAT_TYPE
: supportato Formato di output dell'interfaccia a riga di comando gcloud: per esempio, JSON
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 maggiori informazioni su altri campi della risposta del motore per suggerimenti, consulta Risorsa REST:
projects.locations.recommendersrecommendation
. - Per saperne di più sull'utilizzo dell'API Recommender, consulta Utilizzo dell'API - Suggerimenti.
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:
PROJECT_NAME
: il nome del progetto che contiene la tabella BigQueryREGION_NAME
: la regione in cui si trova il tuo progetto nelFORMAT_TYPE
: supportato Formato di output dell'interfaccia a riga di comando gcloud: per esempio, JSON
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 |
- Per maggiori informazioni su altri campi nella risposta degli insight, consulta Risorsa REST:
projects.locations.insightTypes.insights
. - Per saperne di più sull'utilizzo degli insight, consulta Utilizzo dell'API: insight.
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 CLIPROJECT_NAME
: il nome del progetto contenente la tabella BigQuery
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 maggiori informazioni su altri campi della risposta del motore per suggerimenti, consulta Risorsa REST:
projects.locations.recommendersrecommendation
. - Per saperne di più sull'utilizzo dell'API Recommender, consulta Utilizzo dell'API - Suggerimenti.
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 CLIPROJECT_NAME
: il nome del progetto contenente la tabella BigQuery
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 |
- Per maggiori informazioni su altri campi nella risposta degli insight, consulta Risorsa REST:
projects.locations.insightTypes.insights
. - Per saperne di più sull'utilizzo degli insight, consulta Utilizzo dell'API: insight.
Risoluzione dei problemi
Problema: non viene visualizzato alcun consiglio per una tabella specifica.
I suggerimenti su partizioni e cluster potrebbero non essere visualizzati sotto quanto segue circostanze:
- La tabella è inferiore a 10 GB.
- La tabella ha un costo di scrittura elevato da parte del data Manipulation Language (DML) operazioni.
- 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.