Che cos'è BI Engine?

BigQuery BI Engine è un servizio di analisi in memoria rapido che accelera molte query SQL in BigQuery memorizzando nella cache in modo intelligente i dati che utilizzi con maggiore frequenza. BI Engine può accelerare le query SQL da qualsiasi origine, incluse quelle scritte da strumenti di visualizzazione dei dati, e può gestire le tabelle memorizzate nella cache per l'ottimizzazione continua. Ciò consente di migliorare le prestazioni delle query senza ottimizzazione manuale o livelli di dati. Puoi utilizzare il clustering e il partizionamento per ottimizzare ulteriormente le prestazioni delle tabelle di grandi dimensioni con BI Engine.

Ad esempio, se la tua dashboard mostra solo i dati dell'ultimo trimestre, valuta la possibilità di eseguire il partizionamento delle tabelle in base al tempo in modo che solo le partizioni più recenti vengano caricate in memoria. Puoi anche combinare i vantaggi delle viste materializzate e di BI Engine. Questo approccio funziona in modo particolarmente efficace quando le viste materializzate vengono utilizzate per unire e suddividere i dati al fine di ottimizzare la loro struttura per BI Engine.

BI Engine offre i seguenti vantaggi:

  1. API BigQuery: BI Engine si integra direttamente con l'API BigQuery. Qualsiasi soluzione BI o applicazione personalizzata che funziona con l'API BigQuery tramite meccanismi standard come REST o driver JDBC e ODBC può utilizzare BI Engine senza modifiche.
  2. runtime vettoriale: con l'interfaccia SQL di BI Engine, BI Engine introduce una tecnica più moderna chiamata elaborazione vettoriale. L'utilizzo dell'elaborazione vettoriale in un motore di esecuzione rende un uso più efficiente dell'architettura moderna della CPU, operando su batch di dati alla volta. BI Engine utilizza inoltre codifiche avanzate dei dati, in particolare la codifica della lunghezza di esecuzione del dizionario, per comprimere ulteriormente i dati archiviati nel livello in memoria.
  3. Integrazione perfetta: BI Engine funziona con le funzionalità e i metadati di BigQuery, tra cui le viste autorizzate, la sicurezza a livello di colonna e il mascheramento dei dati.
  4. Prenotazioni: le prenotazioni BI Engine gestiscono l'allocazione della memoria a livello di località del progetto. BI Engine memorizza nella cache le colonne o le partizioni specifiche sottoposte a query, dando la priorità a quelle delle tabelle contrassegnate come preferite.

Informazioni sull'interfaccia SQL di BI Engine

L'interfaccia SQL di BI Engine espande BI Engine per integrarsi con altri strumenti di business intelligence (BI) come Looker, Tableau, Power BI e applicazioni personalizzate per accelerare l'esplorazione e l'analisi dei dati. Questa pagina fornisce una panoramica dell'interfaccia SQL di BI Engine e delle funzionalità espanse che aggiunge a BI Engine.

Architettura di BI Engine

Casi d'uso di BI Engine

BI Engine può accelerare in modo significativo molte query SQL, incluse quelle utilizzate per le dashboard BI. L'accelerazione è più efficace se identifichi le tabelle essenziali per le tue query e poi le contrassegni come tabelle preferite. Per utilizzare BI Engine, crea una prenotazione che definisca la capacità di archiviazione dedicata a BI Engine. Puoi consentire a BigQuery di determinare quali tabelle memorizzare nella cache in base ai pattern di utilizzo del progetto oppure contrassegnare tabelle specifiche per evitare che altro traffico interferisca con l'accelerazione.

BI Engine è utile nei seguenti casi d'uso:

  • Utilizza strumenti BI per analizzare i dati: l'interfaccia SQL di BI Engine può accelerare le query di BigQuery indipendentemente dal fatto che vengano eseguite nella console BigQuery, nella libreria client o tramite un'API, un connettore ODBC o JDBC. Ciò può migliorare notevolmente le prestazioni delle dashboard collegate a BigQuery tramite una connessione (API) o connettori integrati.
  • Le query vengono eseguite più di frequente su alcune tabelle: BI Engine consente di definire tabelle preferite specifiche per l'accelerazione. Questa funzionalità è utile se hai un sottoinsieme di tabelle su cui vengono eseguite query più spesso o che vengono utilizzate per dashboard ad alta visibilità.

BI Engine potrebbe non soddisfare le tue esigenze nei seguenti casi:

  • Utilizzo di caratteri jolly nelle query: le query che fanno riferimento a tabelle con caratteri jolly non sono supportate da BI Engine e non traggono vantaggio dall'accelerazione.

  • Fai molto affidamento sulle funzionalità di BigQuery non supportate da BI Engine. Sebbene BI Engine supporti la maggior parte delle funzioni e degli operatori SQL per la connessione degli strumenti di business intelligence (BI) a BigQuery, ci sono funzionalità non supportate, tra cui tabelle esterne e funzioni non SQL definite dall'utente.

Considerazioni su BI Engine

Quando decidi come configurare BI Engine, considera quanto segue:

Garantisci l'accelerazione per query specifiche

Puoi assicurarti che un determinato insieme di query venga sempre accelerato creando un progetto separato con una prenotazione BI Engine. Per farlo, devi assicurarti che la prenotazione di BI Engine nel progetto sia abbastanza grande da corrispondere alle dimensioni di tutte le tabelle utilizzate nelle query e designare queste tabelle come tabelle preferite per BI Engine. Solo le query che necessitano di accelerazione devono essere eseguite in quel progetto.

Riduci a icona le unioni

BI Engine funziona al meglio con i join o i join pre-aggregati e con dati in un numero limitato di join. Ciò è particolarmente vero quando un lato del join è grande e gli altri sono molto più piccoli, ad esempio quando esegui una query su una tabella dei fatti di grandi dimensioni unita a una di dimensioni ridotte. Puoi combinare BI Engine con viste materializzate che eseguono join per produrre un'unica tabella piatta di grandi dimensioni. In questo modo, non è necessario eseguire gli stessi join per ogni query.

Comprendi l'impatto di BI Engine

Per comprendere l'utilizzo di BI Engine, consulta Monitorare BI Engine con Cloud Monitoring o eseguire una query sulle viste INFORMATION_SCHEMA.BI_CAPACITIES e INFORMATION_SCHEMA.BI_CAPACITY_CHANGES. Assicurati di disattivare l'opzione Utilizza risultati memorizzati nella cache in BigQuery per ottenere il confronto più accurato. Per ulteriori informazioni, consulta Utilizzare i risultati delle query memorizzati nella cache.

Quote e limitazioni

Consulta Quote e limiti di BigQuery per quote e limiti che si applicano a BI Engine.

Prezzi

Per informazioni sui prezzi di BI Engine, consulta la pagina Prezzi di BigQuery.

Passaggi successivi