BLOG

Wie Sie in 5 Schritten Databricks Connect installieren

19.11.2019 Benjamin Weber

Voraussetzungen

Sie dürfen keine Spark-Installationen auf Ihrem PC installiert haben. Falls Sie Python schon nutzen, lohnt sich folgender Befehl:

  1. pip uninstall pyspark

Schritt 1: Konfigurieren Sie Ihr Cluster

In den Advanced Options Ihres Clusters finden Sie die Spark-Config. Hier hinterlegen Sie die folgenden beiden Zeilen:

Cluster Konfiguration Spark-Config

Schritt 2: Sammeln Sie die notwendigen Informationen

Tragen Sie die Infos zusammen, die wir in Schritt 3 für die Einrichtung benötigen.

  1. Der Host. Dieser bildet den Beginn der Databricks-URL, z. B. https://westeurope.azuredatabricks.net
  2. Die Organization ID. Auch diese bekommen Sie aus der URL. Es ist die Zahlenfolge, die hinter „o=“ zu finden ist, z. B. 5684337135249119
  3. Die Cluster ID. Im Cluster unter Advanced Options -> Tags steht die Cluster ID, z. B. 0123-062140-tines951
  4. Den Token. Diesen müssen Sie in Databricks generieren. Dazu gibt es auf der Website eine Anleitung. (Vorsicht: Groß- und Kleinschreibung ist wichtig!)
  5. Den Port. Bei Azure ist dieser immer 8787

Schritt 3: Erstellen Sie ein Virtual Environment und richten Sie Databricks Connect ein

Zunächst brauchen wir eine virtuelle Python-Umgebung. Diese muss zwingend dieselbe Python-Version wie das Cluster haben. Stand Oktober 2019 ist dies meistens Python 3.5.

Öffne die Anaconda Prompt:

Anaconda Prompt

 

Erstellen Sie eine virtuelle Umgebung:

  1. conda create –name bricksEnv python=3.5

Anaconda Virtuelle Umgebung

Aktivieren Sie die Umgebung:

  1. conda activate bricksEnv

Installieren Sie Databricks Connect:

Wichtig: Die Version von Databricks Connect (z. B. 5.5.) muss der Version Ihres Clusters entsprechen!

  1. pip install databricks-connect==5.5.*

Richten Sie Databricks Connect mit den Informationen aus Schritt 2 ein:

  1. Databricks-connect configure

Teste die Verbindung

  1. Databricks-connect test

Nun sollten Sie folgende Fehlermeldung erhalten. Diese beheben wir in Schritt 4.

Fehlermeldung

Schritt 4: Java 8 installieren

Databricks Connect funktioniert nur mit Java 8. Laden Sie also die Java 8-Runtime von der Oracle Website. (Registrierung ist erforderlich)
Wichtig: Installieren Sie Java nicht im Standard-Pfad, sondern unter C:\Java

Zielordner ändern

Starten Sie nun Powershell als Administrator.

Powershell als Administrator öffnen

Nun führen Sie folgenden Befehl aus:

  1. [Environment]::SetEnvironmentVariable(„JAVA_HOME“, „C:\Java“, „Machine“)

Starten Sie nun die Anaconda Prompt neu (sonst wird die neue Umgebungsvariable nicht erkannt) und führen Sie

  1. databricks-connect test

erneut aus. Die Java-Version macht nun keine Probleme mehr.

Java Version fehlerfrei

Stattdessen tritt ein neuer Fehler auf:

Neue Fehlermeldung

Diesen beheben wir in Schritt 5.

Schritt 5: Winutils installieren

Starten Sie Powershell wieder als Administrator und führen Sie folgende zwei Befehle aus:

  1. New-Item -Path „C:\Hadoop\Bin“ -ItemType Directory -Force
  2. [Environment]::SetEnvironmentVariable(„HADOOP_HOME“, „C:\Hadoop“, „Machine“)

Laden Sie nun die Winutils-Exce von Github herunter.

Winutils Exce

Legen Sie die Datei nach dem Download in den Ordner „C:\Hadoop\Bin\“.

Starten Sie anschließend die Anaconda Prompt neu und führe.

  1. databricks-connect test

aus. Diesmal sollte der Test erfolgreich durchlaufen.

All tests passed

Geschafft!

Jetzt können Sie Python-Befehle von Visual Studio aus gegen Ihr Databricks Cluster abfeuern. Achten Sie aber darauf, dass Sie im richtigen Environment sind:

Richtiges Environment

Am Anfang jedes Python Files müssen Sie die Spark Session einfangen. Wie das geht, sehen Sie in folgendem Beispielcode:

  1. from pyspark.sql import SparkSession
  2. spark = SparkSession.builder.getOrCreate()
  3. diamonds = spark.read.csv(„/databricks-datasets/Rdatasets/data-001/csv/ggplot2/diamonds.csv“, header=“true“, inferSchema=“true“)
  4. diamonds.show()

Das Ergebnis sieht etwa so aus:

Ergebnis Spark Session

Ich hoffe, ich konnte Ihnen mit diesem Tutorial weiterhelfen. Falls Sie noch Fragen haben, schreiben Sie gerne einen Kommentar. Eine genauere Erklärung finden sie zudem in meinem Video:

Your email address will not be published. Required fields are marked *

Training

Einstieg in die Dienste der Azure Cloud

Sind Sie gerüstet für den digitalen Wandel? Nutzen Sie die Dienste der Microsoft Azure Cloud, um mit Daten Ihr Wachstum für die Zukunft sicherzustellen. Wir zeigen Ihnen, wie Sie den Einstieg schaffen und Ihre Cloud-Umgebung auf die Anforderungen Ihres Geschäftes ausrichten können.

Join #teamoraylispeople

Gestalte mit uns
die Welt der Daten