Traduza Teradata SQL para Fabric Data Warehouse

Aplica-se a:✅Armazém de dados no Microsoft Fabric

O Assistente de Migração traduz metadados Teradata suportados para T-SQL compatível com Fabric. Use esta referência para revisar ajustes automáticos e corrigir objetos que exigem atenção, pois Teradata e Fabric Data Warehouse diferem em tipos de dados, objetos de banco de dados, comandos procedimentais, design físico e utilidades operacionais.

Para o ciclo de vida de ponta a ponta, veja Planeje uma migração a partir do Teradata. Para opções de movimentação de ferramentas e dados, veja Métodos de migração para Teradata.

Important

A saída de tradução requer validação técnica e funcional. Confirme os tipos de dados Fabric Data Warehouse atuais, a área de superfície do T-SQL e as limitações antes da implantação.

Use esta referência com o Assistente de Migração

  1. Faça upload do DDL completo do Teradata e dependências como um arquivo zip de .sql arquivos e/ .bteq ou arquivos.
  2. Execute a migração de metadados e revise Mostrar objetos migrados para ajustes automáticos.
  3. Abrir Objetos para corrigir scripts que não podiam ser traduzidos ou implantados.
  4. Use os mapeamentos deste artigo para corrigir construtos não suportados ou ambíguos.
  5. Execute o script corrigido do Assistente de Migração para criar o objeto.
  6. Compare os resultados com o comportamento do Teradata e otimize as traduções literais para o Fabric.

Mapeamentos de objetos

Objeto / construto Teradata Equivalente ao Fabric DW Notes
Database Schema Os namespaces do banco de dados Teradata mapeiam para esquemas Fabric DW; as opções de tamanho e pais são removidas.
Função externa Sem suporte Rotinas de linguagem externa exigem uma reescrita manual.
Tabela estrangeira Atalho OneLake ou COPY INTO Mesas estrangeiras não são suportadas diretamente.
Função Função Funções escalares SQL e de valores de tabela mapeiam para funções do Fabric DW; atributos de rotina não suportados são removidos.
Tabela temporária global Tabela temporária local (#name) A persistência da definição global não é mantida.
Coluna identidade BIGINT IDENTITY NOT NULL Semente, incremento, limites e opções de ciclo não são preservados.
Index Nenhum equivalente direto Índices primário, secundário, único e hash não são emitidos; Fabric gerencia distribuição e clustering.
Restrição de integridade - Verificação Nenhum equivalente direto CHECK restrições devem ser aplicadas a montante ou no processo de carregamento.
Restrição de integridade - Chave estrangeira FOREIGN KEY ... NOT ENFORCED Ações referenciais são removidas, e a restrição não é aplicada.
Restrição de integridade - Chave primária / Única NONCLUSTERED ... NOT ENFORCED A restrição é mantida como metadados, e as colunas-chave são forçadas NOT NULLa .
Índice de entrada Visualização materializada ou tabela pré-agregada Índices de junção precisam de redesenho como uma estrutura persistente suportada.
Macro Procedimento armazenado Macros Teradata migram como procedimentos armazenados.
Tabela multiconjunto Table O comportamento de linhas duplicadas já está alinhado com o comportamento padrão da tabela DW do Fabric.
Procedimento Procedimento armazenado Procedimentos Teradata mapeiam para procedimentos armazenados do Fabric DW; atributos procedimentais não suportados requerem revisão.
Visão recursiva Sem suporte Expressões recursivas de tabela comum não são suportadas no Fabric Dw.
Função Função A associação a um papel corresponde a ALTER ROLE ADD MEMBER ou DROP MEMBER; ADMIN OPTION não é mantida.
Mesa de montagem Table SET a aplicação por linhas duplicadas não é preservada; adicionar metadados ou aplicação a montante, se necessário.
Estatísticas CREATE STATISTICS / UPDATE STATISTICS Coleções multicolunas são divididas em estatísticas de coluna única; alvos não suportados exigem revisão.
Esquema de armazenamento Sem suporte Esquemas de armazenamento Teradata não são mapeados para um objeto namespace do Fabric DW.
Table Table Tabelas permanentes de Teradata mapeiam para tabelas Fabric DW; opções de armazenamento físico não suportadas foram removidas.
Trigger Sem suporte Mova a lógica do gatilho para um procedimento armazenado ou para o pipeline de carga.
View View As vistas padrão mapeiam diretamente; as operações de substituição tornam-se CREATE OR ALTER.
Tabela volátil Tabela temporária local (#name) Tabelas voláteis com escopo de sessão mapeiam para tabelas temporárias locais; o qualificador de esquema é removido.

Mapeamentos de tipo de dados

Família de tipos de dados Teradata Equivalente ao Fabric DW Notes
Numérico aproximado FLOAT FLOAT, REAL, e DOUBLE PRECISION consolidar em FLOAT.
Binário VARBINARY(n) / VARBINARY(MAX) BYTE e VARBYTE famílias mapeiam para tipos binários de comprimento variável; tamanhos acima de 8000 usam MAX.
booleano Sem suporte O Teradata BOOLEAN não possui um equivalente Fabric DW suportado.
BYTEINT SMALLINT O Teradata BYTEINT se amplia para SMALLINT.
Character CHAR(n) / VARCHAR(n) / VARCHAR(MAX) O Unicode usa a colação UTF-8 do warehouse; Os comprimentos do Unicode VARCHAR são expandidos e limitados a MAX.
Coleção / Array Tipo de dado base mapeado ou array JSON ARRAY e VARRAY os wrappers são removidos; construtores de array são serializados quando necessário.
Data e hora DATE / TIME(6) / DATETIME2(6) A precisão fracionária é limitada a 6, e os deslocamentos de fuso horário não são mantidos.
Numérico exato DECIMAL(p,s) / NUMERIC DECIMAL e NUMERIC precisão e escala são mantidas onde fornecidas; a escala omitida é padrão para 0.
Número inteiro SMALLINT / INT / BIGINT Famílias inteiras diferentes do BYTEINT mapa direto.
Objetos grandes VARCHAR(MAX) / VARBINARY(MAX) CLOB mapeia para VARCHAR(MAX), e BLOB mapeia para VARBINARY(MAX).
MAP Sem suporte O Teradata MAP não possui um equivalente Fabric DW suportado.
MULTISET Table Teradata MULTISET converte para uma tabela.
JSON e XML VARCHAR(MAX) Documentos JSON e XML são armazenados como texto; JSON pode ser consultado com JSON_VALUE e OPENJSON.
Intervalo temporal VARCHAR(50) mais DATEADD lógica Fabric DW não possui tipo de intervalo escalar; armazenamento e aritmética exigem redesenho.
Período temporal VARCHAR(100) ou colunas explícitas de início/fim Valores ou limites de período devem ser modelados explicitamente; metadados de relacionamento de período são eliminados.
Espacial Sem suporte Armazene texto ou binário conhecido, ou processe dados espaciais fora do Fabric DW.
SET Table Teradata SET converte para uma tabela.
Tipo definido pelo usuário Tipo de base subjacente Fabric DW não possui um objeto de tipo definido pelo usuário; substitua e valide manualmente o tipo base.

Mapeamentos de comandos BTEQ

O BTEQ combina SQL, controle de fluxo, gerenciamento de sessões, importação e comportamento de exportação. Dependendo do comando, traduz-o para um procedimento armazenado, pipeline, operação de carregamento ou resultado explícito não suportado.

Assistente de Migração traduz scripts BTEQ em procedimentos armazenados e preserva elementos de script suportados. Revise os procedimentos armazenados gerados e os integre aos fluxos de trabalho apropriados.

Família de construtos BTEQ Fabric equivalente Notes
Controle do fluxo e ramificação Procedimento IF / / GOTOWHILE armazenado ou condições do pipeline Mova rótulos, condições e diretivas repetidas para o fluxo de controle T-SQL ou orquestração de pipeline.
Ingestão e exportação de dados COPY INTOe atividades de cópia do pipeline Fabric Importações podem se tornar COPY INTO; mover exportações e tratamento externo de arquivos para pipelines ou CETAS.
Tratamento e término de erros Códigos de retorno de procedimentos e caminhos de falha do pipeline Capture ERRORCODE e ACTIVITYCOUNT; adicione lógica do orquestrador para ERRORLEVEL e políticas de erro máximo.
Metadados e variáveis em tempo de execução Parâmetros de procedimento / @@ERROR / @@ROWCOUNT / variáveis do pipeline Mapear variáveis de ambiente e valores de status BTEQ para parâmetros, variáveis e status de execução capturados.
Wrapper de script e execução SQL Wrapper de procedimento armazenado com T-SQL traduzido Um script BTEQ pode se tornar um procedimento; extrair objetos em nível de esquema e guardar instruções falhadas para revisão.
Temporização e execução de processos WAITFOR, horários, atividades de espera, cadernos ou atividades do pipeline Mapear HANG para WAITFOR; mover comandos do sistema operacional para fora do depósito.

Instruções BTEQ não suportadas

Assistente de Migração remove as seguintes instruções BTEQ do código traduzido:

Instrução BTEQ Resultado da tradução
.DEFAULTS Removido do código
.ERROROUT, .ERRORLEVEL, e independente .MAXERROR Removido do código
.EXPORT DATA, .EXPORT REPORT, .EXPORT DIFe .EXPORT INDICDATA FILE = path Removido do código
.EXPORT RESET Removido do código
.FORMAT, .WIDTH, .FOLDLINE, .TITLEDASHES e .SIDETITLES Removido do código
.LOGOFF Removido do código
.LOGON tdpid/user,pwd Removido do código
.OS command, .TSO command e .CMS command Removido do código
.PAGELENGTH, .PAGEBREAK, .HEADINGe .FOOTING Removido do código
.ECHOREQ Removido do código
.RECORDMODE, .INDICDATA e .LARGEDATAMODE Removido do código
.RETLIMIT n,m e independente .RETCANCEL Removido do código
.RUN FILE = script.bteq Removido do código
.SEPARATOR e independente .NULL AS Removido do código
.SESSION CHARSET, .SESSION SQLFLAG, .SESSION TRANSACTIONe .SESSION DATEFORM Removido do código
.SHOW CONTROLS e .SHOW VERSIONS Removido do código

Validar código traduzido

Use testes automatizados sempre que possível e depois complete a revisão funcional com os responsáveis da carga de trabalho.

  • Compare a contagem de objetos e dependências não resolvidas.
  • Compare resultados em nível de linha para entradas representativas e de fronteira.
  • Valide precisão decimal, carimbos de data, semântica nula, enchimento de strings, colação e texto não ASCII.
  • Testes de erros, comportamento de transações, tentativas e falhas parciais.
  • Execute relatórios a jusante e modelos semânticos contra o alvo.
  • Testes de volumes de dados representativos e concorrência.
  • Revise SQL gerado para aninhamento desnecessário, processamento linha por linha e ajustes físicos específicos da fonte.
  • Mantenha SQL de origem, SQL traduzido, decisões dos revisores e evidências de teste juntos.