Översätt Teradata SQL för Fabric Data Warehouse

gäller för:✅ Warehouse i Microsoft Fabric

Migration Assistant översätter stödd Teradata-metadata till Fabric-kompatibel T-SQL. Använd denna referens för att granska automatiska justeringar och fixa objekt som kräver uppmärksamhet eftersom Teradata och Fabric Data Warehouse skiljer sig åt i datatyper, databasobjekt, procedurkommandon, fysisk design och operativa verktyg.

För den kompletta livscykeln, se Planera en migration från Teradata. För verktyg och datarörelsealternativ, se Migreringsmetoder för Teradata.

Important

Översättningsresultat kräver teknisk och funktionell validering. Bekräfta aktuella Fabric Data Warehouse datatyper, T-SQL-yta och begränsningar innan driftsättning.

Använd denna referens med Migration Assistant

  1. Ladda upp komplett Teradata DDL och beroenden som ett zip-arkiv av .sql och/eller .bteq filer.
  2. Kör metadatamigrering och granska Visa migrerade objekt för automatiska justeringar.
  3. Öppna objekt för att fixa skript som inte kunde översättas eller distribueras.
  4. Använd mappningarna i denna artikel för att korrigera ostödda eller tvetydiga konstruktioner.
  5. Kör det korrigerade skriptet från Migration Assistant för att skapa objektet.
  6. Jämför resultat med Teradatas beteende och optimera bokstavliga översättningar för Fabric.

Objektmappningar

Teradata-objekt / konstruktion Fabric DW:s motsvarighet Notes
Database Schema Teradata-databasens namnrymder mappas till Fabric DW-scheman; storleks- och föräldraalternativ tas bort.
Extern funktion Stöds ej Externspråksrutiner kräver en manuell omskrivning.
Utländsk tabell OneLake-genväg eller COPY INTO Utländska tabeller stöds inte direkt.
Function Function SQL-skalär- och tabellvärda funktioner mappas till Fabric DW-funktioner; icke-stödda rutinattribut tas bort.
Global tillfällig tabell Lokal temporär tabell (#name) Global definitionens persistens behålls inte.
Identitetskolumn BIGINT IDENTITY NOT NULL Seed-, increment-, bound- och cykelalternativ bevaras inte.
Index Ingen direkt motsvarighet Primära, sekundära, unika och hashindex emitteras inte; Fabric hanterar distribution och klustring.
Integritetsbegränsning - Kontroll Ingen direkt motsvarighet CHECK restriktioner måste upprätthållas uppströms eller i lastningsprocessen.
Integritetsbegränsning – Främmande nyckel FOREIGN KEY ... NOT ENFORCED Referensåtgärder tas bort och begränsningen upprätthålls inte.
Integritetsbegränsning - Primärnyckel / Unik NONCLUSTERED ... NOT ENFORCED Begränsningen behålls som metadata, och nyckelkolumner tvingas NOT NULL.
Join-index Materialiserad vy eller föraggregerad tabell Join-index kräver omdesign som en stödd persisterad struktur.
Macro Lagrat förfarande Teradata-makron migrerar som lagrade procedurer.
Multiset-tabell Tabell Beteendet för dubblettrader stämmer redan överens med standardbeteendet i Fabric DW-tabellen.
Procedure Lagrat förfarande Teradata-procedurer mappas till Fabric DW-lagrade procedurer; icke-stödda procedurattribut kräver granskning.
Rekursiv vy Stöds ej Rekursiva vanliga tabelluttryck stöds inte i Fabric DW.
Role Role Rollmedlemskap motsvarar ALTER ROLE ADD MEMBER eller DROP MEMBER; ADMIN OPTION behålls inte.
Dukbord Tabell SET Dubbelradskontroll bevaras inte; lägg till metadata eller upstream-övervakning om det behövs.
Statistics CREATE STATISTICS / UPDATE STATISTICS Flerkolumnssamlingar delas upp i enkolumnsstatistik; icke-stödda mål kräver granskning.
Lagringsschema Stöds ej Teradata-lagringsscheman mappas inte till ett Fabric DW-namnrymdsobjekt.
Tabell Tabell Permanenta Teradata-tabeller mappas till Fabric DW-tabeller; icke-stödda fysiska lagringsalternativ tas bort.
Trigger Stöds ej Flytta triggerlogik till en lagrad procedur eller laddningspipelinen.
View View Standardvyer avbildar direkt; ersättningsoperationer blir CREATE OR ALTER.
Flyktig tabell Lokal temporär tabell (#name) Sessionsbegränsade flyktiga tabeller mappas till lokala temporära tabeller; schema-kvalificeraren tas bort.

Datatypsmappningar

Teradata-typsfamilj Fabric DW:s motsvarighet Notes
Approximativ numerisk FLOAT FLOAT, REAL, och DOUBLE PRECISION konsolidera till FLOAT.
Binary VARBINARY(n) / VARBINARY(MAX) BYTE och VARBYTE familjer avbildar till binära typer med variabel längd; storlekar över 8000 använder MAX.
Boolean Stöds ej Teradata BOOLEAN har ingen stödd motsvarighet till Fabric DW.
BYTEINT SMALLINT Teradata BYTEINT vidgas till SMALLINT.
Karaktär CHAR(n) / VARCHAR(n) / VARCHAR(MAX) Unicode använder lagerets UTF-8-sortering; Unicode-längder VARCHAR utökas och begränsas vid MAX.
Samling / Array Mappad basdatatyp eller JSON-array ARRAY och VARRAY wrappers tas bort; arraykonstruktörer serialiseras där det behövs.
Datum och tid DATE / TIME(6) / DATETIME2(6) Fraktionell precision är begränsad till 6, och tidszonsförskjutningar behålls inte.
Exakt numerisk DECIMAL(p,s) / NUMERIC DECIMAL och NUMERIC precision och skala behålls där det tillhandahålls; utelämnad skala är som standard 0.
Integer SMALLINT / INT / BIGINT Heltalsfamiljer som BYTEINT inte avbildar direkt.
Stora objekt VARCHAR(MAX) / VARBINARY(MAX) CLOB mappas till VARCHAR(MAX) och BLOB mappas till VARBINARY(MAX).
MAP Stöds ej Teradata MAP har ingen stödd motsvarighet till Fabric DW.
MULTISET Tabell Teradata MULTISET omvandlas till en tabell.
JSON och XML VARCHAR(MAX) JSON- och XML-dokument lagras som text; JSON kan förfrågas med JSON_VALUE och OPENJSON.
Tidsintervall VARCHAR(50) Plus DATEADD logik Fabric DW har ingen skalär intervalltyp; lagring och aritmetik kräver omdesign.
Tidsperiod VARCHAR(100) eller explicita start-/slutkolumner Periodvärden eller gränser måste modellas explicit; metadata för periodrelationer tas bort.
Spatial Stöds ej Lagra välkänd text eller binär, eller bearbeta rumslig data utanför Fabric DW.
SET Tabell Teradata SET omvandlas till en tabell.
Användardefinierad typ Underliggande bastyp Fabric DW har inget användardefinierat typobjekt; ersätt och validera bastypen manuellt.

BTEQ-kommandomappningar

BTEQ kombinerar SQL, flödeskontroll, sessionshantering, import- och exportbeteende. Beroende på kommandot, översätt det till en lagrad procedur, pipeline, lastoperation eller explicit resultat som inte stöds.

Migration Assistant översätter BTEQ-skript till lagrade procedurer och bevarar stödda skriptelement. Gå igenom de genererade lagrade procedurerna och integrera dem i lämpliga arbetsflöden.

BTEQ-konstruktionsfamiljen Fabric-motsvarighet Notes
Styrflöde och förgrening Lagrad procedur IF / / GOTOWHILE eller pipelinevillkor Flytta etiketter, villkor och repeat-direktiv till T-SQL-kontrollflöde eller pipeline-orkestrering.
Datainsamling och export COPY INTOoch kopieringsaktiviteter för Fabric-pipeline Importer kan bli COPY INTO; flytta exporter och extern filhantering till pipelines eller CETAS.
Felhantering och avslutning Procedurreturkoder och pipeline-felvägar Fånga ERRORCODE och ACTIVITYCOUNT; lägg till orkestratorlogik för ERRORLEVEL och maximala felpolicyer.
Körtidsmetadata och variabler Procedurparametrar / @@ERROR / @@ROWCOUNT / pipelinevariabler Kartlägg miljövariabler och BTEQ-statusvärden till parametrar, variabler och fångad exekveringsstatus.
Skriptomslag och SQL-exekvering Lagrad procedur-wrapper med översatt T-SQL Ett BTEQ-skript kan bli en procedur; extrahera schemanivåobjekt och spara misslyckade satser för granskning.
Tidpunkt och processutförande WAITFOR, scheman, väntaktiviteter, anteckningsböcker eller pipeline-aktiviteter Mappa HANG till WAITFOR; flytta operativsystemkommandon utanför lagret.

Icke-stödda BTEQ-uttalanden

Migration Assistant tar bort följande BTEQ-satser från den översatta koden:

BTEQ-uttalande Översättningsresultat
.DEFAULTS Borttagen från koden
.ERROROUT, .ERRORLEVEL, och fristående .MAXERROR Borttagen från koden
.EXPORT DATA, .EXPORT REPORT, .EXPORT DIFoch .EXPORT INDICDATA FILE = path Borttagen från koden
.EXPORT RESET Borttagen från koden
.FORMAT, .WIDTH, .FOLDLINE, .TITLEDASHES, och .SIDETITLES Borttagen från koden
.LOGOFF Borttagen från koden
.LOGON tdpid/user,pwd Borttagen från koden
.OS command, .TSO command och .CMS command Borttagen från koden
.PAGELENGTH, .PAGEBREAK, .HEADINGoch .FOOTING Borttagen från koden
.ECHOREQ Borttagen från koden
.RECORDMODE, .INDICDATA och .LARGEDATAMODE Borttagen från koden
.RETLIMIT n,m och fristående .RETCANCEL Borttagen från koden
.RUN FILE = script.bteq Borttagen från koden
.SEPARATOR och fristående .NULL AS Borttagen från koden
.SESSION CHARSET, .SESSION SQLFLAG, .SESSION TRANSACTIONoch .SESSION DATEFORM Borttagen från koden
.SHOW CONTROLS och .SHOW VERSIONS Borttagen från koden

Validera översatt kod

Använd automatiserade tester där det är möjligt, och genomför sedan en funktionell granskning med arbetsbelastningsägarna.

  • Jämför objektantal och olösta beroenden.
  • Jämför radnivåresultat för representativa och gränsindata.
  • Validera decimalprecision, tidsstämplar, nullsemantik, strängutfyllnad, kollation och icke-ASCII-text.
  • Testa felvägar, transaktionsbeteende, omförsök och partiella misslyckanden.
  • Kör nedströmsrapporter och semantiska modeller mot målet.
  • Testa representativa datavolymer och samtidighet.
  • Review-genererad SQL för onödig nästling, rad-för-rad bearbetning och källkodsspecifik fysisk justering.
  • Behåll käll-SQL, översatt SQL, granskarbeslut och testa bevis tillsammans.