Risolvere i problemi relativi alle viste materializzate
Questo documento ti aiuta a risolvere i problemi comuni relativi alle viste materializzate in BigQuery, inclusi gli errori durante la creazione di viste materializzate, gli errori di aggiornamento e le prestazioni delle query impreviste.
Flusso di lavoro di diagnostica
Quando esamini un problema relativo a una vista materializzata, segui questi passaggi diagnostici per identificare la causa principale:
Verifica il tipo di tabella e i metadati. Verifica che la tabella di destinazione sia una vista materializzata e controlla le opzioni di configurazione:
SELECT table_name, table_type FROM `PROJECT_ID.DATASET`.INFORMATION_SCHEMA.TABLES WHERE table_name = 'MATERIALIZED_VIEW';
Sostituisci quanto segue:
PROJECT_ID: il progetto che contiene la vista materializzata.DATASET: il set di dati che contiene la vista materializzata.MATERIALIZED_VIEW: il nome della vista materializzata.
Per esaminare le opzioni di configurazione come
enable_refresh,refresh_interval_minutesemax_staleness, esegui una query sulla vistaINFORMATION_SCHEMA.TABLE_OPTIONS:SELECT table_name, option_name, option_value FROM `PROJECT_ID.DATASET`.INFORMATION_SCHEMA.TABLE_OPTIONS WHERE table_name = 'MATERIALIZED_VIEW';
Controlla l'ultimo stato di aggiornamento. Esegui una query sulla visualizzazione
INFORMATION_SCHEMA.MATERIALIZED_VIEWSper controllare quando è stato eseguito l'ultimo aggiornamento della visualizzazione e se l'ultimo aggiornamento automatico ha riscontrato errori:SELECT table_name, last_refresh_time, refresh_watermark, last_refresh_status FROM `PROJECT_ID.DATASET`.INFORMATION_SCHEMA.MATERIALIZED_VIEWS WHERE table_name = 'MATERIALIZED_VIEW';
Se
last_refresh_statusnon èNULL, l'ultimo job di aggiornamento automatico non è andato a buon fine. Selast_refresh_timeèNULLo precedente, la vista materializzata non ha mai completato correttamente un aggiornamento o non è riuscita ad aggiornarsi.Esamina la cronologia e gli errori dei job di aggiornamento. Esegui query sulla visualizzazione
INFORMATION_SCHEMA.JOBS_BY_PROJECTper esaminare i recenti job di aggiornamento automatico:SELECT job_id, creation_time, end_time, state, error_result.reason AS error_reason, error_result.message AS error_message, total_slot_ms, total_bytes_processed FROM `region-REGION`.INFORMATION_SCHEMA.JOBS_BY_PROJECT WHERE job_id LIKE '%materialized_view_refresh_%' AND creation_time >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 7 DAY) ORDER BY creation_time DESC LIMIT 50;
Sostituisci
REGIONcon la regione del tuo set di dati, ad esempiousoeurope-west3.Esamina le statistiche di esecuzione delle query e dell'ottimizzazione intelligente. Se una query viene eseguita più lentamente del previsto, esamina il campo
materialized_view_statisticsnelle statistiche del job per verificare se lo strumento di ottimizzazione delle query ha utilizzato la vista materializzata:SELECT job_id, total_slot_ms, total_bytes_billed, materialized_view_statistics FROM `region-REGION`.INFORMATION_SCHEMA.JOBS_BY_PROJECT WHERE job_id = 'JOB_ID';
Sostituisci
JOB_IDcon l'ID del job di query.
Risolvere i problemi relativi agli errori di creazione vista materializzata
Questa sezione descrive gli errori che potresti riscontrare durante la creazione di viste materializzate, insieme alle cause e ai passaggi di risoluzione.
Operatore o sintassi SQL non supportati
Messaggio di errore:
Unsupported operator in materialized view: KEYWORD
o
Materialized view queries do not support FEATURE
Causa:
Le viste materializzate incrementali supportano un sottoinsieme limitato della sintassi SQL per consentire la manutenzione incrementale e l'ottimizzazione intelligente. Potresti riscontrare questo errore se la query che definisce la vista materializzata include funzionalità non supportate, come le seguenti:
- Funzioni non deterministiche (ad esempio
CURRENT_TIMESTAMP(),RAND()oSESSION_USER()) - Funzioni finestra di analisi con
OVER() - Clausole
ORDER BYoLIMIT DISTINCTsenza aggregazione- Subquery nelle clausole
WHEREoSELECT - Funzioni definite dall'utente
Risoluzione:
- Consulta l'elenco delle funzionalità SQL non supportate.
Se la query richiede funzionalità SQL più ampie, valuta la possibilità di creare una vista materializzata non incrementale impostando
allow_non_incremental_definition = truee definendo un intervallomax_staleness:CREATE MATERIALIZED VIEW `PROJECT_ID.DATASET.MATERIALIZED_VIEW` OPTIONS ( enable_refresh = true, refresh_interval_minutes = 60, max_staleness = INTERVAL "4" HOUR, allow_non_incremental_definition = true ) AS SELECT ...
Sostituisci quanto segue:
PROJECT_ID: il progetto che contiene la vista materializzata.DATASET: il set di dati che contiene la vista materializzata.MATERIALIZED_VIEW: il nome della vista materializzata.
Le viste materializzate non incrementali supportano un insieme più ampio di query SQL, ma eseguono sempre aggiornamenti completi e non supportano l'ottimizzazione intelligente.
Se la sintassi SQL richiesta non è supportata nelle viste materializzate non incrementali, utilizza una vista logica o una query pianificata per scrivere i risultati in una tabella di destinazione.
max_staleness non valido con tabella di base CDC
Messaggio di errore:
Materialized view PROJECT_ID:DATASET.MATERIALIZED_VIEW has a CDC table as base table PROJECT_ID:DATASET.TABLE but does not have valid max_staleness. Materialized views over CDC tables must have max_staleness set at least 2 times the base table's max_staleness: 0-0 0 0:0:0
Causa:
Quando crei una vista materializzata su una tabella di base di acquisizione dei dati di modifica (CDC),
l'opzione max_staleness della vista materializzata deve essere configurata in modo che sia almeno
il doppio del valore di max_staleness della tabella di base.
Risoluzione:
- Controlla il valore
max_stalenessdella tabella CDC di base eseguendo una query sulla vistaINFORMATION_SCHEMA.TABLE_OPTIONS. - Imposta l'opzione
max_stalenessdella vista materializzata su un valore che sia almeno il doppio del valoremax_stalenessdella tabella di base. Ad esempio, se la tabella CDC di base ha un valoremax_stalenessdi 15 minuti, imposta il valoremax_stalenessdella vista materializzata su almeno 30 minuti. Per saperne di più, consulta "IstruzioneALTER MATERIALIZED VIEW SET OPTIONS" in Istruzioni DDL (Data Definition Language) in GoogleSQL.
Vista materializzata partizionata sulla tabella di base non partizionata
Messaggio di errore:
Partitioned incremental materialized view must be created on top of partitioned managed storage base table.
Causa:
Per creare una vista materializzata incrementale partizionata, anche la tabella di base sottostante deve essere partizionata e la colonna di partizionamento della vista materializzata deve essere allineata alla colonna di partizionamento della tabella di base.
Risoluzione:
- Se vuoi che la vista materializzata sia partizionata, assicurati che la tabella di base sia partizionata e configura la vista materializzata in modo che utilizzi la stessa colonna di partizionamento. Per ulteriori informazioni, vedi Allineamento delle partizioni.
- Se la tabella di base non è partizionata, crea la vista materializzata senza una clausola
PARTITION BY. - Se hai bisogno di una vista partizionata su una tabella non partizionata, crea una
vista materializzata non incrementale
con
allow_non_incremental_definition = trueemax_staleness. Le viste materializzate non incrementali non richiedono l'allineamento delle partizioni con le tabelle di base.
La replica del set di dati tra regioni è di sola lettura
Messaggio di errore:
The dataset replica of the cross region dataset 'PROJECT_ID:DATASET' in region 'REGION' is read-only because it's not the primary replica.
Causa:
Quando utilizzi la replica dei set di dati tra regioni, le repliche secondarie sono di sola lettura. Non puoi creare una vista materializzata in una regione di replica secondaria.
Risoluzione:
Crea la vista materializzata nella regione primaria del set di dati replicato. Se hai bisogno della vista materializzata nella regione di replica, crea una replica della vista materializzata in quella regione. Per saperne di più, consulta Gestire le vista materializzata materializzate.
Superamento del limite della tabella di base
Messaggio di errore:
Materialized views support at most 10 source tables, query has NUMBER_OF_SOURCE_TABLES
Causa:
Le viste materializzate BigQuery supportano i join su un massimo di 10 tabelle di base.
Risoluzione:
Esegui il refactoring della query che definisce la vista materializzata in modo che faccia riferimento a un massimo di 10 tabelle di base. Se la tua architettura richiede l'unione di più di 10 tabelle, valuta la possibilità di unire in precedenza le tabelle statiche o delle dimensioni in tabelle intermedie oppure utilizza una query pianificata o una pipeline Dataform.
Risorse superate durante la creazione della vista materializzata
Messaggio di errore:
Resources exceeded during query execution: The data accessed in this query is too large; consider accessing fewer tables, or for partitioned tables, fewer partitions.
Causa:
Quando crei una vista materializzata, BigQuery esegue un aggiornamento completo iniziale per popolare la vista. Se la tabella di base sottostante contiene enormi quantità di dati non partizionati o se la vista produce aggregazioni intermedie con cardinalità elevata, l'aggiornamento iniziale può superare i limiti di memoria dello slot o della query.
Risoluzione:
- Aggiungi condizioni di filtro nella clausola
WHEREdella vista materializzata per limitare l'ambito dei dati scansionati al sottoinsieme richiesto. - Allinea il partizionamento della vista materializzata a quello della tabella di base per eliminare le partizioni durante gli aggiornamenti.
- Se utilizzi il calcolo on demand, valuta la possibilità di utilizzare le versioni di BigQuery con prenotazioni di slot dedicati per fornire capacità di calcolo sufficiente per gli aggiornamenti di grandi dimensioni.
Problemi relativi alle tabelle BigLake e alla memorizzazione nella cache dei metadati
Sintomi:
Le viste materializzate sulle tabelle esterne BigLake non vengono create o aggiornate.
Causa:
Le viste materializzate sulle tabelle esterne hanno requisiti architetturali specifici:
- Le viste materializzate sono supportate solo sulle tabelle BigLake con la memorizzazione nella cache dei metadati abilitata.
- Il valore
max_stalenessdella vista materializzata deve essere maggiore del valoremax_stalenessdella tabella di base BigLake sottostante. - Una vista materializzata può fare riferimento a tabelle esterne BigLake o a tabelle di archiviazione gestita BigQuery, ma non può combinare i tipi in una singola vista materializzata.
Risoluzione:
- Assicurati che la memorizzazione nella cache dei metadati sia abilitata in tutte le tabelle di base BigLake sottostanti.
- Configura
max_stalenessnella vista materializzata con un valore superiore all'intervallo della cache dei metadati delle tabelle di base. Ad esempio, se l'intervallo di memorizzazione nella cache della tabella di base è di 30 minuti, impostamax_stalenessdella vista materializzata su almeno 45 minuti per consentire un buffer per l'esecuzione dell'aggiornamento. - Non combinare tabelle esterne e tabelle gestite in una definizione di vista materializzata.
Risolvere i problemi di aggiornamento
Questa sezione descrive le cause comuni di errori di aggiornamento e ritardi nelle prestazioni per le viste materializzate.
Modifiche allo schema della tabella di base (invalidQuery)
Sintomi:
La colonna last_refresh_status in
INFORMATION_SCHEMA.MATERIALIZED_VIEWS mostra un errore invalidQuery e
gli aggiornamenti automatici smettono di essere eseguiti.
Causa:
Se lo schema di una tabella di base cambia, ad esempio eliminando una colonna a cui fa riferimento la vista materializzata, rinominando una colonna o modificando il tipo di dati di una colonna, la query sottostante che definisce la vista materializzata diventa non valida.
Risoluzione:
BigQuery non supporta la modifica dello schema delle colonne di una vista materializzata esistente. Per risolvere l'invalidazione dello schema:
Ricrea la vista materializzata utilizzando l'istruzione
CREATE OR REPLACE MATERIALIZED VIEW:CREATE OR REPLACE MATERIALIZED VIEW `PROJECT_ID.DATASET.MATERIALIZED_VIEW` OPTIONS ( enable_refresh = true, refresh_interval_minutes = 30 ) AS SELECT ...
Sostituisci quanto segue:
PROJECT_ID: il progetto che contiene la vista materializzata.DATASET: il set di dati che contiene la vista materializzata.MATERIALIZED_VIEW: il nome della vista materializzata.
Verifica che la nuova definizione corrisponda allo schema della tabella di base aggiornato.
Scadenza, troncamento o modifiche DML della partizione della tabella di base
Sintomi:
Gli aggiornamenti della vista materializzata non vanno a buon fine oppure le query sulla vista materializzata tornano alla tabella di base e vengono eseguite lentamente.
Causa:
Le seguenti operazioni sulla tabella di base invalidano i dati della vista materializzata esistente:
- Troncamento di una tabella di base o di una partizione della tabella di base (
TRUNCATE TABLE) - Scadenza partizione in una tabella di base
- Istruzioni DML (Data Manipulation Language)
DELETEoMERGEsu tabelle non partizionate o tabelle di base unite secondarie
Quando si verificano queste operazioni, le partizioni interessate (o l'intera vista materializzataa per le tabelle non partizionate) vengono contrassegnate come non valide.
Risoluzione:
Attiva manualmente un aggiornamento per ripristinare la vista materializzata a uno stato valido:
CALL BQ.REFRESH_MATERIALIZED_VIEW('PROJECT_ID.DATASET.MATERIALIZED_VIEW');
Se esegui pipeline ETL batch che eseguono regolarmente istruzioni DML o troncamento dei dati, disattiva l'aggiornamento automatico e chiama
BQ.REFRESH_MATERIALIZED_VIEWalla fine della pipeline ETL. Per saperne di più, consulta Aggiornamento automatico.
Aggiorna i job che vanno in timeout
Sintomi:
I job di aggiornamento non riescono a essere eseguiti e restituiscono un errore di timeout dopo diverse ore (fino a 12 ore).
Causa:
Man mano che le tabelle di base crescono, aumenta il volume di dati elaborati durante un aggiornamento. Se la query della vista materializzata non filtra le righe o se la vista non può eseguire aggiornamenti incrementali a causa dell'invalidazione completa, ogni aggiornamento richiede una scansione completa delle tabelle di base, che può esaurire il tempo di slot.
Risoluzione:
- Aggiungi i criteri di filtro nella clausola
WHEREdella vista materializzata per limitare i dati storici non necessari. - Assicurati che la vista materializzata sia allineata alle partizioni della tabella di base in modo che vengano aggiornate in modo incrementale solo le partizioni modificate.
- Alloca una prenotazione di slot con capacità sufficiente per ospitare il carico di lavoro di aggiornamento.
Messaggio di aggiornamento duplicato
Messaggio:
Materialized view is already being refreshed.
Causa:
Se le tabelle di base in una vista materializzata JOIN vengono aggiornate contemporaneamente o se viene attivato un aggiornamento manuale mentre è già in corso un aggiornamento automatico, BigQuery rileva l'aggiornamento simultaneo e annulla il job duplicato.
Risoluzione:
Questo comportamento è normale e transitorio. Il job duplicato viene interrotto per evitare l'elaborazione ridondante e non ti viene addebitato il tentativo di aggiornamento duplicato. Non è richiesta alcuna azione da parte tua.
Ritardi nell'aggiornamento dei dati di streaming (archiviazione ottimizzata per la scrittura)
Sintomi:
Le query sulle tabelle di base con dati di streaming ad alta velocità non vengono visualizzate immediatamente nella vista materializzata oppure le query tornano alla tabella di base.
Causa:
I dati trasmessi in streaming in BigQuery utilizzando l'API Storage Write vengono inizialmente archiviati nello spazio di archiviazione ottimizzato per la scrittura (buffer di streaming). I job di aggiornamento della vista materializzata elaborano i dati dopo il commit e la conversione dal buffer di streaming in un archivio colonnare ottimizzato.
Per mantenere la coerenza in tempo reale, le query che leggono dalla vista materializzata leggono i dati di commit dalla vista materializzata e contemporaneamente leggono il delta direttamente dal buffer di streaming della tabella di base.
Risoluzione:
- Se è necessaria la coerenza di lettura in tempo reale sui dati di streaming, il pianificatore di query combina automaticamente i dati della vista materializzata con i delta della tabella di base.
- Se non è richiesta la coerenza in tempo reale e vuoi evitare di analizzare il buffer di streaming a ogni query, imposta
max_stalenessnella vista materializzata (ad esempio,max_staleness = INTERVAL "15" MINUTE). Le query possono quindi leggere direttamente dalla vista materializzata precalcolata senza l'elaborazione delta.
Risolvere i problemi relativi alle prestazioni delle query e all'ottimizzazione intelligente
Questa sezione descrive come risolvere i problemi relativi alle query che vengono eseguite più lentamente del previsto o che non sfruttano la regolazione intelligente.
Verificare l'utilizzo dell'ottimizzazione intelligente
Quando esegui una query su una tabella di base, BigQuery utilizza l'ottimizzazione intelligente per riscrivere automaticamente la query in modo da utilizzare una vista materializzata disponibile se migliora le prestazioni e riduce i costi.
Per verificare se una query ha utilizzato una vista materializzata, esamina il
campo materialized_view_statistics nei dettagli del job di query o esegui una query sulla
vista INFORMATION_SCHEMA.JOBS_BY_PROJECT:
SELECT job_id, total_slot_ms, total_bytes_billed, mv.table_reference.dataset_id, mv.table_reference.table_id, mv.chosen, mv.rejected_reason FROM `region-REGION`.INFORMATION_SCHEMA.JOBS_BY_PROJECT, UNNEST(materialized_view_statistics.materialized_view) AS mv WHERE job_id = 'JOB_ID';
Sostituisci quanto segue:
REGION: la regione del set di dati (ad esempio,usoeurope-west3).JOB_ID: l'ID del job di query.
Nell'oggetto materialized_view_statistics, ogni voce dell'array materialized_view contiene i seguenti campi:
table_reference: identifica il candidato alla vista materializzata.chosen: un valore booleano che indica se lo strumento di ottimizzazione delle query ha selezionato la vista materializzata per l'esecuzione (true) o l'ha rifiutata (false).estimated_bytes_saved: i byte stimati che la query ha evitato di analizzare utilizzando la vista materializzata.rejected_reason: sechosenèfalse, specifica il motivo per cui l'ottimizzatore ha rifiutato la vista materializzata.
Per ulteriori informazioni sui motivi di rifiuto e sull'enumerazione rejected_reason, consulta
Comprendere perché le viste materializzate sono state rifiutate.
Motivi comuni per il rifiuto di una vista materializzata
Quando chosen è false, esamina il valore di rejected_reason per diagnosticare la
causa:
Valore rejected_reason |
Descrizione | Risoluzione |
|---|---|---|
NO_DATA |
La vista materializzata non ha dati memorizzati nella cache perché non è ancora stata aggiornata o l'aggiornamento iniziale non è riuscito. | Attiva un aggiornamento manuale utilizzando CALL BQ.REFRESH_MATERIALIZED_VIEW(...). |
COST |
Lo strumento di ottimizzazione delle query ha stimato che l'esecuzione di query sulla tabella di base (o la lettura dalla cache delle query) è più economica rispetto all'esecuzione di query sulla vista materializzata. | Esamina i filtri e le partizioni delle query. Se la query della tabella di base esegue la scansione solo di una piccola partizione, mentre la vista materializzata si estende su più partizioni, l'esecuzione di query direttamente sulla tabella di base potrebbe essere più efficiente. |
BASE_TABLE_DATA_CHANGE |
Le modifiche ai dati in una o più tabelle di base hanno invalidato i dati memorizzati nella cache al di fuori della finestra di obsolescenza configurata. | Esegui un aggiornamento manuale o configura max_staleness per consentire alle query di leggere dati obsoleti senza eseguire il failover alle tabelle di base. |
BASE_TABLE_TRUNCATED |
Una tabella di base è stata troncata, invalidando tutti i dati della vista materializzata. | Aggiorna la vista materializzata dopo il ripopolamento dei dati. |
BASE_TABLE_EXPIRED_PARTITION |
Una partizione della tabella di base è scaduta. | Assicurati che le impostazioni di scadenza delle partizioni corrispondano tra la tabella di base e la vista materializzata e aggiorna la vista. |
BASE_TABLE_PARTITION_EXPIRATION_CHANGE |
È stata modificata la durata della scadenza della partizione di una tabella di base. | Aggiorna la vista materializzata per riallineare i metadati di scadenza della partizione. |
BASE_TABLE_INCOMPATIBLE_METADATA_CHANGE |
Si è verificata una modifica dei metadati in una tabella di base (ad esempio una modifica dello schema). | Ricrea la vista materializzata utilizzando CREATE OR REPLACE MATERIALIZED VIEW. |
BASE_TABLE_TOO_STALE |
I metadati memorizzati nella cache di una tabella di base (ad esempio in una tabella esterna BigLake) sono precedenti alla soglia consentita. | Aggiorna la cache dei metadati della tabella esterna. |
BASE_TABLE_FINE_GRAINED_SECURITY_POLICY |
L'utente della query non dispone dell'accesso in base a un criterio di controllo dell'accesso a livello di riga o colonna in una tabella di base. | Verifica le autorizzazioni IAM e le concessioni dei criteri per i dati. |
TIME_ZONE |
La visualizzazione è stata aggiornata utilizzando un fuso orario diverso da quello della query corrente. | Allinea le impostazioni del fuso orario tra l'ambiente e i job di aggiornamento. |
Vista materializzata non presa in considerazione (struttura della query non corrispondente)
Se una vista materializzata non è elencata in materialized_view_statistics, l'ottimizzatore delle query ha determinato durante l'analisi della sintassi che il pattern di query non corrisponde alla definizione della vista materializzata.
Le cause comuni includono:
- Mancata corrispondenza di aggregazione o filtro. La query utilizza funzioni di aggregazione,
colonne di raggruppamento o predicati di filtro che non possono essere calcolati dalle
aggregazioni precalcolate nella vista materializzata.
- Risoluzione: allinea le funzioni di aggregazione e i raggruppamenti tra le query e la definizione della vista materializzata.
- Viste materializzate non incrementali. Le visualizzazioni create con
allow_non_incremental_definition = truenon supportano la sintonizzazione intelligente.- Risoluzione: esegui query direttamente sulle viste materializzate non incrementali
specificando il nome della vista nella clausola
FROM.
- Risoluzione: esegui query direttamente sulle viste materializzate non incrementali
specificando il nome della vista nella clausola
- Query diretta su una visualizzazione obsoleta. Se esegui una query direttamente su una vista materializzata
con
max_stalenessimpostato, la query restituisce risultati precalcolati obsoleti fino amax_stalenesssenza l'elaborazione delta dalle tabelle di base.
Errore di schizzo HyperLogLog incompatibile
Messaggio di errore:
Invalid or incompatible sketch in HLL_COUNT.MERGE_PARTIAL
Causa:
Quando utilizzi funzioni di aggregazione approssimate come HLL_COUNT.INIT e
HLL_COUNT.MERGE_PARTIAL, BigQuery utilizza gli schizzi HyperLogLog.
Se il parametro di precisione specificato nella query non corrisponde a quello definito nella vista materializzata, l'operazione di unione degli schizzi non va a buon fine.
Risoluzione:
Assicurati che il parametro di precisione (ad esempio HLL_COUNT.INIT(x, 12)) sia
identico sia nella definizione della vista materializzata sia nelle query che fanno riferimento
o riscrivono la vista.
Risolvere i problemi relativi alla modifica della visualizzazione e alle modifiche dello schema
Questa sezione descrive i problemi che potresti riscontrare durante la modifica dello schema o delle opzioni di una vista materializzata.
Modifica dello schema della vista materializzata
Problema:
Se tenti di aggiungere o modificare colonne in una vista materializzata utilizzando ALTER TABLE
o la console Google Cloud , viene visualizzato un errore oppure l'opzione Modifica schema
non è disponibile.
Causa:
BigQuery non supporta la modifica diretta dello schema delle colonne di una vista materializzata.
Risoluzione:
Puoi modificare le opzioni della vista materializzata (ad esempio
enable_refresh,refresh_interval_minutesemax_staleness) utilizzando l'istruzioneALTER MATERIALIZED VIEW SET OPTIONS:ALTER MATERIALIZED VIEW `PROJECT_ID.DATASET.MATERIALIZED_VIEW` SET OPTIONS ( enable_refresh = true, refresh_interval_minutes = 20 );
Sostituisci quanto segue:
PROJECT_ID: il progetto che contiene la vista materializzata.DATASET: il set di dati che contiene la vista materializzata.MATERIALIZED_VIEW: il nome della vista materializzata.
Per modificare la definizione della query SQL, aggiungere colonne o modificare i tipi di dati delle colonne, ricrea la vista utilizzando
CREATE OR REPLACE MATERIALIZED VIEW:CREATE OR REPLACE MATERIALIZED VIEW `PROJECT_ID.DATASET.MATERIALIZED_VIEW` AS SELECT ...
Passaggi successivi
- Scopri come creare viste materializzate.
- Scopri come utilizzare le viste materializzate e l'ottimizzazione intelligente.
- Scopri come gestire e aggiornare le viste materializzate.
- Scopri come monitorare gli aggiornamenti e l'utilizzo delle viste materializzate.
- Scopri come risolvere i problemi generali di rendimento delle query.