Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
O Genie Migrate utiliza o Genie Code para converter SQL existente de dialetos como T-SQL, Snowflake, Redshift, Oracle, BigQuery e Teradata em código que corre no Azure Databricks. Também converte cargas de trabalho de extração, transformação e carregamento (ETL) do Informatica PowerCenter (Beta) em notebooks Databricks. Organizas o teu trabalho num projeto de migração e escolhes um framework alvo para o resultado: consultas SQL do Databricks ou notebooks do Databricks (Beta) que usam a API do DataFrame. O Genie Migrate analisa cada script de origem, valida a saída convertida e corrige iterativamente os erros antes de escrever os resultados numa pasta de workspace.
O Genie Migrate faz parte das ferramentas Databricks para migrar cargas de trabalho de data warehouses e ferramentas ETL existentes para o Azure Databricks. Converte os teus scripts SQL e pipelines ETL enquanto organizas e acompanhas o trabalho num projeto de migração.
Como funciona
Inicia uma conversão criando um projeto de migração no seu espaço de trabalho. O projeto acompanha o estado de cada ficheiro e dá-te um único local para gerir a migração.
Quando executas uma conversão, o Genie Code implementa subagentes que convertem ficheiros em simultâneo. Cada subagente analisa o dialeto fonte e gera o código equivalente para o framework de destino do projeto (Databricks SQL ou um notebook Databricks). Depois, verifica o código convertido:
- Sintaxe: Verifica se o código convertido corre no Azure Databricks sem erros.
-
Intenção semântica: Verifica se o código convertido mantém a lógica de negócio da fonte, como as mesmas junções e
WHEREcláusulas.
Quando uma verificação falha, o subagente revê o código e verifica-o novamente. O Genie Code também aplica as tuas competências personalizadas quando converte ficheiros. Veja Crie uma habilidade personalizada (opcional). Os ficheiros convertidos são guardados diretamente na pasta da área de trabalho que especificou para o projeto.
Também pode converter um único ficheiro ou pasta sem um projeto usando o /migrate comando numa conversa Código Genie.
Requirements
- Os seus ficheiros SQL ou XML existentes devem estar acessíveis no seu espaço de trabalho, sendo carregados como ficheiros de workspace ou abertos no editor.
- O seu espaço de trabalho deve cumprir os requisitos do Código Génio. Ver Código Génio.
- Para usar a estrutura de destino dos Notebooks, análise de projetos e linhagem de dados, ou conversão para Informatica PowerCenter, que estão em Beta, um administrador de espaço de trabalho deve ativar as Funcionalidades Experimentais de Projetos de Migração na página de Pré-visualizações. Ver Gerir as pré-visualizações de Azure Databricks.
Fontes suportadas
O conversor suporta os seguintes dialetos SQL:
- T-SQL
- Snowflake SQL
- Redshift SQL
- Oracle
- BigQuery
- Teradata
Ao criar um projeto de migração para um dialeto SQL, escolha um dos seguintes frameworks-alvo:
- DBSQL: consultas SQL da Databricks compatíveis com ANSI.
-
Notebooks (Beta): notebooks do Databricks que usam a API DataFrame, com
spark.sqlpara lógica mais clara em SQL.
Important
O suporte de origem do Informatica PowerCenter está em Beta. Para o utilizar, um administrador de espaço de trabalho deve ativar as Funcionalidades Experimentais de Projetos de Migração a partir da página de Pré-visualizações . Ver Gerir as pré-visualizações de Azure Databricks.
O conversor também suporta o Informatica PowerCenter como fonte ETL.
O Informatica Intelligent Gestão de Dados Cloud (IDMC) e o Informatica Intelligent Cloud Services (IICS) não são suportados. O Genie Migrate converte os objetos numa exportação Informatica, como fluxos de trabalho e mapeamentos, em notebooks do Databricks, pelo que os projetos Informatica utilizam sempre a estrutura-alvo Notebooks.
Para preparar fluxos de trabalho da Informatica para conversão, exporte-os do PowerCenter Repository Manager no formato PowerMart XML. Exporte ao nível do fluxo de trabalho e inclua objetos dependentes, como mapeamentos, sessões, mapplets e worklets. Não inclua credenciais na exportação.
Converte o teu código
Os passos seguintes descrevem como converter scripts SQL e pipelines ETL num projeto de migração.
Passo 1: Carregar ficheiros fonte
Carregue os seus ficheiros SQL existentes (.sql) ou exportações ETL (.xml) usando o navegador de ficheiros workspace, ou use a CLI Databricks para carregar em massa um diretório de scripts.
Passo 2: Criar um projeto de migração
Crie um projeto de migração a partir do seu espaço de trabalho:
- Clique em
>Projeto de migração. - Insira um nome para o projeto.
- Utilize os menus pendentes para escolher um dialeto de origem e uma estrutura de destino. Para framework de destino, escolha DBSQL para gerar consultas SQL do Databricks, ou Notebooks (Beta) para gerar notebooks do Databricks. Se escolher Informatica como dialeto de origem, o framework alvo é definido como Notebooks.
- Introduza o caminho do ficheiro para a pasta de destino de destino. Clique em Explorar para escolher um destino a partir de uma lista de pastas disponíveis para o espaço de trabalho.
- Clique em Criar.
Passo 3: Adicionar ficheiros ao seu projeto
No novo projeto:
- Clique em Adicionar ficheiros>+ Adicionar ficheiros.
- Selecione a pasta de origem ou um ficheiro do seu espaço de trabalho.
Nos projetos Informatica, apenas são adicionados ficheiros .xml. Os ficheiros de outros tipos são ignorados.
O separador Ficheiros lista cada ficheiro com o seu tipo de ficheiro, número de linhas e estado de conversão. Os projetos Informatica abrem no separador Inventário , que lista cada exportação com os objetos que contém.
Passo 4: Rever a complexidade e a linhagem do código (Beta)
Important
Este recurso está em versão Beta. Para o utilizar, um administrador de espaço de trabalho deve ativar as Funcionalidades Experimentais de Projetos de Migração a partir da página de Pré-visualizações . Ver Gerir as pré-visualizações de Azure Databricks.
Analisa o projeto para rever a complexidade do código e as dependências entre ficheiros antes de converteres. A análise é opcional para projetos SQL e obrigatória para projetos Informatica.
Para analisar um projeto SQL:
- No projeto, clique em Analisar tudo. Se o projeto não tiver linhagem, Analisar tudo é a ação padrão. Caso contrário, selecione Analisar tudo no menu suspenso do botão. A análise cobre todos os ficheiros do projeto, mesmo que selecione ficheiros.
- Aguarde até a análise terminar. Para cancelar uma análise em curso, clique em Parar. Quando a análise termina, o botão muda para Converter tudo.
- Clique num ficheiro fonte para abrir a sua avaliação de complexidade e clique em Lineage para abrir um grafo de dependências que mostra ficheiros e tabelas interdependentes que deve migrar em conjunto.
Para analisar um projeto Informatica, clique em Analisar tudo no separador Inventário . A análise divide cada exportação nos seus fluxos de trabalho, worklets, mapeamentos e mapplets. Tens de analisar uma exportação antes de a poderes converter.
Passo 5: Executar a conversão
Nos projetos Informatica, selecionas e convertes os fluxos de trabalho, mapeamentos e outros objetos criados pela análise, não as .xml exportações carregadas.
Para converter ficheiros específicos, selecione-os e clique em Converter selecionados. Para converter todos os ficheiros do projeto, limpe a seleção e clique em Converter todos. O Código Genie abre uma conversa, invoca a competência de migração e implementa subagentes para converter os ficheiros em simultâneo. Cada ficheiro convertido aparece como um ficheiro ligado no projeto. Cada ficheiro mostra um dos seguintes estados:
- Cinzento: O ficheiro ainda não foi convertido (Não iniciado, Em fila ou Parado). É apresentado um spinner enquanto o ficheiro é convertido.
- Verde não preenchido: O ficheiro foi convertido sem problemas (Convertido).
- A verde: Reviu e aceitou o ficheiro convertido (Revisto).
- Amarelo: O ficheiro foi convertido, mas tem itens de ação que precisas de rever.
- Vermelho: A conversão falhou (Erro).
Cada execução converte até 500 ficheiros. Se colocares mais de 500 ficheiros na fila, os primeiros 500 ficheiros não convertidos são processados no lote atual. Depois de terminar o lote, inicia novamente a conversão para converter os próximos 500.
Passo 6: Rever os resultados das conversões
Para projetos SQL do Databricks, clique num ficheiro convertido para abrir um diff inline no editor SQL, que mostra cada secção do código-fonte acima do Databricks SQL proposto que a substitui. Aceite todas as alterações sugeridas, ou revise e aceite edições individuais. Para projetos de Notebooks, clique num ficheiro convertido para abrir o notebook Databricks gerado. Para scripts que não conseguem converter, edite o código no editor ou peça ao Genie Code para revalidar ou tentar secções específicas. Depois de estar satisfeito, execute o SQL ou notebook convertido para confirmar que corre no Azure Databricks. Se o mesmo erro aparecer em vários ficheiros, captura a correção numa skill personalizada e volta a executar esses ficheiros. Veja Crie uma habilidade personalizada (opcional).
Para projetos Informatica, compare cada notebook gerado com o correspondente mapping PowerCenter. Verifique tabelas de origem e destino, joins, filtros e grupos de routers, lookups, lógica de Update Strategy e parâmetros. Antes de usares um pipeline convertido em produção, executa-o com dados não de produção e compara resultados como contagens de linhas e agregados de chaves com a saída do fluxo de trabalho PowerCenter.
Criar uma habilidade personalizada (opcional)
As competências personalizadas permitem-te codificar regras de negócio que o Código Genie aplica automaticamente em cada conversão. Use-os para lidar com tipos de dados proprietários, impor padrões de alvo preferidos ou capturar correções que faça repetidamente. Uma habilidade de migração é uma habilidade Código Génio, por isso podes criá-la e geri-la da mesma forma que qualquer outra competência. Para mais detalhes, consulte Expandir o Genie Code com capacidades de agente.
Não precisas de definir todas as tuas competências antes da primeira conversa. A maioria das regras que uma habilidade deve captar só fica clara depois de reveres os primeiros resultados. Um fluxo de trabalho típico é:
- Converta um conjunto representativo de ficheiros.
- Reveja os ficheiros com itens de ação ou erros e procure erros que se repitam entre ficheiros, como o mesmo tipo de dados, função ou padrão de nomenclatura não suportado.
- Cria uma skill que capture a correção para cada erro recorrente.
- Selecione apenas os ficheiros afetados e clique em Converter selecionados. Genie Code aplica a nova competência a esses ficheiros.
Repete este ciclo à medida que convertes mais do teu código. O Genie Code aplica cada competência a conversões posteriores no espaço de trabalho, por isso uma correção cobre outros ficheiros com o mesmo padrão.
Podes criar uma habilidade a partir das definições do Código Génio ou de uma conversa no Código Génio. Use o caminho das definições para competências complexas que incluam instruções detalhadas, exemplos ou ficheiros de apoio. Usa o chat path para habilidades rápidas e de regra única.
Definições do Genie Code
Cria a skill como um ficheiro para poderes criar instruções detalhadas e versioná-la numa pasta Git:
No painel do Código Génio, clique
Definições, depois clica
Abrir a pasta de competências.
Crie uma pasta para a sua competência no percurso de competências do espaço de trabalho,
Workspace/.assistant/skills/. Por exemplo,Workspace/.assistant/skills/sql-migration/.Na pasta da skill, crie um ficheiro
SKILL.mdcom o frontmatter necessário e as 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 adquire essa competência na próxima vez que executar uma conversão.
Chat Código Génio
Descreve a regra de conversão que queres codificar, depois pede ao Código Genio para a guardar:
Tip
Always convert our custom type MYDATE to TIMESTAMP_NTZ. Save this as a custom migration skill.
O Genie Code cria e regista a competência e aplica-a em futuras conversões no espaço de trabalho.
Para ver as competências ativas:
Tip
Show me my migration skills
Para remover uma competência:
Tip
Delete the migration skill for [description]
As competências do espaço de trabalho são armazenadas ao nível do espaço de trabalho e partilhadas entre todos os utilizadores do espaço de trabalho.
Dicas para testar
Como parte do seu ciclo agente, o conversor analisa cada script de origem, valida que a saída convertida é sintaticamente válida e semanticamente equivalente à fonte, e corrige iterativamente as secções que falham antes de escrever os resultados. As dicas seguintes ajudam-no a rever e a sentir confiança no resultado:
- Conversão em lote: Converta um pequeno lote de dois a cinco ficheiros numa sessão para verificar se a conversão de múltiplos ficheiros funciona de ponta a ponta.
- Validação da sintaxe: Após a conversão, execute a saída num editor ou caderno Databricks SQL para confirmar que corre 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 consultas originais e convertidas com dados de teste equivalentes e compare os resultados. Confirme que o resultado está semanticamente correto, não apenas sintaticamente válido.