Pular para o conteúdo principal

tutorial: execução do código de IntelliJ IDEA no classic compute

Este artigo demonstra como iniciar rapidamente o uso do Databricks Connect para Scala utilizando o plugin IntelliJ IDEA e o pluginScala.

Neste tutorial, crie um projeto em IntelliJ IDEA, instale Databricks Connect para Databricks Runtime 13.3 LTS e acima, e execute o código simples em compute em seu Databricks workspace de IntelliJ IDEA.

Requisitos

Para completar este tutorial, você deve atender aos seguintes requisitos:

  • Seu alvo Databricks workspace e o agrupamento devem atender aos requisitoscompute para Databricks Connect.

  • É necessário que o seu ID de agrupamento esteja disponível. Para obter o ID do seu cluster, em workspace, clique em “Compute” na barra lateral e, em seguida, clique no nome do seu cluster. Na barra de endereços do seu navegador, copie as sequências de caracteres entre clusters e configuration no URL.

  • O ambiente local e o compute atendem aos requisitos de versão de instalação do Databricks Connect para Scala.

  • O Java Development Kit (JDK) está instalado em sua máquina de desenvolvimento. Databricks Recomenda-se que a versão da instalação do JDK corresponda à versão do JDK no clustering do Databricks. Para encontrar a versão JDK do Databricks Runtime no seu clustering, consulte a seção Ambiente do sistema das notas sobre a versãoDatabricks Runtime ou a matriz de suporte de versões.

nota

Caso não possua um JDK instalado ou se houver várias instalações de JDK em sua máquina de desenvolvimento, é possível instalar ou selecionar um JDK específico posteriormente, na Etapa 1. A seleção de uma instalação de JDK inferior ou superior à versão do JDK em seu cluster pode produzir resultados inesperados ou o código pode não ser executado.

  • O IntelliJ IDEA está instalado. Este tutorial foi testado com o IntelliJ IDEA Community Edition 2023.3.6. Se você estiver utilizando uma versão ou edição diferente do IntelliJ IDEA, as instruções a seguir podem variar.

  • O plugin Scala para IntelliJ IDEA está instalado.

Etapa 1: Configurar a autenticação do Databricks

Este tutorial utiliza Databricks OAuth autenticação de usuário para máquina (U2M) e um perfil de configuração Databricks para autenticação com o seu Databricks workspace. Para usar um tipo de autenticação diferente, consulte Configurar propriedades de conexão.

A configuração da autenticação OAuth U2M requer a CLI do Databricks, da seguinte forma:

  1. Caso ainda não esteja instalado, instale o Databricks CLI da seguinte maneira:

Use o Homebrew para instalar a CLI do Databricks executando os dois comandos a seguir:

Bash
brew tap databricks/tap
brew install databricks
  1. Confirme se a CLI do Databricks está instalada executando o seguinte comando, que exibe a versão atual da CLI do Databricks instalada. Essa versão deve ser a 0.205.0 ou superior:

    Bash
    databricks -v
nota

Se você executar “ databricks ”, mas receber um erro como “ command not found: databricks”, ou se você executar “ databricks -v ” e um número de versão 0.18 ou inferior for listado, isso significa que sua máquina não consegue encontrar a versão correta do executável “ Databricks CLI ”. Para resolver isso, consulte Verificar a instalação da CLI.

Inicie a autenticação OAuth U2M, conforme a seguir:

  1. Utilize o comando Databricks CLI para iniciar o gerenciamento de tokens OAuth localmente, executando o seguinte comando para cada workspace alvo.

    No comando a seguir, substitua <workspace-url> pelo Databricks workspace URL da sua instância do, por https://1234567890123456.7.gcp.databricks.com exemplo,.

    Bash
    databricks auth login --configure-cluster --host <workspace-url>
  2. O Databricks CLI solicita que você salve as informações inseridas como um perfil de configuração Databricks. Pressione Enter para aceitar o nome de perfil sugerido ou insira o nome de um perfil novo ou existente. Qualquer perfil existente com o mesmo nome será substituído pelas informações que você inseriu. É possível utilizar perfis para alternar rapidamente o contexto de autenticação entre várias áreas de trabalho.

    databricks auth profilesPara obter uma lista de todos os perfis existentes, em um terminal separado ou prompt de comando, utilize o comando “ Databricks ” e execute o comando “ CLI ”. view Para alterar as configurações existentes de um perfil específico, execute o comando databricks auth env --profile <profile-name>.

  3. No navegador da web, conclua as instruções na tela para fazer log in no workspace do Databricks.

  4. Na lista de agrupamentos disponíveis que aparece no seu terminal ou prompt de comando, utilize as setes para selecionar o agrupamento de Databricks no seu workspace e, em seguida, pressione Enter. Também é possível digitar qualquer parte do nome de exibição do agrupamento para filtrar a lista de agrupamentos disponíveis.

  5. view Para obter o valor atual dos tokens OAuth de um perfil e o carimbo de data/hora de expiração dos tokens, execute um dos seguintes comandos:

    • databricks auth token --host <workspace-url>
    • databricks auth token -p <profile-name>
    • databricks auth token --host <workspace-url> -p <profile-name>

    Se você tiver vários perfis com o mesmo valor --host, talvez seja necessário especificar as opções --host e -p juntas para ajudar a CLI do Databricks a encontrar as informações de token OAuth correspondentes corretas.

Etapa 2: criar o projeto

  1. Iniciar o IntelliJ IDEA.

  2. No menu principal, clique em Arquivo > Novo Projeto > .

  3. Dê ao seu projeto um nome significativo.

  4. Para Localização , clique no ícone da pasta e siga as instruções na tela para especificar o caminho para o seu novo projeto Scala.

  5. Para Idioma , selecione Scala .

  6. Em Build system , clique em sbt .

  7. download Na lista suspensa JDK , selecione uma instalação existente do JDK em sua máquina de desenvolvimento que corresponda à versão do JDK em seu clustering ou selecione baixar JDK e siga as instruções na tela para baixar um JDK que corresponda à versão do JDK em seu clustering. Consulte os requisitos.

nota

Escolher uma instalação do JDK superior ouabaixo à versão do JDK em seus clusters pode produzir resultados inesperados ou seu código pode não ser executado.

  1. Na lista suspensa sbt , selecione a versão mais recente.

  2. Na lista suspensa Scala lista suspensa, selecione a versão do Scala que corresponde à versão do Scala no seu clustering. Consulte os requisitos.

nota

A escolha de uma versão do Scala que esteja abaixo ou acima da versão do Scala no seu clustering pode produzir resultados inesperados ou o seu código pode não ser executado.

  1. Certifique-se de que a caixa Fontes de download ao lado de Scala esteja marcada.

  2. Para o prefixo do pacote , insira algum valor de prefixo do pacote para as fontes do seu projeto, por exemplo, org.example.application.

  3. Verifique se a caixa Adicionar código de amostra está marcada.

  4. Clique em Criar .

Crie o projeto IntelliJ IDEA

Etapa 3: Adicionar o pacote Databricks Connect

  1. Com o novo projeto Scala aberto, na janela de ferramentas do projeto ( exiba a ferramenta >, selecione Windows e, em seguida, > Project ), abra o arquivo chamado build.sbt, em project-name > target .

  2. Adicione o seguinte código ao final do arquivo build.sbt, que declara a dependência do seu projeto de uma versão específica da biblioteca Databricks Connect para Scala, compatível com a versão Databricks Runtime do seu clustering:

    libraryDependencies += "com.databricks" % "databricks-connect" % "16.4.2"

    Substitua 16.4.2 pela versão da biblioteca Databricks Connect que corresponde à versão Databricks Runtime no seu cluster. Por exemplo, Databricks Connect 16.4.2 corresponde ao Databricks Runtime 16.4 LTS. Os números das versões da biblioteca Databricks Connect podem ser encontrados no repositório central do Maven.

  3. Clique no ícone Notificar alterações no sbt para atualizar seu projeto Scala com o novo local da biblioteca e a dependência.

  4. Espere até que o indicador de progresso sbt na parte inferior do IDE desapareça. O processo de carregamento do sbt pode levar alguns minutos para ser concluído.

Instale o pacote Databricks Connect

Etapa 4: adicionar código

  1. Na janela da ferramenta Projeto , abra o arquivo chamado Main.scala, em nome-do-projeto > src > main > Scala .

  2. Substitua qualquer código existente no arquivo pelo código a seguir e salve o arquivo, dependendo do nome do seu perfil de configuração.

    Se o perfil de configuração da Etapa 1 se chamar DEFAULT, substitua qualquer código existente no arquivo pelo código a seguir e salve o arquivo:

    Scala
    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()
    }
    }

    Se o seu perfil de configuração da Etapa 1 não tiver o nome DEFAULT, substitua qualquer código existente no arquivo pelo código a seguir. Substitua o espaço reservado <profile-name> pelo nome do seu perfil de configuração da Etapa 1 e salve o arquivo:

    Scala
    package org.example.application

    import com.databricks.connect.DatabricksSession
    import com.databricks.sdk.core.DatabricksConfig
    import org.apache.spark.sql.SparkSession

    object Main {
    def main(args: Array[String]): Unit = {
    val config = new DatabricksConfig().setProfile("<profile-name>")
    val spark = DatabricksSession.builder().sdkConfig(config).getOrCreate()
    val df = spark.read.table("samples.nyctaxi.trips")
    df.limit(5).show()
    }
    }

Passo 5: execute o código

  1. Inicie o cluster de destino no seu workspace remoto do Databricks.
  2. Após o início do agrupamento, no menu principal, clique em “Execução” e selecione “ > ” e “Executar”.
  3. Na janela da ferramenta de execução ( visualização > Ferramenta Windows > execução ), na guia Principal ( tab), as primeiras 5 linhas da tabela samples.nyctaxi.trips são exibidas.

Etapa 6: depurar o código

  1. Com o agrupamento de alvos ainda em execução, no código anterior, clique na margem ao lado de “ df.limit(5).show() ” para definir um ponto de interrupção.
  2. No menu principal, clique em “Execução” e selecione “ > ” e “Depurar 'Main'”.
  3. tab Na janela da ferramenta Depuração (exibir Ferramenta > Windows >
  4. Insira a expressão df.schema e clique em Avaliar para exibir o esquema do DataFrame.
  5. Na barra lateral da janela da ferramenta de depuração , clique no ícone da seta verde ( Retomar programa ).
  6. No painel Console , as primeiras 5 linhas da tabela samples.nyctaxi.trips são exibidas.

Depurar o projeto IntelliJ IDEA