Databricks ist eine amerikanische Softwarefirma, die eine auf Apache Spark basierte Analyseplattform zur Verfügung stellt. Die Spark Analyseplattform wird auf den beiden größten Clouddienstanbietern: Microsoft Azure und Amazon AWS angeboten. Databricks wurde von den Entwicklern von Spark gegründet und konzentriert sich auf die Monetarisierung von dem Open Source Big Data System Apache Spark.
Steigen wir direkt ein:
- Vorteile von Databricks
- Databricks Umgebung
- AWS EMR und Databricks im Vergleich
- Was kostet Databricks?
- MLflow Integration
Vorteile von Databricks
Vorteile von Databricks sind die einfache Einrichtung der Plattform (mit einem Klick), die Jobsteuerung und die Notebook-Umgebung (ähnlich wie Jupiter-Notebook). Die interaktive Zusammenarbeit auf der Analyseplattform ermöglicht eine enge Verzahnung von Data Scientist und Data Engineering Abteilungen. Neben dem Fokus auf Zusammenarbeit, bietet die Analyseplattform den Zugriff auf unterschiedliche Datenquellen wie beispielsweise Apache Kafka, Azure Blog Storage oder Amazon S3.
Databricks ist rund um Apache Spark entwickelt worden und bietet somit alle Funktionen, die Apache Spark so stark machen. Daher ist es ideal, um beispielsweise große Data Lakes aufzubauen, Echtzeit Streaming Anwendungsfälle umzusetzen oder größere ETL-Prozesse aus der On-Premise Welt abzulösen.
Historisch wurde die Big Data Plattform Databricks erstmals auf Amazon AWS herausgebracht, allerdings scheint mit dem strategischen Investment (rund. 250 Mio. Dollar) von Microsoft der Fokus stärker auf dem Clouddienst Microsoft Azure zu liegen.
Databricks Umgebung
Databricks basiert auf den in Apache Spark verfügbaren Funktionen und übernimmt die komplette Verwaltung des Spark-Clusters. Folgende Aufgaben werden durch die Cloudplattform abgenommen:
- Verwaltung von Spark-Cluster (Rest-API zur Steuerung)
- Interaktiver Arbeitsbereich im Notebookformat (Analyse, Anzeige und Visualisierung)
- Jobsteuerung und Verwaltung vom Apache Spark Programmen (Machine Learning, Spark ETLs)
Download:
KI Use Cases für Marketing und Vertrieb
- Mehr Umsatz durch gezielte Vorhersagen
- Durch Automatisierung mehr Zeit gewinnen
- Budget und Ressourcen gezielt einsetzen
Jetzt eintragen und spannende KI-Projektbeispiele aus der Praxis erhalten:
Mit der Anmeldung stimmen Sie unserer Datenschutzerklärung zu.
Verwaltung von Apache Spark-Cluster in der Cloud
Databricks stellt in der Cloud eine sichere Produktionsumgebung für Apache Spark zur Verfügung. Folgende Möglichkeiten bietet die Plattform:
- Clustererstellung in Sekunden
- Steuerung von Apache Spark-Clustern über ein Rest-API
- Automatische dynamische Skalierung von laufenden Spark-Clustern (wenn mehr Last anfällt)
- Komplette Spark Data Source API für komplexe Datenaufbereitung
- Neuste Spark-Versionen
Interaktiver Arbeitsbereich für Zusammenarbeit
Die zusammenarbeitsorientierte Arbeitsumgebung von Databricks ermöglicht eine sehr enge Zusammenarbeit von Data Science und Data Engineering-Abteilungen. Der interaktive Arbeitsbereich von databricks bietet:
- Möglichkeiten zur Entwicklung von komplexer Datenverarbeitung (ETL-Prozesse, Streaming und Machine Learning)
- Dokumentation von Notebooks, sodass Ergebnisse nachvollzogen werden können
- Einfache und schnelle Visualisierungen
- Erstellung von interaktiven Dashboards
- Schnelle Entwicklung von Prototypen
- Steuerung von Jobs und klare Übersicht über fertige Prozesse
AWS EMR und Databricks im Vergleich
Der große Konkurrent ist Amazon mit dem Dienst Elastic Map Reduce (kurz EMR), welcher ähnliche Funktionen bereitstellt, allerdings keine wirkliche grafische Oberfläche zur Verfügung stellt. Des Weiteren bietet EMR etwas mehr Systeme aus dem Big Data Umfeld an und ist nicht nur auf Apache Spark fokussiert. Folgend stelle ich die größten Unterschiede der beiden Plattformen dar:
Databricks | AWS EMR | |
Freiheit | gering | hoch |
Oberfläche | ausgeprägt | Spark UI & Jupyter |
Komplexität | gering | hoch |
Preis | $$$ | $$ |
Was kostet Databricks?
Die laufenden Kosten hängen von der Nutzung ab (rein nutzungsbasiertes Abrechnungsmodell). Die Kosten setzen sich dabei aus den Serverkosten, die beim Cloudanbieter (AWS oder Microsoft) anfallen, und Nutzungskosten: Databricks Units (DBUs) zusammen. Die Anzahl der abgerechneten DBUs ist abhängig von der Server- & Clustergröße sowie der genutzten Laufzeit.
Folgende Berechnungsformel kann genutzt werden:
Kosten = (Anzahl Server * DBU) * h/Nutzung + (Anzahl Server * Instanzpreise) * h/Nutzung
Mit dem Premiumprodukt ist der Anbieter nicht ganz günstig, sondern eher teurer als die Konkurrenz (z.B. AWS EMR Cluster).
Preise für AWS und Azure:
– Databricks Light = $0.07/DBU
– Data Engineering = $0.15/DBU
– Data Analytics = $0.40/DBU
MLflow Integration
Die Machine Learning Plattform MLflow, die ebenfalls von Databricks in einer Open Source entwickelt wird, komplettiert die Plattform und fügt fehlende Funktionen für das Management von Machine Learning Algorithmen hinzu. Wer mehr über MLflow erfahren möchte, kann das in meinem Artikel zu MLflow erfahren.