Filtrare le risorse utilizzando le etichette
Per filtrare le risorse utilizzando le etichette, puoi procedere in uno dei seguenti modi:
- Utilizza la barra di ricerca nella console Google Cloud.
- Crea una specifica di filtro da utilizzare nell'API, nello strumento a riga di comando bq o nelle librerie client.
Limitazioni
- L'API, lo strumento a riga di comando bq e le librerie client supportano solo il filtraggio dei set di dati.
- Non puoi filtrare i job per etichetta in nessuno degli strumenti BigQuery.
Prima di iniziare
Concedi i ruoli IAM (Identity and Access Management) che concedono agli utenti le autorizzazioni necessarie per eseguire ogni attività nel documento.
Autorizzazioni obbligatorie
Per filtrare le risorse utilizzando le etichette, devi essere in grado di recuperare i metadati delle risorse. Per filtrare le risorse utilizzando le etichette, devi disporre delle seguenti autorizzazioni IAM:
bigquery.datasets.get
(consente di filtrare i set di dati)bigquery.tables.get
(consente di filtrare tabelle e visualizzazioni)
Ciascuno dei seguenti ruoli IAM predefiniti include le autorizzazioni necessarie per filtrare i set di dati:
roles/bigquery.user
roles/bigquery.metadataViewer
roles/bigquery.dataViewer
roles/bigquery.dataOwner
roles/bigquery.dataEditor
roles/bigquery.admin
Ciascuno dei seguenti ruoli IAM predefiniti include le autorizzazioni necessarie per filtrare tabelle e visualizzazioni:
roles/bigquery.metadataViewer
roles/bigquery.dataViewer
roles/bigquery.dataOwner
roles/bigquery.dataEditor
roles/bigquery.admin
Inoltre, se disponi dell'autorizzazione bigquery.datasets.create
, puoi filtrare le risorse che crei.
Per ulteriori informazioni su ruoli e autorizzazioni IAM in BigQuery, consulta Autorizzazioni e ruoli predefiniti.
Filtrare le risorse nella console Google Cloud
Per generare un elenco filtrato di risorse, utilizza la console Google Cloud:
Nella console Google Cloud, vai al riquadro Explorer.
Nella barra di ricerca, inserisci la coppia
key
okey:value
. I risultati includono eventuali corrispondenze parziali.Ad esempio, per mostrare solo i set di dati con l'etichetta
department:shipping
, puoi inseriredepartment
odepartment:shipping
.
Filtro di set di dati nello strumento a riga di comando API o bq
Attualmente, l'API, lo strumento a riga di comando bq e le librerie client supportano solo il filtro dei set di dati.
Per filtrare i set di dati utilizzando l'API, lo strumento bq o le librerie client, crea una specifica di filtro e utilizzala:
- Come parametro per il flag
--filter
nello strumento bq - Come valore della proprietà
filter
nel metododatasets.list
dell'API
Limitazioni sulle specifiche dei filtri
Le specifiche dei filtri presentano le seguenti limitazioni:
- È supportato solo l'operatore logico
AND
. I confronti separati da spazi sono considerati con operatoriAND
impliciti. - L'unico campo attualmente idoneo per l'applicazione di filtri è
labels.key
, dovekey
è il nome di un'etichetta. - Il filtro può includere fino a dieci espressioni.
- Il filtro è sensibile alle maiuscole.
- Attualmente, l'API, lo strumento a riga di comando bq e le librerie client supportano solo il filtro dei set di dati.
Esempi di specifiche di filtro
Una specifica di filtro utilizza la seguente sintassi:
"field[:value][ field[:value]]..."
Sostituisci quanto segue:
field
è espresso comelabels.key
, dove key è una chiave di etichetta.value
è un valore facoltativo dell'etichetta.
I seguenti esempi mostrano come generare espressioni di filtro.
Per elencare le risorse con un'etichetta department:shipping
, utilizza la seguente
specifica di filtro:
labels.department:shipping
Per elencare le risorse utilizzando più etichette, separa le coppie key:value
con uno spazio. Lo spazio viene considerato come un operatore logico AND
. Ad esempio, per elencare i set di dati con l'etichetta department:shipping
e l'etichetta location:usa
, utilizza la seguente specifica del filtro:
labels.department:shipping labels.location:usa
Puoi filtrare in base alla presenza di una sola chiave, anziché in base a una coppia chiave-valore. La seguente specifica di filtro elenca tutti i set di dati etichettati department
indipendentemente dal valore.
labels.department
Una specifica di filtro equivalente utilizza un asterisco per rappresentare tutti i possibili valori associati alla chiave department
.
labels.department:*
Puoi anche utilizzare i tag nella specifica di un filtro. Ad esempio, per elencare le risorse con l'etichetta department:shipping
e il tag test_data
, utilizza la seguente specifica di filtro:
labels.department:shipping labels.test_data
Applicazione di filtri ai set di dati nello strumento a riga di comando bq e nell'API
Per filtrare i set di dati utilizzando l'API, lo strumento a riga di comando bq o le librerie client:
bq
Esegui il comando bq ls
con il flag --filter
. Se stai elencando i set di dati in un progetto diverso da quello predefinito, specifica il flag --project_id
.
bq ls \ --filter "filter_specification" \ --project_id project_id
Sostituisci quanto segue:
filter_specification
è una specifica di filtro valida.project_id
è l'ID progetto.
Esempi:
Inserisci il comando seguente per elencare i set di dati nel progetto predefinito con un'etichetta department:shipping
:
bq ls --filter "labels.department:shipping"
Inserisci il comando seguente per elencare i set di dati nel progetto predefinito che hanno un'etichetta department:shipping
e un tag test_data
.
bq ls --filter "labels.department:shipping labels.test_data"
Inserisci il comando seguente per elencare in myotherproject
i set di dati con un'etichetta department:shipping
:
bq ls --filter "labels.department:shipping" --project_id myotherproject
L'output per ciascuno di questi comandi restituisce un elenco di set di dati come il seguente.
+-----------+ | datasetId | +-----------+ | mydataset | | mydataset2| +-----------+
API
Chiama il metodo API datasets.list
e fornisci la specifica del filtro utilizzando la proprietà filter
.
Go
Prima di provare questo esempio, segui le istruzioni di configurazione di Go disponibili nella guida rapida di BigQuery sull'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API BigQuery Go.
Per eseguire l'autenticazione in 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 di configurazione di Java disponibili nella guida rapida di BigQuery sull'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API BigQuery Java.
Per eseguire l'autenticazione in BigQuery, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per le librerie client.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js disponibili nella guida rapida di BigQuery sull'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API BigQuery Node.js.
Per eseguire l'autenticazione in 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 di configurazione di Python disponibili nella guida rapida di BigQuery sull'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API BigQuery Python.
Per eseguire l'autenticazione in BigQuery, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per le librerie client.
Passaggi successivi
- Scopri come aggiungere etichette alle risorse BigQuery.
- Scopri come visualizzare le etichette nelle risorse BigQuery.
- Scopri come aggiornare le etichette nelle risorse BigQuery.
- Scopri come eliminare le etichette sulle risorse BigQuery.
- Scopri di più sull'utilizzo delle etichette nella documentazione di Resource Manager.