Abfrageergebnisse in Notebooks auswerten


Sie können BigQuery-Abfrageergebnisse mit Colab Enterprise-Notebooks in BigQuery auswerten.

In dieser Anleitung fragen Sie Daten aus einem öffentlichen BigQuery-Dataset ab und sehen sich die Abfrageergebnisse in einem Notebook an.

Lernziele

  • Erstellen Sie eine Abfrage in BigQuery und führen Sie sie aus.
  • Abfrageergebnisse in einem Notebook ansehen.

Kosten

In dieser Anleitung wird ein öffentliches Dataset aus dem Google Cloud Public Dataset-Programm verwendet. Google bezahlt die Speicherung dieser Datasets und bietet öffentlichen Zugriff auf die Daten. Für die Abfragen der Daten fallen Gebühren an. Weitere Informationen finden Sie unter BigQuery-Preise.

Hinweise

  1. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  2. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  3. BigQuery API aktivieren.

    Aktivieren Sie die API

    Bei neuen Projekten ist BigQuery automatisch aktiviert.

BigQuery Studio aktivieren

Folgen Sie der Anleitung unter BigQuery Studio für die Asset-Verwaltung aktivieren, um Versionen von Code-Assets wie z. B. Notebooks zu speichern, freizugeben und zu verwalten.

Erforderliche Berechtigungen

Zum Erstellen und Ausführen von Notebooks benötigen Sie die folgenden IAM-Rollen (Identity and Access Management):

Abfrageergebnisse in einem Notebook öffnen

Sie können eine SQL-Abfrage ausführen und dann ein Notebook verwenden, um die Daten auszuwerten. Diese Vorgehensweise ist nützlich, wenn Sie die Daten in BigQuery ändern möchten, bevor Sie mit ihnen arbeiten, oder wenn Sie nur eine Teilmenge der Tabellenfelder benötigen.

  1. Öffnen Sie in der Google Cloud Console die Seite BigQuery.

    BigQuery aufrufen

  2. Geben Sie in das Feld Suchbegriff eingeben bigquery-public-data ein.

    Wenn das Projekt nicht angezeigt wird, geben Sie bigquery in das Suchfeld ein und klicken Sie dann auf In allen Projekten suchen, um den Suchstring mit den vorhandenen Projekten abzugleichen.

  3. Wählen Sie bigquery-public-data > ml_datasets > penguins aus.

  4. Klicken Sie für die Tabelle penguins auf Aktionen anzeigen und dann auf Abfrage.

  5. Fügen Sie der generierten Abfrage ein Sternchen (*) hinzu, damit es wie im folgenden Beispiel gelesen wird:

    SELECT * FROM `bigquery-public-data.ml_datasets.penguins` LIMIT 1000;
    
  6. Klicken Sie auf Ausführen.

  7. Klicken Sie im Bereich Abfrageergebnisse auf Daten auswerten und dann auf Mit Python-Notebook auswerten.

Notebook für die Verwendung vorbereiten

Bereiten Sie das Notebook für die Verwendung vor, indem Sie eine Verbindung zu einer Laufzeit herstellen und Standardwerte für die Anwendung festlegen.

  1. Klicken Sie im Notebookheader auf Verbinden, um eine Verbindung zur Standardlaufzeit herzustellen.
  2. Klicken Sie im Codeblock Einrichtung auf Zelle ausführen.

Öffentliche Daten durchsuchen

  1. Um die penguins-Daten in einen BigQuery DataFrame zu laden und die Ergebnisse anzuzeigen, klicken Sie auf Zelle ausführen im Codeblock im Abschnitt Ergebnismenge, die aus dem BigQuery-Job als DataFrame geladen wurde an.
  2. Klicken Sie im Codeblock im Abschnitt Beschreibende Statistiken mit describe() anzeigen auf Zelle ausführen, um beschreibende Messwerte für die Daten abzurufen.
  3. Optional: Verwenden Sie andere Python-Funktionen oder -Pakete, um die Daten auszuwerten und zu analysieren.

Im folgenden Codebeispiel wird die Verwendung von bigframes.pandas zum Analysieren von Daten und von bigframes.ml zum Erstellen eines linearen Regressionsmodells aus Pinguin-Daten in einem BigQuery-DataFrame:

# 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)

Bereinigen

Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, löschen Sie entweder das Projekt, das die Ressourcen enthält, oder Sie behalten das Projekt und löschen die einzelnen Ressourcen.

Am einfachsten können Sie weitere Kosten vermeiden, wenn Sie das Cloud-Projekt löschen, das Sie für diese Anleitung erstellt haben.

  1. Wechseln Sie in der Google Cloud Console zur Seite Ressourcen verwalten.

    Zur Seite „Ressourcen verwalten“

  2. Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen.
  3. Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Shut down (Beenden), um das Projekt zu löschen.

Nächste Schritte