Was Ist Ein Cluster?
Swipe um das Menü anzuzeigen
In Databricks ist Compute (oder ein Cluster) eine Gruppe von Rechenressourcen und Konfigurationen, auf denen Datenengineering-, Data-Science- und Datenanalyse-Workloads ausgeführt werden. Es kann als der "Motor" betrachtet werden, der Notebooks und Abfragen antreibt.
Bevor Sie auf "Erstellen" klicken, ist es wichtig zu verstehen, was im Hintergrund passiert. Im vorherigen Abschnitt wurde der Cluster als "Maschinenraum" bezeichnet. Aber was bedeutet das eigentlich in Bezug auf die Hardware?
Wenn Sie eine Standardanwendung wie Excel auf Ihrem Laptop verwenden, sind Sie durch die Leistung dieses einzelnen Computers begrenzt. Wenn Sie versuchen, eine Datei mit 100 Millionen Zeilen zu öffnen, kann es sein, dass Excel abstürzt, weil der "Arbeitsspeicher" Ihres Laptops einfach nicht ausreicht. Databricks löst dieses Problem durch verteiltes Rechnen.
Die Restaurant-Analogie
Um zu verstehen, wie ein Cluster funktioniert, stellen Sie sich eine geschäftige Restaurantküche vor:
- Der Cluster ist das gesamte Küchenpersonal;
- Die Nodes sind die einzelnen Köche;
- CPU (Central Processing Unit) ist die Geschwindigkeit des Kochs. Ein Koch mit hoher CPU kann Gemüse sehr schnell schneiden;
- RAM (Memory) ist die Arbeitsfläche des Kochs. Wenn ein Koch nur eine kleine Arbeitsfläche hat, kann er nur an einem kleinen Teller gleichzeitig arbeiten. Mit einer großen Arbeitsfläche (viel RAM) kann er alle Zutaten für ein komplexes Festmahl gleichzeitig auslegen.
In einem Databricks-Cluster gibt es einen Driver Node (den Chefkoch), der die Arbeit organisiert, und Worker Nodes (die Linienköche), die die eigentliche Datenverarbeitung übernehmen.
Wichtige Begriffe in der Benutzeroberfläche
Beim Erstellen eines Clusters erscheinen einige technische Begriffe:
- Worker-Typ: Auswahl der „Größe“ der Köche. Benötigen Sie einen Koch mit viel Arbeitsfläche (Memory Optimized) oder einen besonders schnellen Koch (Compute Optimized)?
- Runtime-Version: das „Ausführungsumgebung“ Ihres Clusters. Enthält die Version von Apache Spark und Python, die Ihr Code verwendet. In der Regel empfiehlt sich die neueste „LTS“ (Long Term Support) Version.
- Knoten: entspricht der Anzahl der Köche in einer Küche. Für umfangreiche "Big Data"-Aufgaben werden möglicherweise 10 oder 20 Arbeitskräfte benötigt. Für diesen Kurs und das persönliche Lernen wird häufig der Einzelknotenmodus verwendet – das bedeutet, ein einzelner Koch erledigt alle Aufgaben – um die Kosten gering zu halten;
- Automatische Beendigung: ermöglicht die Angabe der Zeit in Minuten, nach der der Cluster automatisch beendet wird. Dies ist eine effektive Möglichkeit, Kosten zu sparen – auch ein inaktiver Cluster wird sowohl von Databricks als auch vom Cloud-Anbieter abgerechnet. Daher empfiehlt es sich, diese Einstellung als Standard zu verwenden. In der Analogie entspricht dies den festgelegten Arbeitszeiten der Köche – irgendwann sollten sie nach Hause gehen dürfen!
- Tags: die Köche arbeiten mit vielen Materialien und Rezepten und sollten den Verbrauch pro Gericht oder pro Kunde nachvollziehen können; genau das ermöglichen Tags in Clustern. Sie erlauben die Vergabe von Labels, anhand derer später Nutzungszeiten und Kosten abgefragt werden können. Eine sehr hilfreiche Funktion für die Metadatenanalyse.
Warum Skalierung wichtig ist
Der Vorteil der Cloud besteht darin, dass Sie diese „Köche“ nicht kaufen müssen. Sie mieten sie sekundengenau. Wenn Sie eine große Aufgabe haben, die in 5 Minuten erledigt sein muss, können Sie 100 Köche (Nodes) einstellen, die Arbeit erledigen lassen und sie dann sofort „entlassen“, sodass Sie nicht weiter bezahlen. Dies ist das Kernprinzip der Effizienz von Databricks.
1. Was stellt RAM (Speicher) in unserem Küchenbeispiel dar?
2. Welche Rolle übernimmt der „Driver Node“ in einem Databricks-Cluster?
3. Warum sollte ein Student für Übungszwecke einen "Single Node"-Cluster wählen?
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen