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 get rapidamente iniciado com o Databricks Connect usando R, sparklyr
e RStudio Desktop.
- Para a versão Python deste artigo, consulte Databricks Connect for Python.
- Para a versão Scala deste artigo, consulte Databricks Connect for Scala.
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 de destino do Azure Databricks deve atender aos requisitos de configuração de computação para o Databricks Connect.
- Você deve ter seu ID de cluster disponível. Para get 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
econfiguration
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, siga as etapas em Tokens de acesso pessoal do Azure Databricks para usuários do espaço de trabalho.
Etapa 2: Criar o projeto
- Inicie o RStudio Desktop.
- No menu principal, clique em Arquivo > Novo Projeto.
- Select Novo Diretório.
- Select Novo Projeto.
- Para "Nome do Diretório" e "Criar projeto como subdiretório de", insira o nome do novo diretório do projeto e where para criar este novo diretório de projeto.
-
Select
Use renv com este projeto. Se solicitado a instalar uma versão atualizada do
renv
pacote, clique em Sim. - Clique em Create Project (Criar Projeto).
Etapa 3: Adicionar o pacote Databricks Connect e outras dependências
No menu principal do RStudio Desktop, clique em Ferramentas > Instalar Pacotes.
Deixe Instalar doset para Repository (CRAN).
Para Pacotes, insira a seguinte lista list de pacotes que são pré-requisitos para o pacote Databricks Connect e este tutorial:
sparklyr,pysparklyr,reticulate,usethis,dplyr,dbplyr
Deixe o instalado na Bibliotecaset para o seu ambiente virtual R.
Certifique-se de que Install dependencies (Instalar dependências ) está selecionado.
Clique em Install (Instalar).
Quando lhe for pedido na vista Consola (Ver > Mover Foco para a Consola) para prosseguir com a instalação, introduza
Y
. Ossparklyr
pacotes epysparklyr
e suas dependências são instalados em seu ambiente virtual R.No painel Console, use
reticulate
para instalar o Python executando o seguinte comando. (O Databricks Connect for R requerreticulate
e o Python deve ser instalado primeiro.) No comando a seguir, substitua3.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")
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 opysparklyr::install_databricks
comando novamente com a nova versão do Databricks Runtime ou ID do cluster.
Etapa 4: Set 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ê faça códigos confidenciais ou altere values 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 values 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.
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()
.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 exemplohttps://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>
- Substitua
Guarde o ficheiro
.Renviron
.Carregue as variáveis de ambiente em R: no menu principal, clique em Session > Restart R.
Etapa 5: adicionar código
No menu principal do RStudio Desktop, clique em >>.
Introduza o seguinte código no ficheiro e, em seguida, guarde o ficheiro (Guardar Ficheiro>) 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
No RStudio Desktop, na barra de ferramentas do
demo.R
arquivo, clique em Origem.Na Console, as cinco primeiras linhas do
trips
table aparecem.No modo de exibição Connections (View > Show Connections), você pode explorar catalogsdisponíveis, esquemas, tablese views.
Etapa 7: Depurar o código
- No arquivo
demo.R
, clique na margem ao lado deprint(trips, n = 5)
para set um ponto de interrupção. - Na barra de ferramentas do
demo.R
arquivo, clique em Origem. - 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).
- No menu principal, clique em Depurar > Continuar.
- No Console , as cinco primeiras linhas do
trips
table aparecem.