Arbeitslasten orchestrieren
BigQuery-Aufgaben sind normalerweise Teil größerer Arbeitslasten, wobei externe Aufgaben BigQuery-Vorgänge auslösen und dann von diesen ausgelöst werden. Die Orchestrierung von Arbeitslasten hilft Datenadministratoren, Analysten und Entwicklern, diese Aktionskette zu organisieren und zu optimieren, um eine nahtlose Verbindung zwischen Datenressourcen und Prozessen zu schaffen. Orchestrierungsmethoden und -tools unterstützen das Entwerfen, Erstellen, Implementieren und Überwachen dieser komplexen Datenarbeitslasten.
Orchestrierungsmethode wählen
Bei der Wahl einer Orchestrierungsmethode sollten Sie feststellen, ob Ihre Arbeitslasten ereignisgesteuert, zeitgesteuert oder beides sind. Ein Ereignis ist als Zustandsänderung definiert. Das kann eine Änderung an Daten in einer Datenbank oder das Hinzufügen einer Datei zu einem Speichersystem sein. Bei der ereignisgesteuerten Orchestrierung kann eine Aktion auf einer Website eine Datenaktivität auslösen, oder es kann erforderlich sein, dass ein Objekt in einem bestimmten Bucket sofort bei Empfang verarbeitet wird. Bei der zeitgesteuerten Orchestrierung müssen neue Daten möglicherweise einmal pro Tag oder häufig genug geladen werden, um stündliche Berichte zu erstellen. Sie können die ereignisgesteuerte und zeitgesteuerte Orchestrierung in Szenarien verwenden, in denen Sie Objekte in Echtzeit in einen Data Lake laden müssen, wobei Aktivitätsberichte für den Data Lake nur täglich generiert werden.
Orchestrierungstool wählen
Orchestrierungstools unterstützen Sie bei Aufgaben, die an der Verwaltung komplexer Datenarbeitslasten beteiligt sind, darunter die Kombination mehrerer Google Cloud- oder Drittanbieterdienste mit BigQuery-Jobs, oder die parallele Ausführung mehrerer BigQuery-Jobs. Jede Arbeitslast hat eindeutige Anforderungen für die Abhängigkeit und Parameterverwaltung, damit Aufgaben in der richtigen Reihenfolge mit den richtigen Daten ausgeführt werden. Google Cloud bietet verschiedene Orchestrierungsoptionen, die auf Orchestrierungsmethoden und Arbeitslastanforderungen basieren.
Wir empfehlen für die meisten Anwendungsfälle die Verwendung von Dataform, Workflows, Cloud Composer oder Vertex AI Pipelines. Das folgende Diagramm zeigt einen direkten Vergleich:
Dataform | Workflows | Cloud Composer | Vertex AI Pipelines | |
---|---|---|---|---|
Fokus | Datenumwandlung | Mikrodienste | ETL oder ELT | Maschinelles Lernen |
Komplexität | * | ** | *** | ** |
Nutzerprofil | Datenanalyst oder Administrator | Datenarchitekt | Data Engineer | Datenanalyst |
Codetyp | JavaScript und SQL | YAML oder JSON | Python | Python |
Serverlos? | Ja | Ja | Vollständig verwaltet | Ja |
Nicht geeignet für | Ketten externer Dienste | Datenumwandlung und -verarbeitung | Niedrige Latenz oder ereignisgesteuerte Pipelines | Infrastrukturaufgaben |
In folgenden Abschnitten werden diese und weitere Tools zur Orchestrierung ausführlich beschrieben.
Geplante Abfragen
Die einfachste Form der Orchestrierung von Arbeitslasten ist wiederkehrende Abfragen direkt in BigQuery. Dies ist zwar der am wenigsten komplexe Ansatz für die Orchestrierung, wir empfehlen es jedoch nur für einfache Abfrageketten ohne externe Abhängigkeiten. Auf diese Weise geplante Abfragen müssen in GoogleSQL geschrieben werden und können Datendefinitionssprache (DDL) undDML-Anweisungen (Data Manipulation Language) enthalten.
Orchestrierungsmethode: zeitgesteuert
Dataform
Dataform ist ein kostenloses, SQL-basiertes, tendenziöses Tansformations-Framework, das komplexe Datentransformationsaufgaben in BigQuery orchestriert. Werden Rohdaten in BigQuery geladen, können Sie mit Dataform eine organisierte, getestete, versionsgesteuerte Sammlung von Datasets und Tabellen erstellen. Weitere Informationen zur Verwendung von Dataform mit BigQuery finden Sie unter SQL-Workflow erstellen und ausführen.
Orchestrierungsmethode: ereignisgesteuert
Workflows
Workflows ist ein serverloses Tool, das HTTP-basierte Dienste mit sehr geringer Latenz orchestriert. Es eignet sich am besten zur Verkettung von Mikrodiensten, zur Automatisierung von Infrastrukturaufgaben, zur Einbindung in externe Systeme und zur Erstellung einer Abfolge an Vorgängen in Google Cloud. Weitere Informationen zur Verwendung von Workflows mit BigQuery finden Sie unter Mehrere BigQuery-Jobs parallel ausführen.
Orchestrierungsmethode: ereignisgesteuert und zeitgesteuert
Cloud Composer
Cloud Composer ist ein vollständig verwaltetes Tool, das auf Apache Airflow basiert. Es eignet sich am besten für ETL-(Extrahieren, Transformieren, Laden) oder ELT- (Extrahieren, Laden, Transformieren)-Arbeitslasten, da es nicht nur mehrere Operatortypen und -muster unterstützt, sondern auch die Aufgabenausführung über andere Google Cloud-Produkte und externe Ziele hinweg. Weitere Informationen zur Verwendung von Cloud Composer mit BigQuery finden Sie unter Datenanalyse-DAG in Google Cloud ausführen.
Orchestrierungsmethode: zeitgesteuert
Vertex AI Pipelines
Vertex AI Pipelines ist ein serverloses Tool, das auf Kubeflow Pipelines basiert, die speziell für die Orchestrierung von Arbeitslasten für maschinelles Lernen entwickelt wurden. Es automatisiert und verbindet alle Aufgaben Ihrer Modellentwicklung und -bereitstellung, von Trainingsdaten bis zum Code, sodass Sie einen vollständigen Überblick über die Funktionsweise Ihrer Modelle erhalten. Weitere Informationen zur Verwendung von Vertex AI Pipelines mit BigQuery finden Sie unter BigQuery-Modell für maschinelles Lernen zur Vorhersage exportieren und bereitstellen.
Orchestrierungsmethode: ereignisgesteuert
Apigee Integration
Apigee Integration ist eine Erweiterung der Apigee-Plattform, die Connectors und Tools zur Datentransformation umfasst. Es eignet sich am besten für die Einbindung in externe Unternehmensanwendungen wie Salesforce. Weitere Informationen zur Verwendung von Apigee Integration mit BigQuery finden Sie unter Erste Schritte mit der Apigee-Integration und einem Salesforce-Trigger.
Orchestrierungsmethode: ereignisgesteuert und zeitgesteuert
Cloud Data Fusion
Cloud Data Fusion ist ein Tool zur Datenintegration, das codefreie ELT/ETL-Pipelines und über 150 vorkonfigurierte Connectors und Transformationen bietet. Weitere Informationen zur Verwendung von Cloud Data Fusion mit BigQuery finden Sie unter Daten von MySQL in BigQuery replizieren.
Orchestrierungsmethode: ereignisgesteuert und zeitgesteuert
Cloud Scheduler
Cloud Scheduler ist ein vollständig verwalteter Planer für Jobs wie Batchstreaming oder Infrastrukturvorgänge, die in festgelegten Zeitintervallen stattfinden sollten. Weitere Informationen zur Verwendung von Cloud Scheduler mit Big Query finden Sie unter Workflows mit Cloud Scheduler planen.
Orchestrierungsmethode: zeitgesteuert
Cloud Tasks
Cloud Tasks ist ein vollständig verwalteter Dienst für die asynchrone Verteilung von Aufgaben, die unabhängig und außerhalb Ihrer Hauptarbeitslast ausgeführt werden können. Es eignet sich am besten zum Delegieren langsamer Hintergrundvorgänge oder zum Verwalten von API-Aufrufraten. Weitere Informationen zur Verwendung von Cloud Tasks mit BigQuery finden Sie unter Aufgabe einer Cloud Tasks-Warteschlange hinzufügen.
Orchestrierungsmethode: ereignisgesteuert
Drittanbieter-Tools
Sie können für die Verbindung mit BigQuery auch verschiedene gängigen Drittanbietertools wie CData und SnapLogic verwenden. Das BigQuery-fähige Programm bietet eine vollständige Liste der validierten Partnerlösungen.
Messaging-Tools
Viele Datenarbeitslasten erfordern zusätzliche Messaging-Verbindungen zwischen entkoppelten Mikrodiensten, die nur aktiviert werden müssen, wenn bestimmte Ereignisse auftreten. Google Cloud bietet zwei Tools für die Einbindung in BigQuery.
Pub/Sub
Pub/Sub ist ein asynchrones Messaging-Tool für Pipelines zur Datenintegration. Es wurde für die Aufnahme und Verteilung von Daten wie Serverereignissen und Nutzerinteraktionen entwickelt. Außerdem kann es für die parallele Verarbeitung und für das Datenstreaming von IoT-Geräten verwendet werden. Weitere Informationen zur Verwendung von Pub/Sub mit BigQuery finden Sie unter Von Pub/Sub zu BigQuery streamen.
Eventarc
Eventarc ist ein ereignisgesteuertes Tool, mit dem Sie den Fluss von Statusänderungen in Ihrer Datenpipeline verwalten können. Dieses Tool kann für eine Vielzahl von Anwendungsfällen genutzt werden, darunter die automatisierte Fehlerbehebung, das Kennzeichnen von Ressourcen, das Bearbeiten von Bildern und vieles mehr. Weitere Informationen zur Verwendung von Eventarc mit BigQuery finden Sie unter BigQuery-Verarbeitungspipeline mit Eventarc erstellen.
Nächste Schritte
- Wiederkehrende Abfragen direkt in BigQuery planen.
- Einführung in Dataform
- Einführung in Workflows
- Erste Schritte mit Cloud Composer.
- Erste Schritte mit Vertex AI Pipelines.
- Erste Schritte mit Apigee Integration.
- Cloud Data Fusion loslegen
- Erste Schritte mit Cloud Scheduler.
- Erste Schritte mit Pub/Sub.
- Erste Schritte mit Eventarc