Use o IntelliJ IDEA 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 e IntelliJ IDEA com o plug-in Scala. O Databricks Connect permite que você conecte IDEs populares, servidores de notebook e outros aplicativos personalizados aos clusters do Azure Databricks. Consulte O que é o Databricks Connect?.
Observação
Antes de começar a utilizar o Databricks Connect, você deve configurar o cliente Databricks Connect.
Para usar o Databricks Connect e o IntelliJ IDEA com o plug-in Scala para criar, executar e depurar um projeto scala de exemplo sbt
, siga estas instruções. Essas instruções foram testadas com o IntelliJ IDEA Community Edition 2023.3.6. Se você usar uma versão ou edição diferente do IntelliJ IDEA, as instruções a seguir poderão variar.
Verifique se o JDK (Java Development Kit) está instalado localmente. O Databricks recomenda que sua versão local do JDK corresponda à versão do JDK em seu cluster do Azure Databricks.
Inicie o IntelliJ IDEA.
Clique em Arquivo > Novo > projeto.
Dê um Nome significativo aoseu projeto.
Em Localização, clique no ícone de pasta e conclua as instruções na tela para especificar o caminho para o novo projeto do Scala.
Para Linguagem, clique em Scala.
Para Sistema de compilação, clique em sbt.
Na lista suspensa do JDK, selecione uma instalação existente do JDK em seu computador de desenvolvimento que corresponda à versão do JDK em seu cluster ou selecione Baixar JDK e siga as instruções na tela para baixar um JDK que corresponda à versão do JDK em seu cluster.
Observação
Escolher uma instalação do JDK acima ou abaixo da versão do JDK em seu cluster pode produzir resultados inesperados ou seu código pode não ser executado.
Na lista suspensa do sbt, selecione a versão mais recente.
Na lista suspensa Scala, selecione a versão do Scala que corresponde à versão do Scala em seu cluster.
Observação
Escolher uma versão do Scala abaixo ou acima da versão do Scala em seu cluster pode produzir resultados inesperados ou seu código pode não ser executado.
Para o Prefixo do pacote, insira algum valor de prefixo de pacote para as fontes do projeto, por exemplo
org.example.application
.Verifique se a caixa Adicionar código de exemplo está selecionada.
Clique em Criar.
Adicione o pacote do Databricks Connect: com seu novo projeto Scala aberto, na janela de ferramentas do seu Projeto (Exibição > Janela de ferramentas > Projeto), abra o arquivo chamado
build.sbt
, no destino project-name>.Adicione o seguinte código ao final do arquivo
build.sbt
, que declara a dependência do projeto em uma versão específica da biblioteca do Databricks Connect para Scala:libraryDependencies += "com.databricks" % "databricks-connect" % "14.3.1"
Substitua
14.3.1
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.Clique no ícone de notificação de alterações de sbt de carga para atualizar o projeto Scala com o novo local e a dependência da biblioteca.
Aguarde até que o indicador de progresso
sbt
na parte inferior do IDE desapareça. O processo de carregamentosbt
pode levar alguns minutos para ser concluído.Adicione código: na janela de ferramentas do Projeto, abra o arquivo nomeado
Main.scala
, em project-name> src > main > scala.Substitua qualquer código existente no arquivo pelo código a seguir e salve o arquivo:
package org.example.application import com.databricks.connect.DatabricksSession import org.apache.spark.sql.SparkSession object Main { def main(args: Array[String]): Unit = { val spark = DatabricksSession.builder().remote().getOrCreate() val df = spark.read.table("samples.nyctaxi.trips") df.limit(5).show() } }
Execute o código: inicie o cluster de destino no workspace remoto do Azure Databricks.
Depois que o cluster for iniciado, no menu principal, clique em Executar > Executar ‘Main’.
Na janela de ferramentas Executar (Exibição > Janela de ferramentas > Executar), na guia Principal, 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.Depure o código: inicie o cluster de destino no workspace remoto do Azure Databricks, se ele ainda não estiver em execução.
No código anterior, clique na sarjeta ao lado de para
df.limit(5).show()
definir um ponto de interrupção.Depois que o cluster for iniciado, no menu principal, clique em Executar > Depurar ‘Main’.
Na janela de ferramentas Depurar (Exibição > Ferramenta do Windows > Depurar ), na guia Console, clique no ícone calculadora (Avaliar Expressão).
Insira a expressão
df.schema
e clique em Avaliar para mostrar o esquema do DataFrame.Na barra lateral da janela Ferramenta de Depuração, clique no ícone de seta verde (Retomar Programa).
No painel Console, as cinco primeiras linhas da tabela
samples.nyctaxi.trips
são exibidas. Todo o código Scala é 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.