Esplorare i risultati delle query nei notebook


Puoi esplorare i risultati delle query BigQuery utilizzando i notebook Colab Enterprise in BigQuery.

In questo tutorial, esegui una query sui dati di un set di dati pubblico BigQuery ed esplori i risultati della query in un blocco note.

Obiettivi

  • Crea ed esegui una query in BigQuery.
  • Esplora i risultati delle query in un notebook.

Costi

Questo tutorial utilizza un set di dati disponibile tramite il Trusted Cloud by S3NS programma per i set di dati pubblici. Google sostiene le spese per lo spazio in cui sono archiviati questi set di dati e ti consente di accedervi pubblicamente. Ti vengono addebitati i costi per le query eseguite sui dati. Per maggiori informazioni, vedi Prezzi di BigQuery.

Prima di iniziare

  1. In the Trusted Cloud console, on the project selector page, select or create a Trusted Cloud project.

    Go to project selector

  2. Verify that billing is enabled for your Trusted Cloud project.

  3. Enable the BigQuery API.

    Enable the API

    Per i nuovi progetti, BigQuery viene abilitato automaticamente.

Impostare la regione predefinita per gli asset di codice

Se è la prima volta che crei un asset di codice, devi impostare la regione predefinita per gli asset di codice. Non puoi modificare la regione di un asset di codice dopo la creazione.

Tutti gli asset di codice in BigQuery Studio utilizzano la stessa regione predefinita. Per impostare la regione predefinita per gli asset di codice:

  1. Vai alla pagina BigQuery.

    Vai a BigQuery

  2. Nel riquadro Explorer, trova il progetto in cui hai attivato gli asset di codice.

  3. Fai clic su Visualizza azioni accanto al progetto, quindi fai clic su Modifica la mia regione di codice predefinita.

  4. Per Regione, seleziona la regione che vuoi utilizzare per gli asset di codice.

  5. Fai clic su Seleziona.

Per un elenco delle regioni in cui è disponibile, consulta Località di BigQuery Studio.

Autorizzazioni obbligatorie

Per creare ed eseguire blocchi note, devi disporre dei seguenti ruoli IAM (Identity and Access Management):

Aprire i risultati della query in un notebook

Puoi eseguire una query SQL e poi utilizzare un notebook per esplorare i dati. Questo approccio è utile se vuoi modificare i dati in BigQuery prima di utilizzarli o se hai bisogno solo di un sottoinsieme dei campi della tabella.

  1. Nella console Trusted Cloud , vai alla pagina BigQuery.

    Vai a BigQuery

  2. Nel campo Digita per effettuare la ricerca, inserisci bigquery-public-data.

    Se il progetto non viene visualizzato, inserisci bigquery nel campo di ricerca, quindi fai clic su Cerca in tutti i progetti in modo da confrontare la stringa di ricerca con i progetti esistenti.

  3. Seleziona bigquery-public-data > ml_datasets > penguins.

  4. Per la tabella penguins, fai clic su Visualizza azioni, quindi fai clic su Query.

  5. Aggiungi un asterisco (*) per la selezione dei campi alla query generata, in modo che sia simile al seguente esempio:

    SELECT * FROM `bigquery-public-data.ml_datasets.penguins` LIMIT 1000;
  6. Fai clic su Esegui.

  7. Nella sezione Risultati delle query, fai clic su Esplora dati e poi su Esplora con il notebook Python.

Prepara il notebook per l'uso

Prepara il notebook per l'uso connettendoti a un runtime e impostando i valori predefiniti dell'applicazione.

  1. Nell'intestazione del blocco note, fai clic su Connetti per connetterti al runtime predefinito.
  2. Nel blocco di codice Setup, fai clic su Esegui cella.

esplora i dati

  1. Per caricare i dati penguins in un DataFrame BigQuery e mostrare i risultati, fai clic su Esegui cella nel blocco di codice nella sezione Set di risultati caricato dal job BigQuery come DataFrame.
  2. Per ottenere metriche descrittive per i dati, fai clic su Esegui cella nel blocco di codice nella sezione Mostra statistiche descrittive utilizzando describe().
  3. (Facoltativo) Utilizza altre funzioni o pacchetti Python per esplorare e analizzare i dati.

Il seguente esempio di codice mostra l'utilizzo di bigframes.pandas per analizzare i dati e di bigframes.ml per creare un modello di regressione lineare dai dati penguins in un DataFrame BigQuery:

import bigframes.pandas as bpd

# Load data from BigQuery
query_or_table = "bigquery-public-data.ml_datasets.penguins"
bq_df = bpd.read_gbq(query_or_table)

# Inspect one of the columns (or series) of the DataFrame:
bq_df["body_mass_g"]

# Compute the mean of this series:
average_body_mass = bq_df["body_mass_g"].mean()
print(f"average_body_mass: {average_body_mass}")

# Find the heaviest species using the groupby operation to calculate the
# mean body_mass_g:
(
    bq_df["body_mass_g"]
    .groupby(by=bq_df["species"])
    .mean()
    .sort_values(ascending=False)
    .head(10)
)

# Create the Linear Regression model
from bigframes.ml.linear_model import LinearRegression

# Filter down to the data we want to analyze
adelie_data = bq_df[bq_df.species == "Adelie Penguin (Pygoscelis adeliae)"]

# Drop the columns we don't care about
adelie_data = adelie_data.drop(columns=["species"])

# Drop rows with nulls to get our training data
training_data = adelie_data.dropna()

# Pick feature columns and label column
X = training_data[
    [
        "island",
        "culmen_length_mm",
        "culmen_depth_mm",
        "flipper_length_mm",
        "sex",
    ]
]
y = training_data[["body_mass_g"]]

model = LinearRegression(fit_intercept=False)
model.fit(X, y)
model.score(X, y)

Esegui la pulizia

Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questo tutorial, elimina il progetto che contiene le risorse oppure mantieni il progetto ed elimina le singole risorse.

Il modo più semplice per eliminare la fatturazione è eliminare il progetto Trusted Cloud che hai creato per questo tutorial.

  1. In the Trusted Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

Passaggi successivi