Entwicklertools und -Funktionen
In diesem Dokument finden Sie einen Überblick über einige der Funktionen und Tools, die Ihnen beim Entwickeln von Lösungen mit BigQuery helfen.
Entwicklerfunktionen
In diesem Abschnitt werden einige gängige integrierte Funktionen für Entwickler beschrieben, die BigQuery verwenden.
Daten laden und umwandeln
BigQuery bietet Möglichkeiten zum Batch-Laden, Streamen und Generieren neuer Daten. Informationen dazu, wie Sie die beste Option für Ihren Anwendungsfall auswählen, finden Sie unter Einführung in das Laden von Daten.
Abfragen
BigQuery ist für die Ausführung von analytischen Abfragen auf großen Datasets optimiert, die in GoogleSQL geschrieben sind. Sie können Abfragen planen, speichern und freigeben, die auf in BigQuery gespeicherte Daten, externen Daten, in anderen Clouds gespeicherten Daten oder auf öffentlichen Datasets ausgeführt werden.
Remote-Funktionen
Sie können Remote-Funktionen verwenden, um die Funktionen in Cloud Run-Funktion oder Cloud Run bereitzustellen. Rufen Sie sie dann direkt über Ihre Google SQL-Abfragen auf. Dieser Ansatz ist besonders nützlich, wenn Sie Ihre Funktionen in anderen Sprachen als SQL oder JavaScript implementieren müssen. Remote-Funktionen können für viele Dinge verwendet werden, z. B. zum Übersetzen von Text in einer Tabelle von einer Sprache in eine andere und zum Initiieren von Aktionen, z. B. zur Benachrichtigung, wenn Werte in einer Tabelle unter einen Schwellenwert fallen, oder zum Ausführen von Batchtransformationen, z. B. zum Anwenden eines Modells für maschinelles Lernen (ML).
Maschinelles Lernen
Mit BigQuery ML können Sie ML-Modelle mit GoogleSQL-Abfragen erstellen und ausführen.
Gespeicherte SQL-Prozeduren
Mit SQL-Speicherprozeduren können Sie Sammlungen von Anweisungen aus anderen Abfragen oder gespeicherten Prozeduren aufrufen. Sie können integrierte gespeicherte Prozeduren aufrufen oder eigene schreiben, mit denen Sie Variablen definieren und die Ablaufsteuerung implementieren können.
semistrukturierte Daten
Sie können JSON
-Daten in GoogleSQL verwenden, um semistrukturierte Daten in BigQuery aufzunehmen, ohne im Voraus ein Schema anzugeben. Mit dem Operator für den Feldzugriff können Sie die Werte von Feldern und Arrayelementen direkt abfragen.
Zeitreise
Sie können mit Zeitreisen auf in BigQuery gespeicherte Daten zugreifen, die zu einer beliebigen Zeit in den letzten sieben Tagen geändert oder gelöscht wurden. Mit dieser Funktion können Sie aktualisierte, gelöschte oder abgelaufene Tabellen wiederherstellen, auch wenn Sie Ihre Daten nicht gesichert haben.
Tabellen-Snapshots
Sie können Tabellen-Snapshots verwenden, wenn Sie Ihre Tabelle zu einem Zeitpunkt sichern möchten, der über das Zeitreisefenster hinausgeht. BigQuery speichert nur Byte, die sich von einem Snapshot und der Basistabelle unterscheiden. Daher verwendet ein Tabellen-Snapshot normalerweise weniger Speicherplatz als eine vollständige Kopie der Tabelle.
Tabellenklone
Mit Tabellenklonen können Sie Tabellen versionieren und Änderungen am Tabellenschema testen. Ein Tabellenklon ist eine einfache, schreibbare Kopie einer anderen Tabelle. Ihnen werden nur Kosten für die Speicherung von Daten im Tabellenklon in Rechnung gestellt, wenn diese sich von den Daten in der Basistabelle unterscheiden. Für Tabellenklone fallen anfangs also keine Speicherkosten an.
Externe Tabellen
Sie können externe Tabellen direkt aus BigQuery abfragen, z. B. Daten in einer anderen Google Cloud Datenbank, Dateien in Cloud Storage oder insgesamt in einem anderen Cloud-Produkt. Mit dieser Funktion können Sie ELT-Arbeitslasten mit einer einzigen Abfrage ausführen oder BigQuery-Tabellen mit häufig wechselnden Daten aus einer anderen Quelle zusammenführen.
Benutzerdefinierte Funktionen
Sie können in GoogleSQL oder JavaScript benutzerdefinierte Funktionen (User-Defined Functions, UDFs) schreiben, die für mehrere Abfragen wiederverwenden werden können. Sie können eine UDF als Routine autorisieren, mit der Sie Abfrageergebnisse für bestimmte Nutzer oder Gruppen freigeben können, ohne diesen Nutzern oder Gruppen Zugriff auf die zugrunde liegenden Tabellen zu gewähren.
BigQuery-APIs
BigQuery bietet REST und gRPC APIs als programmatische Schnittstelle zu seinen verschiedenen Diensttypen. Sie können die Identität Ihres Clients über Dienstkonten oder Nutzerkonten authentifizieren, damit dieser auf die APIs zugreifen kann. Folgende APIs sind verfügbar:
- BigQuery API
- BigQuery DataPolicy API
- BigQuery Connection API
- BigQuery Migration API
- BigQuery Storage API
- BigQuery Reservation API
- BigQuery-Freigabe (früher Analytics Hub)
- BigQuery Data Transfer Service API
Weitere Informationen zu den einzelnen APIs finden Sie unter BigQuery APIs und Bibliotheken – Übersicht.
BigQuery DataFrames-Bibliothek
BigQuery DataFrames ist eine Python API, mit der Sie Daten analysieren und Aufgaben für maschinelles Lernen in BigQuery ausführen können. Sie können sich den Quellcode für die API auf GitHub ansehen.
Erste Schritte mit BigQuery DataFrames mithilfe der BigQuery DataFrames-Kurzanleitung
Clientbibliotheken
Mit Clientbibliotheken können Sie direkt unter Verwendung Ihrer bevorzugten Programmiersprache (darunter C#, Go, Java, Node.js, PHP, Python und Ruby) auf BigQuery APIs zugreifen. Wenn Sie diese Ressourcen für die BigQuery API aufrufen möchten, wählen Sie eine der folgenden Sprachen aus:
C#
- Kurzanleitung. Detaillierte Anleitung zum Ausführen einer Abfrage in BigQuery mithilfe der Clientbibliothek
- API-Referenzdokumentation. Beschreibungen der Methoden und Objekte ansehen, die für Ihre Sprache unterstützt werden.
- GitHub-Quellcode Quellcode der BigQuery-Clientbibliothek auf GitHub ansehen
- Stack Overflow. Lesen, stellen und beantworten Sie Fragen mit Bezug auf die BigQuery-Clientbibliothek.
Go
- Kurzanleitung. Detaillierte Anleitung zum Ausführen einer Abfrage in BigQuery mithilfe der Clientbibliothek
- API-Referenzdokumentation. Beschreibungen der Methoden und Objekte ansehen, die für Ihre Sprache unterstützt werden.
- GitHub-Quellcode Quellcode der BigQuery-Clientbibliothek auf GitHub ansehen
- Stack Overflow. Lesen, stellen und beantworten Sie Fragen mit Bezug auf die BigQuery-Clientbibliothek.
Java
- Kurzanleitung. Detaillierte Anleitung zum Ausführen einer Abfrage in BigQuery mithilfe der Clientbibliothek
- API-Referenzdokumentation. Beschreibungen der Methoden und Objekte ansehen, die für Ihre Sprache unterstützt werden.
- GitHub-Quellcode Quellcode der BigQuery-Clientbibliothek auf GitHub ansehen
- Stack Overflow. Lesen, stellen und beantworten Sie Fragen mit Bezug auf die BigQuery-Clientbibliothek.
Node.js
- Kurzanleitung. Detaillierte Anleitung zum Ausführen einer Abfrage in BigQuery mithilfe der Clientbibliothek
- API-Referenzdokumentation. Beschreibungen der Methoden und Objekte ansehen, die für Ihre Sprache unterstützt werden.
- GitHub-Quellcode Quellcode der BigQuery-Clientbibliothek auf GitHub ansehen
- Stack Overflow. Lesen, stellen und beantworten Sie Fragen mit Bezug auf die BigQuery-Clientbibliothek.
PHP
- Kurzanleitung. Detaillierte Anleitung zum Ausführen einer Abfrage in BigQuery mithilfe der Clientbibliothek
- API-Referenzdokumentation. Beschreibungen der Methoden und Objekte ansehen, die für Ihre Sprache unterstützt werden.
- GitHub-Quellcode Quellcode der BigQuery-Clientbibliothek auf GitHub ansehen
- Stack Overflow. Lesen, stellen und beantworten Sie Fragen mit Bezug auf die BigQuery-Clientbibliothek.
Python
- Kurzanleitung. Detaillierte Anleitung zum Ausführen einer Abfrage in BigQuery mithilfe der Clientbibliothek
- API-Referenzdokumentation. Beschreibungen der Methoden und Objekte ansehen, die für Ihre Sprache unterstützt werden.
- GitHub-Quellcode Quellcode der BigQuery-Clientbibliothek auf GitHub ansehen
- Stack Overflow. Lesen, stellen und beantworten Sie Fragen mit Bezug auf die BigQuery-Clientbibliothek.
Ruby
- Kurzanleitung. Detaillierte Anleitung zum Ausführen einer Abfrage in BigQuery mithilfe der Clientbibliothek
- API-Referenzdokumentation. Beschreibungen der Methoden und Objekte ansehen, die für Ihre Sprache unterstützt werden.
- GitHub-Quellcode Quellcode der BigQuery-Clientbibliothek auf GitHub ansehen
- Stack Overflow. Lesen, stellen und beantworten Sie Fragen mit Bezug auf die BigQuery-Clientbibliothek.
Weitere Informationen zur Verwendung der BigQuery-Clientbibliotheken in Ihrer lokalen Umgebung finden Sie unter BigQuery API-Clientbibliotheken.
Codebeispiele
Sie können in BigQuery-Codebeispielen suchen, die vollständige Snippets zum Ausführen allgemeiner Aufgaben in BigQuery bereitstellen, z. B. zum Erstellen von Tabellen, zum Auflisten von Verbindungen, zum Aufrufen von Kapazitätszusicherungen und -reservierungen und zum Laden von Daten. Wählen Sie eine API, eine Aufgabe und die gewünschte Sprache aus, um sich ein Beispiel anzusehen.
Programmatische Tools und Dienste
Die folgenden Dienste sind in BigQuery integriert und bieten zusätzliche Funktionen für die Lösungsentwicklung:
- Dataproc. Ein vollständig verwalteter Dienst zum Ausführen von Apache Hadoop- und Apache Spark-Jobs. Dataproc bietet den BigQuery-Connector, mit dem Hadoop und Spark Daten direkt aus BigQuery verarbeiten können.
- Dataflow. Ein vollständig verwalteter Dienst zum Ausführen umfangreicher Apache Beam-Jobs. Mit dem BigQuery-E/A-Connector für Beam können Beam-Pipelines Daten in BigQuery lesen und in BigQuery schreiben.
- Cloud Composer. Ein vollständig verwalteter, auf Apache Airflow basierender Dienst für die Workflow-Planung. Mit BigQuery-Operatoren können Airflow-Workflows Datasets und Tabellen verwalten, Abfragen ausführen und Daten validieren.
- Pub/Sub. Ein asynchroner, skalierbarer Messaging-Dienst. Pub/Sub bietet BigQuery-Abos, mit denen Nachrichten beim Empfang in eine vorhandene BigQuery-Tabelle geschrieben werden können.
Kontinuierliche Einbindung und Bereitstellung
Mit den folgenden Optionen können Sie Ihren Entwickler-Workflow mit BigQuery verwalten und automatisieren:
- BigQuery Terraform-Modul Ein Modul zum Automatisieren der Instanziierung und Bereitstellung Ihrer BigQuery-Datasets und ‑Tabellen.
- bq-Befehlszeilentool. Ein Python-basiertes Befehlszeilentool für BigQuery.
- Dataform. Ein Dienst, mit dem Datenanalysten komplexe SQL-Workflows für die Datentransformation in BigQuery entwickeln, testen und planen sowie eine Versionsverwaltung dafür ausführen können.
- dbt. Ein Framework, mit dem Sie Workflows planen und bereitstellen, Daten testen und katalogisieren sowie Codeteile als Makros wiederverwenden können.
- Liquibase Eine Lösung zur Änderungsverwaltung von Datenbankschemata, mit der Sie Änderungen schnell und sicher von der Entwicklung bis zur Produktion überarbeiten und freigeben können.
ODBC- und JDBC-Treiber
Mit ODBC (Open Database Connectivity)- und JDBC (Java Database Connectivity)-Treibern können Sie datenbankneutrale Softwareanwendungen in gängigen Programmiersprachen schreiben, um BigQuery mit Ihrer vorhandenen Infrastruktur zu verbinden. Weitere Informationen und die neuesten Treiberversionen finden Sie unter ODBC- und JDBC-Treiber für BigQuery.
Nächste Schritte
- Weitere Informationen zu anstehenden Veranstaltungen und Ressourcen für Entwickler Google Cloudfinden Sie im Developer Center.
- Weitere Informationen dazu, wie andere Unternehmen Google Cloudnutzen, finden Sie unter Daten-Cloud für ISVs.
- Weitere Informationen zu validierten Partnerlösungen, die in BigQuery eingebunden werden können, finden Sie unter Google Cloud Ready – BigQuery.