Direkt zum Inhalt

Apache Kafka für Einsteiger: Ein umfassender Leitfaden

Entdecke Apache Kafka mit unserem Leitfaden für Anfänger. Erfahre die Grundlagen, lege los und entdecke fortgeschrittene Funktionen und praktische Anwendungen dieser leistungsstarken Event-Streaming-Plattform.
Aktualisierte 16. Jan. 2025  · 8 Min. Lesezeit

Die moderne Anwendungslandschaft hat sich durch Microservices und ereignisbasierte Anwendungsarchitekturen völlig verändert. Die Zeiten der stapelweisen Verarbeitung sind längst vorbei. Um den Anforderungen an Geschwindigkeit und Verfügbarkeit gerecht zu werden, streben die Entwickler eine nahezu reale Aktualität und eine vollständig entkoppelte Anwendungsarchitektur an.

Ein Ereignisverwaltungssystem wird normalerweise von entkoppelten Anwendungen verwendet, um die Integration verschiedener Dienste zu unterstützen. Eine weitere Anwendung für einen Ereignisspeicher sind Event-Sourcing-basierte Architekturen, bei denen die gesamte Anwendungslogik in Form von Ereignissen ausgedrückt wird. An dieser Stelle kommt Apache Kafka ins Spiel.

Apache Kafka ist ein Open-Source-Framework für verteiltes Event-Streaming, das bei LinkedIn von einem Team entwickelt wurde, zu dem Jay Kreps, Jun Rao und Neha Narkhede gehören. Das Tool wurde für die Aufnahme und Verarbeitung von Streaming-Daten in Echtzeit optimiert und kann daher für die Implementierung von Hochleistungs-Datenpipelines, Streaming-Analytics-Anwendungen und Datenintegrationsdiensten verwendet werden.

Im Wesentlichen ist Kafka ein Framework für verteilte Ereignisspeicher und Stream Processing, das als Message Broker, Ereignisspeicher, Warteschlangenmanagementsystem usw. verwendet werden kann. Du kannst unseren Vergleich zwischen Kafka und Amazon SQS in einem separaten Leitfaden lesen und in unserem Tutorial nachlesen, wie Kafka-Partitionen funktionieren. 

Warum Kafka?

Nachdem die Ereignisse gespeichert wurden, leitet die Event-Streaming-Plattform sie an die entsprechenden Dienste weiter. Die Entwickler können ein solches System skalieren und pflegen, ohne auf andere Dienste angewiesen zu sein. Da Kafka ein All-in-One-Paket ist, das als Message Broker, Event Store oder Stream Processing Framework eingesetzt werden kann, eignet es sich hervorragend für solche Anforderungen.

Dank des hohen Durchsatzes und der Langlebigkeit können Hunderte von Datenquellen gleichzeitig riesige, kontinuierliche Datenströme liefern, die vom Message Broker-System von Apache Kafka sequentiell und progressiv verarbeitet werden können.

Zu den Vorteilen von Apache Kafka gehören außerdem:

Hoher Durchsatz

Die durchdachte Architektur von Kafka, die Datenpartitionierung, Batch-Verarbeitung, Zero-Copy-Techniken und Append-Only-Logs umfasst, ermöglicht einen hohen Durchsatz und die Verarbeitung von Millionen von Nachrichten pro Sekunde und eignet sich damit für Szenarien mit hoher Geschwindigkeit und großem Datenvolumen. Das leichtgewichtige Kommunikationsprotokoll, das eine effektive Client-Broker-Interaktion ermöglicht, macht das Datenstreaming in Echtzeit möglich.

Skalierbarkeit

Apache Kafka ermöglicht einen Lastausgleich zwischen den Servern, indem ein Topic in mehrere Partitionen aufgeteilt wird. Dies ermöglicht es den Nutzern, Produktionscluster auf geografische Gebiete oder Verfügbarkeitszonen zu verteilen und sie je nach Bedarf zu vergrößern oder zu verkleinern. Mit anderen Worten: Apache Kafka lässt sich problemlos so skalieren, dass es Billionen von Nachrichten pro Tag über eine große Anzahl von Partitionen verarbeiten kann.

Geringe Latenz

Apache Kafka nutzt einen Cluster von Servern mit niedriger Latenz (bis zu 2 Millisekunden), um Nachrichten bei begrenztem Netzwerkdurchsatz durch Entkopplung von Datenströmen effizient zuzustellen.

Langlebigkeit und Zuverlässigkeit

Apache Kafka verbessert die Fehlertoleranz und Beständigkeit von Daten auf zwei wichtige Arten:

  • Es verteilt die Speicherung von Datenströmen in einem fehlertoleranten Cluster, um vor Serverausfällen zu schützen
  • Es speichert Nachrichten auf der Festplatte und bietet eine Replikation innerhalb des Clusters.

Hohe Verfügbarkeit

Dank seiner cluster-basierten Broker bleibt Kafka auch bei einem Serverausfall betriebsbereit. Das funktioniert, denn wenn einer der Server Probleme hat, ist Kafka intelligent genug, um Anfragen an verschiedene Broker zu senden.

Kernkomponenten von Kafka

Apache Kafka ermöglicht es, Daten in Echtzeit zu analysieren, Datensätze in der Reihenfolge zu speichern, in der sie erstellt wurden, und sie zu veröffentlichen und zu abonnieren.

Die Kernkomponenten von Apache Kafka

Die Kernkomponenten von Apache Kafka | Quelle: Starte deine Echtzeit-Pipeline mit Apache Kafka von Alex Kam

Apache Kafka ist ein horizontal skalierbarer Cluster von Commodity-Servern, der Echtzeitdaten von mehreren "Producer"-Systemen und -Anwendungen (z. B. Logging-, Überwachungs-, Sensor- und Internet-of-Things-Anwendungen) verarbeitet und sie mehreren "Consumer"-Systemen und -Anwendungen (z. B. Echtzeit-Analysen) mit sehr geringer Latenz zur Verfügung stellt - wie in der Abbildung oben dargestellt.

Beachte, dass Anwendungen, die auf Echtzeit-Datenverarbeitung und Analysesysteme angewiesen sind, beide als Verbraucher betrachtet werden können. Zum Beispiel eine Anwendung für standortbasiertes Mikromarketing oder Logistik.

Hier sind einige wichtige Begriffe, die du kennen solltest, um die Kernkomponenten von Kafka besser zu verstehen:

  • Makler sind Server im Cluster, die Daten speichern und Clients bedienen.
  • Themen sind Kategorien oder Feeds, in denen Datensätze veröffentlicht werden. Beachte, dass es zwei Arten von Themen gibt: verdichtete und reguläre Themen. Aufzeichnungen, die in verdichteten Themen gespeichert werden, sind weder zeitlich noch räumlich begrenzt. Ältere Topic-Nachrichten mit demselben Schlüssel werden durch neuere Nachrichten aktualisiert, und Apache Kafka entfernt die jüngste Nachricht nur dann, wenn der Benutzer dies tut. Im Gegensatz dazu können Datensätze, die in regulären Themen gespeichert werden, so konfiguriert werden, dass sie ablaufen und veraltete Daten gelöscht werden, was Speicherplatz freisetzt.
  • Producer sind Client-Anwendungen, die Ereignisse in Kafka-Themen veröffentlichen (schreiben).
  • Konsumenten sind Anwendungen, die Ereignisse aus Kafka-Themen lesen und verarbeiten. Java-Programme, die Daten aus Topics abrufen und Ergebnisse an Apache Kafka zurückgeben, können dank der Streams API für Apache Kafka geschrieben werden. Externe Stream-Processing-Systeme wie Apache Spark, Apache Apex, Apache Flink, Apache NiFi und Apache Storm können diese Nachrichtenströme ebenfalls verarbeiten.
  • Kafka verwendet eine Client-Bibliothek namens "Streams", um Microservices und Anwendungen zu erstellen, bei denen Daten in Clustern zur Ein- und Ausgabe gespeichert werden.

Erste Schritte mit Kafka

Es wird oft empfohlen, Apache Kafka mit Zookeeper zu starten, um eine optimale Kompatibilität zu gewährleisten. Außerdem kann Kafka bei der Installation unter Windows auf einige Probleme stoßen, da es nicht von Haus aus für dieses Betriebssystem konzipiert ist. Es wird daher empfohlen, Apache Kafka unter Windows wie folgt zu starten:

  • WSL2, wenn du Windows 10 oder höher verwendest, oder Docker
  • Docker Wenn du mit Windows 8 oder früher arbeitest

Es ist nicht ratsam, die JVM zu verwenden, um Kafka unter Windows auszuführen, da sie einige der POSIX-Merkmale nicht besitzt, die es nur unter Linux gibt. Du wirst irgendwann auf Schwierigkeiten stoßen, wenn du versuchst, Kafka unter Windows ohne WSL2 auszuführen.

Der erste Schritt zur Installation von Apache Kafka unter Windows ist die Installation von WSL2.

Schritt 1: Install WSL2

WSL2, das Windows Subsystem für Linux 2, ermöglicht deinem Windows-PC den Zugriff auf eine Linux-Umgebung, ohne dass du eine virtuelle Maschine benötigst.

Die meisten Linux-Befehle sind mit WSL2 kompatibel, was den Kafka-Installationsprozess näher an die Anleitungen für Mac und Linux bringt.

Tipp: Stelle sicher, dass du Windows 10 Version 2004 oder höher (Build 19041 und höher) verwendest, bevor du WSL2 installierst. Drücke die Windows-Logo-Taste + R, gib "winver" ein und klicke dann auf OK, um deine Windows-Version zu sehen.

Am einfachsten lässt sich das Windows Subsystem für Linux (WSL) installieren, indem du den folgenden Befehl in einer Administrator-PowerShell oder Windows-Eingabeaufforderung ausführst und dann deinen Computer neu startest:

wsl --install

Beachte, dass du aufgefordert wirst, ein Benutzerkonto und ein Passwort für deine neu installierte Linux-Distribution zu erstellen.

Folge den Schritten auf der Microsoft Docs Website, wenn du nicht weiterkommst.

Schritt 2: Java installieren

Wenn Java auf deinem Computer nicht installiert ist, musst du die neueste Version herunterladen.

Schritt 3: Apache Kafka installieren

Zum Zeitpunkt der Erstellung dieses Artikels ist die letzte stabile Version von Apache Kafka 3.7.0, die am 27. Februar 2024 veröffentlicht wurde. Das kann sich jederzeit ändern. Um sicherzustellen, dass du die aktuellste und stabilste Version von Kafka verwendest, schau auf der Download-Seite nach.

Lade die neueste Version von den Binärdownloads herunter.

Sobald der Download abgeschlossen ist, navigiere zu dem Ordner, in dem Kafka heruntergeladen wurde, und entpacke alle Dateien aus dem gezippten Ordner. Beachte, dass wir unseren neuen Ordner "Kafka" genannt haben.

Schritt 3: Zookeeper starten

Zookeeper wird für das Cluster-Management in Apache Kafka benötigt. Deshalb muss Zookeeper vor Kafka gestartet werden. Eine separate Installation von Zookeeper ist nicht notwendig, da es Teil von Apache Kafka ist.

Öffne die Eingabeaufforderung und navigiere zum Stammverzeichnis von Kafka. Dort führst du den folgenden Befehl aus, um Zookeeper zu starten:

.\bin\windows\zookeeper-server-start.bat .\config\zookeeper.properties

Start 4: Starte den Kafka-Server

Öffne eine weitere Eingabeaufforderung und führe den folgenden Befehl im Stammverzeichnis von Apache Kafka aus, um Apache Kafka zu starten:

.\bin\windows\kafka-server-start.bat .\config\server.properties

Schritt 5: Ein Thema erstellen

Um ein Thema zu erstellen, starte eine neue Eingabeaufforderung im Kafka-Stammverzeichnis und führe den folgenden Befehl aus:

.\bin\windows\kafka-topics.bat --create --topic MyFirstTopic --bootstrap-server localhost:9092

Dadurch wird ein neues Kafka-Topic mit dem Namen "MyFirstTopic" erstellt.

Hinweis: Um zu bestätigen, dass das Thema korrekt erstellt wurde, wird bei der Ausführung des Befehls "Thema <Name des Themas> erstellen" zurückgegeben.

Schritt 6: Kafka Producer starten

Ein Producer muss gestartet werden, um eine Nachricht in das Kafka-Topic zu stellen. Führe dazu den folgenden Befehl aus:

.\bin\windows\kafka-console-producer.bat --topic MyFirstTopic --bootstrap-server localhost:9092

Schritt 7: Start Kafka consumer

Öffne eine weitere Eingabeaufforderung im Kafka-Stammverzeichnis und führe den folgenden Befehl aus, um den Kafka-Consumer an stat zu senden:

.\bin\windows\kafka-console-consumer.bat --topic MyFirstTopic --from-beginning --bootstrap-server localhost:9092

Wenn der Produzent eine Nachricht erstellt, wird sie vom Konsumenten in Echtzeit gelesen.

Eine Nachricht, die vom Producer produziert und vom Kafka Consumer in Echtzeit gelesen wird

Ein GIF demonstriert eine Nachricht, die vom Producer produziert und vom Kafka-Consumer in Echtzeit gelesen wird.

Das war's... Du hast gerade dein erstes Kafka-Thema erstellt.

Erweiterte Kafka-Funktionen

Hier sind ein paar erweiterte Funktionen von Kafka...

Kafka Streams

Mit Apache Kafka können Entwickler mit Hilfe von Kafka-Streams robuste Stream-Processing-Anwendungen erstellen. Sie bietet APIs und eine hochentwickelte domänenspezifische Sprache (DSL) für die Verarbeitung, Konvertierung und Auswertung von kontinuierlichen Datenströmen.

Einige der wichtigsten Merkmale sind:

Stream-Verarbeitung

Die Echtzeitverarbeitung von Datensatzströmen wird durch Kafka Streams ermöglicht. Sie ermöglicht es dir, Daten von Kafka-Themen zu empfangen, sie zu verarbeiten und umzuwandeln und die verarbeiteten Informationen dann wieder an Kafka-Themen zurückzugeben. Die Stream-Verarbeitung ermöglicht Analysen, Überwachung und Datenanreicherung nahezu in Echtzeit. Sie kann auf einzelne Aufzeichnungen oder auf gefensterte Aggregationen angewendet werden.

Ereignis-Zeit-Verarbeitung

Mithilfe der Zeitstempel, die an die Datensätze angehängt sind, kannst du mit der Unterstützung von Kafka Streams für die Verarbeitung von Ereignissen in unregelmäßigen Abständen umgehen. Sie bietet Windowing-Operationen mit Ereigniszeit-Semantik und ermöglicht Window Joining, Sessionization und zeitbasierte Aggregationen.

Zeitbasierte Operationen und Windowing

Kafka Streams bietet eine Reihe von Fensteroperationen, mit denen du Berechnungen über Sitzungsfenster, wechselnde Fenster, gleitende Fenster und feste Zeitfenster durchführen kannst.

Ereignisbasierte Auslöser, zeitabhängige Analysen und zeitbasierte Aggregationen sind über gefensterte Verfahren möglich.

Zustandsabhängige Verarbeitung

Während der Stream-Verarbeitung ermöglicht Kafka Streams den Nutzern, den Status zu halten und zu aktualisieren. Integrierte Unterstützung für State Stores ist vorhanden. Ein State Store ist ein Key-Value-Store, der innerhalb einer Verarbeitungstopologie aktualisiert und abgefragt werden kann.

Erweiterte Stream-Processing-Funktionen wie Joins, Aggregationen und Anomalieerkennung werden durch zustandsabhängige Operationen ermöglicht.

Exakt-einmalige Verarbeitung

Kafka Streams bietet eine Ende-zu-Ende-Semantik für Exact-Once-Verarbeitung, die garantiert, dass jeder Datensatz genau einmal verarbeitet wird - auch im Falle eines Fehlers. Dies wird durch die Nutzung der robusten Haltbarkeitsgarantien und Transaktionsfunktionen von Kafka erreicht.

Kafka Connect

Das deklarative, anpassbare Datenintegrations-Framework für Kafka heißt Kafka Connect. Es ist eine kostenlose Open-Source-Komponente von Apache Kafka, die als zentrale Datendrehscheibe für die einfache Datenintegration zwischen Dateisystemen, Datenbanken, Suchindizes und Key-Value-Stores dient.

Die Kafka-Distribution enthält standardmäßig Kafka Connect. Um es zu installieren, musst du nur einen Worker-Prozess starten.

Verwende den folgenden Befehl aus dem Kafka-Stammverzeichnis, um den Kafka Connect Worker-Prozess zu starten:

.\bin\windows\connect-distributed.bat 
.\config\connect-distributed.properties

Dadurch wird der Kafka-Connect-Worker im verteilten Modus gestartet, was die hohe Verfügbarkeit und Skalierbarkeit von zahlreichen Workern in einem Cluster ermöglicht.

Hinweis: In der Datei .\config\connect-distributed.properties werden die Kafka-Broker-Informationen und andere Konfigurationseigenschaften für Kafka Connect angegeben.

Konnektoren werden von Kafka Connect verwendet, um Daten zwischen externen Systemen und Kafka-Themen zu übertragen. Die Konnektoren können so installiert und konfiguriert werden, dass sie deinen individuellen Anforderungen an die Datenintegration entsprechen.

Um einen Konnektor zu installieren, musst du nur die JAR-Datei des Konnektors herunterladen und zu dem in der Datei .\config\connect-distributed.properties angegebenen Verzeichnis plugin.path hinzufügen.

Es muss eine Konfigurationsdatei für den Konnektor erstellt werden, in der die Konnektorklasse und alle anderen Eigenschaften angegeben werden müssen. Die Kafka Connect REST API und die Kommandozeilen-Tools können zum Erstellen und Verwalten von Konnektoren verwendet werden.

Um Daten aus anderen Systemen zu kombinieren, musst du als nächstes den Kafka Connector konfigurieren. Kafka Connect bietet verschiedene Konnektoren für die Integration von Daten aus unterschiedlichen Systemen, wie z.B. Dateisystemen, Message Queues und Datenbanken. Wähle einen Konnektor aus, der deinem Integrationsbedarf entspricht - eine Liste der Konnektoren findest du in der Dokumentation.

Reale Anwendungen von Kafka

Hier sind ein paar häufige Anwendungsfälle von Apache Kafka.

Lernpfad für Aktivitäten

Kafka kann von einer Online-E-Commerce-Plattform genutzt werden, um Nutzeraktivitäten in Echtzeit zu verfolgen. Jede Aktion eines Nutzers, wie z.B. das Ansehen von Produkten, das Hinzufügen von Artikeln zu Warenkörben, Einkäufe, das Abgeben von Bewertungen, Suchen usw., kann als Ereignis in bestimmten Kafka-Themen veröffentlicht werden.

Andere Microservices können diese Ereignisse speichern oder für Echtzeit-Betrugserkennung, Berichterstattung, personalisierte Angebote und Empfehlungen nutzen.

Nachrichtenübermittlung

Mit seinem verbesserten Durchsatz, der eingebauten Partitionierung, Replikation, Fehlertoleranz und Skalierbarkeit ist Kafka ein guter Ersatz für herkömmliche Nachrichtenbroker.

Eine auf Microservices basierende Ride-Hailing-App kann sie nutzen, um den Nachrichtenaustausch zwischen verschiedenen Diensten zu erleichtern.

Zum Beispiel könnte das Unternehmen, das Fahrten bucht, Kafka nutzen, um mit dem Fahrervermittlungsdienst zu kommunizieren, wenn ein Fahrer eine Reservierung vornimmt. Der Fahrer-Vermittlungsdienst kann dann fast in Echtzeit einen Fahrer in der Nähe ausfindig machen und mit einer Nachricht antworten.

Log-Aggregation

In der Regel bedeutet dies, dass physische Logdateien von Servern abgerufen und an einem zentralen Ort zur Verarbeitung gespeichert werden, z. B. auf einem Dateiserver oder Data Lake. Kafka abstrahiert die Daten als Strom von Nachrichten und filtert die dateispezifischen Informationen. Dadurch können Daten mit geringerer Latenzzeit verarbeitet und verteilter Datenkonsum und unterschiedliche Datenquellen leichter berücksichtigt werden.

Nachdem die Logs in Kafka veröffentlicht wurden, können sie von einem Log-Analyse-Tool oder einem SIEM-System (Security Information and Event Management) zur Fehlerbehebung, Sicherheitsüberwachung und Compliance-Berichterstattung verwendet werden.

Stream-Verarbeitung

Mehrere Kafka-Nutzer verarbeiten Daten in mehrstufigen Verarbeitungspipelines. Rohe Eingabedaten werden aus Kafka-Topics entnommen, aggregiert, angereichert oder anderweitig in neue Topics umgewandelt, die dann weiterverwendet oder verarbeitet werden.

Eine Bank kann Kafka zum Beispiel nutzen, um Transaktionen in Echtzeit zu verarbeiten. Jede Transaktion, die ein Kunde startet, wird dann als Ereignis an ein Kafka-Thema gesendet. Anschließend kann eine Anwendung diese Ereignisse aufnehmen, die Transaktionen überprüfen und bearbeiten, zweifelhafte Transaktionen stoppen und den Kontostand der Kunden sofort aktualisieren.

Metriken

Kafka könnte von einem Cloud-Service-Anbieter genutzt werden, um Statistiken von verteilten Anwendungen zu aggregieren und zentralisierte Echtzeit-Betriebsdatenströme zu erzeugen. Metriken von Hunderten von Servern, wie z.B. CPU- und Speicherverbrauch, Anzahl der Anfragen, Fehlerraten usw., können an Kafka gemeldet werden. Überwachungsanwendungen können diese Metriken dann zur Erkennung von Anomalien, zur Alarmierung und zur Echtzeit-Visualisierung nutzen.

Fazit

Kafka ist ein Framework für die Stream-Verarbeitung, das es Anwendungen ermöglicht, große Mengen an Datensatzströmen schnell und zuverlässig zu veröffentlichen, zu konsumieren und zu verarbeiten. In Anbetracht der zunehmenden Verbreitung von Echtzeit-Datenstreaming ist es zu einem wichtigen Werkzeug für Entwickler von Datenanwendungen geworden.

In diesem Artikel haben wir uns mit den Gründen für den Einsatz von Kafka, den Kernkomponenten, den ersten Schritten, den erweiterten Funktionen und den realen Anwendungen beschäftigt. Wenn du dich weiterbilden willst, schau dir das an:

Lass dich für deine Traumrolle als Data Engineer zertifizieren

Unsere Zertifizierungsprogramme helfen dir, dich von anderen abzuheben und potenziellen Arbeitgebern zu beweisen, dass deine Fähigkeiten für den Job geeignet sind.

Hol Dir Deine Zertifizierung
Timeline mobile.png

Kurtis Pykes 's photo
Author
Kurtis Pykes
LinkedIn
Themen

Beginne deine Reise als Data Engineer noch heute!

Lernpfad

Data Engineer

40hrs hr
Gain in-demand skills to efficiently ingest, clean, manage data, and schedule and monitor pipelines, setting you apart in the data engineering field.
Siehe DetailsRight Arrow
Kurs Starten
Mehr anzeigenRight Arrow
Verwandt

Der Blog

Die 32 besten AWS-Interview-Fragen und Antworten für 2024

Ein kompletter Leitfaden zur Erkundung der grundlegenden, mittleren und fortgeschrittenen AWS-Interview-Fragen, zusammen mit Fragen, die auf realen Situationen basieren. Es deckt alle Bereiche ab und sorgt so für eine abgerundete Vorbereitungsstrategie.
Zoumana Keita 's photo

Zoumana Keita

30 Min.

Der Blog

Die 20 besten Snowflake-Interview-Fragen für alle Niveaus

Bist du gerade auf der Suche nach einem Job, der Snowflake nutzt? Bereite dich mit diesen 20 besten Snowflake-Interview-Fragen vor, damit du den Job bekommst!
Nisha Arya Ahmed's photo

Nisha Arya Ahmed

20 Min.

Der Blog

Lehrer/innen und Schüler/innen erhalten das Premium DataCamp kostenlos für ihre gesamte akademische Laufbahn

Keine Hacks, keine Tricks. Schüler/innen und Lehrer/innen, lest weiter, um zu erfahren, wie ihr die Datenerziehung, die euch zusteht, kostenlos bekommen könnt.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

4 Min.

Der Blog

Top 30 Generative KI Interview Fragen und Antworten für 2024

Dieser Blog bietet eine umfassende Sammlung von Fragen und Antworten zu generativen KI-Interviews, die von grundlegenden Konzepten bis hin zu fortgeschrittenen Themen reichen.
Hesam Sheikh Hassani's photo

Hesam Sheikh Hassani

15 Min.

Der Blog

2022-2023 DataCamp Classrooms Jahresbericht

Zu Beginn des neuen Schuljahres ist DataCamp Classrooms motivierter denn je, das Lernen mit Daten zu demokratisieren. In den letzten 12 Monaten sind über 7.650 neue Klassenzimmer hinzugekommen.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

8 Min.

Der Blog

Q2 2023 DataCamp Donates Digest

DataCamp Donates hat im zweiten Quartal 2023 über 20.000 Stipendien an unsere gemeinnützigen Partner vergeben. Erfahre, wie fleißige benachteiligte Lernende diese Chancen in lebensverändernde berufliche Erfolge verwandelt haben.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

See MoreSee More