Creare query nella console
Puoi eseguire query e visualizzare i dati Bigtable utilizzando il Bigtable Studio generatore di query. Query Builder è un modulo interattivo la console Google Cloud che ti consente di creare una query, eseguirla su una tabella e visualizzare i risultati nella console.
Il generatore di query di Bigtable Studio ti consente di utilizzare i selettori a discesa per specificare una combinazione di clausole di query senza dover scrivere un'applicazione o utilizzare una CLI. Quando esegui la query, la console effettua una chiamata a l'API Bigtable Data, che restituisce i dati corrispondenti alla query.
Questo documento descrive come utilizzare lo strumento per la creazione di query e offre suggerimenti per ottimizzare le query. Prima di leggere questa pagina, dovresti conoscere il Bigtable panoramica di Google.
Le query eseguite nel generatore di query sono soggette agli stessi prezzi e alle stesse quote di qualsiasi altra query inviata a una tabella.
Quando utilizzare Query Builder
La possibilità di eseguire query sui dati Bigtable La console Google Cloud è utile quando devi eseguire queste operazioni:
- Ottieni rapidamente una rappresentazione visiva dello schema della tabella.
- Verifica che alcuni dati siano stati scritti correttamente.
- Convalida l'integrità dei dati durante una migrazione.
- Esegui il debug di possibili problemi relativi ai dati.
- Visualizza l'anteprima dei risultati restituiti da una combinazione specifica di clausole prima di utilizzarli nel codice. Ciò può essere particolarmente utile per i nuovi
utenti di Bigtable e per gli utenti esperti che non vogliono utilizzare
la
cbt
CLI .
Prima di iniziare
Per ottenere le autorizzazioni necessarie per utilizzare il generatore di query,
chiedi all'amministratore di concederti il ruolo IAM
Lettore Bigtable (roles/bigtable.reader
) nel progetto.
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Questo ruolo predefinito contiene le autorizzazioni necessarie per utilizzare lo strumento per la creazione di query. Per vedere le autorizzazioni esatte obbligatorie, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per utilizzare il generatore di query sono necessarie le seguenti autorizzazioni:
-
bigtable.tables.get
-
bigtable.instances.get
-
bigtable.appProfiles.list
-
bigtable.tables.list
-
bigtable.tables.readRows
Potresti anche riuscire a ottenere queste autorizzazioni con ruoli personalizzati altri ruoli predefiniti.
Se non hai una tabella su cui eseguire query, puoi crea una piccola tabella di test ed eseguirvi le query.
Apri Query Builder
Quando apri Query Builder, viene eseguita e visualizzata una query predefinita per la prima tabella in ordine alfabetico nell'istanza. La query predefinita viene eseguita utilizzando il profilo dell'app predefinito e vengono restituite fino a 100 righe.
Apri l'elenco delle istanze Bigtable nella console Google Cloud.
Fai clic sul nome dell'istanza contenente la tabella su cui vuoi eseguire la query.
Nel riquadro di navigazione, fai clic su Bigtable Studio. Bigtable Studio si apre in modalità Query Builder. Il riquadro Esplora fornisce un elenco delle tabelle nell'istanza e il riquadro Risultati query mostra i risultati della query predefinita.
(Facoltativo) Comprimi il riquadro Esplora per aumentare le dimensioni del riquadro Query Builder.
Formato di visualizzazione dei dati
I risultati di Query Builder vengono visualizzati in una tabella. La prima intestazione e colonna è Chiave riga. Le intestazioni rimanenti rappresentano ciascuna una colonna nella
Tabella Bigtable, espressa come famiglia di colonne e colonna
separato da due punti. Ad esempio, l'intestazione
cell_plan: data_plan_01gb indica che i valori in quella colonna provengono dalla
colonna data_plan_01gb
della famiglia di colonne cell_plan
.
Viene restituito solo il valore più recente di una colonna. I timestamp sono nascosti da predefinite, ma puoi fare clic sul pulsante di attivazione/disattivazione per visualizzarli.
Seleziona una tabella
Utilizza il menu a discesa Tabella per selezionare l'ID della tabella su cui eseguire la query.
(Facoltativo) Specifica un profilo dell'app
Puoi usare un profilo dell'app creato appositamente per la query Builder. Questo può essere utile, ad esempio, quando vuoi isolare il traffico delle query utilizzando un cluster diverso da quello utilizzato dalla tua applicazione principale.
Per utilizzare un profilo dell'app diverso per eseguire la query successiva, segui questi passaggi.
- Fai clic su Aggiungi alla query.
- Fai clic su Cambia profilo app (impostazione predefinita). Viene visualizzato un nuovo menu a discesa.
- Usa il menu a discesa Profilo app e scegli un'opzione dall'elenco profili delle app.
Per ulteriori informazioni sui vantaggi dell'utilizzo di profili app diversi per carichi di lavoro, vedi Informazioni sull'app profili di Google. Per scoprire come creare un profilo di app, consulta la sezione Creare e configurare profili di app.
Se la tabella si trova in un'istanza che utilizza la replica, configura il profilo della tua app in modo che le letture vengano eseguite dal cluster più vicino a te dal punto di vista geografico.
Aggiungi clausole alla query ed eseguila
- Dopo aver selezionato la tabella e il profilo dell'app, aggiungi le clausole alla query. Per informazioni dettagliate sulle clausole disponibili, consulta la sezione successiva.
- Dopo aver aggiunto tutte le clausole, fai clic su Esegui.
- Visualizzare i risultati.
Clausole di query
Utilizza Query Builder per aggiungere clausole alla query. Quando esegui la query, Query Builder crea e invia una richiesta di lettura alla tabella. Per scoprire di più sulle richieste di lettura, consulta Letture.
Le clausole chiave di riga, intervallo di chiavi di riga e prefisso chiave di riga determinano le righe che vengono recuperate dallo spazio di archiviazione. Le clausole regex della chiave di riga, delle colonne e dell'intervallo di tempo aggiungono un filtro alla richiesta di lettura generata. Filtri utilizzati nella query funzionano come quando li utilizzi nelle librerie client. Per informazioni dettagliate sui filtri di Bigtable e su come il loro utilizzo può influire sulle prestazioni, consulta Filtri e Utilizzare i filtri.
Specifica la chiave di riga
Per recuperare una singola riga dalla tabella, fornisci un valore della chiave di riga. Puoi aggiungere più clausole chiave di riga.
- Fai clic su Aggiungi alla query.
- Nell'elenco a discesa, seleziona Chiave riga.
- Inserisci il valore esatto della chiave di riga di cui vuoi visualizzare i valori.
Specifica un intervallo di chiavi di riga
Per recuperare un intervallo di righe dalla tabella, specifica una chiave di riga iniziale e finale. Bigtable archivia i dati in ordine lessicografico in base alla chiave di riga.
- Fai clic su Aggiungi alla query.
- Nell'elenco a discesa, seleziona Intervallo di chiavi riga.
- Inserisci la chiave di riga iniziale completa.
- Inserisci la chiave completa della riga finale.
Specifica un prefisso della chiave di riga
Per recuperare solo le righe le cui chiavi di riga iniziano con un insieme specifico di caratteri, filtra per prefisso della chiave di riga. Il prefisso della chiave di riga corrisponde ai primi N caratteri di una riga chiave. Per convenzione, spesso c'è un hashtag, una barra verticale o un altro simbolo tra e il resto della chiave di riga.
- Fai clic su Aggiungi alla query.
- Nell'elenco a discesa, seleziona Prefisso chiave riga.
- Inserisci un prefisso della chiave di riga. Non è necessario inserire simboli jolly.
Filtra per espressione regolare della chiave di riga
Per ottenere solo le righe le cui coppie chiave-valore di riga corrispondono a un'espressione regolare specificata, utilizza un filtro regex della chiave di riga. Per un rendimento migliore, aggiungi un intervallo di chiavi di riga o una clausola di prefisso della chiave di riga alla query prima di aggiungere il filtro regex della chiave di riga. Per indicazioni su come comporre l'espressione regolare, consulta Espressione regolare della chiave di riga.
- Fai clic su Aggiungi alla query.
- Nell'elenco a discesa, seleziona regex chiave di riga.
- Inserisci un'espressione regolare che utilizzi la sintassi RE2
Filtra per colonna
Per specificare una o più colonne da includere nella query, aggiungi una clausola columns, scegliendo la famiglia di colonne e il qualificatore di colonna per ogni colonna in base alla quale vuoi filtrare. La richiesta di lettura generata quando aggiungi questa clausola include il filtro regex della famiglia di colonne e il filtro dell'intervallo di colonne.
- Fai clic su Aggiungi alla query.
- Nell'elenco a discesa, seleziona Colonne.
- Fai clic nel campo Colonne. Viene visualizzato un elenco di famiglie di colonne.
- Fai clic su un ID famiglia di colonne. Viene visualizzato un elenco di qualificatori di colonna.
- Fai clic su un qualificatore di colonna.
Filtra per intervallo di tempo
Per recuperare solo le celle con un timestamp compreso in un determinato intervallo, aggiungi una clausola di intervallo di tempo che utilizza il filtro per intervallo di timestamp.
- Fai clic su Aggiungi alla query.
- Nell'elenco a discesa, seleziona Intervallo di tempo.
- Inserisci un timestamp di inizio.
- Inserisci un timestamp di fine.
Fornisci un timestamp in uno dei seguenti formati:
- Un timestamp Unix in microsecondi, ad esempio
3023483279876000
- YYYY-MM-DDThh:mm:ss:ss[z]
- YYYY/MM/DD-hh:mm:ss.sss[z]
- MM/GG/AAAA
- AAAA/MM/GG
Il valore facoltativo T
è un valore letterale che indica l'ora e il valore facoltativo z
indica l'ora UTC anziché l'ora locale. Per ulteriori informazioni sui formati dei timestamp, consulta ISO 8601.
Specifica un limite
Per specificare un numero massimo di righe restituite, aggiungi una clausola di limite.
- Fai clic su Aggiungi alla query.
- Nell'elenco a discesa, seleziona Limite.
- Inserisci un numero compreso tra 1 e 1,00.
Limitazioni
Al generatore di query si applicano le seguenti limitazioni.
- 1000 caratteri per cella: Bigtable restituisce un può contenere al massimo 1000 caratteri per cella. Se una cella contiene più di 1000 caratteri, viene visualizzato un risultato troncato, annotato con il numero di caratteri non visualizzati.
- Massimo 100 colonne: Bigtable restituisce le prime 100 e colonne di ogni riga che corrispondono alla query. Le famiglie di colonne non vengono memorizzate in un ordine particolare, ma le colonne sono ordinate in ordine alfabetico all'interno della famiglia di colonne.
- Massimo 1000 righe: il generatore di query restituisce un massimo di le prime 1000 righe di dati corrispondenti alla query.
- Base64: Bigtable fa del suo meglio per visualizzare con precisione i dati con codifica Base64, ma i risultati non sono garantiti. Se Bigtable non è in grado di visualizzare i dati in una cella, ma li visualizza la dimensione del valore della cella in byte.
Dati meno recenti: puoi recuperare solo la cella più recente (o versione) nelle colonne su cui esegui la query. Per informazioni dettagliate su questo concetto, consulta Modello di archiviazione Bigtable e Concetti generali
Dati serializzati: i dati archiviati come buffer di protocollo non vengono visualizzati. correttamente nei risultati della query. I dati JSON sono supportati meglio, ma non è garantito che siano corretti.
Timestamp artificiali: se la tua applicazione assegna un non timestamp numeri alla proprietà timestamp delle celle quando scrive i dati nella tabella, puoi utilizzare i filtri dell'intervallo di tempo nella query per ottenere un intervallo valori che utilizzi al posto dei timestamp, a condizione che li specifichi come microsecondi. Per capire perché i dati della tabella potrebbero utilizzare timestamp artificiali, consulta Timestamp.