Construir ferramentas internas ou aplicaƧƵes alimentadas por IA do modo "tradicional" coloca os desenvolvedores em um labirinto de tarefas repetitivas e propensas a erros. Primeiro, eles devem iniciar uma instĆ¢ncia dedicada do Postgres, configurar a rede, backups e monitoramento, e entĆ£o passar horas (ou dias) integrando esse banco de dados ao framework front-end que estĆ£o usando. AlĆ©m disso, eles precisam escrever fluxos de autenticação personalizados, mapear permissƵes granulares e manter esses controles de seguranƧa sincronizados em toda a interface do usuĆ”rio, camada de API e banco de dados. Cada componente da aplicação vive em um ambiente diferente, desde um serviƧo de nuvem gerenciado atĆ© uma VM auto-hospedada. Isso forƧa os desenvolvedores a gerenciar pipelines de implantação distintos, variĆ”veis de ambiente e lojas de credenciais. O resultado Ć© uma pilha fragmentada onde uma Ćŗnica mudanƧa, como uma migração de esquema ou um novo papel, reverbera em vĆ”rios sistemas, exigindo atualizaƧƵes manuais, testes extensivos e coordenação constante. Todo esse excesso de trabalho desvia os desenvolvedores do verdadeiro valor agregado: construir as caracterĆsticas e inteligĆŖncia principais do produto.
Com o Databricks Lakebase e os Apps Databricks, toda a pilha de aplicação fica junta, ao lado do lakehouse. Lakebase Ć© um banco de dados Postgres totalmente gerenciado que oferece leituras e gravaƧƵes de baixa latĆŖncia, integrado com as mesmas tabelas lakehouse subjacentes que alimentam suas cargas de trabalho de anĆ”lise e IA. Databricks Apps fornece um tempo de execução sem servidor para a interface do usuĆ”rio, juntamente com autenticação integrada, permissƵes detalhadas e controles de governanƧa que sĆ£o automaticamente aplicados aos mesmos dados que o Lakebase serve. Isso facilita a construção e implantação de aplicativos que combinam estado transacional, anĆ”lises e IA sem a necessidade de juntar vĆ”rias plataformas, sincronizar bancos de dados, replicar pipelines ou conciliar polĆticas de seguranƧa entre sistemas.
Lakebase e Databricks Apps trabalham juntos para simplificar o desenvolvimento full-stack na plataforma Databricks:
Ao combinar os dois, você pode construir ferramentas interativas que armazenam e atualizam o estado no Lakebase, acessam dados governados no lakehouse e servem tudo através de uma interface de usuÔrio segura e sem servidor, tudo sem gerenciar infraestrutura separada. No exemplo abaixo, mostraremos como construir um simples aplicativo de aprovação de solicitação de férias usando essa configuração.
Este tutorial mostra como criar um simples aplicativo Databricks que ajuda os gerentes a revisar e aprovar solicitaƧƵes de fĆ©rias de sua equipe. O aplicativo Ć© construĆdo com Databricks Apps e usa o Lakebase como o banco de dados de backend para armazenar e atualizar as solicitaƧƵes.

Aqui estÔ o que a solução abrange:
O tutorial Ć© projetado para ajudĆ”-lo a comeƧar rapidamente com um exemplo de trabalho mĆnimo. Mais tarde, vocĆŖ pode estendĆŖ-lo com uma configuração mais avanƧada.Ā
Antes de construir o aplicativo, você precisarÔ criar um banco de dados Lakebase. Para fazer isso, vÔ para a aba Compute, selecione OLTP Database, e forneça um nome e tamanho. Isso provisiona uma instância Lakebase sem servidor. Neste exemplo, nossa instância de banco de dados é chamada lakebase-demo-instance.

Agora que temos um banco de dados, vamos criar o Databricks App que se conectarÔ a ele. Você pode começar com um aplicativo em branco ou escolher um modelo (por exemplo, Streamlit ou Flask). Depois de nomear seu aplicativo, adicione o Banco de dados como um recurso. Neste exemplo, o databricks_postgres banco de dados pré-criado é selecionado.
Adicionando o recurso de banco de dados automaticamente:
Este papel serĆ” usado posteriormente para conceder acesso ao nĆvel da tabela.

Com o banco de dados provisionado e o app conectado, agora vocĆŖ pode definir o esquema e a tabela que o app usarĆ”.
Do Ambiente do aplicativo, copie o valor da variÔvel DATABRICKS_CLIENT_ID. Você precisarÔ disso para as declarações GRANT.
VÔ para a sua instância Lakebase e clique em Nova Consulta. Isso abre o editor SQL com o endpoint do banco de dados jÔ selecionado.

Por favor, note que, embora o uso do editor SQL seja uma maneira rÔpida e eficaz de realizar esse processo, o gerenciamento de esquemas de banco de dados em grande escala é melhor realizado por ferramentas dedicadas que suportam versionamento, colaboração e automação. Ferramentas como Flyway e Liquibase permitem que você rastreie mudanças de esquema, integre com pipelines CI/CD e garanta que a estrutura do seu banco de dados evolua com segurança junto com o código do seu aplicativo.
Com as permissões em vigor, agora você pode construir seu app. Neste exemplo, o app busca solicitações de férias do Lakebase e permite que um gerente as aprove ou rejeite. As atualizações são escritas de volta na mesma tabela.

Use SQLAlchemy e o SDK Databricks para conectar seu app ao Lakebase com autenticação segura baseada em token. Quando você adiciona o recurso Lakebase, PGHOST e PGUSER são expostos automaticamente. O SDK lida com o armazenamento em cache de tokens.
As seguintes funções lêem e atualizam a tabela de solicitação de férias:
Os trechos de código acima podem ser usados em combinação com frameworks como Streamlit, Dash e Flask para extrair os dados do Lakebase e visualizÔ-los em seu aplicativo. Para garantir que todas as dependências necessÔrias estejam instaladas, adicione os pacotes necessÔrios ao arquivo requirements.txt do seu aplicativo. Os pacotes usados nos trechos de código estão listados abaixo.
Ā
Lakebase adiciona capacidades transacionais ao lakehouse integrando um banco de dados OLTP totalmente gerenciado diretamente na plataforma. Isso reduz a necessidade de bancos de dados externos ou pipelines complexos ao construir aplicaƧƵes que exigem tanto leituras quanto gravaƧƵes.

Porque estÔ integrado nativamente com Databricks, incluindo sincronização de dados, autenticação de identidade e segurança de rede - assim como outros ativos de dados no lakehouse. Você não precisa de ETL personalizado ou ETL reverso para mover dados entre sistemas. Por exemplo:
Essas capacidades facilitam o suporte a casos de uso de nĆvel de produção como:
Lakebase jÔ estÔ sendo usado em vÔrias indústrias para aplicações incluindo recomendações personalizadas, aplicações de chatbot e ferramentas de gerenciamento de fluxo de trabalho.
Se você jÔ estÔ usando Databricks para anÔlises e IA, Lakebase facilita a adição de interatividade em tempo real aos seus aplicativos. Com suporte para transações de baixa latência, segurança integrada e integração estreita com os Apps Databricks, você pode ir do protótipo à produção sem sair da plataforma.
Lakebase fornece um banco de dados Postgres transacional que funciona perfeitamente com Databricks Apps e oferece fÔcil integração com os dados do Lakehouse. Ele simplifica o desenvolvimento de aplicativos de dados e IA completos, eliminando a necessidade de sistemas OLTP externos ou etapas de integração manual.
Neste exemplo, mostramos como:
O Lakebase agora estÔ em Visualização Pública. Você pode experimentÔ-lo hoje diretamente do seu espaço de trabalho Databricks. Para detalhes sobre uso e preços, consulte a Lakebase e Apps documentação.
Ā
(This blog post has been translated using AI-powered tools) Original Post
