BigQuery DataFrames-Sitzungen und ‑E/A verwalten
Durch die Verwaltung von Sitzungen und E/A-Vorgängen in BigQuery DataFrames können Sie Ihre Ausführungsumgebung steuern und Daten in Ihre Workflows ein- und aus ihnen heraus verschieben. Sie können Ihre Sitzungen so konfigurieren, dass Sie steuern, wo Ihre Abfragen ausgeführt werden. Außerdem können Sie E/A-Vorgänge ausführen, um In-Memory-Daten, Cloud Storage-Dateien und BigQuery-Tabellen zu lesen und zu schreiben.
BigQuery-Sitzungen
BigQuery DataFrames verwendet ein lokales Sitzungsobjekt, um Metadaten intern zu verwalten. Jedes DataFrame- und Series-Objekt ist mit einer Sitzung verbunden, jede Sitzung mit einem Standort und jede Abfrage in einer Sitzung wird an dem Standort ausgeführt, an dem Sie die Sitzung erstellt haben. Verwenden Sie das folgende Codebeispiel, um manuell eine Sitzung zu erstellen und zum Laden von Daten zu verwenden:
Sie können Daten aus mehreren Sitzungsinstanzen nicht kombinieren, auch wenn Sie sie mit denselben Einstellungen initialisieren. Das folgende Codebeispiel zeigt, dass der Versuch, Daten aus verschiedenen Sitzungsinstanzen zu kombinieren, zu einem Fehler führt:
Globale Sitzung
BigQuery DataFrames bietet eine globale Standardsitzung, auf die Sie mit der Methode bigframes.pandas.get_global_session() zugreifen können. In Colab müssen Sie eine Projekt-ID für das Attribut bigframes.pandas.options.bigquery.project angeben, bevor Sie es verwenden können. Sie können einen Standort auch mit dem Attribut bigframes.pandas.options.bigquery.location festlegen. Standardmäßig ist dies die Multiregion US.
Im folgenden Codebeispiel wird gezeigt, wie Sie Optionen für die globale Sitzung festlegen:
Wenn Sie den Standort oder das Projekt der globalen Sitzung zurücksetzen möchten, schließen Sie die aktuelle Sitzung, indem Sie die Methode bigframes.pandas.close_session() ausführen.
Viele integrierte BigQuery DataFrames-Funktionen verwenden standardmäßig die globale Sitzung. Das folgende Codebeispiel zeigt, wie integrierte Funktionen die globale Sitzung verwenden:
In-Memory-Daten
Sie können DataFrames- und Series-Objekte mit integrierten Python- oder NumPy-Datenstrukturen erstellen, ähnlich wie Sie Objekte mit Pandas erstellen. Verwenden Sie das folgende Codebeispiel, um ein Objekt zu erstellen:
Wenn Sie pandas-Objekte mit der Methode oder den Konstruktoren read_pandas() in DataFrames-Objekte konvertieren möchten, verwenden Sie das folgende Codebeispiel:
Wenn Sie die Methode to_pandas() verwenden möchten, um BigQuery DataFrames-Daten in den Arbeitsspeicher zu laden, verwenden Sie das folgende Codebeispiel:
Kostenschätzung mit dem Parameter dry_run
Das Laden einer großen Datenmenge kann viel Zeit und Ressourcen in Anspruch nehmen. Wenn Sie sehen möchten, wie viele Daten verarbeitet werden, verwenden Sie den Parameter dry_run=True im Aufruf to_pandas(). Verwenden Sie das folgende Codebeispiel, um einen Probelauf auszuführen:
Dateien lesen und schreiben
Sie können Daten aus kompatiblen Dateien in BigQuery DataFrames einlesen. Diese Dateien können sich auf Ihrem lokalen Computer oder in Cloud Storage befinden. Verwenden Sie das folgende Codebeispiel, um Daten aus einer CSV-Datei zu lesen:
Wenn Sie Ihre BigQuery DataFrames mit der Methode to_csv in lokalen Dateien oder Cloud Storage-Dateien speichern möchten, verwenden Sie das folgende Codebeispiel:
BigQuery-Tabellen lesen und schreiben
Verwenden Sie das folgende Codebeispiel, um BigQuery DataFrames mit BigQuery-Tabellenreferenzen und der Funktion bigframes.pandas.read_gbq zu erstellen:
Wenn Sie einen SQL-String mit der Funktion read_gbq() verwenden möchten, um Daten in BigQuery DataFrames zu lesen, verwenden Sie das folgende Codebeispiel:
Verwenden Sie die Methode to_gbq() des DataFrame-Objekts, um das DataFrame-Objekt in einer BigQuery-Tabelle zu speichern. Das folgende Codebeispiel zeigt, wie das geht:
Nächste Schritte
- Informationen zu BigQuery DataFrames
- Mit Datentypen in BigQuery DataFrames arbeiten
- Diagramme mit BigQuery DataFrames visualisieren
- Referenz zur BigQuery DataFrames API