Utilizzare le assegnazioni di prenotazione
L'API BigQuery Reservation consente di acquistare slot dedicati (chiamati impegni��), creare pool di slot (chiamati prenotazioni��) e assegnare progetti, cartelle e organizzazioni a queste prenotazioni.
Creare assegnazioni di prenotazione
Per utilizzare gli slot acquistati, crea un assegnazione che assegna un progetto, una cartella o un'organizzazione a una prenotazione di slot.
I progetti utilizzano la prenotazione più specifica nella gerarchia delle risorse a cui sono assegnati. Un'assegnazione di cartella sostituisce un'assegnazione di organizzazione e un'assegnazione di progetto sostituisce un'assegnazione di cartella. Le assegnazioni di cartelle e organizzazioni non sono disponibili per le prenotazioni dell'edizione standard.
Per creare un incarico in una prenotazione, la prenotazione deve soddisfare almeno uno dei seguenti criteri:
È configurato con un numero diverso da zero di slot di base assegnati.
È configurato con un numero diverso da zero di slot di scalabilità automatica.
È configurato per utilizzare gli slot inattivi e nel progetto sono disponibili slot inattivi.
Se tenti di assegnare una risorsa a una prenotazione che non soddisfa almeno uno di questi criteri, ricevi il seguente messaggio: Assignment is pending, your project will be executed as on-demand.
Puoi assegnare una risorsa a una prenotazione di failover, ma l'assegnazione è in attesa nella località secondaria.
Autorizzazioni obbligatorie
Per creare un'assegnazione di prenotazione, devi disporre della seguente autorizzazione Identity and Access Management (IAM):
bigquery.reservationAssignments.create
sul progetto di amministrazione e sull'assegnatario.
Ognuno dei seguenti ruoli IAM predefiniti include questa autorizzazione:
BigQuery Admin
BigQuery Resource Admin
BigQuery Resource Editor
Per saperne di più sui ruoli IAM in BigQuery, vedi Ruoli e autorizzazioni predefiniti.
Assegnare un'organizzazione a una prenotazione
Console
Nella console Google Cloud , vai alla pagina BigQuery.
Nel menu di navigazione, fai clic su Gestione della capacità.
Fai clic sulla scheda Prenotazioni.
Trova la prenotazione nella tabella delle prenotazioni.
Espandi l'opzione
Azioni.Fai clic su Crea compito.
Nella sezione Crea un compito, fai clic su Sfoglia.
Sfoglia o cerca l'organizzazione e selezionala.
Nella sezione Tipo di job, seleziona un tipo di job da assegnare a questa prenotazione. Sono incluse le seguenti opzioni:
QUERY
CONTINUOUS
PIPELINE
BACKGROUND
ML_EXTERNAL
Per saperne di più sui tipi di job, vedi Assegnazioni di prenotazioni. Il valore predefinito è
QUERY
.Per scoprire di più su come consentire agli utenti di utilizzare Gemini in BigQuery con le assegnazioni della versione Enterprise Plus, consulta Configurare Gemini in BigQuery.
Fai clic su Crea.
SQL
Per assegnare un'organizzazione a una prenotazione, utilizza l'istruzione DDL CREATE ASSIGNMENT
.
Nella console Google Cloud , vai alla pagina BigQuery.
Nell'editor di query, inserisci la seguente istruzione:
CREATE ASSIGNMENT `ADMIN_PROJECT_ID.region-LOCATION.RESERVATION_NAME.ASSIGNMENT_ID` OPTIONS ( assignee = 'organizations/ORGANIZATION_ID', job_type = 'JOB_TYPE');
Sostituisci quanto segue:
ADMIN_PROJECT_ID
: l'ID progetto del progetto di amministrazione proprietario della risorsa di prenotazioneLOCATION
: la posizione della prenotazioneRESERVATION_NAME
: il nome della prenotazioneASSIGNMENT_ID
: l'ID dell'assegnazioneL'ID deve essere univoco per il progetto e la località, iniziare e terminare con una lettera minuscola o un numero e contenere solo lettere minuscole, numeri e trattini.
ORGANIZATION_ID
: l'ID organizzazioneJOB_TYPE
: il tipo di job da assegnare a questa prenotazione, ad esempioQUERY
,CONTINUOUS
,PIPELINE
,BACKGROUND
oML_EXTERNAL
Fai clic su
Esegui.
Per maggiori informazioni su come eseguire le query, consulta Eseguire una query interattiva.
bq
Per assegnare i job di un'organizzazione a una prenotazione, utilizza il comando bq mk
con il flag --reservation_assignment
:
bq mk \ --project_id=ADMIN_PROJECT_ID \ --location=LOCATION \ --reservation_assignment \ --reservation_id=RESERVATION_NAME \ --assignee_id=ORGANIZATION_ID \ --job_type=JOB_TYPE \ --assignee_type=ORGANIZATION
Sostituisci quanto segue:
ADMIN_PROJECT_ID
: l'ID progetto del progetto di amministrazione che possiede la risorsa di prenotazioneLOCATION
: la posizione della prenotazioneRESERVATION_NAME
: il nome della prenotazioneORGANIZATION_ID
: l'ID organizzazioneJOB_TYPE
: il tipo di job da assegnare a questa prenotazione, ad esempioQUERY
,CONTINUOUS
,PIPELINE
,BACKGROUND
oML_EXTERNAL
Quando crei un'assegnazione di prenotazione, attendi almeno 5 minuti prima di eseguire una query. In caso contrario, la query potrebbe essere fatturata utilizzando i prezzi on demand.
Assegnare un progetto o una cartella a una prenotazione
Console
Nella console Google Cloud , vai alla pagina BigQuery.
Nel menu di navigazione, fai clic su Gestione della capacità.
Fai clic sulla scheda Prenotazioni.
Trova la prenotazione nella tabella delle prenotazioni.
Espandi l'opzione
Azioni.Fai clic su Crea compito.
Nella sezione Crea un compito, fai clic su Sfoglia.
Sfoglia o cerca il progetto o la cartella e selezionalo.
Nella sezione Tipo di job, seleziona un tipo di job da assegnare a questa prenotazione. Sono incluse le seguenti opzioni:
QUERY
CONTINUOUS
PIPELINE
BACKGROUND
ML_EXTERNAL
Per saperne di più sui tipi di job, vedi Assegnazioni di prenotazioni. Il valore predefinito è
QUERY
.Fai clic su Crea.
SQL
Per assegnare un progetto a una prenotazione, utilizza l'istruzione DDL CREATE ASSIGNMENT
.
Nella console Google Cloud , vai alla pagina BigQuery.
Nell'editor di query, inserisci la seguente istruzione:
CREATE ASSIGNMENT `ADMIN_PROJECT_ID.region-LOCATION.RESERVATION_NAME.ASSIGNMENT_ID` OPTIONS( assignee="projects/PROJECT_ID", job_type="JOB_TYPE");
Sostituisci quanto segue:
ADMIN_PROJECT_ID
: l'ID progetto del progetto di amministrazione proprietario della risorsa di prenotazioneLOCATION
: la posizione della prenotazioneRESERVATION_NAME
: il nome della prenotazioneASSIGNMENT_ID
: l'ID dell'assegnazioneL'ID deve essere univoco per il progetto e la località, iniziare e terminare con una lettera minuscola o un numero e contenere solo lettere minuscole, numeri e trattini.
PROJECT_ID
: l'ID del progetto da assegnare alla prenotazioneJOB_TYPE
: il tipo di job da assegnare a questa prenotazione, ad esempioQUERY
,CONTINUOUS
,PIPELINE
,BACKGROUND
oML_EXTERNAL
Fai clic su
Esegui.
Per maggiori informazioni su come eseguire le query, consulta Eseguire una query interattiva.
bq
Per assegnare job a una prenotazione, utilizza il comando bq mk
con il flag --reservation_assignment
:
bq mk \ --project_id=ADMIN_PROJECT_ID \ --location=LOCATION \ --reservation_assignment \ --reservation_id=RESERVATION_NAME \ --assignee_id=PROJECT_ID \ --job_type=JOB_TYPE \ --assignee_type=PROJECT
Sostituisci quanto segue:
ADMIN_PROJECT_ID
: l'ID progetto del progetto di amministrazione che possiede la risorsa di prenotazioneLOCATION
: la posizione della prenotazioneRESERVATION_NAME
: il nome della prenotazionePROJECT_ID
: l'ID del progetto da assegnare a questa prenotazioneJOB_TYPE
: il tipo di job da assegnare a questa prenotazione, ad esempioQUERY
,CONTINUOUS
,PIPELINE
,BACKGROUND
oML_EXTERNAL
Terraform
Utilizza la risorsa
google_bigquery_reservation_assignment
.
Per eseguire l'autenticazione in BigQuery, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
L'esempio seguente assegna un progetto alla prenotazione denominata
my-reservation
:
Per applicare la configurazione di Terraform in un progetto Google Cloud , completa i passaggi nelle sezioni seguenti.
Prepara Cloud Shell
- Avvia Cloud Shell.
-
Imposta il progetto Google Cloud predefinito in cui vuoi applicare le configurazioni Terraform.
Devi eseguire questo comando una sola volta per progetto e puoi eseguirlo in qualsiasi directory.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Le variabili di ambiente vengono sostituite se imposti valori espliciti nel file di configurazione Terraform.
Prepara la directory
Ogni file di configurazione di Terraform deve avere la propria directory (chiamata anche modulo radice).
-
In Cloud Shell, crea una directory e un nuovo file al suo interno. Il nome file deve avere l'estensione
.tf
, ad esempiomain.tf
. In questo tutorial, il file viene denominatomain.tf
.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Se stai seguendo un tutorial, puoi copiare il codice campione in ogni sezione o passaggio.
Copia il codice campione nel file
main.tf
appena creato.(Facoltativo) Copia il codice da GitHub. Questa operazione è consigliata quando lo snippet Terraform fa parte di una soluzione end-to-end.
- Rivedi e modifica i parametri di esempio da applicare al tuo ambiente.
- Salva le modifiche.
-
Inizializza Terraform. Devi effettuare questa operazione una sola volta per directory.
terraform init
(Facoltativo) Per utilizzare l'ultima versione del provider Google, includi l'opzione
-upgrade
:terraform init -upgrade
Applica le modifiche
-
Rivedi la configurazione e verifica che le risorse che Terraform creerà o
aggiornerà corrispondano alle tue aspettative:
terraform plan
Apporta le correzioni necessarie alla configurazione.
-
Applica la configurazione di Terraform eseguendo il comando seguente e inserendo
yes
al prompt:terraform apply
Attendi che Terraform visualizzi il messaggio "Apply complete!" (Applicazione completata).
- Apri il tuo Google Cloud progetto per visualizzare i risultati. Nella console Google Cloud , vai alle risorse nell'interfaccia utente per assicurarti che Terraform le abbia create o aggiornate.
Quando crei un'assegnazione di prenotazione, attendi almeno 5 minuti prima di eseguire una query. In caso contrario, la query potrebbe essere fatturata utilizzando i prezzi on demand.
Per creare un progetto che utilizzi solo slot
inattivi, crea una
prenotazione con slot 0
assegnati, poi segui i passaggi precedenti per assegnare il progetto a questa
prenotazione.
Assegna un progetto a none
Compiti a none
rappresentano l'assenza di un'assegnazione. I progetti assegnati
a none
utilizzano i prezzi on demand.
SQL
Per assegnare un progetto a none
, utilizza l'istruzione DDL CREATE ASSIGNMENT
.
Nella console Google Cloud , vai alla pagina BigQuery.
Nell'editor di query, inserisci la seguente istruzione:
CREATE ASSIGNMENT `ADMIN_PROJECT_ID.region-LOCATION.none.ASSIGNMENT_ID` OPTIONS( assignee="projects/PROJECT_ID", job_type="QUERY");
Sostituisci quanto segue:
LOCATION
: la posizione dei lavori che devono utilizzare i prezzi on demandASSIGNMENT_ID
: l'ID dell'assegnazioneL'ID deve essere univoco per il progetto e la località, iniziare e terminare con una lettera minuscola o un numero e contenere solo lettere minuscole, numeri e trattini.
PROJECT_ID
: l'ID del progetto da assegnare alla prenotazione
Fai clic su
Esegui.
Per maggiori informazioni su come eseguire le query, consulta Eseguire una query interattiva.
bq
Per assegnare un progetto a none
, utilizza il comando bq mk
con il flag --reservation_assignment
:
bq mk \ --location=LOCATION \ --reservation_assignment \ --reservation_id=none \ --job_type=QUERY \ --assignee_id=PROJECT_ID \ --assignee_type=PROJECT
Sostituisci quanto segue:
LOCATION
: la posizione dei lavori che devono utilizzare i prezzi on demandPROJECT_ID
: l'ID del progetto da assegnare anone
Terraform
Utilizza la risorsa
google_bigquery_reservation_assignment
.
Per eseguire l'autenticazione in BigQuery, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
L'esempio seguente assegna un progetto a none
:
Per applicare la configurazione di Terraform in un progetto Google Cloud , completa i passaggi nelle sezioni seguenti.
Prepara Cloud Shell
- Avvia Cloud Shell.
-
Imposta il progetto Google Cloud predefinito in cui vuoi applicare le configurazioni Terraform.
Devi eseguire questo comando una sola volta per progetto e puoi eseguirlo in qualsiasi directory.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Le variabili di ambiente vengono sostituite se imposti valori espliciti nel file di configurazione Terraform.
Prepara la directory
Ogni file di configurazione di Terraform deve avere la propria directory (chiamata anche modulo radice).
-
In Cloud Shell, crea una directory e un nuovo file al suo interno. Il nome file deve avere l'estensione
.tf
, ad esempiomain.tf
. In questo tutorial, il file viene denominatomain.tf
.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Se stai seguendo un tutorial, puoi copiare il codice campione in ogni sezione o passaggio.
Copia il codice campione nel file
main.tf
appena creato.(Facoltativo) Copia il codice da GitHub. Questa operazione è consigliata quando lo snippet Terraform fa parte di una soluzione end-to-end.
- Rivedi e modifica i parametri di esempio da applicare al tuo ambiente.
- Salva le modifiche.
-
Inizializza Terraform. Devi effettuare questa operazione una sola volta per directory.
terraform init
(Facoltativo) Per utilizzare l'ultima versione del provider Google, includi l'opzione
-upgrade
:terraform init -upgrade
Applica le modifiche
-
Rivedi la configurazione e verifica che le risorse che Terraform creerà o
aggiornerà corrispondano alle tue aspettative:
terraform plan
Apporta le correzioni necessarie alla configurazione.
-
Applica la configurazione di Terraform eseguendo il comando seguente e inserendo
yes
al prompt:terraform apply
Attendi che Terraform visualizzi il messaggio "Apply complete!" (Applicazione completata).
- Apri il tuo Google Cloud progetto per visualizzare i risultati. Nella console Google Cloud , vai alle risorse nell'interfaccia utente per assicurarti che Terraform le abbia create o aggiornate.
Eseguire l'override di una prenotazione in una query
Per richiedere assistenza o fornire un feedback su questa funzionalità, contatta bigquery-wlm-feedback@google.com.
Per utilizzare una prenotazione specifica in una query, devi disporre della seguente autorizzazione Identity and Access Management (IAM):
bigquery.reservations.use
nella prenotazione o nel relativo progetto di amministrazione.
Per assegnare una query da eseguire in una prenotazione specifica, esegui una delle seguenti operazioni:
Console
Vai alla pagina BigQuery.
Fai clic su
Query SQL.Nell'editor di query, inserisci una query GoogleSQL valida.
Fai clic su
Altro, quindi fai clic su Impostazioni query.Deseleziona la casella di controllo Impostazione automatica della località e poi seleziona la regione o più regioni in cui si trova la prenotazione.
Nell'elenco Prenotazione, seleziona la prenotazione in cui vuoi eseguire la query.
Fai clic su Salva.
Scrivi una query nella scheda Editor ed eseguila. La query viene eseguita nella prenotazione che hai specificato.
SQL
Puoi utilizzare la variabile di sistema @@reservation
per assegnare la
prenotazione in cui viene eseguita la query:
Nella console Google Cloud , vai alla pagina BigQuery.
Nell'editor di query, inserisci la seguente istruzione:
SET @@reservation='RESERVATION'; SELECT QUERY;
Sostituisci quanto segue:
RESERVATION
: la prenotazione in cui vuoi eseguire la query.QUERY
: la query che vuoi eseguire.
Fai clic su
Esegui.
Per maggiori informazioni su come eseguire le query, consulta Eseguire una query interattiva.
Ad esempio, la seguente query utilizza l'istruzione
SET
per impostare la prenotazione su test-reservation
nella multiregione US
, quindi chiama una query di base:
SET @@reservation='projects/project1/locations/US/reservations/test-reservation'; SELECT 42;
bq
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
In Cloud Shell, esegui la query utilizzando il comando
bq query
con il flag--reservation_id
:bq query --use_legacy_sql=false --reservation_id=RESERVATION_ID 'QUERY'
Sostituisci quanto segue:
RESERVATION_ID
: la prenotazione in cui vuoi eseguire la query.QUERY
: l'istruzione SQL per la query.
Ad esempio, la seguente query viene eseguita nella prenotazione
test-reservation
nella località multiregionaleUS
:bq query --reservation_id=project1.US:test-reservation 'SELECT 42;'
API
Per specificare una prenotazione utilizzando l'API, inserisci un nuovo
job e compila la proprietà di configurazione del job query
. Specifica la tua prenotazione nel campo reservation
.
Assegna un'assegnazione di prenotazione in una query a none
L'assegnazione di un'assegnazione di prenotazione in una query a none
forza il job a utilizzare
la fatturazione on demand (nessuna prenotazione), anche se esiste un'assegnazione di prenotazione
predefinita. Per assegnare una prenotazione a none
:
SQL
Puoi utilizzare la variabile di sistema @@reservation
per assegnare la prenotazione in cui viene eseguita la query a none
:
Nella console Google Cloud , vai alla pagina BigQuery.
Nell'editor di query, inserisci la seguente istruzione:
SET @@reservation='none'; SELECT QUERY;
Sostituisci quanto segue:
QUERY
: la query che vuoi eseguire.
Fai clic su
Esegui.
Per maggiori informazioni su come eseguire le query, consulta Eseguire una query interattiva.
Ad esempio, la seguente query utilizza l'istruzione
SET
per forzare l'utilizzo della fatturazione on demand, quindi chiama una query
di base:
SET @@reservation='none'; SELECT 42;
bq
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
In Cloud Shell, esegui la query utilizzando il comando
bq query
con il flag--reservation_id
:bq query --use_legacy_sql=false --reservation_id = none 'QUERY'
Sostituisci quanto segue:
QUERY
: l'istruzione SQL per la query.
Ad esempio, il seguente comando forza la query a utilizzare la fatturazione on demand, quindi chiama una query di base:
bq query --reservation_id=none 'SELECT 42;'
API
Per specificare una prenotazione utilizzando l'API, inserisci un nuovo
job e compila la proprietà di configurazione del job query
. Specifica la prenotazione come none
nel campo
reservation
.
Assegnare slot ai carichi di lavoro BigQuery ML
Le sezioni seguenti forniscono informazioni sui requisiti di assegnazione delle prenotazioni per i modelli BigQuery ML. Puoi creare queste assegnazioni di prenotazione seguendo le procedure descritte in Assegnare un'organizzazione a una prenotazione o Assegnare un progetto o una cartella a una prenotazione.
Modelli esterni
I seguenti tipi di modelli BigQuery ML utilizzano servizi esterni:
- Autoencoder
- AutoML
- Modello boosted tree
- Deep Neural Network (DNN)
- Foresta casuale
- Rete Wide and Deep
Puoi assegnare slot riservati alle query utilizzando questi servizi creando un'assegnazione di prenotazione che utilizza il tipo di job ML_EXTERNAL
. Se non viene trovato alcun
assegnazione di prenotazione con un tipo di job ML_EXTERNAL
, il job di query
viene eseguito utilizzando i prezzi on demand.
Per i job di addestramento di modelli esterni, gli slot nell'assegnazione della prenotazione vengono utilizzati per i passaggi di pre-elaborazione, addestramento e post-elaborazione. Durante l'addestramento, gli slot non sono preemptive, ma durante la pre-elaborazione e la post-elaborazione, possono essere utilizzati gli slot inattivi.
Modelli di fattorizzazione matriciale
Per creare un modello di fattorizzazione matriciale devi
creare una prenotazione
che utilizzi BigQuery
Enterprise o Enterprise Plus,
e poi creare un'assegnazione di prenotazione che utilizzi il tipo di job QUERY
.
Altri tipi di modelli
Per i modelli BigQuery ML che non sono modelli esterni o di fattorizzazione
delle matrici, puoi assegnare slot riservati alle query che utilizzano questi
servizi creando un'assegnazione di prenotazione che utilizza il tipo di job QUERY
.
Se non viene trovata alcuna assegnazione di prenotazione con un tipo di job QUERY
, il job di query viene eseguito utilizzando i prezzi on demand.
Trovare le assegnazioni di prenotazione
Autorizzazioni obbligatorie
Per cercare un'assegnazione di prenotazione per un determinato progetto, cartella o organizzazione, devi disporre della seguente autorizzazione Identity and Access Management (IAM):
bigquery.reservationAssignments.list
sul progetto di amministrazione.
Ognuno dei seguenti ruoli IAM predefiniti include questa autorizzazione:
BigQuery Admin
BigQuery Resource Admin
BigQuery Resource Editor
BigQuery Resource Viewer
BigQuery User
Per saperne di più sui ruoli IAM in BigQuery, vedi Ruoli e autorizzazioni predefiniti.
Trovare l'assegnazione di prenotazione di un progetto
Per scoprire se il tuo progetto, la tua cartella o la tua organizzazione è assegnato a una prenotazione, segui questi passaggi:
Console
Nella console Google Cloud , vai alla pagina BigQuery.
Nel menu di navigazione, fai clic su Gestione della capacità.
Fai clic sulla scheda Prenotazioni.
Nella tabella delle prenotazioni, espandi una prenotazione per vedere quali risorse sono assegnate a quella prenotazione oppure utilizza il campo Filtro per filtrare per nome risorsa.
SQL
Per scoprire a quale prenotazione sono assegnati i job di query del tuo progetto, esegui una query sulla visualizzazione INFORMATION_SCHEMA.ASSIGNMENTS_BY_PROJECT
.
Nella console Google Cloud , vai alla pagina BigQuery.
Nell'editor di query, inserisci la seguente istruzione:
SELECT assignment_id FROM `region-LOCATION`.INFORMATION_SCHEMA.ASSIGNMENTS_BY_PROJECT WHERE assignee_id = 'PROJECT_ID' AND job_type = 'JOB_TYPE';
Sostituisci quanto segue:
LOCATION
: la posizione delle prenotazioni da visualizzareADMIN_PROJECT_ID
: l'ID progetto del progetto di amministrazione proprietario della risorsa di prenotazionePROJECT_ID
: l'ID del progetto da assegnare alla prenotazioneJOB_TYPE
: il tipo di job da assegnare a questa prenotazione, ad esempioQUERY
,CONTINUOUS
,PIPELINE
,BACKGROUND
oML_EXTERNAL
Fai clic su
Esegui.
Per maggiori informazioni su come eseguire le query, consulta Eseguire una query interattiva.
bq
Per scoprire a quale prenotazione sono assegnati i job di query del tuo progetto, utilizza il
comando bq show
con il flag --reservation_assignment
:
bq show \ --project_id=ADMIN_PROJECT_ID \ --location=LOCATION \ --reservation_assignment \ --job_type=JOB_TYPE \ --assignee_id=PROJECT_ID \ --assignee_type=PROJECT
Sostituisci quanto segue:
ADMIN_PROJECT_ID
: l'ID del progetto proprietario della risorsa di prenotazioneLOCATION
: la posizione delle prenotazioni da visualizzareJOB_TYPE
: il tipo di job da assegnare a questa prenotazione, ad esempioQUERY
,CONTINUOUS
,PIPELINE
,BACKGROUND
oML_EXTERNAL
PROJECT_ID
: l'ID del progetto
Aggiornamento delle assegnazioni di prenotazione
Spostare un'assegnazione in un'altra prenotazione
Puoi spostare un incarico da una prenotazione a un'altra.
Per spostare un'assegnazione di prenotazione, devi disporre delle seguenti autorizzazioni Identity and Access Management (IAM) per il progetto di amministrazione e l'assegnatario.
bigquery.reservationAssignments.create
bigquery.reservationAssignments.delete
Ognuno dei seguenti ruoli IAM predefiniti include queste autorizzazioni:
BigQuery Admin
BigQuery Resource Admin
BigQuery Resource Editor
Per saperne di più sui ruoli IAM in BigQuery, vedi Ruoli e autorizzazioni predefiniti.
Per spostare un'assegnazione, utilizza il comando bq update
:
bq update \ --project_id=ADMIN_PROJECT_ID \ --location=LOCATION \ --reservation_assignment \ --destination_reservation_id=DESTINATION_RESERVATION \ ADMIN_PROJECT_ID:LOCATION.RESERVATION_NAME.ASSIGNMENT_ID
Sostituisci quanto segue:
ADMIN_PROJECT_ID
: l'ID del progetto proprietario della risorsa di prenotazioneLOCATION
: la posizione della nuova prenotazioneRESERVATION_NAME
: la prenotazione da cui spostare l'assegnazioneDESTINATION_RESERVATION
: la prenotazione a cui spostare l'assegnazioneASSIGNMENT_ID
: l'ID dell'assegnazionePer ottenere l'ID assegnazione, consulta Elenca l'assegnazione di una prenotazione di un progetto.
Eliminazione assegnazioni di prenotazione
Puoi rimuovere un progetto da una prenotazione eliminando l'assegnazione della prenotazione. Se un progetto non è assegnato ad alcuna prenotazione, eredita le assegnazioni nelle cartelle o nelle organizzazioni principali oppure utilizza i prezzi on demand se non sono presenti assegnazioni principali.
Quando elimini un'assegnazione di prenotazione, i job in esecuzione con slot della prenotazione continuano a essere eseguiti fino al completamento.
Autorizzazioni obbligatorie
Per eliminare un'assegnazione di prenotazione, devi disporre della seguente autorizzazione Identity and Access Management (IAM):
bigquery.reservationAssignments.delete
sul progetto di amministrazione e sull'assegnatario.
Ognuno dei seguenti ruoli IAM predefiniti include questa autorizzazione:
BigQuery Admin
BigQuery Resource Admin
BigQuery Resource Editor
Rimuovere un progetto da una prenotazione
Per rimuovere un progetto da una prenotazione:
Console
Nella console Google Cloud , vai alla pagina BigQuery.
Nel menu di navigazione, fai clic su Gestione della capacità.
Fai clic sulla scheda Prenotazioni.
Nella tabella delle prenotazioni, espandi la prenotazione per trovare il progetto.
Espandi l'opzione
Azioni.Fai clic su Elimina.
SQL
Utilizza l'istruzione DDL DROP ASSIGNMENT
.
Nella console Google Cloud , vai alla pagina BigQuery.
Nell'editor di query, inserisci la seguente istruzione:
DROP ASSIGNMENT `ADMIN_PROJECT_ID.region-LOCATION.RESERVATION_NAME.ASSIGNMENT_ID`;
Sostituisci quanto segue:
ADMIN_PROJECT_ID
: l'ID progetto del progetto di amministrazione proprietario della risorsa di prenotazioneLOCATION
: la posizione della prenotazioneRESERVATION_NAME
: il nome della prenotazioneASSIGNMENT_ID
: l'ID dell'assegnazionePer trovare l'ID assegnazione, consulta Elenca l'assegnazione della prenotazione di un progetto.
Fai clic su
Esegui.
Per maggiori informazioni su come eseguire le query, consulta Eseguire una query interattiva.
bq
Per rimuovere un progetto da una prenotazione, utilizza il comando bq rm
con il flag --reservation_assignment
:
bq rm \ --project_id=ADMIN_PROJECT_ID \ --location=LOCATION \ --reservation_assignment RESERVATION_NAME.ASSIGNMENT_ID
Sostituisci quanto segue:
ADMIN_PROJECT_ID
: l'ID del progetto proprietario della risorsa di prenotazioneLOCATION
: la posizione della prenotazioneRESERVATION_NAME
: il nome della prenotazioneASSIGNMENT_ID
: l'ID dell'assegnazionePer ottenere l'ID assegnazione, consulta Trovare l'assegnazione di prenotazione di un progetto.