Creare query nella console

Puoi eseguire query e visualizzare i dati di Bigtable utilizzando il query builder di Bigtable Studio. Il generatore di query è un modulo interattivo nella 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 all'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, devi conoscere la panoramica di Bigtable.

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 di Bigtable nella console Google Cloud è utile quando devi:

  • Visualizza rapidamente una rappresentazione visiva dello schema della tabella.
  • Verifica che determinati dati siano stati scritti correttamente.
  • Convalida l'integrità dei dati durante una migrazione.
  • Esegui il debug di eventuali problemi relativi ai dati.
  • Visualizza l'anteprima dei risultati restituiti da una combinazione specifica di clausole prima di utilizzarli nel codice. Questo 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 visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:

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 ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Se non hai una tabella su cui eseguire query, puoi creare una piccola tabella di prova ed eseguire le query al suo interno.

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.

  1. Apri l'elenco delle istanze Bigtable nella console Google Cloud.

    Apri l'elenco delle istanze

  2. Fai clic sul nome dell'istanza contenente la tabella su cui vuoi eseguire la query.

  3. Nel riquadro di navigazione, fai clic su Bigtable Studio. Viene visualizzata la pagina Bigtable Studio 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.

  4. (Facoltativo) Comprimi il riquadro Esplora per aumentare le dimensioni del riquadro Query Builder.

Formato di visualizzazione dei dati

I risultati del generatore di query vengono visualizzati in una tabella. La prima intestazione e colonna è Chiave riga. Le intestazioni rimanenti rappresentano ciascuna una colonna della tabella Bigtable, espressa come famiglia di colonne e qualificatore di colonna separati 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.

a discesa

Viene restituito solo il valore più recente per una colonna. I timestamp sono nascosti per impostazione predefinita, 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 utilizzare un profilo dell'app creato appositamente per l'utilizzo con il generatore di query. 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.

  1. Fai clic su Aggiungi alla query.
  2. Fai clic su Modifica il profilo dell'app (impostazione predefinita). Viene visualizzato un nuovo menu a discesa.
  3. Utilizza l'elenco a discesa Profilo app e scegli dall'elenco dei profili dell'app dell'istanza.

Per scoprire di più sui vantaggi dell'utilizzo di profili di app diversi per carichi di lavoro diversi, consulta Informazioni sui profili di app. 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

  1. Dopo aver selezionato la tabella e il profilo dell'app, aggiungi le clausole alla query. Consulta la sezione seguente per informazioni dettagliate sulle clausole disponibili.
  2. Dopo aver aggiunto tutte le clausole, fai clic su Esegui.
  3. Visualizzare i risultati.

Clausole di query

Utilizza Query Builder per aggiungere clausole alla query. Quando esegui la query, il generatore di query 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. I filtri utilizzati nel generatore di query funzionano allo stesso modo di 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.

  1. Fai clic su Aggiungi alla query.
  2. Nell'elenco a discesa, seleziona Chiave riga.
  3. Inserisci il valore esatto della chiave di riga per cui vuoi visualizzare i valori.

Specifica un intervallo di chiave 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.

  1. Fai clic su Aggiungi alla query.
  2. Nell'elenco a discesa, seleziona Intervallo chiavi riga.
  3. Inserisci la chiave di riga iniziale completa.
  4. Inserisci la chiave di riga finale completa.

Specifica un prefisso della chiave di riga

Per recuperare solo le righe le cui chiavi iniziano con un insieme specifico di caratteri, filtra in base al prefisso della chiave di riga. Un prefisso chiave di riga è costituito dai primi N caratteri di una chiave di riga. Per convenzione, tra il prefisso e il resto della chiave di riga è spesso presente un hashtag, una barra o un altro simbolo.

  1. Fai clic su Aggiungi alla query.
  2. Nell'elenco a discesa, seleziona Prefisso chiave riga.
  3. 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 i cui valori della chiave 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.

  1. Fai clic su Aggiungi alla query.
  2. Nell'elenco a discesa, seleziona Regex chiave riga.
  3. 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.

  1. Fai clic su Aggiungi alla query.
  2. Nell'elenco a discesa, seleziona Colonne.
  3. Fai clic nel campo Colonne. Viene visualizzato un elenco di famiglie di colonne.
  4. Fai clic su un ID famiglia di colonne. Viene visualizzato un elenco di qualificatori di colonna.
  5. 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.

  1. Fai clic su Aggiungi alla query.
  2. Nell'elenco a discesa, seleziona Intervallo di tempo.
  3. Inserisci un timestamp di inizio.
  4. 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 LIMIT.

  1. Fai clic su Aggiungi alla query.
  2. Nell'elenco a discesa, seleziona Limita.
  3. 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 massimo di 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 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 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, mostra invece le dimensioni del valore della cella in byte.
  • Dati precedenti: puoi recuperare solo la cella (o la versione) più recente 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 numeri diversi dai timestamp alla proprietà timestamp delle celle quando scrive i dati nella tabella, puoi utilizzare i filtri di intervallo di tempo nella query per ottenere un intervallo di valori da utilizzare al posto dei timestamp, a condizione che li specifichi come microsecondi. Per capire perché i dati della tabella potrebbero utilizzare timestamp artificiali, consulta Timestamp.

Passaggi successivi