Databricks Connect for Python

Observação

Este artigo abrange o Databricks Connect para Databricks Runtime 13.3 LTS e acima.

Este artigo demonstra como começar a usar rapidamente o Databricks Connect usando Python e PyCharm.

O Databricks Connect permite que você conecte IDEs populares, como PyCharm, servidores de notebook e outros aplicativos personalizados aos clusters do Databricks. Consulte O que é o Databricks Connect?.

Tutorial

Para pular este tutorial e usar um IDE diferente, consulte Próximos passos.

Requisitos

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

  • Seu workspace do Databricks de destino deve ter o Unity Catalog habilitado.

  • Você tem o PyCharm instalado. Este tutorial foi testado com o PyCharm Community Edition 2023.3.5. Se você usar uma versão ou edição diferente do PyCharm, as instruções a seguir podem variar.

  • Seu compute atende aos requisitos de instalação do Databricks Connect for Python.

  • Se você estiver usando o compute clássico, precisará da ID do cluster. Para obter o ID do cluster, no seu workspace, clique em Compute na barra lateral e, em seguida, clique no nome do cluster. Na barra de endereços do navegador da Web, copie a sequência de caracteres entre clusters e configuration no URL.

Etapa 1: Configurar autenticação do Databricks

Este tutorial usa a Databricks OAuth autenticação user-to-machine (U2M) e um Databricks perfil de configuração para autenticação no Databricks workspace seu . 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 da Databricks. Para obter informações sobre a instalação do Databricks CLI, consulte Instalar ou atualizar o Databricks CLI .

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

  1. Use a CLI do Databricks para iniciar o gerenciamento de tokens OAuth localmente executando o seguinte comando para cada workspace de destino.

    No comando a seguir, substitua <workspace-url> pela URL da instância do seu workspace do Databricks, por exemplo https://dbc-a1b2345c-d6e7.cloud.databricks.com.

    databricks auth login --configure-cluster --host <workspace-url>
    

    Como alternativa, se o senhor quiser usar o Databricks serverless compute com o DB Connect, siga os passos em Configurar uma conexão com o serverless compute .

  2. O site Databricks CLI solicita que o senhor salve as informações inseridas como um Databricks perfil de configuração. 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 é substituído pelas informações que o senhor inseriu. O senhor pode usar perfis para alternar rapidamente o contexto de autenticação em vários espaços de trabalho.

    Para obter uma lista de todos os perfis existentes, em um terminal ou prompt de comando separado, use a CLI do Databricks para executar o comando databricks auth profiles. Para visualizar 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 login no workspace do Databricks.

  4. Na lista de clusters disponíveis que aparece no seu terminal ou prompt de comando, use as teclas de seta para cima e para baixo para selecionar o cluster Databricks alvo no seu workspace, e então pressione Enter. Você também pode digitar qualquer parte do nome de exibição do cluster para filtrar a lista de clusters disponíveis.

  5. Para visualizar o valor atual do token OAuth de um perfil e a data e hora de expiração futura do token, 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 de --host , talvez seja necessário especificar as opções de --host e -p juntas para ajudar a CLI do Databricks a encontrar as informações corretas de token OAuth correspondentes.

Passo 2: Criar o projeto

  1. Inicie o PyCharm.

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

  3. Na caixa de diálogo Novo projeto, clique em Python puro.

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

  5. Deixe Criar um script de boas-vindas main.py selecionado.

  6. Para Tipo de interpretador, clique em venv do projeto.

  7. Expanda a versão do Python e use o ícone de pasta ou a lista suspensa para especificar o caminho para o interpretador do Python a partir dos requisitos anteriores.

  8. Clique em Criar.

Crie o projeto PyCharm

Passo 3: Adicionar o pacote Databricks Connect

  1. No menu principal do PyCharm, clique em Exibir > Janelas de ferramentas > Pacotes Python.

  2. Na caixa de pesquisa, insira databricks-connect.

  3. Na lista de repositórios do PyPI, clique em databricks-connect.

  4. Na lista suspensa mais recente do painel de resultados, selecione a versão que corresponde à versão do Databricks Runtime de seu cluster. Por exemplo, se seu cluster tiver o Databricks Runtime 14.3 instalado, selecione 14.3.1.

  5. Clique em Instalar pacote.

  6. Após a instalação do pacote, você pode fechar a janela Pacotes Python.

Instale o pacote Databricks Connect

Passo 4: adicionar código

  1. Na janela de ferramentas Projeto, clique com o botão direito do mouse na pasta raiz do projeto e depois em Novo > Arquivo Python.

  2. Digite main.py e clique duas vezes no arquivo Python.

  3. Digite o código a seguir no arquivo e salve-o, dependendo do nome do seu perfil de configuração.

    Se o seu perfil de configuração do Passo 1 for denominado DEFAULT, insira o seguinte código no arquivo e salve-o:

    from databricks.connect import DatabricksSession
    
    spark = DatabricksSession.builder.getOrCreate()
    
    df = spark.read.table("samples.nyctaxi.trips")
    df.show(5)
    

    Se o seu perfil de configuração do Passo 1 não for nomeado DEFAULT, insira o código a seguir no arquivo. Substitua o placeholder <profile-name> pelo nome do seu perfil de configuração do passo 1 e salve o arquivo:

    from databricks.connect import DatabricksSession
    
    spark = DatabricksSession.builder.profile("<profile-name>").getOrCreate()
    
    df = spark.read.table("samples.nyctaxi.trips")
    df.show(5)
    

Passo 5: execução do código

  1. Inicie o cluster de destino no seu workspace remoto do Databricks.

  2. Depois que o cluster for iniciado, no menu principal, clique em Executar > Executar "principal".

  3. Na janela da ferramenta Execução (Exibir > Janelas de ferramentas > Execução), na guia Execução, no painel principal, são exibidas as cinco primeiras linhas do samples.nyctaxi.trips.

Passo 6: depuração do código

  1. Com o cluster ainda em execução, no código anterior, clique na medianiz ao lado de df.show(5) para definir um ponto de interrupção.

  2. No menu principal, clique em Executar > Depurar "principal".

  3. Na janela da ferramento Depuração (Exibir > Janelas de ferramentas > Depuração), na guia Depurador, no painel de Variáveis, expanda os nós das variáveis df e spark para procurar informações sobre as variáveis df e spark do código.

  4. Na barra lateral da janela da ferramenta Depurar, clique no ícone de seta verde (Retomar programa).

  5. Na guia Depurador, no painel Console, as cinco primeiras linhas do samples.nyctaxi.trips são exibidas.

Depure o projeto PyCharm

Próximos passos

Para saber mais sobre o Databricks Connect, consulte artigos como estes: