Compartilhar via


Usar o Visual Studio Code com o Databricks Connect para Scala

Observação

Esse artigo aborda o Databricks Connect para Databricks Runtime 13.3 LTS e superior.

Este artigo aborda como usar o Databricks Connect para Scala com o Visual Studio Code. O Databricks Connect permite que você conecte IDEs populares, servidores de notebook e outros aplicativos personalizados aos clusters do Azure Databricks. Confira O que é o Databricks Connect?. Para obter a versão do Python deste artigo, consulte Usar o Visual Studio Code com o Databricks Connect para Python.

Observação

Antes de começar a usar o Databricks Connect, você deve configurar o cliente do Databricks Connect.

Para usar o Databricks Connect e o Visual Studio Code com a extensão Scala (Metals) para criar, executar e depurar um projeto Scala sbt de exemplo, siga estas instruções. Você também pode adaptar esse exemplo aos seus projetos Scala existentes.

  1. Verifique se o JDK (Java Development Kit) e o Scala estão instalados localmente. O Databricks recomenda que as versões locais do JDK e do Scala corresponda às versões do JDK e do Scala no cluster do Azure Databricks.

  2. Verifique se a versão mais recente do sbt está instalada localmente.

  3. Instale a extensão Scala (Metals) para Visual Studio Code.

  4. No Visual Studio Code, abra a pasta na qual você deseja criar seu projeto Scala (Pasta Abrir Arquivo>).

  5. Na barra lateral, clique no ícone de extensão Metals e clique em Novo projeto Scala.

  6. Na Paleta de Comandos, escolha o modelo chamado scala/hello-world.g8 e conclua as instruções na tela para concluir a criação do projeto Scala na pasta especificada.

  7. Adicionar configurações de compilação de projeto: na Exibição Explorer (Exibição > Explorer), abra o arquivo build.sbt na raiz do projeto, substitua o conteúdo do arquivo pelo seguinte e salve o arquivo:

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

    Substitua 2.12.15 pela versão instalada do Scala, que deve corresponder à versão incluída com a versão do Databricks Runtime em seu cluster.

    Substitua 14.0.0 pela versão da biblioteca do Databricks Connect que corresponde à versão do Databricks Runtime em seu cluster. Você pode encontrar os números de versão da biblioteca do Databricks Connect no repositório central do Maven.

  8. Adicionar código Scala: abra o arquivo src/main/scala/Main.scala relativo à raiz do projeto, substitua o conteúdo do arquivo pelo seguinte e salve o arquivo:

    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. Compile o projeto: execute o comando >Metais: importar o build da Paleta de Comandos.

  10. Adicionar configurações de execução do projeto: no modo de exibição Executar e Depurar (Exibir > Executar), clique no link rotulado como criar um arquivo launch.json.

  11. Na Paleta de Comandos, selecione Depurador Scala.

  12. Adicione a seguinte configuração de execução ao arquivo launch.json e salve o arquivo:

    {
      // 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. Execute o projeto: clique no ícone reproduzir (Iniciar Depuração) ao lado de Scala: executar classe principal. Na exibição Console de Depuração (Exibição > Console de Depuração), as cinco primeiras linhas da tabela samples.nyctaxi.trips são exibidas. Todo o código Python é executado localmente, enquanto todo o código Scala que envolve operações do DataFrame é executado no cluster no workspace remoto do Azure Databricks e as respostas de execução são enviadas de volta para o chamador local.

  14. Depurar o projeto: defina pontos de interrupção em seu código e clique no ícone de reprodução novamente. Todo o código Scala é depurado localmente, enquanto todo o código Scala continua a ser executado no cluster no workspace remoto do Azure Databricks. O código principal do mecanismo Spark não pode ser depurado diretamente do cliente.