Prenotare la capacità di BI Engine

Puoi acquistare la capacità di BigQuery BI Engine creando una prenotazione. La prenotazione è associata a un progetto e a una regione che identifichi al momento della creazione. BI Engine utilizza questa capacità per memorizzare i dati nella cache. Per informazioni sulle dimensioni massime delle prenotazioni per BI Engine, consulta Quote e limiti.

Quando usi BigQuery BI Engine, gli addebiti si basano sulla capacità di BI Engine acquistata per il progetto. Le prenotazioni vengono addebitate in base a GB/ora, con prezzi per regione in base ai prezzi on demand. Se hai un impegno basato sulla capacità, potrai usufruire di uno sconto fino al 100% in base all'impegno attivo. Per maggiori dettagli, consulta la sezione Prezzi basati sulla capacità.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per creare ed eliminare le prenotazioni, chiedi all'amministratore di concederti il ruolo IAM Amministratore risorse BigQuery (roles/bigquery.resourceAdmin) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Crea una prenotazione

Per prenotare la capacità on demand di BI Engine:

Console

  1. Nella pagina BigQuery, in Amministrazione, vai alla pagina BI Engine.

    Vai a BI Engine

  2. Fai clic su Crea prenotazione.

  3. Nella pagina Crea prenotazione, per il passaggio 1:

    • Verifica il nome del progetto.
    • Scegli la tua località. La località deve corrispondere alla località dei set di dati su cui stai eseguendo query.
    • Regola il dispositivo di scorrimento in base alla quantità di memoria che stai riservando. L'esempio seguente imposta la capacità su 2 GB. Il valore massimo corrente è 250 GB. Puoi richiedere un aumento della capacità di prenotazione massima per i tuoi progetti. Gli aumenti delle prenotazioni sono disponibili nella maggior parte delle regioni e l'elaborazione può richiedere da 3 giorni a una settimana.

      Posizione della capacità di BI Engine

  4. Fai clic su Avanti.

  5. Tabelle preferite (facoltative). Le tabelle preferite ti consentono di limitare l'accelerazione di BI Engine a un insieme specificato di tabelle. Tutte le altre tabelle utilizzano slot BigQuery standard.

    Nel campo Table Id (ID tabella), specifica la tabella che vuoi accelerare utilizzando il pattern: PROJECT.DATASET.TABLE.

    Sostituisci quanto segue:

    • PROJECT: il tuo ID progetto Google Cloud
    • DATASET: il set di dati
    • TABLE: la tabella che vuoi accelerare
  6. Fai clic su Avanti.

  7. Per il passaggio 3, controlla i dettagli della prenotazione, quindi fai clic su Crea.

Dopo aver confermato la prenotazione, i dettagli vengono visualizzati nella pagina Prenotazioni.

SQL

Utilizza l'istruzione DDL ALTER BI_CAPACITY SET OPTIONS per creare o modificare una prenotazione di BI Engine.

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

    Vai a BigQuery

  2. Nell'editor di query, inserisci la seguente istruzione:

    ALTER BI_CAPACITY `PROJECT_ID.LOCATION_ID.default`
    SET OPTIONS (
      size_gb = VALUE,
      preferred_tables =
        ['TABLE_PROJECT_ID.DATASET.TABLE1',
        'TABLE_PROJECT_ID.DATASET.TABLE2']);

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID facoltativo del progetto che beneficia dell'accelerazione di BI Engine. Se omesso, viene utilizzato il progetto predefinito.
    • LOCATION_ID: la posizione in cui devono essere memorizzati nella cache i dati, con prefisso region-. Esempi: region-us, region-us-central1.
    • VALUE: la dimensione INT64 della prenotazione per la capacità di BI Engine in gigabyte, da 1 a 250 GB. Puoi richiedere un aumento della capacità di prenotazione massima per i tuoi progetti. Gli aumenti delle prenotazioni sono disponibili nella maggior parte delle regioni e l'elaborazione può richiedere da 3 giorni a una settimana. L'impostazione VALUE sostituisce il valore esistente, se presente. Se imposti il valore NULL, il valore dell'opzione viene cancellato.
    • TABLE_PROJECT_ID.DATASET.TABLE: l'elenco facoltativo delle tabelle a cui viene fatto riferimento a cui deve essere applicata l'accelerazione. Formato: TABLE_PROJECT_ID.DATASET.TABLE or DATASET.TABLE. Se il progetto viene omesso, viene utilizzato il progetto predefinito.

  3. Fai clic su Esegui.

Per ulteriori informazioni su come eseguire query, consulta Eseguire una query interattiva.

bq

Utilizza il comando bq update e fornisci l'istruzione DDL (Data Definition Language) come parametro di query:

bq --project_id=PROJECT_ID update \
    --bi_reservation_size=SIZE \
    --location=LOCATION \
    --reservation

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto
  • SIZE: la capacità di memoria della prenotazione in gigabyte, da 1 a 250 GB. Puoi richiedere un aumento della capacità di prenotazione massima per i tuoi progetti. Gli aumenti delle prenotazioni sono disponibili nella maggior parte delle regioni e l'elaborazione può richiedere da 3 giorni a una settimana.
  • LOCATION: la posizione del set di dati su cui stai eseguendo una query

Stimare e misurare la capacità

Per stimare i requisiti di capacità per una prenotazione di BI Engine:

  1. Visualizza la visualizzazione TOTAL_LOGICAL_BYTES per determinare le dimensioni logiche della tabella e utilizzale per la prenotazione iniziale di BI Engine. Ad esempio:

    SELECT
      SUM(TOTAL_LOGICAL_BYTES) / 1024.0 / 1024.0 / 1024.0 AS logical_size_gb
    FROM
      `region-us.INFORMATION_SCHEMA.TABLE_STORAGE`
    WHERE
      TABLE_NAME IN UNNEST(["Table1", "Table2"]);

    Ad esempio, per le query su un insieme di tabelle contenenti un totale di 200 GB di dati, come best practice puoi iniziare con una prenotazione di BI Engine di 200 GB. Le query più selettive che utilizzano solo un sottoinsieme di campi o partizioni disponibili potrebbero iniziare con una dimensione della prenotazione più piccola.

  2. Esegui tutte le query che richiedono l'ottimizzazione e che sono state create nello stesso progetto e nella stessa regione della prenotazione di BI Engine. L'obiettivo è approssimare il carico di lavoro da ottimizzare. Il caricamento più elevato richiede più memoria per gestire le query. I dati vengono caricati in BI Engine dopo la ricezione della query.

  3. Confronta la prenotazione RAM di BI Engine con il numero di byte utilizzati, reservation/used_bytes, nelle metriche bigquerybiengine di Cloud Monitoring.

  4. Modifica la capacità di prenotazione in base ai risultati. In molti casi d'uso, una prenotazione più piccola può accelerare la maggior parte delle query, risparmiando denaro e risorse. Per ulteriori informazioni sul monitoraggio di BI Engine, consulta Monitoraggio di BI Engine.

I seguenti fattori influiscono sulle dimensioni della prenotazione BI Engine:

  • BI Engine memorizza nella cache solo le righe e le colonne a cui viene eseguito spesso l'accesso e che sono necessarie per elaborare la query.
  • Quando una prenotazione è completamente utilizzata, BI Engine tenta di scaricare i dati meno utilizzati di recente per liberare la capacità per nuove query.
  • Se più query con un'elaborazione intensiva utilizzano lo stesso set di dati, BI Engine carica copie aggiuntive dei dati per ridistribuirli e ottimizzare i tempi di risposta.

Modifica una prenotazione

Per modificare una prenotazione esistente:

Console

Per specificare un insieme di tabelle per l'accelerazione in una prenotazione esistente, segui questi passaggi:

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

    Vai a BigQuery

  2. Nel menu di navigazione di BigQuery, fai clic su Motore BI.

    Se il progetto è configurato per le tabelle preferite, nella colonna Tabelle preferite viene visualizzato un insieme di tabelle.

    immagine

  3. Nella riga della prenotazione da modificare, fai clic sull'icona nella colonna Azioni e poi seleziona Modifica.

  4. Regola il dispositivo di scorrimento GiB di capacità in base alla quantità di capacità di memoria che stai riservando. Fai clic su Avanti.

  5. Tabelle preferite: per specificare un insieme di tabelle per l'accelerazione in una prenotazione esistente, nel campo Table Id (ID tabella) specifica la tabella che vuoi accelerare utilizzando il pattern:PROJECT.DATASET.TABLE.

    Sostituisci quanto segue:

    • PROJECT: il tuo ID progetto Google Cloud
    • DATASET: il set di dati
    • TABLE: la tabella che vuoi accelerare

    L'applicazione delle modifiche può richiedere fino a dieci secondi. Solo le tabelle nell'elenco delle tabelle preferite possono utilizzare l'accelerazione di BI Engine.

    Fai clic su Avanti.

  6. Conferma la prenotazione modificata. Se accetti, fai clic su Aggiorna.

SQL

Puoi utilizzare l'istruzione DDL ALTER BI_CAPACITY SET OPTIONS per creare o modificare una prenotazione BI Engine.

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

    Vai a BigQuery

  2. Nell'editor di query, inserisci la seguente istruzione:

    ALTER BI_CAPACITY `PROJECT_ID.LOCATION_ID.default`
    SET OPTIONS (
      size_gb = VALUE,
      preferred_tables =
        [`TABLE_PROJECT_ID.DATASET.TABLE1`,
        `TABLE_PROJECT_ID.DATASET.TABLE2`]);

    Sostituisci quanto segue:

    • PROJECT_ID: ID facoltativo del progetto che beneficia dell'accelerazione di BI Engine. Se omesso, viene utilizzato il progetto predefinito.
    • LOCATION_ID: la posizione in cui devono essere memorizzati nella cache i dati, con prefisso region-. Esempi: region-us, region-us-central1.
    • VALUE: la dimensione INT64 della prenotazione per la capacità di BI Engine in gigabyte, da 1 a 250 GB. Puoi richiedere un aumento della capacità di prenotazione massima per i tuoi progetti. Gli aumenti delle prenotazioni sono disponibili nella maggior parte delle regioni e l'elaborazione può richiedere da 3 giorni a una settimana. L'impostazione VALUE sostituisce il valore esistente, se presente. Se imposti il valore NULL, il valore dell'opzione viene cancellato.
    • TABLE_PROJECT_ID.DATASET.TABLE: elenco facoltativo di tabelle preferite a cui applicare l'accelerazione. Formato: TABLE_PROJECT_ID.DATASET.TABLE or DATASET.TABLE. Se il progetto viene omesso, viene utilizzato il progetto predefinito.

  3. Fai clic su Esegui.

Per ulteriori informazioni su come eseguire query, consulta Eseguire una query interattiva.

Eliminazione di una prenotazione

Per eliminare una prenotazione di capacità:

Console

  1. Nella pagina BigQuery, vai a Amministrazione e poi alla pagina BI Engine.

    Vai a BI Engine

  2. Nella sezione Prenotazioni, individua la tua prenotazione.

  3. Nella colonna Azioni, fai clic sull'icona a destra della prenotazione e scegli Elimina.

  4. Nella finestra di dialogo Vuoi eliminare la prenotazione?, inserisci Elimina e poi fai clic su ELIMINA.

SQL

Imposta le opzioni per la capacità di BI Engine.

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

    Vai a BigQuery

  2. Nell'editor di query, inserisci la seguente istruzione:

    ALTER BI_CAPACITY `PROJECT_ID.LOCATION_ID.default`
    SET OPTIONS (
      size_gb = 0);

    Sostituisci quanto segue:

    • PROJECT_ID: ID facoltativo del progetto che beneficia dell'accelerazione di BI Engine. Se omesso, viene utilizzato il progetto predefinito.
    • LOCATION_ID: la posizione in cui devono essere memorizzati nella cache i dati, con prefisso region-. Esempi: region-us, region-us-central1.

    Quando elimini tutte le prenotazioni di capacità in un progetto, BI Engine viene disattivato per quel progetto.

  3. Fai clic su Esegui.

Per ulteriori informazioni su come eseguire query, consulta Eseguire una query interattiva.

bq

Utilizza il comando bq update e specifica l'istruzione DDL come parametro di query.

bq --project_id="PROJECT_ID" \
update --reservation
    --bi_reservation_size=0 \
    --location=LOCATION

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto
  • LOCATION: la posizione del set di dati su cui stai eseguendo una query

Verificare le informazioni di BI Engine

Puoi ottenere informazioni sulla capacità di BI Engine eseguendo query sulle tabelle INFORMATION_SCHEMA.

Verificare lo stato della prenotazione

Per verificare lo stato della prenotazione, incluso un insieme di tavoli preferiti, visualizza la vista INFORMATION_SCHEMA.BI_CAPACITIES utilizzando una query SQL. Ad esempio:

SELECT
  *
FROM
  `<PROJECT_ID>.region-<REGION>.INFORMATION_SCHEMA.BI_CAPACITIES`;

Nella console Google Cloud, il risultato di questa query SQL è simile al seguente:

immagine

Visualizzare le modifiche alla prenotazione

Per visualizzare la cronologia delle modifiche per una determinata prenotazione, utilizza la visualizzazione INFORMATION_SCHEMA.BI_CAPACITY_CHANGES con una query SQL. Ad esempio:

SELECT
  *
FROM
  `<PROJECT_ID>.region-<REGION>.INFORMATION_SCHEMA.BI_CAPACITY_CHANGES`
ORDER BY
  change_timestamp DESC
LIMIT 3;

Nella console Google Cloud, il risultato di questa query SQL è simile al seguente:

righe dei risultati con change_timestamp project_id project_number

Passaggi successivi