Introduzione alle viste logiche
Questo documento fornisce una panoramica del supporto di BigQuery per le viste logiche.
Panoramica
Una vista è una tabella virtuale definita da una query SQL. Il tipo di visualizzazione predefinito per BigQuery è una visualizzazione logica. I risultati della query contengono solo i dati delle tabelle e dei campi specificati nella query che definisce la vista.
La query che definisce una vista viene eseguita ogni volta che viene eseguita una query sulla vista.
Tipi di visualizzazioni
Sebbene le viste logiche siano il tipo di vista predefinito, se esegui spesso query su una vista di grandi dimensioni o con un costo computazionale elevato, ti consigliamo di creare una vista materializzata, ovvero una vista precalcolata che memorizza periodicamente nella cache i risultati di una query per migliorare le prestazioni e l'efficienza.
Tuttavia, spesso puoi migliorare il rendimento di una vista logica senza dover creare una vista materializzata eseguendo query solo su un sottoinsieme di dati o utilizzando altre tecniche.
Puoi anche creare una vista autorizzata per condividere un sottoinsieme di dati da un set di dati di origine a una vista in un set di dati secondario. Puoi quindi condividere questa vista con utenti e gruppi (principali) specifici che possono visualizzare i dati che condividi ed eseguire query su di essi, ma che non possono accedere direttamente al set di dati di origine.
Puoi creare una vista autorizzata per una vista logica o materializzata. Una vista autorizzata per una vista materializzata è chiamata vista materializzata autorizzata.
Casi d'uso
Ecco alcuni casi d'uso comuni per le visualizzazioni:
- Fornisci un nome facilmente riutilizzabile per una query complessa o un insieme limitato di dati a cui puoi poi autorizzare altri utenti ad accedere. Dopo aver creato una vista, un utente può eseguire query sulla vista come farebbe con una tabella.
- Astratti e memorizza la logica di calcolo e join in un oggetto comune per semplificare l'utilizzo delle query.
- Fornire l'accesso a un sottoinsieme di dati e alla logica di calcolo senza fornire l'accesso alle tabelle di base.
- Ottimizza le query con un costo computazionale elevato e risultati di set di dati di piccole dimensioni per diversi casi d'uso.
Puoi utilizzare le visualizzazioni anche in altri contesti:
- Come origine dati per uno strumento di visualizzazione come Looker Studio.
- Come mezzo per condividere i dati con gli abbonati di Analytics Hub.
Confronto con le viste materializzate
Le viste logiche sono virtuali e forniscono un riferimento riutilizzabile a un insieme di dati, ma non archiviano fisicamente alcun dato. Le viste materializzate vengono definite utilizzando SQL, come una vista logica, ma archiviano fisicamente i dati utilizzati da BigQuery per migliorare le prestazioni. Per un ulteriore confronto, consulta Funzionalità delle visualizzazioni con dati memorizzati.
Limitazioni delle visualizzazioni logiche
Le visualizzazioni BigQuery sono soggette alle seguenti limitazioni:
- Le visualizzazioni sono di sola lettura. Ad esempio, non puoi eseguire query che inseriscono, aggiornano o eliminano i dati.
- Il set di dati contenente la visualizzazione e il set di dati contenente le tabelle a cui fa riferimento la visualizzazione devono trovarsi nella stessa località.
- Un riferimento all'interno di una vista deve essere qualificato con un set di dati. Il set di dati predefinito non influisce sul corpo di una visualizzazione.
- Non puoi utilizzare il metodo dell'API JSON
TableDataList
per recuperare i dati da una visualizzazione. Per ulteriori informazioni, consulta Tabledata: list. - Non puoi combinare query GoogleSQL e SQL precedenti quando utilizzi le viste. Una query GoogleSQL non può fare riferimento a una vista definita utilizzando la sintassi SQL precedente.
- Non puoi fare riferimento ai parametri di query nelle visualizzazioni.
- Gli schemi delle tabelle sottostanti vengono archiviati con la visualizzazione al momento della sua creazione. Se le colonne vengono aggiunte, eliminate o modificate dopo la creazione della vista, la vista non viene aggiornata automaticamente e lo schema riportato rimane impreciso fino a quando la definizione SQL della vista non viene modificata o la vista non viene ricreata. Anche se lo schema segnalato potrebbe essere impreciso, tutte le query inviate producono risultati accurati.
- Non puoi aggiornare automaticamente una vista SQL precedente alla sintassi GoogleSQL. Per modificare la query utilizzata per definire una visualizzazione, puoi utilizzare quanto segue:
- L'opzione Modifica query nella console Google Cloud
- Il comando
bq update --view
nello strumento a riga di comando bq - Le librerie client di BigQuery
- I metodi API update o patch.
- Non puoi includere una funzione definita dall'utente temporanea o una tabella temporanea nella query SQL che definisce una vista.
- Non puoi fare riferimento a una vista in una query della tabella con caratteri jolly.
Quote per le visualizzazioni logiche
Per informazioni sulle quote e sui limiti che si applicano alle visualizzazioni, consulta Limiti delle visualizzazioni.
Le query SQL utilizzate per definire le visualizzazioni sono soggette anche alle quote dei job di query.
Prezzi delle visualizzazioni logiche
Per impostazione predefinita, BigQuery utilizza le visualizzazioni logiche, non le visualizzazioni materializzate. Poiché le viste non sono materializzate per impostazione predefinita, la query che definisce la vista viene eseguita ogni volta che viene eseguita una query sulla vista. Le query vengono fatturate in base alla quantità totale di dati in tutti i campi della tabella a cui fa riferimento direttamente o indirettamente la query di primo livello.
- Per i prezzi generali delle query, consulta Prezzi di Compute on demand.
- Per i prezzi associati alle visualizzazioni materializzate, consulta Prezzi delle visualizzazioni materializzate.
Sicurezza delle visualizzazioni logiche
Per controllare l'accesso alle visualizzazioni in BigQuery, consulta Visualizzazioni autorizzate.
Passaggi successivi
- Per informazioni sulla creazione di viste, consulta Creare viste.
- Per informazioni sulla creazione di una vista autorizzata, consulta Creare viste autorizzate.
- Per informazioni su come ottenere i metadati delle visualizzazioni, consulta la sezione Recupero delle informazioni sulle viste.
- Per saperne di più sulla gestione delle visualizzazioni, consulta Gestire le visualizzazioni.