Datenlebenszyklus

In diesem Artikel werden Google Cloud-Dienste beschrieben, mit denen Sie Daten über den gesamten Lebenszyklus von der ersten Erfassung bis zur endgültigen Visualisierung verwalten können. Sie werden mehr über die Funktionen und Funktionalität der einzelnen Dienste erfahren, um eine fundierte Entscheidung darüber treffen zu können, welche Dienste am besten zu Ihrer Arbeitslast passen.

Der Datenlebenszyklus umfasst vier Schritte.

  • Aufnehmen: Die erste Stufe besteht darin, die Rohdaten abzurufen. Dabei kann es sich z. B. um Streamingdaten von Geräten, Batch-Daten vor Ort, Anwendungs-Logs oder Nutzerereignisse sowie Analysen von mobilen Apps handeln.

  • Speichern: Nachdem die Daten abgerufen wurden, müssen sie in einem Format gespeichert werden, das langlebig und leicht zugänglich ist.

  • Verarbeiten und analysieren: In dieser Phase werden die Rohdaten in verwertbare Informationen umgewandelt.

  • Erkunden und visualisieren: Die letzte Phase besteht darin, die Ergebnisse der Analyse in ein Format umzuwandeln, aus dem sich unkompliziert Informationen gewinnen lassen, die mit Kollegen geteilt werden können.

In jeder Phase bietet Google Cloud mehrere Dienste zur Verwaltung Ihrer Daten an. Ihnen steht also eine Reihe von Diensten zur Auswahl, die auf Ihre Daten und Ihren Workflow zugeschnitten sind.

Tabelle: Google Cloud-Dienste dem Datenlebenszyklus zuordnen

Aufnehmen

Abhängig vom Umfang der Daten, der Quelle und der Latenz können Sie verschiedene Ansätze nutzen, um Rohdaten zu erfassen.

  • Anwendung: Daten aus Anwendungsereignissen, z. B. Log-Dateien oder Nutzerereignisse, werden in der Regel in einem Push-Modell erfasst, wobei die Anwendung eine API aufruft, um die Daten an den Speicher zu senden.

  • Streaming: Die Daten bestehen aus einem kontinuierlichen Stream kurzer, asynchroner Nachrichten.

  • Batch: Große Datenmengen werden in einer Reihe von Dateien gespeichert, die per Bulk-Upload in den Speicher übertragen werden.

Die folgende Tabelle zeigt, welche Google Cloud-Dienste jeweils Anwendungs-, Streaming- und Batcharbeitslasten zugeordnet sind.

Tabelle: Zuordnung von Google Cloud-Diensten zu Anwendungs-, Streaming- und Batchdaten

Welches Datenübertragungsmodell Sie auswählen, ist von der Arbeitslast abhängig. Jedes Modell stellt unterschiedliche Anforderungen an die Infrastruktur.

Anwendungsdaten aufnehmen

Anwendungen und Dienste generieren eine beträchtliche Menge an Daten. Hierzu gehören Daten wie Anwendungsereignis-Logs, Clickstream-Daten, Interaktionen in sozialen Netzwerken und E-Commerce-Transaktionen. Die Sammlung und Analyse dieser ereignisgesteuerten Daten kann Nutzertrends aufzeigen und wertvolle Einblicke in das Geschäft liefern.

Google Cloud bietet eine Vielzahl von Diensten, die Sie zum Hosten von Anwendungen verwenden können. Hierzu zählen die virtuellen Maschinen von Compute Engine, die verwaltete Plattform von App Engine und die Containerverwaltung von Google Kubernetes Engine (GKE).

Wenn Sie Ihre Apps in Google Cloud hosten, erhalten Sie Zugriff auf eingebundene Tools und Prozesse, mit denen Sie Ihre Daten an die umfangreichen Datenverwaltungsdienste von Google Cloud senden können.

Betrachten Sie folgende Beispiele:

  • Daten in eine Datei schreiben: Eine Anwendung gibt Batch-CSV-Dateien an den Objektspeicher von Cloud Storage aus. Von dort aus können mit der Importfunktion des Data Warehouse BigQuery die Daten zur Analyse und zur Abfrage bezogen werden.

  • Daten in eine Datenbank schreiben: Eine Anwendung schreibt Daten in eine der Datenbanken, die von Google Cloud bereitgestellt werden. Beispiele sind die verwaltete MySQL-Datenbank von Cloud SQL und die NoSQL-Datenbanken von Datastore sowie Cloud Bigtable.

  • Daten als Nachrichten streamen: Eine Anwendung streamt Daten an den Echtzeit-Messaging-Dienst Pub/Sub. Eine zweite Anwendung, die die Nachrichten abonniert hat, kann die Daten in den Speicher übertragen oder in bestimmten Situationen sofort verarbeiten, etwa bei der Erkennung von Betrug.

Zentrale Logverwaltung mit Cloud Logging

Cloud Logging ist ein zentraler Logverwaltungsdienst, der Logdaten von Anwendungen erfasst, die in Google Cloud und anderen öffentlichen und privaten Cloud-Plattformen ausgeführt werden. Von Cloud Logging erfasste Daten können mithilfe eingebundener Tools exportiert werden, die die Daten an Cloud Storage, Pub/Sub und BigQuery senden.

Viele Google Cloud-Dienste zeichnen Logdaten automatisch in Cloud Logging auf. Beispielsweise protokollieren Anwendungen, die in App Engine ausgeführt werden, automatisch die Details jeder Anfrage und jeder Antwort in Cloud Logging. Sie können auch benutzerdefinierte Logging-Nachrichten in stdout und stderr schreiben, die dann von Cloud Logging automatisch erfasst und in der Loganzeige angezeigt werden.

Cloud Logging bietet einen Logging-Agent auf der Grundlage von fluentd. Diesen können Sie auf VM-Instanzen ausführen, die auf Compute Engine gehostet werden. Sie können den Agent auch auf Container-Clustern ausführen, die von GKE verwaltet werden. Der Agent streamt Logdaten von gängigen Drittanwendungen und Systemsoftware zu Cloud Logging.

Streamingdaten aufnehmen

Streamingdaten werden asynchron gesendet, ohne dabei eine Antwort zu erwarten, und die einzelnen Nachrichten sind klein. Häufig werden Streamingdaten zu Telemetriezwecken verwendet, wobei Daten aus geografisch verteilten Geräten erfasst werden. Streamingdaten können zum Aktivieren von Ereignis-Triggern, zur Durchführung komplexer Sitzungsanalysen und als Eingabe für Aufgaben beim maschinellen Lernen verwendet werden.

Zwei gängige Anwendungsbereiche von Streamingdaten sind:

  • Telemetriedaten: Geräte aus dem Internet der Dinge (IdD) sind netzwerkgekoppelte Geräte, die über Sensoren Umgebungsdaten erfassen. Auch wenn von jedem Gerät vielleicht nur ein Datenpunkt pro Minute gesendet wird, benötigen Sie bei einer großen Geräteanzahl Big-Data-Strategien und -Muster.

  • Nutzerereignisse und Analysen: Eine mobile App kann Nutzerereignisse protokollieren, wenn Nutzer die App öffnen, Fehler auftreten oder die App abstürzt. Die von allen mobilen Geräten, auf denen die App installiert ist, aggregierten Daten können wertvolle Informationen über Nutzung, Messwerte und Codequalität liefern.

Pub/Sub: Echtzeit-Messaging

Pub/Sub ist ein Echtzeit-Messaging-Dienst, mit dem Sie Nachrichten zwischen Anwendungen senden und empfangen können. Einer der wichtigsten Anwendungsfälle für anwendungsübergreifendes Messaging ist die Aufnahme von Streaming-Ereignisdaten. Bei Streamingdaten verwaltet Pub/Sub automatisch die Einzelheiten zu Fragmentierung, Replikation, Load-Balancing und Partitionierung der eingehenden Datenströme.

Die meisten Streamingdaten werden von Nutzern oder Systemen generiert, die über die ganze Welt verteilt sind. Pub/Sub hat globale Endpunkte und nutzt den globalen Front-End-Load-Balancer von Google, um die Datenaufnahme in allen Google Cloud-Regionen mit minimaler Latenz zu unterstützen. Darüber hinaus passt sich Pub/Sub schnell und automatisch der Nachfrage an, ohne dass der Entwickler die Systemressourcen vorbereiten muss. Weitere Informationen zur Skalierung von Pub/Sub finden Sie in der Fallstudie zu Spotify.

Nachrichtenströme werden von Pub/Sub in Themen organisiert. Anwendungen, die Daten an Pub/Sub streamen, haben ein Thema als Ziel. Pub/Sub weist jeder empfangenen Nachricht eine eindeutige Kennzeichnung und einen Zeitstempel zu.

Nachdem die Daten aufgenommen wurden, können eine oder mehrere Anwendungen die Nachrichten mithilfe eines Thema-Abonnements abrufen. Dies kann entweder in einem Pull- oder Push-Modell erfolgen. Bei einem Push-Abo sendet der Pub/Sub-Server eine Anfrage an die Abonnentenanwendung an einem vorkonfigurierten URL-Endpunkt. Im Pull-Modell fordert der Abonnent Nachrichten vom Server an und bestätigt deren Empfang. Pub/Sub garantiert die Nachrichtenübermittlung mindestens einmal pro Abonnent.

Pub/Sub bietet keine Gewähr für die Reihenfolge der Nachrichtenübermittlung. Eine strikte Sortierung von Nachrichten ist durch Zwischenspeichern möglich, was häufig mithilfe von Dataflow umgesetzt wird.

Pub/Sub wird oft genutzt, um Streamingdaten nach tatsächlicher Ereigniszeit zur Echtzeitverarbeitung zu Dataflow zu verschieben. Bei der Verarbeitung können Sie die Daten in einen nichtflüchtigen Speicherdienst wie Datastore und BigQuery verschieben. Diese Speicherdienste unterstützen Abfragen, die nach Anwendungszeitstempeln sortiert sind.

Bulk-Daten aufnehmen

Bulk-Daten bestehen aus großen Datensätzen, bei denen eine Aufnahme eine hohe Gesamtbandbreite zwischen einer kleinen Anzahl von Quellen und dem Ziel erfordert. Die Daten können in Dateien wie CSV-, JSON-, Avro- oder Parquet-Dateien oder in einer relationalen oder NoSQL-Datenbank gespeichert werden. Die Quelldaten können sich vor Ort oder auf anderen Cloudplattformen befinden.

Sehen Sie sich zum Beispiel folgende Anwendungsfälle für das Aufnehmen von Bulk-Daten an.

  • Wissenschaftliche Arbeitslasten: Genetikdaten, die in Textdateien im Variant Cell Format (VCF) gespeichert sind, werden für den späteren Import in Genomics in Cloud Storage hochgeladen.

  • Zur Cloud migrieren: Daten, die in einer lokalen Oracle-Datenbank gespeichert sind, werden mithilfe von Informatica in eine vollständig verwaltete Cloud SQL-Datenbank verschoben.

  • Daten sichern: In einem AWS-Bucket gespeicherte Daten werden mithilfe von Cloud Storage Transfer Service in Cloud Storage repliziert.

  • Legacy-Daten importieren: Bis zu zehn Jahre alte Logdaten einer Website werden zur langfristigen Trendanalyse nach BigQuery kopiert.

Google Cloud und Partnerunternehmen stellen eine Vielzahl von Tools bereit, mit denen Sie große Datenmengen in Google Cloud laden können.

Verwaltete Dateiübertragung mit Storage Transfer Service

Storage Transfer Service verwaltet die Übertragung von Daten in einen Cloud Storage-Bucket. Die Datenquelle kann ein AWS-S3-Bucket, eine über das Internet zugängliche URL oder ein anderer Cloud Storage-Bucket sein. Storage Transfer Service ist für die Bulk-Übertragung vorgesehen und für Datenmengen ab 1 TB optimiert.

Der Storage Transfer Service wird in der Regel genutzt, um Daten zu sichern. Sie können Daten von anderen Speicheranbietern in einem Cloud Storage-Bucket sichern. Sie können auch Daten zwischen Cloud Storage-Buckets verschieben, z. B. Daten aus einem Standard Storage-Bucket in einen Archive Storage-Bucket verschieben, um die Speicherkosten zu senken.

Der Storage Transfer Service unterstützt sowohl einmalige als auch wiederkehrende Übertragungen. Er bietet erweiterte Filter beruhend auf dem Zeitpunkt einer Dateierstellung, auf Dateinamenfiltern und auf den Tageszeiten, die Sie für den Import von Daten bevorzugen. Er unterstützt auch das Löschen der Quelldaten, nachdem diese kopiert wurden.

BigQuery Data Transfer Service: Datenübertragung aus verwalteten Anwendungen

Mit BigQuery Data Transfer Service wird das Verschieben von Daten aus SaaS-Anwendungen (Software as a Service) wie Google Ads und Google Ad Manager nach einem festgelegten Zeitplan automatisiert. Dadurch wird die Grundlage für ein Data Warehouse gebildet, ohne eine einzige Codezeile schreiben zu müssen.

Als Datenquelle können Google-Anwendungsquellen wie Google Ads, Campaign Manager, Google Ad Manager und YouTube dienen.

Nach der Konfiguration der Datenübertragung lädt BigQuery Data Transfer Service Daten in regelmäßigen Abständen automatisch in BigQuery. Außerdem werden vom Nutzer initiierte Daten-Backfills unterstützt, um eine Wiederherstellung nach Ausfällen oder Lücken zu erreichen.

Versandfähiger Storage-Server mit hoher Kapazität mit Transfer Appliance

Transfer Appliance ist ein Storage-Server mit hoher Kapazität, den Sie von Google mieten können. Sie verbinden ihn mit Ihrem Netzwerk, laden Daten darauf und senden ihn anschließend an eine Upload-Einrichtung, von der aus die Daten in Cloud Storage hochgeladen werden. Transfer Appliance ist in mehreren Größenvarianten verfügbar. Darüber hinaus können Sie abhängig von der Art der Daten die effektive Kapazität der Appliance mithilfe von Deduplizierung und Komprimierung erheblich erhöhen.

Berechnen Sie den Zeitaufwand für das Hochladen der Daten über eine Netzwerkverbindung, um zu ermitteln, wann die Verwendung von Transfer Appliance sinnvoll ist. Wenn Sie dabei feststellen, dass dies eine Woche oder länger dauert, oder wenn Sie (unabhängig von der Übertragungsgeschwindigkeit) mehr als 60 TB Daten übertragen müssen, kann es sicherer und zweckmäßiger sein, die Daten mithilfe von Transfer Appliance zu übertragen.

Transfer Appliance dedupliziert, komprimiert und verschlüsselt Ihre erfassten Daten mit einer starken AES-256-Verschlüsselung unter Verwendung eines Passworts und einer Passphrase, die Sie bereitstellen. Wenn Sie die Daten aus Cloud Storage lesen möchten, geben Sie dieses Passwort und diese Passphrase an. Nach jeder Verwendung von Transfer Appliance wird die Appliance sicher gelöscht und von einem Image wiederhergestellt, um zu verhindern, dass die Daten für den nächsten Nutzer verfügbar sind.

Cloud Storage gsutil: Befehlszeile

Cloud Storage bietet das gsutil-Befehlszeilenprogramm, mit dem Sie dateibasierte Daten aus einem vorhandenen Dateisystem in Cloud Storage verschieben können. gsutil, das in Python geschrieben ist, lässt sich auf Linux-, macOS- und Windows-Systemen ausführen. Neben dem Verschieben von Daten nach Cloud Storage können Sie mit gsutil Cloud Storage-Buckets erstellen und verwalten, Zugriffsrechte von Objekten bearbeiten und Objekte aus Cloud Storage kopieren. Weitere Informationen zur Verwendung von gsutil zur Batchaufnahme von Daten finden Sie unter Skripting von Produktionsübertragungen.

Migrationstools für Datenbanken

Wenn Ihre Quelldaten in einer lokalen oder von einem anderen Cloud-Anbieter gehosteten Datenbank gespeichert sind, können Sie mehrere Drittanbieteranwendungen verwenden, um Ihre Daten im Bulk zu Google Cloud zu migrieren. Diese Anwendungen befinden sich häufig in derselben Umgebung wie Quellsysteme und ermöglichen sowohl einmalige als auch laufende Übertragungen. Anwendungen wie Talend und Informatica bieten Funktionen zum Extrahieren, Transformieren und Laden von Daten (Extract-Transform-Load, ETL) mit eingebetteter Unterstützung von Google Cloud.

Google Cloud bietet mehrere Zieldatenbanken, die sich für die Migration von Daten aus externen Datenbanken eignen.

  • Relationale Datenbanken: Daten, die in einem relationalen Datenbankverwaltungssystem (Relational Database Management System, RDBMS) gespeichert sind, können zu Cloud SQL und Cloud Spanner migriert werden.

  • Data Warehouses: Daten, die in einem Data Warehouse gespeichert sind, können in BigQuery verschoben werden.

  • NoSQL-Datenbanken: Daten, die in einer spaltenorientierten NoSQL-Datenbank wie HBase oder Cassandra gespeichert sind, können zu Cloud Bigtable migriert werden. Daten, die in einer NoSQL-Datenbank mit JSON-Unterstützung, wie z. B. Couchbase oder MongoDB, gespeichert sind, können zu Datastore migriert werden.

Partnerlösungen

Eine Reihe von Google Cloud-Partnern bietet ergänzende Lösungen, die sich auf die Bulk-Datenverschiebung konzentrieren.

  • Von WANDisco ist der LiveMigrator erhältlich, der die Übertragung von Daten aus einem lokalen Speicher und einem Netzwerkspeicher in Dataproc-Cluster automatisiert.

  • Tervela arbeitet mit Cloud FastPath zur Automatisierung der Datenmigration und der Synchronisierung lokaler Dateisysteme mit Cloud Storage.

  • Iron Mountain und Prime Focus bieten die Möglichkeit, Daten von Ihren physischen Medien wie Festplatten, Bändern und USB-Flash-Laufwerken in Cloud Storage zu laden.

Speichern

Daten haben viele verschiedene Formen und Größen und ihre Struktur ist gänzlich von den Quellen, von denen sie generiert wurden, und den darauffolgenden nachgelagerten Anwendungsfällen abhängig. Bei Daten- und Analyse-Arbeitslasten können aufgenommene Daten in einer Vielzahl von Formaten oder Orten gespeichert werden.

Google Cloud-Dienste verschiedenen Datenspeichertypen zuordnen

Objektdaten speichern

Dateien sind ein gängiges Format zur Speicherung von Daten, insbesondere von Bulk-Daten. Mit Google Cloud können Sie Ihre Dateidaten in Cloud Storage hochladen, sodass diese Daten für eine Vielzahl anderer Dienste verfügbar sind.

Verwalteter Objektspeicher mit Cloud Storage

Cloud Storage bietet langlebige und hochverfügbare Objektspeicher für strukturierte und unstrukturierte Daten. Das können zum Beispiel Log-Dateien, Datenbanksicherungen und Exportdateien, Bilder oder andere Binärdateien sein. Dateien in Cloud Storage werden nach Projekt in einzelnen Buckets organisiert. Diese Buckets können entweder benutzerdefinierte Zugriffssteuerungslisten (ACLs) oder zentrale Steuerelemente für die Identitäts- und Zugriffsverwaltung (IAM) unterstützen.

Cloud Storage fungiert als verteilte Speicherschicht, die über Anwendungen und Dienste zugänglich ist, die in App Engine, GKE oder Compute Engine sowie über andere Dienste wie Cloud Logging ausgeführt werden.

Sehen Sie sich zum Beispiel folgende Anwendungsfälle für das Speichern von Daten an.

  • Datensicherung und Notfallwiederherstellung: Cloud Storage bietet einen sehr langlebigen und sicheren Speicher zur Sicherung und Archivierung Ihrer Daten.

  • Inhaltsverteilung: Cloud Storage ermöglicht die Speicherung und Bereitstellung von Inhalten. Beim Speichern und Bereitstellen von Mediendateien profitieren Sie beispielsweise von der Skalierbarkeit.

  • Speichern von ETL-Daten: Cloud Storage-Daten sind für Dataflow zur Transformation und zum Laden in andere Systeme, wie z. B. Cloud Bigtable oder BigQuery, zugänglich.

  • Speichern von Daten für MapReduce-Jobs: Bei Hadoop- und Spark-Jobs kann mithilfe von Dataproc nativ auf Daten aus Cloud Storage zugegriffen werden.

  • Speichern von Anfragedaten: BigQuery bietet die Möglichkeit, Daten aus Cloud Storage in Datensätze und Tabellen zu importieren oder Abfragen über vorhandene Daten ohne Import zu föderieren. Für den direkten Zugriff unterstützt BigQuery nativ den Import von CSV-, JSON- und Avro-Dateien aus einem angegebenen Cloud Storage-Bucket.

  • Seeding für maschinelles Lernen: Google Cloud APIs für maschinelles Lernen, z. B. die Cloud Vision API oder die Cloud Natural Language API, können auf Daten und Dateien zugreifen, die direkt in Cloud Storage gespeichert sind.

  • Archivierung von selten genutzten Daten: Nearline, Coldline und Archive Storage bieten eine kostengünstige Speichermethode mit niedriger Latenz für Objekte, auf die Sie voraussichtlich weniger als einmal pro Monat, pro Quartal oder pro Jahr zugreifen werden.

Cloud Storage ist in mehreren Klassen verfügbar, je nach Verfügbarkeit und Leistungsfähigkeit, die für Anwendungen und Dienste erforderlich sind.

  • Standard Storage bietet die höchste Verfügbarkeit und eignet sich zur Speicherung von häufig verwendeten Daten, die einen Zugriff mit geringer Latenz benötigen. Beispielanwendungsfälle sind unter anderem die Bereitstellung von Website-Inhalten, interaktiven Speicherarbeitslasten und Daten, die mobile und Gaming-Apps sowie datenintensive Berechnungen oder die Verarbeitung von Big Data unterstützen.

  • Nearline Storage ist ein kostengünstiger, sehr langlebiger Speicher zur Speicherung von Daten, auf die Sie seltener als einmal pro Monat zugreifen. Nearline Storage ermöglicht den schnellen Zugriff auf Daten mit Antwortzeiten von unter einer Sekunde und ist für die Datenarchivierung, die Online-Sicherung oder die Notfallwiederherstellung nützlich.

  • Coldline Storage bietet einen sehr kostengünstigen und langlebigen Speicherdienst zur Aufbewahrung von Daten, auf die Sie weniger als einmal pro Quartal zugreifen möchten. Coldline Storage ermöglicht den schnellen Zugriff auf Daten mit Antwortzeiten von unter einer Sekunde und eignet sich zur Datenarchivierung, zur Online-Sicherung oder zur Notfallwiederherstellung.

  • Archive Storage bietet einen sehr kostengünstigen und langlebigen Speicherdienst zur Aufbewahrung von Daten, auf die Sie weniger als einmal pro Jahr zugreifen möchten. Archive Storage ermöglicht den schnellen Zugriff auf Daten mit Antwortzeiten von unter einer Sekunde und eignet sich zur Datenarchivierung, zur Onlinesicherung oder zur Notfallwiederherstellung.

Skalierbarer Speicher für Entwickler von mobilen Apps mit Cloud Storage für Firebase

Cloud Storage für Firebase ist ein einfacher und günstiger Objektspeicherdienst, der zur Skalierung entsprechend der Nutzerzahl entwickelt wurde. Cloud Storage für Firebase eignet sich hervorragend zum Speichern und Abrufen von Assets wie Bilder, Audio, Video und anderen von Nutzern erstellten Inhalten in mobilen und Web-Apps.

Firebase SDKs für Cloud Storage führen Uploads und Downloads unabhängig von der Netzwerkqualität aus. Bei einer Unterbrechung aufgrund schlechter Verbindungen werden sie an der Stelle neu gestartet, an der sie angehalten wurden. Dies spart Zeit und Bandbreite. Dank der vorkonfigurierten Verknüpfung mit Firebase Authentication können Sie den Zugriff auf der Basis von Dateiname, Größe, Inhaltstyp und anderen Metadaten konfigurieren.

Cloud Storage for Firebase speichert Dateien in einem Cloud Storage-Bucket. Dadurch können Sie Dateien flexibel auf mobile Clients, die Firebase SDKs verwenden, hochladen und von dort herunterladen. Ebenfalls haben Sie die Möglichkeit, mit Google Cloud eine serverseitige Verarbeitung wie Bildfilterung oder Videotranscodierung auszuführen.

Informationen zum Einstieg in Cloud Storage for Firebase finden Sie in der Dokumentation. Firebase enthält SDKs für iOS-, Android-, Web- und Unity-Clients sowie für C++.

Datenbankdaten speichern

Google Cloud bietet eine Vielzahl von Datenbanken, sowohl RDBMS als auch NoSQL, mit denen Sie Ihre relationalen und nicht relationalen Daten speichern können.

Verwaltete MySQL- und PostgreSQL-Module mit Cloud SQL

Cloud SQL ist ein vollständig verwaltetes Cloud-natives RDBMS, das sowohl MySQL- als auch PostgreSQL-Module mit integrierter Unterstützung für die Replikation bietet. Es eignet sich für transaktionale, relationale Datenbankarbeitslasten mit geringer Latenz. Da es auf MySQL und PostgreSQL basiert, unterstützt Cloud SQL Standard-APIs für die Konnektivität. Cloud SQL bietet integrierte Sicherungs- und Wiederherstellungsfunktionen, eine hohe Verfügbarkeit sowie Lesereplikate.

Cloud SQL unterstützt RDBMS-Arbeitslasten bis 30 TB für MySQL und PostgreSQL. Cloud SQL ist über Anwendungen zugänglich, die in App Engine, GKE oder Compute Engine ausgeführt werden. Da Cloud SQL auf MySQL und PostgreSQL aufbaut, unterstützt es standardmäßige Verbindungstreiber, Anwendungs-Frameworks von Drittanbietern (wie Django oder Ruby on Rails) und beliebte Migrationstools. Die in Cloud SQL gespeicherten Daten werden sowohl bei der Übertragung als auch bei Inaktivität verschlüsselt. Die Instanzen von Cloud SQL haben eine integrierte Unterstützung für die Zugriffssteuerung, wobei das Produkt die Firewalls der Netzwerke nutzt, um den Zugriff auf die Datenbank zu steuern.

Cloud SQL eignet sich für typische Arbeitslasten im Bereich Online-Transaktionsverarbeitung (OLTP).

  • Finanztransaktionen: Die Speicherung von Finanztransaktionen erfordert eine ACID-Datenbanksemantik. Häufig sind die Daten dabei über mehrere Tabellen verteilt, weshalb komplexe Transaktionen unterstützt werden müssen.

  • Nutzeranmeldedaten: Die Speicherung von Passwörtern oder anderen gesicherten Daten erfordert eine komplexe Unterstützung und Erzwingung von Feldern sowie eine Schemavalidierung.

  • Kundenaufträge: Aufträge oder Rechnungen umfassen in der Regel hoch normalisierte relationale Daten und Transaktionen über mehrere Tabellen bei der Erfassung von Inventarveränderungen.

Cloud SQL ist kein geeignetes Speichersystem zur Online-Analyseverarbeitung (OLAP) oder für Daten, die dynamische Schemas auf Grundlage einzelner Objekte benötigen. Wenn Ihre Arbeitslast dynamische Schemas erfordert, könnten Sie Datastore verwenden. Für OLAP-Arbeitslasten wäre BigQuery eine mögliche Option. Wenn die Arbeitslast spaltenorientierte Schemas erfordert, wäre Cloud Bigtable eine Option.

Zur nachgelagerten Verarbeitung und für analytische Anwendungsfälle können Daten in Cloud SQL mit verschiedenen Plattformtools abgerufen werden. Sie können mit Dataflow oder Dataproc ETL-Jobs erstellen, die Daten aus Cloud SQL abrufen und in andere Speichersysteme einfügen.

Verwalteter spaltenorientierter NoSQL-Datenbankdienst mit Cloud Bigtable

Cloud Bigtable ist ein verwalteter, leistungsstarker NoSQL-Datenbankdienst, der sich für Arbeitslasten im Terabyte- bis Petabyte-Bereich eignet. Cloud Bigtable basiert auf der internen Cloud Bigtable-Datenbankinfrastruktur von Google, die die Google-Suche, Google Analytics, Google Maps und Gmail unterstützt. Der Dienst ermöglicht die konsistente Speicherung von großen NoSQL-Datenmengen mit niedriger Latenz und hohem Durchsatz. Cloud Bigtable ist für Arbeitslasten aus Echtzeit-Anwendungen sowie für umfangreiche analytische Arbeitslasten konzipiert.

Cloud Bigtable-Schemas verwenden einen Zeilenschlüssel mit einem einzelnen Index, der mit einer Reihe von Spalten verknüpft ist. Die Schemas sind in der Regel entweder hoch oder breit strukturiert, Abfragen basieren auf einem Zeilenschlüssel. Der Schemastil ist von den nachgelagerten Anwendungsfällen abhängig. Außerdem müssen der Speicherort der Daten sowie die Verteilung von Lese- und Schreibvorgängen für eine maximale Leistung geprüft werden. Hohe Schemas werden häufig zur Speicherung von Zeitachsenereignissen verwendet. Diese bestehen aus Daten, für die teilweise ein Zeitstempel als Schlüssel dient und die eine relativ geringe Anzahl von Spalten pro Zeile haben. Breite Schemas folgen dem entgegengesetzten Ansatz: eine vereinfachte Kennung als Zeilenschlüssel und eine große Anzahl von Spalten. Weitere Informationen finden Sie in der Dokumentation zum Cloud Bigtable-Schemadesign.

Cloud Bigtable eignet sich hervorragend für eine Vielzahl von umfangreichen Arbeitslasten mit hohem Durchsatz, wie Werbetechnologien oder IdD-Dateninfrastrukturen.

  • Echtzeit-Anwendungsdaten: Cloud Bigtable ist über Anwendungen zugänglich, die in der flexiblen App Engine-Umgebung, GKE und Compute Engine für die Bereitstellung von Arbeitslasten in Echtzeit ausgeführt werden.

  • Streamverarbeitung: Wenn die Daten von Pub/Sub aufgenommen werden, kann Dataflow zum Transformieren und Laden der Daten in Cloud Bigtable verwendet werden.

  • IoT-Zeitachsendaten: Daten, die von Sensoren erfasst und über Google Cloud gestreamt werden, können mithilfe von Zeitachsenschemas in Cloud Bigtable gespeichert werden.

  • Adtech-Arbeitslasten: Bigtable kann zum Speichern und Verfolgen von Anzeigenimpressionen sowie als Quelle für die Weiterverarbeitung und Analyse mit Dataproc und Dataflow verwendet werden.

  • Datenaufnahme: Dataflow oder Dataproc können zum Transformieren und Laden der Daten von Cloud Storage in Cloud Bigtable verwendet werden.

  • Analytische Arbeitslasten: Mit Dataflow lassen sich komplexe Zusammenfassungen der in Cloud Bigtable gespeicherten Daten erstellen. Dataproc kann für Verarbeitungsaufgaben und Aufgaben des maschinellen Lernens in Hadoop oder Spark genutzt werden.

  • Ersatz für Apache HBase: Cloud Bigtable kann auch als Drop-in-Ersatz für Systeme genutzt werden, die mit Apache HBase erstellt wurden. Die Open-Source-Datenbank basiert auf dem ursprünglichen Cloud Bigtable-Forschungsartikel von Google. Cloud Bigtable ist mit den APIs von HBase 1.x kompatibel. Somit kann der Dienst in viele vorhandene Big Data-Systeme eingebunden werden. Apache Cassandra nutzt ein Datenmodell, das auf dem Datenmodell aus dem Cloud Bigtable-Papier basiert. Dies bedeutet, dass Cloud Bigtable auch mehrere Arbeitslasten unterstützen kann, die ein breites spaltenorientiertes Schema und die entsprechende Struktur verwenden.

Cloud Bigtable gilt zwar als OLTP-System, unterstützt jedoch keine mehrzeiligen Transaktionen, SQL-Abfragen oder Joins. Für diese Anwendungsfälle sollten Sie entweder Cloud SQL oder Datastore nutzen.

Spanner: Horizontal skalierbare relationale Datenbank

Spanner ist ein vollständig verwalteter relationaler Datenbankdienst für geschäftskritische OLTP-Anwendungen. Spanner ist horizontal skalierbar und auf hohe Konsistenz, hohe Verfügbarkeit sowie eine globale Anwendung ausgelegt. Diese Kombination von Leistungsmerkmalen macht es zu einem einzigartigen Dienst. Da Spanner ein vollständig verwalteter Dienst ist, können Sie das Augenmerk auf die Entwicklung der Anwendung richten und müssen sich nicht mit der Infrastruktur beschäftigen.

Spanner eignet sich gut für Sie, wenn Sie Wert auf Benutzerfreundlichkeit und eine vertraute relationale Datenbank in Verbindung mit der Skalierbarkeit einer NoSQL-Datenbank legen. Spanner unterstützt wie relationale Datenbanken Schemas, ACID-Transaktionen und SQL-Abfragen (ANSI 2011). Wie viele andere NoSQL-Datenbanken skaliert Spanner horizontal innerhalb der Regionen. Es kann aber auch zwischen Regionen Arbeitslasten skalieren, für die strengere Anforderungen an die Verfügbarkeit gelten. Spanner führt außerdem eine automatische Fragmentierung durch, während Daten mit Latenzen im einstelligen Millisekundenbereich bereitgestellt werden. Zu den Sicherheitsfunktionen von Spanner gehören die Verschlüsselung auf Datenebene, Audit-Logging und die IAM-Einbindung (Identity and Access Management).

Informationen zu den ersten Schritten mit Spanner finden Sie in der Dokumentation zu Spanner.

Im Folgenden sind einige typische Anwendungsfälle für Spanner aufgeführt.

  • Finanzdienstleistungen: Arbeitslasten von Finanzdiensten erfordern eine hohe Konsistenz bei Lese-/Schreibvorgängen. Spanner bietet eine solche Konsistenz, ohne die Hochverfügbarkeit zu beeinträchtigen.

  • Adtech: Im Bereich der Adtech-Werbetechnologie ist die Latenz ein wichtiger Faktor. Spanner ermöglicht Abfragen mit niedriger Latenz, ohne den Umfang oder die Verfügbarkeit zu beeinträchtigen.

  • Einzelhandel und globale Lieferkette: Aufgrund der erforderlichen globalen Reichweite sind Lieferkettenexperten oft gezwungen, einen Kompromiss zwischen Konsistenz und Wartungsaufwand zu finden. Spanner bietet eine automatische, globale und synchrone Replikation mit niedriger Latenz, sodass Daten immer konsistent und hochverfügbar sind.

Firestore: Flexible, skalierbare NoSQL-Datenbank

Firestore ist eine Datenbank für JSON-Daten. JSON-Daten können in Echtzeit über verschiedene Plattformen hinweg mit verbundenen Clients synchronisiert werden, einschließlich iOS, Android, JavaScript, IdD-Geräte und Desktopanwendungen. Wenn es für einen Client keine Netzwerkverbindung gibt, können Sie mit der Firestore API Daten für die Anwendung dauerhaft auf einer lokalen Festplatte speichern. Wenn die Verbindung wiederhergestellt ist, wird das Clientgerät automatisch mit dem aktuellen Serverstatus synchronisiert.

Firestore bietet Firestore Security Rules, eine flexible, ausdrucksbasierte Regelsprache, die in Firebase Authentication eingebunden werden kann. Damit lässt sich definieren, wer Zugriff auf welche Daten hat.

Firestore ist eine NoSQL-Datenbank mit einer API, mit der Sie Millionen von Nutzern ein Echtzeiterlebnis bieten können, ohne die Reaktionsfähigkeit zu beeinträchtigen. Für ein solches Maß an Reichweite und Reaktionsfähigkeit müssen Sie die Daten entsprechend strukturieren. Informationen zum Einstieg in Firestore finden Sie in der Dokumentation. Firestore enthält SDKs für iOS-, Android-, Web- und Unity-Clients sowie für C++.

Im Folgenden sind einige gute Anwendungsfälle für Firestore aufgeführt.

  • Chat und soziale Netzwerke: Speichern und Abrufen von Bildern, Audio, Video und anderen nutzergenerierten Inhalten.

  • Mobile Spiele: Überwachen des Spielefortschritts und von Statistiken für verschiedene Geräte und Geräteplattformen.

Verbund von Datenbanken

Zusätzlich zu den von Google Cloud bereitgestellten Datenbankdiensten können Sie auf leistungsstarken virtuellen Maschinen von Compute Engine mit hochskalierbarem nichtflüchtigem Speicher Ihre eigene Datenbanksoftware bereitstellen. Auf Google Cloud werden traditionelle RDBMS wie EnterpriseDB und Microsoft SQL Server unterstützt. NoSQL-Datenbanksysteme wie MongoDB und Cassandra werden auch in Hochleistungskonfigurationen unterstützt.

Mit dem Cloud Marketplace können Sie mithilfe von vordefinierten Images, Speichern und Netzwerkeinstellungen viele Arten von Datenbanken auf Google Cloud bereitstellen. Bereitstellungsressourcen wie Compute Engine-Instanzen, nichtflüchtige Speicher und Netzwerkkonfigurationen können direkt verwaltet und einfach für unterschiedliche Arbeitslasten oder Anwendungsfälle angepasst werden.

Daten aus Data Warehouse speichern

Ein Data Warehouse speichert große Mengen an Daten zur Abfrage und Analyse statt zur Transaktionsverarbeitung. Für Data-Warehouse-Arbeitslasten bietet Google Cloud BigQuery.

Verwaltetes Data Warehouse mit BigQuery

Bei aufgenommenen Daten, die letztlich in BigQuery analysiert werden, können Sie Daten direkt in BigQuery speichern und andere Speichermedien umgehen. BigQuery unterstützt das Laden von Daten über die Webbenutzeroberfläche sowie über Befehlszeilentools und REST API-Aufrufe.

Beim Laden von Bulk-Daten sollten die Daten als CSV-, JSON- oder Avro-Dateien vorliegen. Anschließend können Sie über die Weboberfläche von BigQuery, mit Befehlszeilentools oder REST API-Aufrufen die Daten aus diesen Dateiformaten in BigQuery-Tabellen laden.

Für Streamingdaten können Sie Pub/Sub und Dataflow in Kombination verwenden, um eingehende Streams zu verarbeiten und die resultierenden Daten in BigQuery zu speichern. Bei manchen Arbeitslasten ist es jedoch möglicherweise angebracht, Daten direkt und ohne weitere Verarbeitung in BigQuery zu streamen. Sie können auch benutzerdefinierte Anwendungen erstellen, die auf Google Cloud oder auf einer lokalen Infrastruktur vor Ort ausgeführt werden und Datenquellen mit definierten Schemas und Zeilen lesen. Die benutzerdefinierte Anwendung kann diese Daten anschließend über die SDKs von Google Cloud oder direkte REST API-Aufrufe in BigQuery-Tabellen streamen.

Verarbeiten und analysieren

Wenn Sie aus Daten geschäftlichen Nutzen und Erkenntnisse gewinnen möchten, müssen Sie sie umwandeln und analysieren. Dazu ist ein Verarbeitungs-Framework erforderlich, mit dem die Daten entweder direkt analysiert oder zur nachgelagerten Analyse vorbereitet werden können, sowie Tools, um die Verarbeitungsergebnisse zu analysieren und zu verstehen.

  • Verarbeiten: Daten aus Quellsystemen werden über mehrere Rechner bereinigt, normalisiert und verarbeitet und in Analysesystemen gespeichert.

  • Analysieren: Verarbeitete Daten werden in Systemen gespeichert, die eine Ad-hoc-Abfrage und -Erkundung ermöglichen.

  • Verstehen: Basierend auf Analyseergebnissen werden Daten zum Trainieren und Testen von automatisierten Modellen des maschinellen Lernens verwendet.

Google Cloud bietet Dienste, um Daten im großen Maßstab zu verarbeiten, Big Data zu analysieren und abzufragen und Daten durch maschinelles Lernen zu verstehen.

Daten im großen Maßstab verarbeiten

Zur Datenverarbeitung in großem Maßstab gehört in der Regel das Lesen von Daten aus Quellsystemen wie Cloud Storage, Cloud Bigtable oder Cloud SQL und die anschließende Ausführung komplexer Normalisierungen oder Zusammenfassungen dieser Daten. In vielen Fällen sind die Daten zu groß, um auf eine einzelne Maschine zu passen, sodass Frameworks verwendet werden, um verteilte Computercluster zu verwalten und Softwaretools zur Verfügung zu stellen, die die entsprechende Verarbeitung unterstützen.

Dataproc und Dataflow für Datenverarbeitungsarbeitslasten zuordnen.

Verwaltetes Apache Hadoop und Apache Spark mit Dataproc

Die Möglichkeiten der Verarbeitung extrem großer Datasets haben sich seit der erstmaligen Veröffentlichung des MapReduce-Papiers durch Google im Jahr 2004 weiterentwickelt. Viele Organisationen laden und speichern Daten in das Hadoop Distributed File System (HDFS) und führen regelmäßig Zusammenfassungen, Berichte oder Transformationen mit traditionellen Batch-orientierten Tools wie Hive oder Pig durch. Hadoop verfügt über ein großes Netzwerk zur Unterstützung von Aktivitäten, unter anderem maschinelles Lernen mit Mahout, die Log-Aufnahme mithilfe von Flume und Statistiken mithilfe von R. Die Ergebnisse dieser Hadoop-basierten Datenverarbeitung sind geschäftskritisch. Der Wechsel zu einem neuen Framework ist ein relativ anspruchsvolles Unterfangen für eine Organisation, die von diesen Prozessen abhängig ist.

In den vergangenen Jahren ist Spark als Alternative zu Hadoop MapReduce immer beliebter geworden. Spark ist in der Regel deutlich schneller als Hadoop MapReduce. Das gelingt Spark, indem es Datasets und Berechnungen auf den Speicher in einem Cluster verteilt. Neben der höheren Geschwindigkeit kann Spark durch diese Verteilung Streamingdaten mithilfe von Spark Streaming verarbeiten und mit Spark SQL und einer einfachen API traditionelle Batchanalysen, Transformationen und Zusammenfassungen ausführen. Die Spark-Community ist sehr aktiv und bietet diverse beliebte Bibliotheken, die für maschinelles Lernen verwendet werden können, darunter MLlib.

Die Ausführung von Spark oder Hadoop in einer stetig wachsenden Umgebung schafft jedoch eine operative Komplexität und einen Betriebsaufwand sowie kontinuierliche und steigende Fixkosten. Auch wenn ein Cluster nur in unregelmäßigen Intervallen benötigt wird, bezahlen Sie am Ende doch den Preis für einen dauerhaften Cluster. Mit Dataproc können Sie Ihre vorhandenen Hadoop- oder Spark-Bereitstellungen zu einem vollständig verwalteten Dienst migrieren, der die Erstellung von Clustern automatisiert, die Konfiguration und Verwaltung Ihres Clusters vereinfacht, integrierte Monitoring- und Nutzungsberichte liefert und bei Nichtverwendung heruntergefahren werden kann.

Das Starten eines neuen Dataproc-Clusters dauert durchschnittlich 90 Sekunden. Dadurch können Sie ganz einfach einen Cluster mit 10 oder sogar 1.000 Knoten erstellen. Dadurch sinkt der Betriebs- und Kostenaufwand bei der Verwaltung einer Spark- oder Hadoop-Bereitstellung und die Vertrautheit und Konsistenz der einzelnen Frameworks bleiben erhalten. Dataproc ist so bedienungsfreundlich und flexibel, dass sich Spark- oder Hadoop-Cluster On-Demand einrichten lassen, wenn diese benötigt werden, oder Cluster beendet werden können, wenn sie nicht mehr benötigt werden. Betrachten Sie folgende Anwendungsfälle:

  • Log-Verarbeitung: Mit minimalen Veränderungen können Sie mithilfe von MapReduce täglich große Mengen an Text-Log-Daten aus mehreren Quellen verarbeiten.

  • Berichterstellung: Fassen Sie Daten in Berichten zusammen und speichern Sie die Daten in BigQuery. Anschließend können Sie die zusammengefassten Daten an Anwendungen weitergeben, die Dashboards unterstützen und Analysen durchführen.

  • On-Demand-Spark-Cluster: Starten Sie schnell Ad-hoc-Cluster, um mithilfe von Spark (Spark SQL, PySpark, Spark Shell) im Blob-Speicher enthaltene Daten zu analysieren.

  • Maschinelles Lernen: Verwenden Sie die im Cluster vorinstallierten Spark Machine Learning Libraries (MLlib), um Klassifizierungsalgorithmen anzupassen und auszuführen.

Dataproc vereinfacht außerdem operationale Aktivitäten wie die Installation von Software oder die Größenanpassung eines Clusters. Mit Dataproc können Sie nativ Daten lesen und Ergebnisse in Cloud Storage, Cloud Bigtable oder BigQuery oder den zugehörigen HDFS-Speicher des Clusters schreiben. Mit Cloud Storage profitiert Dataproc von einem schnelleren Zugriff auf Daten und der Möglichkeit, Datasets ohne Datenbewegungen reibungslos von zahlreichen Clustern zu verarbeiten, ohne dass dabei der Datenreplikation übermäßige Aufmerksamkeit gewidmet werden müsste. Dank der Möglichkeit, Daten extern zu speichern und zu prüfen, können Sie Dataproc-Cluster als kurzlebige Ressourcen mit externer Persistenz behandeln, die nach Bedarf gestartet, verwendet und beendet werden können.

Serverlose, vollständig verwaltete Batch- und Streamverarbeitung mit Dataflow

Die Möglichkeit, Streamingdaten zu analysieren, hat die Art und Weise verändert, wie Unternehmen Geschäfte machen und in Echtzeit reagieren. Die Notwendigkeit, verschiedene Verarbeitungs-Frameworks zur Batch- und Streaminganalyse zu pflegen, erhöht jedoch die Komplexität, da hierdurch zwei verschiedene Pipelines erforderlich sind. Und der Zeitaufwand zur Optimierung der Clusternutzung und der Ressourcen, wie er mit Spark und Hadoop notwendig ist, lenkt Sie vom grundlegenden Ziel der Filterung, Zusammenfassung und Umwandlung Ihrer Daten ab.

Dataflow wurde entwickelt, um Big Data sowohl für Streaming- als auch für Batcharbeitslasten zu vereinfachen. Dies wird durch die Vereinheitlichung von Programmier- und Ausführungsmodell möglich. Statt eine Clustergröße angeben und die Kapazität verwalten zu müssen, haben Sie in Dataflow einen verwalteten Dienst, in dem On-Demand-Ressourcen erstellt, automatisch skaliert und parallelisiert werden. Bei diesem echt managementfreien Dienst werden Worker entsprechend den Anforderungen des Jobs hinzugefügt oder entfernt. Dataflow geht außerdem das verbreitete Problem zurückbleibender Worker in verteilten Systemen an. Dazu wird die Arbeit, einschließlich Splits, ständig überwacht, identifiziert, neu geplant und inaktiven Workern im gesamten Cluster zugewiesen.

Betrachten Sie folgende Anwendungsfälle:

  • Ersatz für MapReduce: Verarbeiten Sie parallele Arbeitslasten, bei denen andere Verarbeitungsparadigmen als die von MapReduce zu hoher Komplexität oder Problemen im Betrieb geführt haben.

  • Nutzeranalyse: Analysieren Sie große Datenmengen über das Nutzerverhalten, wie In-Game-Ereignisse, Clickstream-Daten und Verkaufsdaten aus dem Einzelhandel.

  • Data Science: Verarbeiten Sie große Datenmengen etwa zu Genomik, Wetter oder Finanzen für wissenschaftliche Entdeckungen und Prognosen.

  • ETL: Daten aufnehmen, transformieren und in ein Data Warehouse laden, z. B. in BigQuery.

  • Logverarbeitung: Verarbeiten Sie kontinuierliche Ereignis-Logdaten, um Echtzeit-Dashboards, Anwendungsmesswerte und Warnmeldungen zu erstellen.

Das Dataflow SDK wurde auch als das Open Source-Projekt Apache Beam veröffentlicht, das die Ausführung auf Apache Spark und Apache Flink unterstützt. Aufgrund der automatischen Skalierung und der einfachen Implementierung ist Dataflow ideal geeignet, um Workflows von Dataflow/Apache Beam auszuführen.

Visuelle Datenuntersuchung, -bereinigung und -verarbeitung mit Dataprep von Trifacta

Dataprep ist ein Dienst zur visuellen Untersuchung, Bereinigung und Vorbereitung von Daten für die Analyse. Sie können Dataprep mithilfe einer browserbasierten Benutzeroberfläche verwenden, ohne Code schreiben zu müssen. Dataprep stellt je nach Bedarf automatisch die Ressourcen bereit, die für Transformationen erforderlich sind, und verwaltet diese.

Mit Dataprep können Sie Daten beliebigen Umfangs transformieren, die im CSV- oder JSON-Format oder in einem relationalen Tabellenformat gespeichert sind. Dataprep verwendet Dataflow zur automatischen Skalierung und kann Datasets im Terabyte-Bereich verarbeiten. Da Dataprep vollständig in Google Cloud eingebettet ist, können Sie Daten unabhängig von deren Speicherort verarbeiten: in Cloud Storage, BigQuery oder auf Ihrem Desktop. Nach der Verarbeitung der Daten lassen sich bereinigte Daten zur weiteren Analyse direkt zu BigQuery exportieren. Nutzerzugriff und Datensicherheit werden mit Identity and Access Management verwaltet.

Im Folgenden sind einige typische Anwendungsfälle für Dataprep aufgeführt.

  • Maschinelles Lernen: Damit können Sie Trainingsdaten für die Feinabstimmung von ML-Modellen bereinigen.
  • Analysen: Rohdaten lassen sich so transformieren, dass sie in Data-Warehousing-Tools wie BigQuery aufgenommen werden können.

Cloud Data Loss Prevention: Sensible Daten ermitteln, klassifizieren und schützen

Cloud DLP ist ein vollständig verwalteter Dienst zum Ermitteln, Klassifizieren und Schützen von sensiblen Daten. Dank mehr als 120 eingebundener infoTypes können Sie mit Cloud DLP Daten praktisch von überall aus scannen, ermitteln, klassifizieren und für die Berichterstellung nutzen. Standardmäßig unterstützt Cloud DLP das Scannen und Klassifizieren sensibler Daten in Cloud Storage, BigQuery sowie Cloud Datastore und bietet eine API für das Streaming von Inhalten. So lassen sich zusätzliche Datenquellen, benutzerdefinierte Arbeitslasten und Anwendungen einbinden.

Cloud DLP umfasst außerdem De-Identifikationstools, mit denen Sie vertrauliche Elemente maskieren, tokenisieren und umwandeln können, damit Sie die Daten, die Sie erfassen, speichern oder für Ihr Geschäft bzw. für Analysen verwenden, besser verwalten können. Da sowohl strukturierte als auch unstrukturierte Daten unterstützt werden, können Sie Ihre Daten mit Cloud DLP weiter zusammenführen, analysieren und für KI nutzen, während Sie gleichzeitig vertrauliche Rohdaten davor schützen, dass sie öffentlich zugänglich werden.

Im Folgenden sind einige gängige Anwendungsfälle für Cloud DLP aufgeführt.

  • Maschinelles Lernen: Sie können unstrukturierte Trainingsdaten wie Chat-Logs vor der Verwendung in KI/ML-Modellen de-identifizieren.
  • Ermittlung und Klassifizierung: Identifizieren und kennzeichnen Sie sensible Daten mit einem Tag, wenn Sie sie in Datenbanken oder Data-Warehouse-Tools wie BigQuery aufnehmen.
  • Sichtbarkeit reduzieren: Sie können Kennungen pseudonymisieren oder tokenisieren, um deren Sichtbarkeit zu reduzieren und gleichzeitig Joins und Aggregatanalysen zu ermöglichen.

Daten analysieren und abfragen

Nachdem Daten aufgenommen, gespeichert und verarbeitet wurden, müssen sie in ein Format gebracht werden, über das sie einfach zugänglich sind und abgefragt werden können.

Verwaltetes Data Warehouse mit BigQuery

BigQuery ist ein vollständig verwaltetes Data Warehouse, das Ad-hoc-SQL-Abfragen und komplexe Schemas unterstützt. Sie können BigQuery nutzen, um Daten zu analysieren, zu verstehen und zu organisieren. Wenn Sie es gewohnt sind, Standard-SQL-Abfragen oder Business-Intelligence- und Visualisierungstools über ein traditionelles Data Warehouse auszuführen, werden Sie die Leistungsfähigkeit und die vertraute Benutzeroberfläche von BigQuery zu schätzen wissen.

BigQuery ist ein hoch skalierbares, stark verteiltes, kostengünstiges OLAP-Analyse-Data-Warehouse, das eine Scanrate von über 1 TB/s erreichen kann. Außerdem ist es ein vollständig verwalteter Dienst. Für jede in das System eingegebene Anfrage werden Berechnungsknoten eingerichtet.

Zum Einstieg in BigQuery erstellen Sie im Projekt ein Dataset, laden Daten in eine Tabelle und führen eine Abfrage durch. Es gibt mehrere Möglichkeiten, das Laden von Daten zu vereinfachen: durch die Streamingaufnahme von Pub/Sub und Dataflow, durch Laden von Daten aus Cloud Storage oder durch Verwenden der Ausgabe eines Verarbeitungsjobs in Dataflow oder Dataproc. BigQuery kann CSV-, Avro- und JSON-Datenformate importieren und unterstützt verschachtelte und wiederholte Elemente in JSON.

Alle Daten in BigQuery werden über einen verschlüsselten Kanal abgerufen und auch bei Inaktivität verschlüsselt. BigQuery unterliegt den Compliance-Programmen von Google, darunter SOC, PCI, ISO 27001 und HIPAA, sodass es verwendet werden kann, um vertrauliche Informationen zu verarbeiten und abzufragen. Der Zugriff auf Daten wird über Ihre ACLs kontrolliert.

BigQuery berechnet Abrechnungsgebühren für zwei unabhängige Posten: Abfragen und Speicher. Die Kosten für das Speichern von Daten in BigQuery sind vergleichbar mit den Kosten, die bei der Speicherung von Daten in Cloud Storage anfallen. Das bedeutet, dass Sie sich nicht entscheiden müssen, ob Log-Daten in einem Bucket oder in BigQuery gespeichert werden sollen. Die Datenmenge, die in Big Query gespeichert werden kann, ist unbegrenzt. Wenn eine Tabelle 90 Tage lang nicht bearbeitet wird, reduziert sich der Preis für die Speicherung dieser Tabelle um 50 %.

Ein typischer Anwendungsfall für BigQuery ist das Streamen oder das periodische Laden von Last-Log-Daten von Servern oder anderen Systemen, die Signale mit hoher Rate erzeugen, z. B. IdD-Geräte. Die native Integration ist bei mehreren Google-Diensten verfügbar. Cloud Logging kann zum Beispiel so konfiguriert werden, dass Logdaten direkt an BigQuery übertragen werden.

Bei der Abfrage von Daten in BigQuery haben Sie die Wahl zwischen zwei Preismodellen: On-Demand und Flatrate. Bei der On-Demand-Variante werden die Abfragegebühren anhand der verarbeiteten Terabytes berechnet. Bei der Flatrate bietet Ihnen BigQuery eine gleichbleibende Abfragekapazität mit einem einfacheren Kostenmodell.

Als voll verwalteter Dienst automatisiert BigQuery Aufgaben wie z. B. Infrastrukturwartungsfenster und Daten-Vacuuming. Zur besseren Gestaltung von Abfragen können Sie sich die Erläuterung eines Abfrageplans zu einer bestimmten Abfrage ansehen. Die Daten werden in einem Spaltenformat gespeichert, das für Zusammenfassungen in großem Maßstab und zur Datenverarbeitung optimiert ist. Darüber hinaus unterstützt BigQuery die Partitionierung von Daten in Zeitachsen. Aus der Entwurfsperspektive betrachtet können Sie Ihre Ladeaktivität so gestalten, dass ein Zeitstempel verwendet und anschließend Abfragen in einer bestimmten Datumspartition ausgewählt werden. Da BigQuery-Abfragegebühren auf Grundlage der Menge der gescannten Daten berechnet werden, können durch eine ordnungsgemäße Partitionierung der Daten die Abfrageeffizienz erheblich verbessert und die Kosten gesenkt werden.

Abfragen auf BigQuery sind mithilfe von Standard-SQL möglich, das mit SQL 2011 kompatibel ist und Erweiterungen zur Unterstützung der Abfrage von verschachtelten und wiederholten Daten umfasst. Es gibt eine große Auswahl an integrierten Funktionen und Operatoren, die nativ in BigQuery verfügbar sind, sowie Unterstützung für benutzerdefinierte Funktionen (UDFs).

Sie können BigQuery auf verschiedene Weisen nutzen.

  • Nutzeranalyse: Nehmen Sie große Mengen an benutzergenerierten Aktivitäten (Adtech, Clickstream, Spieltelemetrie) auf und bestimmen Sie Nutzerverhalten und -eigenschaften.

  • Geräte- und Betriebsmesswerte: Erfassen Sie Streaming-Informationen von IT-Systemen, IdD-Geräten usw. und analysieren Sie Daten auf Trends und Abweichungen.

  • Business Intelligence: Speichern Sie Geschäftsmesswerte als Data Warehouse und nutzen Sie Google BI Engine mit Google Data Studio für Ihre Analysen.

Auf der BigQuery-Website finden Sie verschiedene Anleitungen und Beispiele für die Verwendung von BigQuery.

Daten durch maschinelles Lernen verstehen

Maschinelles Lernen ist zu einem wichtigen Bestandteil der Analysephase im Datenlebenszyklus geworden. Damit lassen sich verarbeitete Ergebnisse verbessern, Empfehlungen für Optimierungsmöglichkeiten bei der Datenerfassung gewinnen und Ergebnisse in Datasets vorhersagen.

Betrachten Sie folgende Anwendungsfälle:

  • Produktempfehlungen: Sie können ein Modell einrichten, das Produkte basierend auf früheren Einkäufen und der Website-Navigation empfiehlt.

  • Vorhersage: Nutzen Sie das maschinelle Lernen, um die Leistung komplexer Systeme, wie zum Beispiel von Finanzmärkten, vorherzusagen.

  • Automatisierte Assistenten: Erstellen Sie automatisierte Assistenten, die die von den Nutzern gestellten Fragen verstehen und beantworten.

  • Sentimentanalyse: Ermitteln Sie bei Nutzerkommentaren zu Rezensionen und News-Artikeln die zugrunde liegende Stimmung.

Es gibt eine Reihe von Möglichkeiten, maschinelles Lernen in Google Cloud zu nutzen.

  • Aufgabenspezifische APIs für maschinelles Lernen: Google Cloud bietet schlüsselfertige, verwaltete Dienste für maschinelles Lernen mit bereits trainierten Modellen für Bildmaterial, Sprache, natürliche Sprache und Textübersetzung. Diese APIs basieren auf denselben Technologien, die auch von Anwendungen wie Google Fotos, Google Mobile, Google Übersetzer und Intelligente Antworten für den Posteingang verwendet werden.

  • Benutzerdefiniertes maschinelles Lernen: AI Platform ist ein gehosteter, verwalteter Dienst, der individuelle Modelle in großem Maßstab ausführt. Darüber hinaus kann Dataproc auch maschinelle Lernmodelle ausführen, die mit Mahout oder Spark MLlib aufgebaut wurden.

Vision API

Sie können mit der Vision API den Inhalt eines Bildes mithilfe vortrainierter neuronaler Netzwerke analysieren und verstehen. Sie können die Vision API verwenden, um Bilder zu klassifizieren sowie einzelne Objekte, Gesichter und gedruckte Wörter zu erkennen. Darüber hinaus können Sie die Vision API verwenden, um unangemessene Inhalte zu erkennen und emotionale Gesichtsmerkmale von Personen zu analysieren.

Die Vision API ist über REST-Endpunkte zugänglich. Sie können Bilder entweder direkt an den Dienst senden oder sie in Cloud Storage hochladen und der Anfrage einen Link zu dem Bild hinzufügen. Anfragen können ein einzelnes Bild umfassen oder es können mehrere Bilder in einem einzigen Batch mit Annotationen versehen werden. In einer Anfrage können zur Erkennung für jedes beiliegende Bild Merkmalsanmerkungen ausgewählt werden. Die Merkmalserkennung umfasst Etiketten, Text, Gesichter, Sehenswürdigkeit, Logos, eine sichere Suche und Bildeigenschaften (wie dominante Farben). Die Antwort enthält Metadaten zu allen Merkmalstyp-Anmerkungen, die für jeden in der ursprünglichen Anfrage angegebenen Typ ausgewählt wurden. Weitere Informationen zu Anfragen und Antworten finden Sie in der Vision API-Dokumentation.

Sie können die Vision API problemlos in benutzerdefinierte Anwendungen einbinden, die in App Engine, GKE, Compute Engine und auf mobilen Plattformen wie Android und iOS ausgeführt werden. Sie kann auch über Google Cloud-Dienste wie Dataflow, Dataproc oder Datalab aufgerufen werden.

Speech-to-Text

Mit Speech-to-Text können Sie Audioinhalte analysieren und in Text umwandeln. Die API erkennt über 80 Sprachen und Varianten und wird von neuronalen Deep-Learning-Netzwerkalgorithmen unterstützt, die sich ständig weiterentwickeln und verbessern.

Sie können die Speech-to-Text-Funktion für verschiedene Arten von Arbeitslasten verwenden.

  • Echtzeit-Spracherkennung: Speech-to-Text kann einen Audioeingangsstream aufnehmen und schrittweise Teilergebnisse der Erkennung liefern, sobald diese verfügbar sind. Dies ist für das Einbinden von Diktierfunktionen in Echtzeit hilfreich. Außerdem ermöglicht es die Sprachsteuerung von Anwendungen. Speech-to-Text unterstützt gRPC, ein leistungsstarkes Open-Source-Allzweck-RPC-Framework für die Sprachanalyse von Audiostreams, das für benutzerdefinierte Anwendungen in App Engine, GKE, Compute Engine sowie auf mobilen Plattformen wie Android und iOS zur Verfügung steht.

  • Batchanalyse: Zur Verarbeitung einer großen Anzahl von Audiodateien können Sie Speech-to-Text mithilfe von REST-Endpunkten und gRPC aufrufen. Sowohl synchrone als auch asynchrone Spracherkennungsfunktionen werden unterstützt. Die REST API kann auch über Google Cloud-Dienste wie Dataflow, Dataproc und Datalab aufgerufen werden.

Natural Language API

Mit der Natural Language API können Sie die Struktur und Bedeutung von Text analysieren und sichtbar machen. Die API kann verwendet werden, um Informationen über Personen, Orte, Ereignisse, die zugrunde liegende Stimmung des Eingabetextes und mehr zu extrahieren. Die daraus resultierende Analyse kann genutzt werden, um unangemessene Inhalte zu filtern, Inhalte nach Themen zu klassifizieren oder aus den extrahierten Elementen, die im Eingabetext gefunden werden, eine Beziehung zu erstellen.

Sie können die Natural Language API mit den OCR-Funktionen der Vision API oder den Speech-to-Text-Funktionen kombinieren, um leistungsstarke Anwendungen oder Dienste zu erstellen.

Die Natural Language API ist über REST-Endpunkte verfügbar. Sie können Text entweder direkt an den Dienst senden oder ihn in Cloud Storage hochladen und der Anfrage einen Link zum Text hinzufügen. Sie können die API problemlos in benutzerdefinierte Anwendungen einbinden, die in App Engine, GKE, Compute Engine und auf mobilen Plattformen wie Android und iOS ausgeführt werden. Sie kann auch über andere Google Cloud-Dienste wie Dataflow, Dataproc oder Datalab aufgerufen werden.

Cloud Translation

Mit Translation können Sie mehr als 90 verschiedene Sprachen übersetzen. Wenn die Eingabesprache unbekannt ist, ermittelt Translation die Sprache mit hoher Genauigkeit automatisch.

Translation liefert eine Echtzeitübersetzung für Web- und mobile Anwendungen und unterstützt in Batches zusammengefasste Anfragen für Analysearbeitslasten.

Translation ist über REST-Endpunkte verfügbar. Sie können die API in benutzerdefinierte Anwendungen einbinden, die in App Engine, GKE, Compute Engine und auf mobilen Plattformen wie Android und iOS ausgeführt werden. Sie kann auch über Google Cloud-Dienste wie Dataflow, Dataproc oder Datalab aufgerufen werden.

Videos suchen und ermitteln mit Video Intelligence API

Videoinhalte waren bisher in der Regel intransparent und ließen sich nicht einfach analysieren. Mit Video Intelligence, einer einfach anwendbaren REST API, können Sie jetzt in Videos Metadaten suchen, erkennen und extrahieren. Mit Video Intelligence lassen sich in Videoinhalten Entitäten (Nomen) wie "Hund", "Blume" oder "Auto" erkennen. Sie können im Videoinhalt auch nach Entitäten in Szenen suchen.

Sie haben die Möglichkeit, Videos mit Metadaten auf Bild- und Videoebene zu annotieren. (Der Dienst extrahiert Daten mit einer maximalen Genauigkeit von einem Bild pro Sekunde.) Die API unterstützt die gängigen Videoformate, einschließlich MOV, MPEG4, MP4 und AVI. Anfragen zum Erstellen von Annotationen zu einem Video lassen sich unkompliziert stellen: Sie erstellen eine JSON-Anfragedatei mit dem Speicherort des Videos und dem Typ oder den Typen der Annotation, die Sie einfügen möchten, und senden die Anfrage an den API-Endpunkt.

Erste Schritte dazu finden Sie unter Schnellstart mit Video Intelligence.

Im Folgenden sind gängige Anwendungsfälle für Video Intelligence aufgeführt.

  • Erfassung von Informationen aus Videos: Extrahieren Sie Informationen aus Videos ohne maschinelles Lernen und ohne Computer Vision-Algorithmen.

  • Videokatalogsuche: Durchsuchen Sie einen Videokatalog zur Ermittlung von interessanten Entitäten und deren Zeitstempel.

AI Platform: Verwaltete Plattform für maschinelles Lernen

AI Platform ist eine verwaltete Plattform, mit der Sie benutzerdefinierte Modelle für maschinelles Lernen in großem Maßstab ausführen können. Sie erstellen Modelle mit dem TensorFlow-Framework, einem Open-Source-Framework für Maschinenintelligenz, und verwenden dann AI Platform, um die Vorverarbeitung, das Training und die Vorhersage zu verwalten.

AI Platform ist in Dataflow für die Datenvorverarbeitung eingebettet. Dieses Modul kann gleichermaßen auf in Cloud Storage als auch in BigQuery gespeicherte Daten zugreifen. Es ist auch mit Cloud Load Balancing abgestimmt, um in großem Umfang Online-Vorhersagen bereitzustellen.

Sie können TensorFlow-Modelle vollständig in Google Cloud mit Datalab- und Jupyter-Notebooks entwickeln und testen und dann AI Platform für umfangreiche Trainings- und Vorhersagearbeitslasten verwenden.

Für AI Platform erstellte Modelle sind vollständig portabel. Durch die Nutzung des TensorFlow-Frameworks können Sie Modelle lokal erstellen und testen und anschließend auf mehreren Geräten einsetzen, um die Trainings- und Vorhersagefunktionen verteilt zu implementieren. Anschließend können Sie die trainierten Modelle in AI Platform hochladen und auf mehreren verteilten VM-Instanzen ausführen.

Der Workflow von AI Platform besteht aus folgenden Phasen:

  • Vorverarbeitung: AI Platform konvertiert Features aus Eingabe-Datasets in ein unterstütztes Format und kann die Daten eventuell auch normalisieren und transformieren, um ein effizienteres Lernen zu ermöglichen. Während der Vorverarbeitung werden die Trainings-, Auswertungs- und Testdaten in Cloud Storage gespeichert. Hierdurch werden die Daten in dieser Phase auch für Dataflow zugänglich, um jede weitere erforderliche Vorverarbeitung zu ermöglichen.

  • Diagrammerstellung: AI Platform konvertiert das bereitgestellte TensorFlow-Modell in ein AI Platform-Modell mit Vorgängen für Training, Bewertung und Vorhersage.

  • Training: AI Platform iteriert und bewertet das Modell kontinuierlich anhand der übermittelten Parameter.

  • Vorhersage: AI Platform verwendet das Modell, um Berechnungen durchzuführen. Vorhersagen können in Batches oder on-demand als Online-Vorhersage-Dienst berechnet werden. Batchvorhersagen sind so konzipiert, dass sie asynchron zur Prüfung von großen Datensätzen ausgeführt werden, wobei Dienste wie Dataflow zur Orchestrierung der Analyse genutzt werden. On-Demand-Vorhersagen werden häufig mit benutzerdefinierten Anwendungen verwendet, die in App Engine, GKE oder Compute Engine ausgeführt werden.

Vielseitiges maschinelles Lernen

Neben der von Google entwickelten Plattform für maschinelles Lernen und den entsprechenden APIs können Sie auch andere hoch skalierbare Tools für maschinelles Lernen in Google Cloud einsetzen. Mahout und MLlib sind zwei Projekte im Umfeld von Hadoop und Spark, die eine Reihe von allgemeinen maschinellen Lernalgorithmen bereitstellen. Beide Pakete bieten maschinelle Lernalgorithmen für Clustering, zur Klassifizierung, zur kollaborativen Filterung und für vieles mehr.

Sie können mit Dataproc verwaltete Hadoop- und Spark-Cluster bereitstellen und diese Cluster mit zusätzlicher Software starten. Dies bedeutet, dass Sie Arbeitslasten für maschinelles Lernen, die mit Mahout oder MLlib in Google Cloud erstellt wurden, ausführen und die Cluster mit regulären oder präemptiven VMs skalieren können.

Erkunden und visualisieren

Der letzte Schritt im Datenlebenszyklus ist eine detaillierte Erkundung und Visualisierung der Daten, um die Ergebnisse der Verarbeitung und der Analyse besser zu verstehen.

Erkenntnisse, die während der Erkundung gewonnen wurden, können verwendet werden, um die Geschwindigkeit oder das Volumen der Datenaufnahme, die Nutzung von verschiedenen Speichermedien zur Geschwindigkeitsanalyse und Verarbeitungspipelines zu verbessern. Um diese Datensätze vollständig erkunden und verstehen zu können, müssen häufig Data Scientists und Geschäftsanalysten hinzugezogen werden, Personen, die im Bereich der Wahrscheinlichkeitsrechnung, der Statistiken und der Auswertung von Geschäftswerten geschult sind.

Ergebnisse aus Data Science erkunden

Data Science bezeichnet den Vorgang, aus Rohdatenbeständen Nutzen zu gewinnen. Hierzu kann ein Data Scientist unterschiedliche Datasets, manche öffentlich, andere privat, miteinander kombinieren und eine Reihe von Zusammenfassungs- und Analysetechniken anwenden. Anders als beim Data Warehousing variieren die Arten der Analyse und die Struktur der Daten stark und sind nicht vorbestimmt. Techniken dafür sind unter anderem statistische Methoden wie Clustering, Bayes'sche Analyse, Maximum Likelihood und Regression sowie maschinelles Lernen, z. B. Entscheidungsbäume und neuronale Netzwerke.

Interaktive Dateneinblicke mit Datalab

Datalab ist ein interaktives webbasiertes Tool, mit dem Sie Daten untersuchen, analysieren und visualisieren können. Es ist auf Jupyter Notebooks, ehemals IPython, aufgebaut. Mit Datalab können Sie mit einem einzigen Klick ein interaktives, webbasiertes Notebook starten, in dem Sie Python-Programme schreiben und ausführen können, um Daten zu verarbeiten und zu visualisieren. Die Notebooks behalten ihren Zustand bei und können von Data Scientists gemeinsam genutzt und auf Websites wie GitHub, Bitbucket und Dropbox veröffentlicht werden.

Datalab ist sofort einsetzbar und unterstützt viele beliebte Toolkits für Data-Science-Anwendungen, darunter pandas, numpy und scikit-learn sowie gängige Visualisierungspakete wie matplotlib. Datalab unterstützt außerdem Tensorflow und Dataflow. Mit diesen Bibliotheken und Cloud-Diensten kann ein Data Scientist Daten laden und bereinigen, Modelle erstellen und prüfen und die Ergebnisse anschließend mithilfe von matplotlib visualisieren. Dies funktioniert sowohl mit Daten, die auf ein einzelnes Gerät passen, als auch mit Daten, für die zum Speichern ein Cluster erforderlich ist. Weitere Python-Module können mithilfe der Befehle !pip install geladen werden.

Umfeld für Data Science

Mit leistungsstarken Compute Engine-Instanzen können Sie viele Arten von Tools für Data Science bereitstellen und nutzen, um umfangreiche Analysen in Google Cloud durchzuführen.

Die Programmiersprache R wird üblicherweise von Statistikern verwendet. Wenn Sie R zur Datenexploration verwenden möchten, können Sie RStudio Server oder Microsoft Machine Learning Server auf einer Compute Engine-Instanz bereitstellen. RStudio Server bietet eine interaktive Laufzeitumgebung zur Verarbeitung und Bearbeitung von Daten, für das Erstellen anspruchsvoller Modelle und zur Visualisierung von Ergebnissen. Microsoft Machine Learning Server ist eine hoch skalierbare und leistungsstarke Ergänzung zu R-Desktop-Clients zur Ausführung von Analysearbeitslasten.

Datalab basiert auf Jupyter und unterstützt derzeit Python. Wenn Sie Ihre Datenexploration in anderen Sprachen, wie zum Beispiel R, Julia, Scala und Java, vornehmen möchten, können Sie die Open-Source-Version von Jupyter oder JupyterHub auf Compute Engine-Instanzen bereitstellen.

Apache Zeppelin ist ein weiteres beliebtes webbasiertes, Notebook-orientiertes Tool für Data Science. Ähnlich wie Jupyter unterstützt auch Zeppelin zusätzliche Back-End-Systeme zur Sprach- und Datenverarbeitung wie Spark, Hive, R und Python.

Sowohl Jupyter als auch Zeppelin können mit vorgefertigten Dataproc-Initialisierungsaktionen eingesetzt werden, um gängige Softwarepakete für das Hadoop- und Spark-Umfeld schnell hochzufahren.

Visualisierung von Business-Intelligence-Ergebnissen

Während der Analyse ist es möglicherweise hilfreich, komplexe Datenvisualisierungen, Dashboards und Berichte zu generieren, um die Ergebnisse der Datenverarbeitung einem breiteren Publikum zu erklären. Damit dies einfacher wird, lässt sich eine Reihe von Reporting- und Dashboard-Tools mit Google Cloud verknüpfen.

Looker: Business Intelligence-Plattform

Looker umfasst Tools, dank denen Sie in den verschiedensten Szenarien mit Daten arbeiten können – von moderner Business Intelligence und eingebetteten Analysen bis hin zu Workflowintegrationen und benutzerdefinierten Datenanwendungen. Looker bietet eine einheitliche Oberfläche für den Zugriff auf komplexe Daten und die Einbindung in Workflows und datenorientierte Anwendungen. Looker kann auch durch robuste APIs, SDKs und eine Bibliothek mit gängigen Integrationen erweitert werden.

Data Studio: Dashboarding und Visualisierung

Data Studio bietet den auf Drag-and-drop basierenden Report Builder, mit dem Sie Daten in Berichten und Dashboards visualisieren und anschließend mit anderen teilen können. Die Diagramme und Grafiken in den Berichten werden durch Livedaten unterstützt, die geteilt und aktualisiert werden können. Berichte können interaktive Steuerelemente enthalten, mit denen Mitarbeiter die Dimensionen anpassen können, die zum Erstellen von Visualisierungen verwendet werden.

Mit Data Studio können Sie Berichte und Dashboards aus vorhandenen Datendateien, Google Tabellen, Cloud SQL und BigQuery erstellen. Durch die Kombination von Data Studio mit BigQuery können Sie die vollständige Rechen- und Speicherkapazität von BigQuery nutzen, ohne Daten manuell in Data Studio importieren oder benutzerdefinierte Integrationen erstellen zu müssen.

BI Engine: Verwalteter Analysedienst

BI Engine ist ein schneller In-Memory-Analysedienst. BI Engine kann in BigQuery gespeicherte Daten mit Abfragereaktionszeiten von weniger als einer Sekunde und mit hoher Gleichzeitigkeit analysieren. BI Engine lässt sich nahtlos in Data Studio einbinden, um explorative Datenanalysen zu beschleunigen. Durch diese Einbindung können Sie in Data Studio umfangreiche, interaktive Dashboards und Berichte erstellen, ohne die Leistung, Skalierbarkeit, Sicherheit oder Datenaktualität selbst verwalten und optimieren zu müssen.

Neben BI Engine unterstützt BigQuery auch eine Reihe von Business Intelligence-Tools und -Integrationen von Drittanbietern, von SaaS bis hin zu Desktopanwendungen. Weitere Informationen finden Sie in der Dokumentation der BigQuery-Partner.

Tabellen: Tabellenvisualisierung

Wenn Sie Daten in einer Tabelle visualisieren möchten, können Sie Tabellen verwenden, die sich direkt in BigQuery einbinden lassen. Mit Google Apps Script können Sie BigQuery-Abfragen und -Daten direkt in Tabellen einbetten. Außerdem haben Sie die Möglichkeit, BigQuery-Abfrageergebnisse in CSV-Dateien zu exportieren und in Tabellen oder anderen Tabellenverarbeitungsprogrammen zu öffnen. Dies ist nützlich, um kleinere Datasets für die gemeinsame Nutzung oder zur Analyse zu erstellen. Umgekehrt können Sie BigQuery auch verwenden, um verteilte Datasets abzufragen, die in Tabellen oder als Dateien in Drive gespeichert sind.

Data Catalog: Datenermittlung und Metadatenverwaltung

Data Catalog ist ein vollständig verwalteter, skalierbarer Dienst zur Metadatenverwaltung, der die Ermittlung von Daten jeglichen Umfangs vereinfacht. Data Catalog basiert auf der Technologie von Google Suche und umfasst eine Suchoberfläche in Google Cloud, die eine einheitliche Ansicht von Datenassets bietet.

Mit dem Metadatenverwaltungsdienst werden technische Metadaten für BigQuery und Pub/Sub sowie geschäftliche Metadaten automatisch in einem schematisierten Format aufgenommen. Dazu werden Tags, benutzerdefinierte APIs und die Google Cloud Console verwendet, sodass sich Datenassets auf diese Weise einfach und effizient katalogisieren lassen.

Data Catalog bietet mit der Einbindung von Cloud Data Loss Prevention und IAM außerdem eine solide Grundlage für Sicherheit und Compliance.

Orchestrierung

Um alle Elemente des Datenlebenszyklus in eine Reihe von verbundenen und zusammenhängenden Operationen einbinden zu können, ist eine Art der Orchestrierung notwendig. Orchestrierungsebenen werden typischerweise verwendet, um die Art und Weise zu koordinieren, wie Aufgaben gestartet und beendet, Dateien kopiert und Dashboards zur Überwachung von Datenverarbeitungsaufgaben bereitgestellt werden. Ein Workflow kann zum Beispiel das Kopieren von Dateien nach Cloud Storage, das Starten einer Dataproc-Verarbeitungsaufgabe und das Senden von Benachrichtigungen bei Speicherung von Verarbeitungsergebnissen in BigQuery umfassen.

Die Workflows zur Orchestrierung können abhängig von den Verarbeitungsaufgaben sowohl einfach als auch komplex sein und verwenden häufig einen zentralen Zeitplanungsmechanismus, um Workflows automatisch auszuführen.

Cloud Composer: Verwaltete Workfloworchestrierung

Cloud Composer ist ein vollständig verwalteter Workfloworchestrierungsdienst, mit dem Sie Pipelines, die sich über Clouds und lokale Rechenzentren erstrecken, erstellen, planen und überwachen können. Cloud Composer beruht auf dem Open-Source-Projekt Apache Airflow und Pipelines werden mit Python als gerichtete azyklische Graphen (Directed Acyclic Graphs, DAGs) konfiguriert.

Cloud Composer ist in viele Produkte fest eingebunden. Dazu zählen unter anderem BigQuery, Dataflow, Dataproc, Datastore, Cloud Storage, Pub/Sub und die AI Platform.

Benutzerdefinierte Orchestrierungsanwendungen

Bei benutzerdefinierten Orchestrierungsanwendungen können Sie mit Pub/Sub oder Cloud Tasks Workflowschritte in eine Warteschlange stellen. Die Schritte können von Anwendungen ausgeführt werden, die auf den virtuellen Maschinen von Compute Engine, den serverlosen Plattformen von App Engine und Cloud Functions sowie für die Containerverwaltung von Google Kubernetes Engine (GKE) bereitgestellt werden.

Weitere Informationen

Weitere Informationen zur Verwaltung von Daten in Google Cloud finden Sie in diesen Referenzarchitekturen und Anwendungsfällen.