Partilhar via


Databricks Connect para R

Nota

Este artigo aborda a sparklyr integração com o Databricks Connect for Databricks Runtime 13.0 e superior. Esta integração não é fornecida pela Databricks nem suportada diretamente pela Databricks.

Para dúvidas, vá para a Comunidade Posit.

Para relatar problemas, vá para a seção Problemas do sparklyr repositório no GitHub.

Para obter mais informações, consulte Databricks Connect v2 na sparklyr documentação.

Este artigo demonstra como começar rapidamente com o Databricks Connect usando R, sparklyre RStudio Desktop.

O Databricks Connect permite conectar IDEs populares, como RStudio Desktop, servidores de notebook e outros aplicativos personalizados a clusters do Azure Databricks. Consulte O que é Databricks Connect?.

Tutorial

Este tutorial usa RStudio Desktop e Python 3.10. Se você ainda não os tiver instalados, instale o R e o RStudio Desktop e o Python 3.10.

Para obter informações complementares sobre este tutorial, consulte a seção "Databricks Connect" do Spark Connect e Databricks Connect v2 no sparklyr site.

Requisitos

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

  • Seu espaço de trabalho e cluster do Azure Databricks de destino devem atender aos requisitos de configuração do Cluster para Databricks Connect.
  • Você deve ter seu ID de cluster disponível. Para obter a ID do cluster, no espaço de trabalho, clique em Computação na barra lateral e, em seguida, clique no nome do cluster. Na barra de endereço do navegador da Web, copie a cadeia de caracteres entre clusters e configuration no URL.

Etapa 1: Criar um token de acesso pessoal

Nota

Atualmente, a autenticação do Databricks Connect for R suporta apenas tokens de acesso pessoal do Azure Databricks.

Este tutorial usa a autenticação de token de acesso pessoal do Azure Databricks para autenticação com seu espaço de trabalho do Azure Databricks.

Se já tiver um token de acesso pessoal do Azure Databricks, avance para o Passo 2. Se não tiver a certeza se já tem um token de acesso pessoal do Azure Databricks, pode seguir este passo sem afetar quaisquer outros tokens de acesso pessoal do Azure Databricks na sua conta de utilizador.

Para criar um token de acesso pessoal:

  1. No seu espaço de trabalho do Azure Databricks, clique no seu nome de utilizador do Azure Databricks na barra superior e, em seguida, selecione Definições na lista pendente.
  2. Clique em Desenvolvedor.
  3. Ao lado de Tokens de acesso, clique em Gerenciar.
  4. Clique em Gerar novo token.
  5. (Opcional) Insira um comentário que o ajude a identificar esse token no futuro e altere o tempo de vida padrão do token de 90 dias. Para criar um token sem tempo de vida (não recomendado), deixe a caixa Tempo de vida (dias) vazia (em branco).
  6. Clique em Generate (Gerar).
  7. Copie o token exibido para um local seguro e clique em Concluído.

Nota

Certifique-se de salvar o token copiado em um local seguro. Não partilhe o seu token copiado com outras pessoas. Se você perder o token copiado, não poderá regenerar exatamente o mesmo token. Em vez disso, você deve repetir esse procedimento para criar um novo token. Se você perder o token copiado ou acreditar que o token foi comprometido, o Databricks recomenda que você exclua imediatamente esse token do seu espaço de trabalho clicando no ícone da lixeira (Revogar) ao lado do token na página de tokens do Access.

Se você não conseguir criar ou usar tokens em seu espaço de trabalho, isso pode ser porque o administrador do espaço de trabalho desabilitou tokens ou não lhe deu permissão para criar ou usar tokens. Consulte o administrador do espaço de trabalho ou os seguintes tópicos:

Etapa 2: Criar o projeto

  1. Inicie o RStudio Desktop.
  2. No menu principal, clique em Arquivo > Novo Projeto.
  3. Selecione Novo diretório.
  4. Selecione New Project (Novo Projeto).
  5. Para Nome do diretório e Criar projeto como subdiretório de, insira o nome do novo diretório do projeto e onde criar esse novo diretório do projeto.
  6. Selecione Usar renv com este projeto. Se solicitado a instalar uma versão atualizada do renv pacote, clique em Sim.
  7. Clique em Create Project (Criar Projeto).

Criar o projeto RStudio Desktop

Etapa 3: Adicionar o pacote Databricks Connect e outras dependências

  1. No menu principal do RStudio Desktop, clique em Ferramentas > Instalar Pacotes.

  2. Deixe Install from set to Repository (CRAN).

  3. Em Pacotes, insira a seguinte lista de pacotes que são pré-requisitos para o pacote Databricks Connect e este tutorial:

    sparklyr,pysparklyr,reticulate,usethis,dplyr,dbplyr
    
  4. Deixe Instalar na Biblioteca definido para o seu ambiente virtual R.

  5. Certifique-se de que Install dependencies (Instalar dependências ) está selecionado.

  6. Clique em Install (Instalar).

Instalar as dependências do pacote Databricks Connect

  1. Quando lhe for pedido na vista Consola (Ver > Mover Foco para a Consola) para prosseguir com a instalação, introduza Y. Os sparklyr pacotes e pysparklyr e suas dependências são instalados em seu ambiente virtual R.

  2. No painel Console, use reticulate para instalar o Python executando o seguinte comando. (O Databricks Connect for R requer reticulate e o Python deve ser instalado primeiro.) No comando a seguir, substitua 3.10 pela versão principal e secundária da versão Python instalada no cluster do Azure Databricks. Para encontrar essa versão principal e secundária, consulte a seção "Ambiente do sistema" das notas de versão da versão do Databricks Runtime do cluster em Versões e compatibilidade das notas de versão do Databricks Runtime.

    reticulate::install_python(version = "3.10")
    
  3. No painel Console, instale o pacote Databricks Connect executando o seguinte comando. No comando a seguir, substitua 13.3 pela versão do Databricks Runtime instalada no cluster do Azure Databricks. Para localizar esta versão, na página de detalhes do cluster no espaço de trabalho do Azure Databricks, na guia Configuração, consulte a caixa Versão do Tempo de Execução do Databricks.

    pysparklyr::install_databricks(version = "13.3")
    

    Se você não souber a versão do Databricks Runtime para seu cluster ou não quiser procurá-la, poderá executar o seguinte comando e pysparklyr consultará o cluster para determinar a versão correta do Databricks Runtime a ser usada:

    pysparklyr::install_databricks(cluster_id = "<cluster-id>")
    

    Se você quiser que seu projeto se conecte mais tarde a um cluster diferente que tenha a mesma versão do Databricks Runtime que você acabou de especificar, pysparklyr usará o mesmo ambiente Python. Se o novo cluster tiver uma versão diferente do Databricks Runtime, você deverá executar o pysparklyr::install_databricks comando novamente com a nova versão do Databricks Runtime ou ID do cluster.

Etapa 4: Definir variáveis de ambiente para a URL do espaço de trabalho, token de acesso e ID do cluster

O Databricks não recomenda que você codifique valores confidenciais ou alterados, como a URL do espaço de trabalho do Azure Databricks, o token de acesso pessoal do Azure Databricks ou a ID do cluster do Azure Databricks em seus scripts R. Em vez disso, armazene esses valores separadamente, por exemplo, em variáveis de ambiente local. Este tutorial usa o suporte interno do RStudio Desktop para armazenar variáveis de ambiente em um .Renviron arquivo.

  1. Crie um .Renviron arquivo para armazenar as variáveis de ambiente, se esse arquivo ainda não existir, e abra este arquivo para edição: no RStudio Desktop Console, execute o seguinte comando:

    usethis::edit_r_environ()
    
  2. .Renviron No ficheiro apresentado (Ver > Mover Foco para Origem), introduza o seguinte conteúdo. Neste conteúdo, substitua os seguintes espaços reservados:

    • Substitua <workspace-url> pelo URL por espaço de trabalho, por exemplo https://adb-1234567890123456.7.azuredatabricks.net.
    • Substitua <personal-access-token> pelo seu token de acesso pessoal do Azure Databricks na Etapa 1.
    • Substitua <cluster-id> pelo ID do cluster a partir dos requisitos deste tutorial.
    DATABRICKS_HOST=<workspace-url>
    DATABRICKS_TOKEN=<personal-access-token>
    DATABRICKS_CLUSTER_ID=<cluster-id>
    
  3. Guarde o ficheiro .Renviron.

  4. Carregue as variáveis de ambiente em R: no menu principal, clique em Session > Restart R.

Definir as variáveis de ambiente para o Databricks Connect

Etapa 5: adicionar código

  1. No menu principal do RStudio Desktop, clique em File New File > R Script>.

  2. Introduza o seguinte código no ficheiro e, em seguida, guarde o ficheiro (Guardar Ficheiro>) comodemo.R:

    library(sparklyr)
    library(dplyr)
    library(dbplyr)
    
    sc <- sparklyr::spark_connect(
      master     = Sys.getenv("DATABRICKS_HOST"),
      cluster_id = Sys.getenv("DATABRICKS_CLUSTER_ID"),
      token      = Sys.getenv("DATABRICKS_TOKEN"),
      method     = "databricks_connect",
      envname    = "r-reticulate"
    )
    
    trips <- dplyr::tbl(
      sc,
      dbplyr::in_catalog("samples", "nyctaxi", "trips")
    )
    
    print(trips, n = 5)
    

Etapa 6: Executar o código

  1. No RStudio Desktop, na barra de ferramentas do demo.R arquivo, clique em Origem.

    Executar o projeto RStudio Desktop

  2. No Console, as cinco primeiras linhas da trips tabela aparecem.

  3. Na visualização Conexões (Exibir > Mostrar Conexões), você pode explorar catálogos, esquemas, tabelas e modos de exibição disponíveis.

    A visualização Conexões para o projeto

Etapa 7: Depurar o código

  1. demo.R No arquivo, clique na calha ao lado de print(trips, n = 5) para definir um ponto de interrupção.
  2. Na barra de ferramentas do demo.R arquivo, clique em Origem.
  3. Quando o código pausa a execução no ponto de interrupção, você pode inspecionar a variável na visualização Ambiente (Exibir > Ambiente de Exibição).
  4. No menu principal, clique em Depurar > Continuar.
  5. No Console, as cinco primeiras linhas da trips tabela aparecem.

Depurar o projeto RStudio Desktop