Aggiornamento delle proprietà delle viste
Questo documento descrive come aggiornare le proprietà o i metadati della vista. Dopo aver creato una vista, puoi aggiornarne le seguenti proprietà:
Prima di iniziare
Concedi i ruoli IAM (Gestione di identità e accessi) che concedono agli utenti le autorizzazioni necessarie per eseguire ogni attività in questo documento.
Autorizzazioni obbligatorie
Per aggiornare una vista, devi disporre delle seguenti autorizzazioni IAM:
bigquery.tables.update
bigquery.tables.get
Ciascuno dei seguenti ruoli IAM predefiniti include le autorizzazioni necessarie per aggiornare una vista:
roles/bigquery.dataEditor
roles/bigquery.dataOwner
roles/bigquery.admin
Inoltre, se disponi dell'autorizzazione bigquery.datasets.create
, puoi aggiornare le tabelle e le viste nei set di dati che crei.
Se aggiorni la query SQL della vista, devi disporre anche delle autorizzazioni per eseguire query su qualsiasi tabella a cui fa riferimento la query SQL della vista.
Per ulteriori informazioni sui ruoli e sulle autorizzazioni IAM in BigQuery, consulta Ruoli e autorizzazioni predefiniti.
Aggiornamento di una query SQL di una vista
Puoi aggiornare la query SQL utilizzata per definire una vista:
- Utilizzo di Google Cloud Console
- Utilizzo del comando
bq update
dello strumento a riga di comandobq
- Chiamata al metodo API
tables.patch
- Utilizzo delle librerie client
Puoi cambiare il dialetto SQL da SQL precedente a SQL standard di Google nell'API o nello strumento a riga di comando bq
. Non puoi aggiornare una visualizzazione SQL precedente a Google Standard SQL in Google Cloud Console.
Per aggiornare la query SQL di una vista:
Console
Nel riquadro Explorer, espandi il progetto e il set di dati, quindi seleziona la visualizzazione.
Fai clic sulla scheda Dettagli.
Sopra la casella Query, fai clic sul pulsante Modifica query. Fai clic su Apri nella finestra di dialogo visualizzata.
Modifica la query SQL nella casella Editor query e fai clic su Salva visualizzazione.
Assicurati che tutti i campi siano corretti nella finestra di dialogo Salva visualizzazione, quindi fai clic su Salva.
bq
Esegui il comando bq update
con il flag --view
. Per utilizzare Google Standard SQL o per aggiornare il dialetto delle query da SQL precedente a Google Standard SQL, includi il flag --use_legacy_sql
e impostalo su false
.
Se la tua query fa riferimento a risorse di funzioni esterne definite dall'utente
archiviate in Cloud Storage o in file locali, utilizza il flag
--view_udf_resource
per specificare le risorse. Il flag --view_udf_resource
non è dimostrato qui. Per ulteriori informazioni sull'utilizzo delle funzioni definite dall'utente, consulta Funzioni definite dall'utente di Google SQL standard.
Se stai aggiornando una vista in un progetto diverso da quello predefinito, aggiungi l'ID progetto al nome del set di dati nel seguente formato:
project_id:dataset
.
bq update \ --use_legacy_sql=false \ --view_udf_resource=path_to_file \ --view='query' \ project_id:dataset.view
Sostituisci quanto segue:
- path_to_file: URI o percorso del file system locale di un file di codice da caricare e valutare immediatamente come risorsa di funzione definita dall'utente utilizzata dalla vista. Ripeti il flag per specificare più file.
- query: una query SQL standard di Google valida
- project_id: il tuo ID progetto
- dataset: il nome del set di dati contenente la vista che stai aggiornando
- view: il nome della vista che stai aggiornando
Esempi
Inserisci il comando seguente per aggiornare la query SQL per una vista denominata myview
in mydataset
. mydataset
è nel progetto predefinito. La query di esempio utilizzata per aggiornare i dati delle query di visualizzazione dal set di dati pubblico USA Name.
bq update \
--use_legacy_sql=false \
--view \
'SELECT
name,
number
FROM
`bigquery-public-data.usa_names.usa_1910_current`
WHERE
gender = "M"
ORDER BY
number DESC;' \
mydataset.myview
Inserisci il comando seguente per aggiornare la query SQL per una vista denominata myview
in mydataset
. mydataset
si trova in myotherproject
, non nel progetto predefinito. La query di esempio utilizzata per aggiornare i dati delle query di visualizzazione dal set di dati pubblico Nome USA.
bq update \
--use_legacy_sql=false \
--view \
'SELECT
name,
number
FROM
`bigquery-public-data.usa_names.usa_1910_current`
WHERE
gender = "M"
ORDER BY
number DESC;' \
myotherproject:mydataset.myview
API
Puoi aggiornare una vista chiamando il metodo tables.patch
con una risorsa della tabella che contiene una proprietà view
aggiornata. Poiché il metodo tables.update
sostituisce l'intera risorsa tabella, è preferibile il metodo tables.patch
.
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go nella guida rapida di BigQuery che utilizza librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Go di BigQuery.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java nella guida rapida di BigQuery che utilizza librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Java di BigQuery.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella guida rapida di BigQuery che utilizza librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Node.js di BigQuery.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python nella guida rapida di BigQuery che utilizza librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Python di BigQuery.
Aggiornamento della scadenza di una vista
Puoi impostare una data di scadenza della tabella predefinita a livello di set di dati (che influisce sia sulle tabelle che sulle viste) oppure puoi impostare la data di scadenza di una vista quando viene creata la vista. Se imposti la scadenza quando viene creata la vista, la scadenza predefinita della tabella del set di dati viene ignorata. Se non imposti una tabella predefinita con scadenza a livello di set di dati e non imposti una scadenza quando la vista viene creata, la vista non scade mai e devi eliminarla manualmente.
In qualsiasi momento dopo la creazione della visualizzazione, puoi aggiornarne la data di scadenza tramite:
- Utilizzo di Google Cloud Console
- Utilizzo di un'istruzione DDL (Data Definition Language) scritta nella sintassi SQL standard di Google
- Utilizzo del comando
bq update
dello strumento a riga di comandobq
- Chiamata al metodo API
tables.patch
- Utilizzo delle librerie client
Per aggiornare la data di scadenza di una vista:
Console
Seleziona la visualizzazione nel riquadro di navigazione.
Nella pagina Visualizza dettagli, fai clic sulla scheda Dettagli.
A destra di Visualizza informazioni, fai clic sull'icona di modifica a forma di matita.
Nella finestra di dialogo Visualizza informazioni, in Visualizza scadenza, fai clic su Specifica data.
Nel selettore della data, inserisci la data e l'ora di scadenza e fai clic su OK.
Fai clic su Aggiorna. La scadenza aggiornata viene visualizzata nella sezione Visualizza informazioni.
SQL
Le istruzioni DDL (Data Definition Language) consentono di creare e modificare tabelle e viste utilizzando la sintassi delle query Google Standard SQL.
Scopri di più sull'utilizzo delle istruzioni per la lingua della definizione dei dati.
Utilizza un'istruzione DDL per aggiornare la data di scadenza di una vista:
In Google Cloud Console, vai alla pagina BigQuery.
Nell'editor query, inserisci la seguente istruzione:
ALTER VIEW DATASET_ID.MY_VIEW SET OPTIONS ( expiration_timestamp = TIMESTAMP('NEW_TIMESTAMP'));
Sostituisci quanto segue:
- DATASET_ID: l'ID del set di dati contenente la tua vista
- MY_VIEW: il nome della vista da aggiornare.
- NEW_TIMESTAMP: un valore TIMESTAMP
Fai clic su
Esegui.
Per ulteriori informazioni su come eseguire le query, consulta la sezione Esecuzione di query interattive.
bq
Esegui il comando bq update
con il flag --expiration
. Se stai aggiornando una vista in un progetto diverso da quello predefinito, aggiungi l'ID progetto al nome del set di dati nel seguente formato:
project_id:dataset
.
bq update \ --expiration integer \ project_id:dataset.view
Sostituisci quanto segue:
- integer: la durata predefinita (in secondi) della tabella. Il valore minimo è 3600 secondi (un'ora). La scadenza viene valutata con l'ora corrente più il valore intero.
- project_id: il tuo ID progetto
- dataset: il nome del set di dati contenente la vista che stai aggiornando
- view: il nome della vista che stai aggiornando
Esempi
Inserisci il comando seguente per aggiornare la data di scadenza di myview
in mydataset
da 5 giorni (432000 secondi). mydataset
è nel tuo progetto predefinito.
bq update \
--expiration 432000 \
mydataset.myview
Inserisci il comando seguente per aggiornare la data di scadenza di myview
in mydataset
da 5 giorni (432000 secondi). mydataset
si trova in myotherproject
,
non è il tuo progetto predefinito.
bq update \
--expiration 432000 \
myotherproject:mydataset.myview
API
Chiama il metodo tables.patch
e utilizza la proprietà expirationTime
nella
risorsa tabella. Poiché il metodo tables.update
sostituisce l'intera risorsa tabella, è preferibile il metodo tables.patch
. Quando utilizzi l'API REST, la
scadenza della vista viene espressa in millisecondi.
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go nella guida rapida di BigQuery che utilizza librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Go di BigQuery.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java nella guida rapida di BigQuery che utilizza librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Java di BigQuery.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella guida rapida di BigQuery che utilizza librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Node.js di BigQuery.
Python
L'aggiornamento della scadenza di una vista è lo stesso processo dell'aggiornamento di una tabella.
Prima di provare questo esempio, segui le istruzioni di configurazione di Python nella guida rapida di BigQuery che utilizza librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Python di BigQuery.
Aggiornamento della descrizione di una vista
Puoi aggiornare la descrizione di una vista:
- Utilizzo di Google Cloud Console
- Utilizzo di un'istruzione DDL (Data Definition Language) scritta nella sintassi SQL standard di Google
- Utilizzo del comando
bq update
dello strumento a riga di comandobq
- Chiamata al metodo API
tables.patch
- Utilizzo delle librerie client
Per aggiornare la descrizione di una vista:
Console
Non puoi aggiungere una descrizione quando crei una vista utilizzando Google Cloud Console. Dopo aver creato la vista, puoi aggiungere una descrizione nella pagina Dettagli.
Nel riquadro Explorer, espandi il progetto e il set di dati, quindi seleziona la visualizzazione.
Fai clic sulla scheda Dettagli.
Fai clic sull'icona a forma di matita accanto a Descrizione.
Inserisci una descrizione nella finestra di dialogo. Fai clic su Aggiorna per salvare la nuova descrizione.
SQL
Le istruzioni DDL (Data Definition Language) consentono di creare e modificare tabelle e viste utilizzando la sintassi delle query Google Standard SQL.
Scopri di più sull'utilizzo delle istruzioni per la lingua della definizione dei dati.
Utilizza un'istruzione DDL per aggiornare la descrizione di una vista:
In Google Cloud Console, vai alla pagina BigQuery.
Nell'editor query, inserisci la seguente istruzione:
ALTER VIEW DATASET_ID.MY_VIEW SET OPTIONS ( description = 'NEW_DESCRIPTION');
Sostituisci quanto segue:
- DATASET_ID: l'ID del set di dati contenente la tua vista
- MY_VIEW: il nome della vista da aggiornare.
- NEW_DESCRIPTION: la descrizione della nuova visualizzazione
Fai clic su
Esegui.
Per ulteriori informazioni su come eseguire le query, consulta la sezione Esecuzione di query interattive.
bq
Esegui il comando bq update
con il flag --description
. Se stai aggiornando una vista in un progetto diverso da quello predefinito, aggiungi l'ID progetto al nome del set di dati nel seguente formato:
[PROJECT_ID]:[DATASET]
.
bq update \ --description "description" \ project_id:dataset.view
Sostituisci quanto segue:
- description: il testo che descrive la vista tra virgolette.
- project_id: ID del progetto.
- dataset: il nome del set di dati contenente la vista che stai aggiornando
- view: il nome della vista che stai aggiornando
Esempi
Inserisci il comando seguente per modificare la descrizione di myview
in
mydataset
a "Descrizione di myview." mydataset
è nel tuo progetto predefinito.
bq update \
--description "Description of myview" \
mydataset.myview
Inserisci il comando seguente per modificare la descrizione di myview
in mydataset
in "Descrizione di myview". mydataset
si trova in myotherproject
,
non è il tuo progetto predefinito.
bq update \
--description "Description of myview" \
myotherproject:mydataset.myview
API
Chiama il metodo tables.patch
e utilizza la proprietà description
per aggiornare la descrizione della vista nella risorsa tabella. Poiché il metodo tables.update
sostituisce l'intera risorsa tabella, è preferibile il metodo tables.patch
.
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go nella guida rapida di BigQuery che utilizza librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Go di BigQuery.
Java
L'aggiornamento della descrizione di una vista è uguale all'aggiornamento della descrizione di una tabella.
Prima di provare questo esempio, segui le istruzioni di configurazione di Java nella guida rapida di BigQuery che utilizza librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Java di BigQuery.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella guida rapida di BigQuery che utilizza librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Node.js di BigQuery.
Python
L'aggiornamento della descrizione di una vista è uguale all'aggiornamento della descrizione di una tabella.
Prima di provare questo esempio, segui le istruzioni di configurazione di Python nella guida rapida di BigQuery che utilizza librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Python di BigQuery.
Visualizza le impostazioni di sicurezza
Per controllare l'accesso alle viste in BigQuery, consulta Viste autorizzate.
Passaggi successivi
- Per ulteriori informazioni sulla gestione delle viste, inclusa la copia e l'eliminazione di una vista, consulta Gestione delle viste.
- Per informazioni sulla creazione delle viste, consulta Creazione delle viste.
- Per informazioni sulla creazione di una vista autorizzata, consulta la sezione Creazione di viste autorizzate.
- Per informazioni sulle visualizzazioni delle schede, consulta Visualizzazioni delle schede.
- Per informazioni su come ottenere i metadati della vista, consulta Informazioni sulle viste.