Converta SQL com o conversor de código agêntico
Beta
Este recurso está em Beta. Para usá-lo, um administrador do workspace deve ativar o conversor de código agentic na página Pré-visualizações . Consulte Gerenciar prévias do Databricks.
O conversor de código agêntico usa o Genie Code para converter SQL existente de dialetos como T-SQL, Snowflake, Redshift, Oracle, BigQuery e Teradata para ANSI SQL que é executado no Databricks. O trabalho é organizado em um projeto de migração, onde o conversor analisa cada script de origem, valida a saída convertida e corrige erros iterativamente antes de escrever os resultados em uma pasta de workspace.
O conversor de código agêntico faz parte das ferramentas da Databricks para migrar cargas de trabalho de data warehouses e ferramentas de ETL existentes para a Databricks. Ele converte seu SQL de origem enquanto você organiza e rastreia o trabalho em um projeto de migração.
Como funciona
Inicia-se uma conversão criando um projeto de migração em seu Workspace. O projeto rastreia o estado de cada arquivo e oferece um único local para gerenciar a migração.

Quando você executa uma conversão, o Genie Code invoca a habilidade de migração e implanta subagentes que convertem arquivos simultaneamente. Cada subagente analisa o dialeto de origem, gera o equivalente SQL ANSI, valida o resultado, e tenta novamente as seções que falham. Arquivos convertidos são gravados diretamente na pasta do workspace que você especifica para o projeto.
Você também pode converter um único arquivo ou pasta sem um projeto usando o comando /migrate em uma conversa do Genie Code.
Requisitos
- Um Workspace habilitado para o Beta do conversor de código agêntico. Um administrador do Workspace habilita o recurso na página Pré-visualizações . Consulte Gerenciar prévias do Databricks.
- Seus arquivos SQL existentes devem estar acessíveis em seu Workspace, seja upload como arquivos de Workspace ou abertos no editor.
- Seu workspace deve atender aos requisitos do Genie Code. See Genie Code.
Fontes compatíveis e limitações
O conversor é compatível com os seguintes dialetos de origem:
- T-SQL
- Snowflake SQL
- Redshift SQL
- Oracle
- BigQuery
- Teradata
O conversor visa o ANSI SQL. Os seguintes limites se aplicam a cada conversão:
- Um lote pode conter um máximo de 300 arquivos.
- Um script pode conter no máximo 1.000 linhas.
- Os scripts BTEQ do Teradata ainda não são suportados.
Converter código SQL existente
Os passos a seguir descrevem como converter SQL existente em um projeto de migração.
Passo 1: Fazer upload de arquivos de origem
Faça upload dos seus arquivos SQL existentes (.sql) usando o navegador de arquivos do Workspace, ou use a CLI do Databricks para fazer upload em massa de um diretório de scripts.
Passo 2: Criar um projeto de migração
Crie um projeto de migração a partir do seu Workspace:
- Clique em
> Projeto de migração .
- Insira um Nome para o projeto.
- Use os seletores suspensos para escolher um Dialeto de origem e uma Estrutura de destino .
- Insira o caminho do arquivo para a pasta de destino . Clique em Procurar para escolher um destino em uma lista de pastas de workspace disponíveis.
- (Opcional) Insira o caminho para um arquivo de linhagem que descreve a linhagem do projeto. Clique em Navegar para escolher o arquivo em uma lista de arquivos em seu workspace.
- Clique em Criar .

Etapa 3: Adicionar arquivos ao seu projeto
No novo projeto:
- Clique em Adicionar arquivos > + Adicionar arquivos .
- Selecione a pasta de origem ou um arquivo do seu Workspace.
O projeto lista cada arquivo com seu tipo de arquivo, contagem de linhas e status de conversão.

Passo 4: Revisar a complexidade e a linhagem do código (opcional)
Se o Lakebridge Analyzer foi executado, faça o upload de sua saída JSON para o projeto para revisar a complexidade do código e a linhagem. Clique em um arquivo de origem para abrir uma avaliação de complexidade e clique em **Linhagem** para abrir um gráfico de dependência que mostra arquivos e tabelas interdependentes que devem ser migrados juntos. Para obter instruções sobre a execução do Analyzer, consulte o guia do Lakebridge Analyzer.
Passo 5: Execução da conversão
Selecione os arquivos para converter e clique em Executar . O Genie Code abre uma conversa, invoca a habilidade de migração e implanta subagentes para converter os arquivos simultaneamente. Cada arquivo convertido aparece como um arquivo vinculado no projeto. O conversor marca cada arquivo com um status:
- **Verde**: Convertido com sucesso
- Amarelo : Precisa de revisão
- Vermelho : Falha na conversão
- Cinza : Em andamento
Passo 6: Revisar os resultados da conversão
Clique em um arquivo convertido para abrir uma comparação lado a lado no editor de SQL, com o código-fonte ao lado do Databricks SQL proposto. Aceite todas as alterações sugeridas, ou analise e aceite edições individuais. Para scripts que não conseguem converter, edite o código no editor ou peça ao Genie Code para revalidar ou tentar novamente seções específicas. Após ficar satisfeito, execute o SQL convertido em um notebook ou no editor de SQL para confirmar que ele é executado no Databricks.
Criar uma habilidade personalizada (opcional)
As habilidades personalizadas permitem codificar regras de negócios que o Genie Code aplica automaticamente durante cada conversão. Use-os para lidar com tipos de dados proprietários, impor padrões de destino preferenciais ou capturar correções que você faz repetidamente. Uma habilidade de migração é uma habilidade do Genie Code, assim, você pode criá-la e gerenciá-la da mesma forma que qualquer outra habilidade. Para obter mais detalhes, consulte Estenda o Genie Code com habilidades de agente.
Você pode criar uma habilidade a partir das configurações do Genie Code ou de uma conversa do Genie Code. Use o caminho de configurações para habilidades complexas que incluem instruções detalhadas, exemplos ou arquivos de suporte. Use o caminho de chat para habilidades rápidas de regra única.
- Genie Code settings
- Genie Code chat
Crie a habilidade como um arquivo para que você possa criar instruções detalhadas e controlar a versão em uma pasta Git:
-
No painel Genie Code, clique em
**Configurações** e, em seguida, clique em
**Abrir pasta de habilidades**.
-
Crie uma pasta para sua habilidade no caminho de habilidades do workspace,
Workspace/.assistant/skills/. Por exemplo,Workspace/.assistant/skills/sql-migration/. -
Na pasta de habilidades, crie um arquivo
SKILL.mdcom o frontmatter necessário e suas regras de conversão. Por exemplo:---
name: sql-migration
description: Conversion rules to apply when migrating legacy SQL to ANSI SQL.
---
Always convert the custom type MYDATE to TIMESTAMP_NTZ.
O Genie Code detecta a habilidade na próxima execução de uma conversão.
Descreva a regra de conversão que você deseja codificar e, em seguida, peça ao Genie Code para salvá-la:
Always convert our custom type MYDATE to TIMESTAMP_NTZ. Save this as a custom migration skill.
O Genie Code cria e registra a habilidade e a aplica em futuras conversões no workspace.
Para visualizar habilidades ativas:
Show me my migration skills
Para remover uma habilidade:
Delete the migration skill for [description]
As habilidades do workspace são armazenadas no nível do workspace e compartilhadas entre todos os usuários no workspace.
Dicas para testes
Como parte de seu ciclo de agente, o conversor analisa cada script de origem, valida que o resultado convertido é sintaticamente válido e semanticamente equivalente à origem, e corrige iterativamente as seções que falham antes de escrever os resultados. As dicas a seguir ajudam a revisar e obter confiança no resultado:
- Conversão em lote : Converta um pequeno lote de dois a cinco arquivos em uma sessão para verificar se a conversão de vários arquivos funciona de ponta a ponta.
- **Validação de sintaxe**: Após a conversão, execute a saída em um editor Databricks SQL ou Notebook para confirmar que ela é executada sem erros.
- Casos extremos : Inclua um script com construções específicas de dialeto, como funções de janela T-SQL, Snowflake
QUALIFYou RedshiftLISTAGG, para ver como o conversor lida com padrões não triviais. - **Correção semântica**: Execute as queries originais e convertidas em relação a dados de teste equivalentes e compare os resultados. Certifique-se de que o resultado é semanticamente correto, não apenas sintaticamente válido.