Introdução aos aplicativos do Databricks
Importante
O Databricks Apps está em Visualização Pública.
Este artigo ajuda você a começar a usar os Aplicativos do Databricks usando um exemplo passo a passo para criar um aplicativo simples em seu ambiente de desenvolvimento local e implantar o aplicativo em seu workspace do Azure Databricks. Este exemplo mostra o seguinte:
- Criando e testando o aplicativo localmente.
- Depois de testar localmente, use a CLI do Databricks para adicionar o aplicativo ao workspace do Azure Databricks.
- Exibindo a página de detalhes do aplicativo em seu workspace.
- Copiar o código-fonte e os artefatos do aplicativo para seu workspace.
- Exibindo a saída do aplicativo em seu espaço de trabalho.
Antes de percorrer o exemplo, verifique se o workspace do Azure Databricks e o ambiente de desenvolvimento local atendem aos requisitos.
O Databricks recomenda o uso de um ambiente virtual Python ao desenvolver aplicativos. O exemplo neste artigo usa pipenv para criar um ambiente virtual. Para saber mais, consulte Ambientes virtuais do Python: uma cartilha.
Este exemplo também está disponível na biblioteca de modelos de Aplicativos do Databricks. Confira Como criar um aplicativo na interface do usuário do Databricks Apps?.
Etapa 1: configurar seu ambiente local
Abra um terminal e execute os seguintes comandos para:
- Crie e inicie um ambiente virtual Python.
- Instale as bibliotecas do Python exigidas pelo aplicativo de exemplo.
- Crie um diretório local para os arquivos de origem e configuração do seu aplicativo.
pipenv --python 3.11
pipenv shell
pip install gradio
pip install pandas
mkdir <app-dir-name>
cd <app-dir-name>
Substitua <app-dir-name>
pelo nome de um diretório local para os arquivos do aplicativo, por exemplo, gradio-hello-world
.
Etapa 2: adicionar a origem e a configuração do seu aplicativo
Em um editor de texto ou em seu ambiente de desenvolvimento integrado (IDE) favorito, crie um novo arquivo Python com o código a seguir e salve-o no diretório que você criou. Este exemplo usa o nome
app.py
do arquivo Python:import gradio as gr import pandas as pd data = pd.DataFrame({'x': [x for x in range(30)], 'y': [2 ** x for x in range(30)]}) # Display the data with Gradio with gr.Blocks(css='footer {visibility: hidden}') as gradio_app: with gr.Row(): with gr.Column(scale=3): gr.Markdown('# Hello world!') gr.ScatterPlot(value=data, height=400, width=700, container=False, x='x', y='y', y_title='Fun with data', x_title='Apps') if __name__ == '__main__': gradio_app.launch()
Em um editor de texto ou IDE, crie um novo arquivo YAML com o seguinte conteúdo e salve-o em um arquivo nomeado
app.yaml
no diretório que você criou:command: [ "python", "<app-name.py>" ]
Substitua
<app-name.py>
pelo nome do arquivo Python que contém o código do aplicativo. Por exemplo,app.py
.
Etapa 3: testar seu aplicativo localmente
Para testar seu aplicativo localmente, abra um terminal e execute
python <app-name.py>
o , substituindo<app-name.py>
pelo nome do arquivo que contém o código do aplicativo.python app.py Running on local URL: http://127.0.0.1:7860 ...
Para exibir a saída do aplicativo, abra
http://127.0.0.1:7860
em uma janela do navegador.
Etapa 4: Implantar o aplicativo em seu workspace
Para criar um novo aplicativo em seu workspace e implantar o código do seu ambiente local no workspace, abra um terminal e conclua as etapas a seguir.
Crie o aplicativo em seu workspace do Azure Databricks.
Observação
- O nome atribuído a um aplicativo do Databricks não pode ser alterado após a criação do aplicativo, e qualquer usuário com acesso a um workspace do Azure Databricks pode ver os nomes e o histórico de implantação de todos os aplicativos do Databricks no workspace. Além disso, o nome do aplicativo é incluído nos registros gravados nas tabelas do sistema. Devido a essa visibilidade, você não deve incluir informações confidenciais ao nomear seus aplicativos do Databricks.
- O nome deve ser exclusivo no workspace do Azure Databricks que hospeda o aplicativo e deve conter apenas letras minúsculas, números e hífens.
databricks apps create <app-name>
Substitua
<app-name>
por um nome para seu aplicativo. Por exemplo,gradio-hello-world
.Para exibir o aplicativo em seu workspace quando o
create
comando for concluído, na barra lateral, clique em Computação, vá para a guia Aplicativos e clique no link para seu aplicativo na coluna Nome.Sincronize os arquivos do ambiente local com o workspace do Azure Databricks. O comando para sincronizar os arquivos do ambiente local com o workspace, incluindo o caminho do workspace para os arquivos, está em Sincronizar arquivos de origem no Databricks. Clique para copiar este comando.
Em um terminal, alterne para o diretório que contém os arquivos do aplicativo e execute o comando copiado
sync
.Observação
Se houver arquivos ou diretórios específicos no diretório do aplicativo local que você não deseja transferir pelo
databricks sync
comando, adicione esses arquivos ou diretórios a um.gitignore
arquivo no diretório do aplicativo local. Por exemplo, se você tiver um diretório de ambiente virtual Python no mesmo diretório que seu aplicativo, adicione o nome do diretório ao.gitignore
arquivo e osync
comando ignorará esse diretório ao transferir arquivos.databricks sync --watch . /Workspace/Users/user@databricks.com/gradio-hello-world ... Initial Sync Complete
Para visualizar os arquivos sincronizados em seu espaço de trabalho quando o
sync
comando for concluído, clique em Espaço de trabalho na barra lateral e vá para o diretório criado para seu aplicativo.Para implantar o aplicativo, execute o comando a seguir em um terminal, substituindo
<app-path>
pelo caminho do workspace para os arquivos do aplicativo.databricks apps deploy gradio-hello-world --source-code-path <app-path>
Para exibir o status da implantação, acesse a página de detalhes do aplicativo.
Para exibir a saída do aplicativo implantado, clique no link do aplicativo abaixo do nome do aplicativo na página de detalhes.
Próximas etapas
Para saber como criar aplicativos na interface do usuário do Databricks Apps, confira Como criar um aplicativo na interface do usuário do Databricks Apps?.