Aggiorna le proprietà del set di dati
Questo documento descrive come aggiornare le proprietà del set di dati in BigQuery. Dopo aver creato un set di dati, puoi aggiornare le seguenti proprietà del set di dati:
- Controlli dell'accesso
- Modello di fatturazione
- Tempo di scadenza predefinito per le nuove tabelle
- Scadenza della partizione predefinita per le nuove tabelle partizionate
- Modalità di arrotondamento predefinita per le nuove tabelle
- Descrizione
- Etichette
- Finestre di viaggio cronologico
Prima di iniziare
Concedi ruoli IAM (Identity and Access Management) che concedono agli utenti le autorizzazioni necessarie per eseguire ogni attività in questo documento.
Autorizzazioni obbligatorie
Per aggiornare le proprietà del set di dati, devi disporre delle seguenti autorizzazioni IAM:
bigquery.datasets.update
bigquery.datasets.setIamPolicy
(richiesto solo quando si aggiornano i controlli di accesso al set di dati nella console Google Cloud)
Il ruolo IAM predefinito roles/bigquery.dataOwner
include le autorizzazioni necessarie per aggiornare le proprietà del set di dati.
Inoltre, se disponi dell'autorizzazione bigquery.datasets.create
, puoi aggiornare le proprietà dei set di dati che crei.
Per ulteriori informazioni su ruoli e autorizzazioni IAM in BigQuery, vedi Ruoli e autorizzazioni predefiniti.
Aggiorna descrizioni set di dati
Puoi aggiornare la descrizione di un set di dati nei seguenti modi:
- Utilizzo della console Google Cloud.
- Viene utilizzato il comando
bq update
dello strumento a riga di comando bq. - Chiamata al metodo API
datasets.patch
. - Utilizzare le librerie client.
Per aggiornare la descrizione di un set di dati:
Console
Nel riquadro Spazio di esplorazione, espandi il progetto e seleziona un set di dati.
Espandi l'opzione
Azioni e fai clic su Apri.Nel riquadro Dettagli, fai clic su
Modifica dettagli per modificare il testo della descrizione.Nella finestra di dialogo Modifica dettagli visualizzata:
- Nel campo Descrizione, inserisci una descrizione o modifica la descrizione esistente.
- Per salvare il nuovo testo della descrizione, fai clic su Salva.
SQL
Per aggiornare la descrizione di un set di dati, utilizza l'istruzione ALTER SCHEMA SET OPTIONS
per impostare l'opzione description
.
L'esempio seguente imposta la descrizione su un set di dati denominato mydataset
:
Nella console Google Cloud, vai alla pagina BigQuery.
Nell'editor query, inserisci la seguente istruzione:
ALTER SCHEMA mydataset SET OPTIONS ( description = 'Description of mydataset');
Fai clic su
Esegui.
Per ulteriori informazioni su come eseguire le query, vedi Eseguire una query interattiva.
bq
Esegui il comando bq update
con il flag --description
. Se stai aggiornando un set di dati 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 "string" \ project_id:dataset
Sostituisci quanto segue:
string
: il testo che descrive il set di dati, tra virgoletteproject_id
: il tuo ID progettodataset
: il nome del set di dati che stai aggiornando
Esempi:
Inserisci il comando seguente per modificare la descrizione di mydataset
in
"Description of mydataset". mydataset
è nel tuo progetto predefinito.
bq update --description "Description of mydataset" mydataset
Inserisci il comando seguente per modificare la descrizione di mydataset
in
"Description of mydataset". Il set di dati si trova in myotherproject
, non nel progetto predefinito.
bq update \
--description "Description of mydataset" \
myotherproject:mydataset
API
Chiama datasets.patch
e aggiorna la proprietà description
nella risorsa del set di dati.
Poiché il metodo datasets.update
sostituisce l'intera risorsa del set di dati,
è preferibile il metodo datasets.patch
.
Go
Prima di provare questo esempio, segui le istruzioni per la configurazione di Go nella guida rapida di BigQuery sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Go di BigQuery.
Per eseguire l'autenticazione su BigQuery, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per le librerie client.
Java
Prima di provare questo esempio, segui le istruzioni per la configurazione di Java nella guida rapida di BigQuery sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Java di BigQuery.
Per eseguire l'autenticazione su BigQuery, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per le librerie client.
Crea un'istanza Dataset.Builder da un'istanza Set di dati esistente con il metodo Dataset.toBuilder(). Configura l'oggetto del generatore di set di dati. Crea il set di dati aggiornato con il metodo Dataset.Builder.build() e chiama il metodo Dataset.update() per inviare l'aggiornamento all'API.Node.js
Prima di provare questo esempio, segui le istruzioni per la configurazione di Node.js nella guida rapida di BigQuery sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Node.js di BigQuery.
Per eseguire l'autenticazione su BigQuery, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per le librerie client.
Python
Prima di provare questo esempio, segui le istruzioni per la configurazione di Python nella guida rapida di BigQuery sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Python di BigQuery.
Per eseguire l'autenticazione su BigQuery, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per le librerie client.
Configura la proprietà Dataset.description e chiama Client.update_dataset() per inviare l'aggiornamento all'API.Aggiorna le scadenze predefinite delle tabelle
Puoi aggiornare la scadenza predefinita della tabella di un set di dati nei seguenti modi:
- Utilizzo della console Google Cloud.
- Viene utilizzato il comando
bq update
dello strumento a riga di comando bq. - Chiamata al metodo API
datasets.patch
. - Utilizzare le librerie client.
Puoi impostare una scadenza predefinita per la tabella a livello di set di dati oppure puoi impostare la scadenza di una tabella al momento della sua creazione. Se imposti la scadenza al momento della creazione della tabella, la scadenza predefinita della tabella del set di dati viene ignorata. Se non imposti una scadenza predefinita a livello di set di dati e non imposti una scadenza quando la tabella viene creata, la tabella non scadrà mai e dovrai eliminare la tabella manualmente. Quando una tabella scade, viene eliminata insieme a tutti i dati che contiene.
Quando aggiorni l'impostazione di scadenza predefinita della tabella di un set di dati:
- Se modifichi il valore da
Never
a una data di scadenza definita, tutte le tabelle già esistenti nel set di dati non scadranno, a meno che non sia stata impostata la scadenza nella tabella al momento della creazione. - Se modifichi il valore della scadenza predefinita delle tabelle, tutte le tabelle già esistenti scadono in base all'impostazione di scadenza originale della tabella. A tutte le nuove tabelle create nel set di dati viene applicata la nuova impostazione di scadenza della tabella, a meno che non specifichi una scadenza diversa nella tabella al momento della creazione.
Il valore per la scadenza predefinita della tabella viene espresso in modo diverso a seconda di dove viene impostato il valore. Utilizza il metodo che ti fornisce il livello di granularità appropriato:
- Nella console Google Cloud, la scadenza è espressa in giorni.
- Nello strumento a riga di comando bq, la scadenza è espressa in secondi.
- Nell'API, la scadenza è espressa in millisecondi.
Per aggiornare la scadenza predefinita per un set di dati:
Console
Nel riquadro Spazio di esplorazione, espandi il progetto e seleziona un set di dati.
Espandi l'opzione
Azioni e fai clic su Apri.Nel riquadro dei dettagli, fai clic sull'icona a forma di matita accanto a Informazioni sul set di dati per modificare la scadenza.
Nella sezione Scadenza tabella predefinita della finestra di dialogo Informazioni sul set di dati, inserisci un valore per Numero di giorni dopo la creazione della tabella.
Fai clic su Salva.
SQL
Per aggiornare la scadenza predefinita della tabella, utilizza l'istruzione ALTER SCHEMA SET OPTIONS
per impostare l'opzione default_table_expiration_days
.
L'esempio seguente aggiorna la scadenza predefinita della tabella per un set di dati denominato mydataset
.
Nella console Google Cloud, vai alla pagina BigQuery.
Nell'editor query, inserisci la seguente istruzione:
ALTER SCHEMA mydataset SET OPTIONS( default_table_expiration_days = 3.75);
Fai clic su
Esegui.
Per ulteriori informazioni su come eseguire le query, vedi Eseguire una query interattiva.
bq
Per aggiornare la scadenza predefinita per le tabelle appena create in un set di dati, inserisci il comando bq update
con il flag --default_table_expiration
.
Se stai aggiornando un set di dati 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 \ --default_table_expiration integer \ project_id:dataset
Sostituisci quanto segue:
integer
: la durata predefinita, in secondi, delle tabelle appena create. Il valore minimo è 3600 secondi (un'ora). La data di scadenza corrisponde all'ora UTC attuale più il valore intero. Specifica0
per rimuovere la data di scadenza esistente. Qualsiasi tabella creata nel set di dati viene eliminatainteger
secondi dopo l'ora di creazione. Questo valore viene applicato se non imposti una scadenza per la tabella quando la tabella viene creata.project_id
: il tuo ID progetto.dataset
: il nome del set di dati che stai aggiornando.
Esempi:
Inserisci il comando seguente per impostare la scadenza predefinita per le nuove tabelle create in mydataset
a due ore (7200 secondi) dall'ora attuale. Il set di dati si trova nel progetto predefinito.
bq update --default_table_expiration 7200 mydataset
Inserisci il comando seguente per impostare la scadenza predefinita per le nuove tabelle create in mydataset
a due ore (7200 secondi) dall'ora attuale. Il set di dati si trova in myotherproject
, non nel progetto predefinito.
bq update --default_table_expiration 7200 myotherproject:mydataset
API
Chiama datasets.patch
e aggiorna la proprietà defaultTableExpirationMs
nella risorsa del set di dati.
La scadenza è espressa in millisecondi nell'API. Poiché il metodo datasets.update
sostituisce l'intera risorsa del set di dati, è preferibile utilizzare il metodo datasets.patch
.
Go
Prima di provare questo esempio, segui le istruzioni per la configurazione di Go nella guida rapida di BigQuery sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Go di BigQuery.
Per eseguire l'autenticazione su BigQuery, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per le librerie client.
Java
Prima di provare questo esempio, segui le istruzioni per la configurazione di Java nella guida rapida di BigQuery sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Java di BigQuery.
Per eseguire l'autenticazione su BigQuery, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per le librerie client.
Crea un'istanza Dataset.Builder da un'istanza Set di dati esistente con il metodo Dataset.toBuilder(). Configura l'oggetto del generatore di set di dati. Crea il set di dati aggiornato con il metodo Dataset.Builder.build() e chiama il metodo Dataset.update() per inviare l'aggiornamento all'API.Configura la scadenza predefinita con il metodo Dataset.Builder.setDefaultTableLifetime().
Node.js
Prima di provare questo esempio, segui le istruzioni per la configurazione di Node.js nella guida rapida di BigQuery sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Node.js di BigQuery.
Per eseguire l'autenticazione su BigQuery, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per le librerie client.
Python
Prima di provare questo esempio, segui le istruzioni per la configurazione di Python nella guida rapida di BigQuery sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Python di BigQuery.
Per eseguire l'autenticazione su BigQuery, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per le librerie client.
Configura la proprietà Dataset.default_table_expiration_ms e chiama Client.update_dataset() per inviare l'aggiornamento all'API.Aggiorna le scadenze predefinite delle partizioni
Puoi aggiornare la scadenza predefinita della partizione di un set di dati nei seguenti modi:
- Viene utilizzato il comando
bq update
dello strumento a riga di comando bq. - Chiamata al metodo API
datasets.patch
. - Utilizzare le librerie client.
L'impostazione o l'aggiornamento della scadenza predefinita delle partizioni di un set di dati non è attualmente supportata dalla console Google Cloud.
Puoi impostare una scadenza predefinita per la scadenza delle partizioni a livello del set di dati in modo da influire su tutte le nuove tabelle partizionate create oppure puoi impostare una scadenza delle partizioni per le singole tabelle al momento della creazione delle tabelle partizionate. Se imposti la scadenza predefinita delle partizioni a livello del set di dati e la scadenza predefinita delle tabelle a livello del set di dati, le nuove tabelle partizionate avranno una scadenza solo. Se entrambe le opzioni sono impostate, la scadenza predefinita della partizione sostituisce quella predefinita della tabella.
Se imposti la scadenza della partizione al momento della creazione della tabella partizionata, questo valore sostituisce la scadenza predefinita della partizione a livello di set di dati, se esistente.
Se non imposti una scadenza predefinita per le partizioni a livello del set di dati e non imposti una scadenza per le partizioni quando viene creata la tabella, le partizioni non scadono mai e devi eliminarle manualmente.
Quando imposti una scadenza predefinita per le partizioni in un set di dati, viene applicata a tutte le partizioni in tutte le tabelle partizionate create nel set di dati. Quando imposti la scadenza delle partizioni in una tabella, questa si applica a tutte le partizioni create nella tabella specificata. Attualmente, non è possibile applicare tempi di scadenza diversi a partizioni diverse nella stessa tabella.
Quando aggiorni l'impostazione di scadenza della partizione predefinita di un set di dati:
- Se modifichi il valore da
never
a una data di scadenza definita, eventuali partizioni già esistenti nelle tabelle partizionate nel set di dati non scadranno, a meno che non sia stata impostata la scadenza della partizione nella tabella al momento della creazione. - Se modifichi il valore della scadenza predefinita delle partizioni, tutte le partizioni nelle tabelle partizionate esistenti scadono in base alla scadenza predefinita della partizione originale. Alle nuove tabelle partizionate create nel set di dati viene applicata la nuova impostazione predefinita per la scadenza delle partizioni, a meno che non specifichi una scadenza della partizione diversa nella tabella al momento della creazione.
Il valore per la scadenza della partizione predefinita viene espresso in modo diverso a seconda di dove viene impostato il valore. Utilizza il metodo che ti fornisce il livello di granularità appropriato:
- Nello strumento a riga di comando bq, la scadenza è espressa in secondi.
- Nell'API, la scadenza è espressa in millisecondi.
Per aggiornare la scadenza predefinita delle partizioni per un set di dati:
Console
L'aggiornamento della scadenza predefinita delle partizioni di un set di dati non è attualmente supportato dalla console Google Cloud.
SQL
Per aggiornare la scadenza predefinita della partizione, utilizza l'istruzione ALTER SCHEMA SET OPTIONS
per impostare l'opzione default_partition_expiration_days
.
L'esempio seguente aggiorna la scadenza predefinita della partizione per un
set di dati denominato mydataset
:
Nella console Google Cloud, vai alla pagina BigQuery.
Nell'editor query, inserisci la seguente istruzione:
ALTER SCHEMA mydataset SET OPTIONS( default_partition_expiration_days = 3.75);
Fai clic su
Esegui.
Per ulteriori informazioni su come eseguire le query, vedi Eseguire una query interattiva.
bq
Per aggiornare la scadenza predefinita di un set di dati, inserisci il comando bq update
con il flag --default_partition_expiration
. Se stai aggiornando un set di dati 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 \ --default_partition_expiration integer \ project_id:dataset
Sostituisci quanto segue:
integer
: la durata predefinita, in secondi, per le partizioni nelle tabelle partizionate appena create. Questo flag non ha un valore minimo. Specifica0
per rimuovere la data di scadenza esistente. Tutte le partizioni nelle tabelle partizionate appena create vengono eliminateinteger
secondi dopo la data UTC della partizione. Questo valore viene applicato se non imposti una scadenza per la partizione nella tabella al momento della creazione.project_id
: il tuo ID progetto.dataset
: il nome del set di dati che stai aggiornando.
Esempi:
Inserisci il comando seguente per impostare su 26 ore (93.600 secondi) la scadenza predefinita delle partizioni per le nuove tabelle partizionate create in mydataset
.
Il set di dati si trova nel progetto predefinito.
bq update --default_partition_expiration 93600 mydataset
Inserisci il comando seguente per impostare su 26 ore (93.600 secondi) la scadenza predefinita delle partizioni per le nuove tabelle partizionate create in mydataset
.
Il set di dati si trova in myotherproject
, non nel progetto predefinito.
bq update --default_partition_expiration 93600 myotherproject:mydataset
API
Chiama datasets.patch
e aggiorna la proprietà defaultPartitionExpirationMs
nella risorsa del set di dati.
La scadenza è espressa in millisecondi. Poiché il metodo datasets.update
sostituisce l'intera risorsa del set di dati, il metodo datasets.patch
è
preferito.
Aggiorna modalità di arrotondamento
Puoi aggiornare la modalità di arrotondamento predefinita di un set di dati utilizzando l'istruzione DDL ALTER SCHEMA SET OPTIONS
.
L'esempio seguente aggiorna la modalità di arrotondamento predefinita per mydataset
in
ROUND_HALF_EVEN
.
ALTER SCHEMA mydataset SET OPTIONS ( default_rounding_mode = "ROUND_HALF_EVEN");
Consente di impostare la modalità di arrotondamento predefinita per le nuove tabelle create nel set di dati. Non ha alcun impatto sulle nuove colonne aggiunte alle tabelle esistenti. L'impostazione della modalità di arrotondamento predefinita in una tabella nel set di dati sostituisce questa opzione.
Aggiorna i controlli di accesso al set di dati
La procedura per l'aggiornamento dei controlli di accesso di un set di dati è molto simile a quella per l'assegnazione dei controlli di accesso a un set di dati. I controlli dell'accesso non possono essere applicati durante la creazione del set di dati utilizzando la console Google Cloud o lo strumento a riga di comando bq. Devi prima creare il set di dati, quindi aggiornare i controlli di accesso al set di dati. L'API consente di aggiornare i controlli di accesso al set di dati chiamando il metodo datasets.patch.
Quando aggiorni i controlli dell'accesso su un set di dati, puoi modificare l'accesso per le seguenti entità:
Entità IAM:
- Indirizzo email dell'Account Google: concede a un singolo Account Google l'accesso al set di dati.
- Gruppo Google: concede a tutti i membri di un gruppo Google l'accesso al set di dati.
- Dominio Google Workspace: concede a tutti gli utenti e i gruppi di un dominio Google l'accesso al set di dati.
- Account di servizio: concede l'accesso al set di dati con un account di servizio.
- Chiunque: inserisci
allUsers
per concedere l'accesso al pubblico. - Tutti gli Account Google: inserisci
allAuthenticatedUsers
per concedere l'accesso a qualsiasi utente che abbia eseguito l'accesso a un Account Google.
Tipi di risorse:
- Set di dati autorizzati: concede l'accesso al set di dati a un set di dati autorizzato.
- Visualizzazioni autorizzate: concede l'accesso Visualizzazione autorizzata al set di dati.
- Funzioni autorizzate: concede l'accesso al set di dati a una funzione di tabella o funzione definita dall'utente autorizzata.
Per aggiornare i controlli dell'accesso su un set di dati:
Console
Nel riquadro Spazio di esplorazione, espandi il progetto e seleziona un set di dati.
Espandi l'opzione
Azioni e fai clic su Apri.Fai clic su Condividi set di dati.
Nella finestra di dialogo Condividi set di dati, per eliminare le voci esistenti, espandi la voce e fai clic sull'icona Elimina (cestino).
Nella finestra di dialogo Condividi set di dati, per aggiungere nuove voci:
Inserisci l'entità nella casella Aggiungi entità.
In Seleziona un ruolo, scegli un ruolo IAM appropriato dall'elenco. Per ulteriori informazioni sulle autorizzazioni assegnate a ogni ruolo BigQuery predefinito, consulta la pagina Ruoli e autorizzazioni predefiniti.
Fai clic su Aggiungi.
Per aggiungere una vista autorizzata, fai clic sulla scheda Vista autorizzata e inserisci il progetto, il set di dati e la vista, quindi fai clic su Aggiungi.
Quando hai finito di aggiungere o eliminare i controlli di accesso, fai clic su Fine.
bq
Scrivi le informazioni esistenti del set di dati (inclusi i controlli di accesso) in un file JSON utilizzando il comando
show
. Se il set di dati si trova in un progetto diverso da quello predefinito, aggiungi l'ID progetto al nome del set di dati nel seguente formato:project_id:dataset
.bq show \ --format=prettyjson \ project_id:dataset > path_to_file
Sostituisci quanto segue:
project_id
: il tuo ID progetto.dataset
: il nome del set di dati.path_to_file
: il percorso del file JSON sulla tua macchina locale.
Esempi:
Inserisci il comando seguente per scrivere i controlli di accesso per
mydataset
in un file JSON.mydataset
è nel tuo progetto predefinito.bq show --format=prettyjson mydataset > /tmp/mydataset.json
Inserisci il comando seguente per scrivere i controlli di accesso per
mydataset
in un file JSON.mydataset
è amyotherproject
.bq show --format=prettyjson \ myotherproject:mydataset > /tmp/mydataset.json
Apporta le modifiche alla sezione
"access"
del file JSON. Puoi aggiungere o rimuovere qualsiasi voce dispecialGroup
:projectOwners
,projectWriters
,projectReaders
eallAuthenticatedUsers
. Puoi anche aggiungere, rimuovere o modificare uno qualsiasi dei seguenti elementi:userByEmail
,groupByEmail
edomain
.Ad esempio, la sezione di accesso del file JSON di un set di dati sarebbe simile alla seguente:
{ "access": [ { "role": "READER", "specialGroup": "projectReaders" }, { "role": "WRITER", "specialGroup": "projectWriters" }, { "role": "OWNER", "specialGroup": "projectOwners" } { "role": "READER", "specialGroup": "allAuthenticatedUsers" } { "role": "READER", "domain": "[DOMAIN_NAME]" } { "role": "WRITER", "userByEmail": "[USER_EMAIL]" } { "role": "READER", "groupByEmail": "[GROUP_EMAIL]" } ], }
Una volta apportate le modifiche, usa il comando
update
e includi il file JSON utilizzando il flag--source
. Se il set di dati si trova 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 --source path_to_file project_id:dataset
Sostituisci quanto segue:
path_to_file
: il percorso del file JSON sulla tua macchina locale.project_id
: il tuo ID progetto.dataset
: il nome del set di dati.
Esempi:
Inserisci il comando seguente per aggiornare i controlli dell'accesso per
mydataset
.mydataset
è nel tuo progetto predefinito.bq update --source /tmp/mydataset.json mydataset
Inserisci il comando seguente per aggiornare i controlli dell'accesso per
mydataset
.mydataset
è amyotherproject
.bq update --source /tmp/mydataset.json myotherproject:mydataset
Per verificare le modifiche controllo dell'accesso#39;accesso, inserisci di nuovo il comando
show
senza scrivere le informazioni in un file.bq show --format=prettyjson dataset
o
bq show --format=prettyjson project_id:dataset
API
Chiama la datasets.patch
e aggiorna la proprietà access
nella
risorsa del set di dati.
Poiché il metodo datasets.update
sostituisce l'intera risorsa del set di dati,
datasets.patch
è il metodo preferito per aggiornare i controlli dell'accesso.
Go
Prima di provare questo esempio, segui le istruzioni per la configurazione di Go nella guida rapida di BigQuery sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Go di BigQuery.
Per eseguire l'autenticazione su BigQuery, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per le librerie client.
Java
Prima di provare questo esempio, segui le istruzioni per la configurazione di Java nella guida rapida di BigQuery sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Java di BigQuery.
Per eseguire l'autenticazione su BigQuery, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per le librerie client.
Crea un'istanza Dataset.Builder da un'istanza Set di dati esistente con il metodo Dataset.toBuilder(). Configura l'oggetto del generatore di set di dati. Crea il set di dati aggiornato con il metodo Dataset.Builder.build() e chiama il metodo Dataset.update() per inviare l'aggiornamento all'API.Configura i controlli di accesso con il metodo Dataset.Builder.setAcl().
Node.js
Prima di provare questo esempio, segui le istruzioni per la configurazione di Node.js nella guida rapida di BigQuery sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Node.js di BigQuery.
Per eseguire l'autenticazione su BigQuery, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per le librerie client.
Python
Prima di provare questo esempio, segui le istruzioni per la configurazione di Python nella guida rapida di BigQuery sull'utilizzo delle librerie client. Per maggiori informazioni, consulta la documentazione di riferimento dell'API Python di BigQuery.
Per eseguire l'autenticazione su BigQuery, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per le librerie client.
Imposta la proprietà dataset.access_entries con i controlli di accesso per un set di dati. Quindi chiama la funzione client.update_dataset() per aggiornare la proprietà.Aggiornare le finestre di spostamento cronologico
Puoi aggiornare la finestra di spostamento cronologico di un set di dati nei seguenti modi:
- Utilizzo della console Google Cloud.
- Utilizza l'istruzione
ALTER SCHEMA SET OPTIONS
. - Utilizzando il comando
bq update
dello strumento a riga di comando bq. - Chiamata al metodo API
datasets.patch
odatasets.update
. Il metodoupdate
sostituisce l'intera risorsa del set di dati, mentre il metodopatch
sostituisce solo i campi forniti nella risorsa del set di dati inviata.
Per ulteriori informazioni sulla finestra di spostamento cronologico, consulta Configurare la finestra di spostamento cronologico.
Per aggiornare la finestra di spostamento cronologico per un set di dati:
Console
- Nel riquadro Spazio di esplorazione, espandi il progetto e seleziona un set di dati.
- Espandi l'opzione Azioni e fai clic su Apri.
- Nel riquadro Details (Dettagli), fai clic su Modifica dettagli.
- Espandi Opzioni avanzate, quindi seleziona la finestra di spostamento cronologico da utilizzare.
- Fai clic su Salva.
SQL
Utilizza l'istruzione ALTER SCHEMA SET OPTIONS
con l'opzione max_time_travel_hours
per specificare la finestra di spostamento cronologico quando modifichi un set di dati. Il valore max_time_travel_hours
deve
essere un numero intero espresso in multipli di 24 (48, 72, 96, 120, 144, 168)
tra 48 (2 giorni) e 168 (7 giorni).
Nella console Google Cloud, vai alla pagina BigQuery.
Nell'editor query, inserisci la seguente istruzione:
ALTER SCHEMA DATASET_NAME SET OPTIONS( max_time_travel_hours = HOURS);
Sostituisci quanto segue:
DATASET_NAME
: il nome del set di dati che stai aggiornandoHOURS
con la durata della finestra di spostamento cronologico in ore.
Fai clic su
Esegui.
Per ulteriori informazioni su come eseguire le query, vedi Eseguire una query interattiva.
bq
Utilizza il comando bq update
con il flag --max_time_travel_hours
per specificare la finestra di spostamento cronologico
quando modifichi un set di dati. Il valore --max_time_travel_hours
deve
essere un numero intero espresso in multipli di 24 (48, 72, 96, 120, 144, 168)
tra 48 (2 giorni) e 168 (7 giorni).
bq update \
--dataset=true --max_time_travel_hours=HOURS \
PROJECT_ID:DATASET_NAME
Sostituisci quanto segue:
PROJECT_ID
: il tuo ID progettoDATASET_NAME
: il nome del set di dati che stai aggiornandoHOURS
con la durata della finestra di spostamento cronologico in ore
API
Chiama il metodo datasets.patch
o datasets.update
con una risorsa di set di dati definita in cui hai specificato un valore per il campo maxTimeTravelHours
. Il
valore maxTimeTravelHours
deve essere un numero intero espresso in multipli di 24
(48, 72, 96, 120, 144, 168) compreso tra 48 (2 giorni) e 168 (7 giorni).
Aggiorna modelli di fatturazione dello spazio di archiviazione
Puoi modificare il modello di fatturazione dell'archiviazione per un set di dati. Imposta il valore storage_billing_model
su PHYSICAL
per utilizzare i byte fisici per il calcolo delle modifiche dello spazio di archiviazione o su LOGICAL
per utilizzare i byte logici. LOGICAL
è l'impostazione predefinita.
Quando cambi il modello di fatturazione di un set di dati, sono necessarie 24 ore prima che la modifica abbia effetto.
Una volta modificato il modello di fatturazione dello spazio di archiviazione di un set di dati, devi attendere 14 giorni prima di poterlo modificare di nuovo.
Console
- Nel riquadro Spazio di esplorazione, espandi il progetto e seleziona un set di dati.
- Espandi l'opzione Azioni e fai clic su Apri.
- Nel riquadro Details (Dettagli), fai clic su Modifica dettagli.
- Espandi Opzioni avanzate, quindi seleziona Abilita modello di fatturazione archiviazione fisica per utilizzare la fatturazione dell'archiviazione fisica oppure deselezionala per utilizzare la fatturazione dell'archiviazione logica.
- Fai clic su Salva.
SQL
Per aggiornare il modello di fatturazione per un set di dati, utilizza l'istruzione ALTER SCHEMA SET OPTIONS
e imposta l'opzione storage_billing_model
:
Nella console Google Cloud, vai alla pagina BigQuery.
Nell'editor query, inserisci la seguente istruzione:
ALTER SCHEMA DATASET_NAME SET OPTIONS( storage_billing_model = 'BILLING_MODEL');
Sostituisci quanto segue:
DATASET_NAME
con il nome del set di dati che stai modificandoBILLING_MODEL
con il tipo di spazio di archiviazione che vuoi utilizzare,LOGICAL
oPHYSICAL
Fai clic su
Esegui.
Per ulteriori informazioni su come eseguire le query, vedi Eseguire una query interattiva.
Per aggiornare il modello di fatturazione dello spazio di archiviazione per tutti i set di dati in un progetto, utilizza la seguente query SQL per ogni regione in cui si trovano i set di dati:
FOR record IN (SELECT CONCAT(catalog_name, '.', schema_name) AS dataset_path FROM PROJECT_ID.region-REGION.INFORMATION_SCHEMA.SCHEMATA) DO EXECUTE IMMEDIATE "ALTER SCHEMA `" || record.dataset_path || "` SET OPTIONS(storage_billing_model = 'BILLING_MODEL')"; END FOR;
Sostituisci quanto segue:
PROJECT_ID
con il tuo ID progettoREGION
con un qualificatore regioneBILLING_MODEL
con il tipo di spazio di archiviazione che vuoi utilizzare,LOGICAL
oPHYSICAL
bq
Per aggiornare il modello di fatturazione per un set di dati, utilizza il comando bq update
e imposta il flag --storage_billing_model
:
bq update -d --storage_billing_model=BILLING_MODEL PROJECT_ID:DATASET_NAME
Sostituisci quanto segue:
PROJECT_ID
: il tuo ID progettoDATASET_NAME
: il nome del set di dati che stai aggiornandoBILLING_MODEL
: il tipo di spazio di archiviazione che vuoi utilizzare,LOGICAL
oPHYSICAL
API
Chiama il metodo datasets.update
con una risorsa set di dati
definita in cui è impostato il campo storageBillingModel
.
L'esempio seguente mostra come chiamare datasets.update
utilizzando curl
:
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -L -X PUT https://bigquery.googleapis.com/bigquery/v2/projects/PROJECT_ID/datasets/DATASET_ID -d '{"datasetReference": {"projectId": "PROJECT_ID", "datasetId": "DATASET_NAME"}, "storageBillingModel": "BILLING_MODEL"}'
Sostituisci quanto segue:
PROJECT_ID
: il tuo ID progettoDATASET_NAME
: il nome del set di dati che stai aggiornandoBILLING_MODEL
: il tipo di spazio di archiviazione che vuoi utilizzare,LOGICAL
oPHYSICAL
Sicurezza dei set di dati
Per controllare l'accesso ai set di dati in BigQuery, consulta Controllo dell'accesso ai set di dati. Per informazioni sulla crittografia dei dati, vedi Crittografia at-rest.
Passaggi successivi
- Per ulteriori informazioni sulla creazione di set di dati, consulta Creazione di set di dati.
- Per ulteriori informazioni sulla gestione dei set di dati, consulta Gestione dei set di dati.