Was ist databricks?

Databricks ist eine amerikanische Softwarefirma, die eine Apache Spark basierte Analyseplattform zur Verfügung stellt. Die Spark Analyseplattfrom 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.

Vorteile von databricks

Vorteile von databricks sind die einfache Einrichtung der Plattform (mit einem Klick), die Jobsteuerung, 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 großere ETL-Prozesse aus der On-Premise Welt abzulösen.

Databricks Plattform im Überblick (am Beispiel einer Fußballanalyse)
Databricks Plattform im Überblick (am Beispiel einer Fußballanalyse)

Historisch wurde die Big Data Plattform databricks zuerst 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 databricks 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)

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, so dass 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 Verlgeich

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:

DatabricksAWS EMR
Freiheitgeringhoch
OberflächeausgeprägtSpark UI & Jupyter
Komplexitätgeringhoch
Preis$$$$$

Was kostet Databricks?

Die Kosten von databricks 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

Premiumprodukt ist der Anbieter nicht ganz günstig und 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.

Databricks integriert MLflow in die Oberfläche, was das Management von ML vereinfacht.
Databricks integriert MLflow in die Oberfläche, was das Management von ML vereinfacht.

Ihr Ansprechparnter: Laurenz Wuttke

Wir entwickeln Künstliche Intelligenz, mit der Sie mehr aus Ihren Kundendaten machen – für wachsende Umsätze und eine nachhaltig hohe Kundenzufriedenheit.

Auch interessant für Sie