Udostępnij za pośrednictwem


Używanie programu Visual Studio Code z usługą Databricks Connect dla języka Scala

Notatka

W tym artykule opisano usługę Databricks Connect dla środowiska Databricks Runtime 13.3 LTS lub nowszego.

W tym artykule opisano sposób używania programu Databricks Connect dla języka Scala z programu Visual Studio Code. Usługa Databricks Connect umożliwia łączenie popularnych środowisk IDE, serwerów notesów i innych aplikacji niestandardowych z klastrami usługi Azure Databricks. Zobacz Co to jest usługa Databricks Connect?. Aby zapoznać się z wersją tego artykułu w języku Python, zobacz Use Visual Studio Code with Databricks Connect for Python(Używanie programu Visual Studio Code z programem Databricks Connect dla języka Python).

Notatka

Przed rozpoczęciem korzystania z usługi Databricks Connect należy skonfigurować klienta usługi Databricks Connect.

Aby używać programu Databricks Connect i Visual Studio Code z rozszerzeniem Scala (Metale), aby utworzyć, uruchomić i debugować przykładowy projekt Scala , postępuj zgodnie z tymi instrukcjami. Możesz również dostosować ten przykład do istniejących projektów Scala.

  1. Upewnij się, że zestaw Java Development Kit (JDK) i język Scala są zainstalowane lokalnie. Usługa Databricks zaleca, aby lokalne zestawy JDK i Scala odpowiadały wersji zestawu JDK i języka Scala w klastrze usługi Azure Databricks.

  2. Upewnij się, że zainstalowano lokalnie najnowszą wersję sbt.

  3. Zainstaluj rozszerzenie Scala (Metals) dla programu Visual Studio Code.

  4. W programie Visual Studio Code otwórz folder, w którym chcesz utworzyć projekt Scala (Plik > Otwórz folder).

  5. Na pasku bocznym kliknij ikonę rozszerzenia Metals, a następnie kliknij Nowy projekt Scala.

  6. W palecie poleceń wybierz szablon o nazwie scala/hello-world.g8i wypełnij instrukcje na ekranie, aby zakończyć tworzenie projektu Scala w określonym folderze.

  7. Dodaj ustawienia kompilacji projektu: w widoku Eksploratora (View Explorer) otwórz plik z katalogu głównego projektu, zastąp zawartość pliku następującym kodem i zapisz plik:

    scalaVersion := "2.12.15"
    
    libraryDependencies += "com.databricks" % "databricks-connect" % "14.0.0"
    

    Zastąp 2.12.15 zainstalowaną wersją języka Scala, która powinna odpowiadać wersji dołączonej do wersji środowiska Databricks Runtime w klastrze.

    Zastąp 14.0.0 wersją biblioteki Databricks Connect zgodną z wersją środowiska Databricks Runtime w klastrze. Numery wersji biblioteki programu Databricks Connect można znaleźć w repozytorium centralnym programu Maven .

  8. Dodaj kod Scala: Otwórz plik src/main/scala/Main.scala znajdujący się względem katalogu głównego projektu, zastąp zawartość pliku następującym kodem i zapisz plik.

    import com.databricks.connect.DatabricksSession
    import org.apache.spark.sql.SparkSession
    
    object Main extends App {
      val spark = DatabricksSession.builder().remote().getOrCreate()
      val df = spark.read.table("samples.nyctaxi.trips")
      df.limit(5).show()
    }
    
  9. Skompiluj projekt: wykonaj polecenie >Metals: zaimportuj kompilację z Palety Poleceń.

  10. Dodaj ustawienia uruchamiania projektu: w widoku Uruchom & Debugowanie (Widok > Uruchom), kliknij link o nazwie utwórz plik launch.json.

  11. Wpalety poleceń wybierz pozycję Debuger scala.

  12. Dodaj następującą konfigurację przebiegu do pliku launch.json, a następnie zapisz plik:

    {
      // Use IntelliSense to learn about possible attributes.
      // Hover to view descriptions of existing attributes.
      // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
      "version": "0.2.0",
      "configurations": [
        {
          "type": "scala",
          "request": "launch",
          "name": "Scala: Run main class",
          "mainClass": "Main",
          "args": [],
          "jvmOptions": []
        }
      ]
    }
    
  13. Uruchom projekt: kliknij ikonę odtwarzania (Rozpocznij debugowanie) obok opcji Scala: Uruchom klasę główną. W widoku konsoli debugowania (View Debug Console) zostanie wyświetlonych pierwszych 5 wierszy tabeli . Cały kod Scala działa lokalnie, podczas gdy cały kod Scala obejmujący operacje ramki danych jest uruchamiany w klastrze w zdalnym obszarze roboczym usługi Azure Databricks i uruchamiane odpowiedzi są wysyłane z powrotem do lokalnego obiektu wywołującego.

  14. Debuguj projekt: ustaw punkty przerwania w kodzie, a następnie ponownie kliknij ikonę odtwarzania. Cały kod Scala jest debugowany lokalnie, a cały kod Scala nadal działa w klastrze w zdalnym obszarze roboczym usługi Azure Databricks. Nie można bezpośrednio z klienta debugować podstawowego kodu silnika Spark.