Compartilhar via


Databricks Connect para R

Observação

Esse artigo aborda a integração de sparklyr ao Databricks Connect para Databricks Runtime 13.0 e versões superiores. Essa integração não é fornecida pelo Databricks nem tem suporte direto do Databricks.

Em caso de dúvidas, acesse a Posit Community.

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

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

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

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

Tutorial

Este tutorial usa o RStudio Desktop e o Python 3.10. Se você ainda não os tiver instalado, 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 o Databricks Connect v2 no site sparklyr.

Requisitos

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

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

Etapa 1: Crie um token de acesso pessoal

Observação

O Databricks Connect para autenticação do R dá suporte apenas a 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 workspace do Azure Databricks.

Se você já tiver um token de acesso pessoal do Azure Databricks, vá para a Etapa 2. Se não tiver certeza de que já tem um token de acesso pessoal do Azure Databricks, você pode seguir esta etapa sem afetar outros tokens de acesso pessoal do Azure Databricks na sua conta de usuário.

Para criar um token de acesso pessoal, siga as etapas em Tokens de acesso pessoal do Azure Databricks para usuários do workspace.

Etapa 2: Crie o projeto

  1. Inicie o RStudio Desktop.
  2. No menu principal, clique em Arquivo > Novo Projeto.
  3. Selecione Novo Diretório.
  4. Selecione Novo Projeto.
  5. Em 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 de projeto.
  6. Selecione Usar renv com este projeto. Se solicitado a instalar uma versão atualizada do pacote renv, clique em Sim.
  7. Clique em Criar projeto.

Criar o projeto do 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 Instalar de definido como Repositório (CRAN).

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

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

  5. Verifique se Instalar dependências está selecionado.

  6. Clique em Instalar.

Instalar as dependências do pacote do Databricks Connect

  1. Quando você for solicitado no modo de exibição do Console (Exibir > Mover Foco para o Console) para continuar com a instalação, insira Y. Os pacotes sparklyr e pysparklyr e suas dependências são instalados em seu ambiente virtual do R.

  2. No painel Console, use reticulate para instalar o Python executando o comando a seguir. (O Databricks Connect para R requer que reticulate e Python sejam instalados primeiro.) No comando a seguir, substitua 3.10 pela versão principal e secundária da versão do Python instalada no cluster do Azure Databricks. Para a versão principal e secundária, consulte também a seção "Ambiente do sistema" nas notas sobre a versão do Databricks Runtime em Versões de notas sobre a versão e compatibilidade do Databricks Runtime.

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

    pysparklyr::install_databricks(version = "13.3")
    

    Se você não souber a versão do Databricks Runtime do seu cluster ou não quiser procurar, execute o seguinte comando e pysparklyr consultará o cluster para verificar 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 posteriormente a um cluster diferente que tenha a mesma versão do Databricks Runtime que a especificada, pysparklyr usará o mesmo ambiente Python. Se o novo cluster tiver uma versão diferente do Databricks Runtime, você deverá executar o comando pysparklyr::install_databricks novamente com a nova ID de cluster ou versão do Databricks Runtime.

Etapa 4: Defina variáveis de ambiente para a URL do workspace, o token de acesso e a ID do cluster

O Databricks não recomenda embutir valores confidenciais ou alterados em código, como a URL do workspace 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 locais. Este tutorial usa o suporte interno do RStudio Desktop para armazenar variáveis de ambiente em um arquivo .Renviron.

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

    usethis::edit_r_environ()
    
  2. No arquivo .Renviron exibido (Exibir > Mover Foco para a Origem), insira o conteúdo a seguir. Nesse conteúdo, substitua os espaços reservados a seguir:

    • Substitua <workspace-url> por sua URL por workspace, por exemplo, https://adb-1234567890123456.7.azuredatabricks.net.
    • Substitua <personal-access-token> pelo valor do token de acesso pessoal do Azure Databricks na Etapa 1.
    • Substitua <cluster-id> pela ID do cluster dos requisitos deste tutorial.
    DATABRICKS_HOST=<workspace-url>
    DATABRICKS_TOKEN=<personal-access-token>
    DATABRICKS_CLUSTER_ID=<cluster-id>
    
  3. Salve o arquivo .Renviron.

  4. Carregue as variáveis de ambiente em R: no menu principal, clique em Sessão > Reiniciar 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 Arquivo > Novo Arquivo > R Script.

  2. Insira o seguinte código no arquivo e salve o arquivo (Arquivo > Salvar) como demo.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. Na barra de ferramentas do arquivo demo.R do RStudio Desktop, clique em Origem.

    Executar o projeto do RStudio Desktop

  2. No Console, as cinco primeiras linhas da tabela trips são exibidas.

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

    O modo de exibição Conexões do projeto

Etapa 7: Depurar o código

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

Depurar o projeto do RStudio Desktop