Vertaal Teradata SQL voor Fabric Data Warehouse

Van toepassing op:✅ Warehouse in Microsoft Fabric

Migration Assistant vertaalt ondersteunde Teradata-metadata naar Fabric-compatibele T-SQL. Gebruik deze referentie om automatische aanpassingen te bekijken en objecten te corrigeren die aandacht vereisen, omdat Teradata en Fabric Data Warehouse verschillen in datatypes, databaseobjecten, procedurele commando's, fysiek ontwerp en operationele hulpprogramma's.

Voor de end-to-end levenscyclus, zie Plan een migratie van Teradata. Voor opties voor tool- en databeweging, zie Migratiemethoden voor Teradata.

Belangrijk

Vertaaloutput vereist technische en functionele validatie. Bevestig de huidige Fabric Data Warehouse datatypes, T-SQL oppervlakte en beperkingen voordat je het uitrolt.

Gebruik deze referentie met Migration Assistant

  1. Upload volledige Teradata DDL en afhankelijkheden als een zip-archief van .sql en/of .bteq bestanden.
  2. Voer metadata-migratie uit en bekijk geïmporteerde objecten voor automatische aanpassingen.
  3. Open Objects om scripts te fixen die niet vertaald of uitgerold konden worden.
  4. Gebruik de mappings in dit artikel om niet-ondersteunde of ambigue constructies te corrigeren.
  5. Voer het gecorrigeerde script uit vanuit Migration Assistant om het object te maken.
  6. Vergelijk resultaten met het gedrag van Teradata en optimaliseer letterlijke vertalingen voor Fabric.

Objectmappings

Teradata-object / constructie Fabric DW-equivalent Notes
gegevensbank Schema Teradata-databasenamespaces worden toegewezen aan Fabric DW-schema's; grootte- en ouderopties zijn verwijderd.
Externe functie Niet ondersteund Routines in externe taal vereisen een handmatige herschrijving.
Buitenlandse tafel OneLake kortere route of COPY INTO Buitenlandse tabellen worden niet direct ondersteund.
Functie Functie SQL-scalair- en tabelwaardige functies worden gekoppeld aan Fabric DW-functies; niet-ondersteunde routineattributen worden verwijderd.
Globale tijdelijke tabel Lokale tijdelijke tabel (#name) Persistentie van de globale definitie wordt niet behouden.
Identiteitskolom BIGINT IDENTITY NOT NULL Seed-, increment-, bound- en cycle-opties worden niet behouden.
Index Geen direct equivalent Primaire, secundaire, unieke en hash-indexen worden niet uitgezonden; Fabric beheert distributie en clustering.
Integriteitsbeperking - Controleer Geen direct equivalent CHECK beperkingen moeten upstream of tijdens het laadproces worden gehandhaafd.
Integriteitsbeperking - Vreemde sleutel FOREIGN KEY ... NOT ENFORCED Referentiehandelingen worden verwijderd en de beperking wordt niet gehandhaafd.
Integriteitsbeperking - Primaire sleutel / Uniek NONCLUSTERED ... NOT ENFORCED De beperking wordt behouden als metadata, en sleutelkolommen worden geforceerd NOT NULL.
Join-index Gematerialiseerde weergave of vooraf geaggregeerde tabel Join-indexen vereisen herontwerp als een ondersteunde persisted structuur.
Macroniveau Geprogrammeerde procedure Teradata-macro's migreren als opgeslagen procedures.
Multiset-tabel Table Het gedrag van dubbele rijen komt al overeen met het standaard gedrag van de Fabric DW-tabel.
Procedure Geprogrammeerde procedure Teradata-procedures worden toegewezen aan Fabric DW-opgeslagen procedures; niet-ondersteunde procedurele attributen vereisen beoordeling.
Recursieve weergave Niet ondersteund Recursieve uitdrukkingen van gemeenschappelijke tabellen worden niet ondersteund in Fabric DW.
Role Role Rollidmaatschap wordt gekoppeld aan ALTER ROLE ADD MEMBER of DROP MEMBER; ADMIN OPTION wordt niet behouden.
Dektafel Table SET Duplicaat-rijhandhaving wordt niet behouden; voeg metadata toe of upstream handhaving indien nodig.
Statistics CREATE STATISTICS / UPDATE STATISTICS Meerkolomscollecties zijn opgesplitst in statistieken met één kolom; niet-ondersteunde doelen moeten worden herzien.
Opslagschema Niet ondersteund Teradata-opslagschema's worden niet gemapt naar een Fabric DW namespace-object.
Table Table Permanente Teradata-tabellen worden gekoppeld aan Fabric DW-tabellen; niet-ondersteunde fysieke opslagopties worden verwijderd.
Trigger Niet ondersteund Verplaats triggerlogica naar een opgeslagen procedure of de laadpijplijn.
View View Standaardweergaven worden direct afgebeeld; vervangingsbewerkingen worden CREATE OR ALTER.
Vluchtige tabel Lokale tijdelijke tabel (#name) Sessie-scoped vluchtige tabellen worden gekoppeld aan lokale tijdelijke tabellen; de schema-kwalificatie wordt verwijderd.

Gegevenstypetoewijzingen

Teradata-datatypefamilie Fabric DW-equivalent Notes
Benaderende numeriek FLOAT FLOAT, REAL, en DOUBLE PRECISION consolideer tot FLOAT.
Binary VARBINARY(n) / VARBINARY(MAX) BYTE en VARBYTE families worden afgebeeld naar variabele lengte binaire types; groottes boven 8000 gebruiken MAX.
Boolean Niet ondersteund Teradata BOOLEAN heeft geen ondersteund Fabric DW-equivalent.
BYTEINT SMALLINT Teradata BYTEINT verbreedt zich tot SMALLINT.
Karakter CHAR(n) / VARCHAR(n) / VARCHAR(MAX) Unicode gebruikt de warehouse-UTF-8 collatie; Unicode-lengtes VARCHAR worden uitgebreid en gemaximeerd op MAX.
Collectie / Array Maped base datatype of JSON-array ARRAY en VARRAY wrappers worden verwijderd; arrayconstructors worden waar nodig geserialiseerd.
Datum en tijd DATE / TIME(6) / DATETIME2(6) Fractionele precisie is beperkt tot 6, en tijdzone-verschuivingen worden niet behouden.
Exacte numeriek DECIMAL(p,s) / NUMERIC DECIMAL en NUMERIC precisie en schaal behouden waar geleverd; weggelaten schaal staat standaard op 0.
Integer SMALLINT / INT / BIGINT Integerfamilies anders dan BYTEINT direct afbeelden.
Grote objecten VARCHAR(MAX) / VARBINARY(MAX) CLOB wordt toegewezen aan VARCHAR(MAX), en BLOB wordt toegewezen aan VARBINARY(MAX).
MAP Niet ondersteund Teradata MAP heeft geen ondersteund Fabric DW-equivalent.
MULTISET Table Teradata MULTISET wordt omgezet in een tabel.
JSON en XML VARCHAR(MAX) JSON- en XML-documenten worden opgeslagen als tekst; JSON kan worden bevraagd met JSON_VALUE en OPENJSON.
Temporeel interval VARCHAR(50) plus DATEADD logica Fabric DW heeft geen scalair intervaltype; opslag en rekenkunde vereisen herontwerp.
Tijdsperiode VARCHAR(100) of expliciete begin-/eindkolommen Periodewaarden of grenzen moeten expliciet worden gemodelleerd; metadata van perioderelaties wordt weggelaten.
Spatial Niet ondersteund Bewaar bekende tekst of binaire gegevens, of verwerk ruimtelijke data buiten Fabric DW.
SET Table Teradata SET wordt omgezet in een tabel.
Door de gebruiker gedefinieerd type Onderliggend basistype Fabric DW heeft geen door de gebruiker gedefinieerd type-object; vervang en valideer het basistype handmatig.

BTEQ-commando-mappingen

BTEQ combineert SQL, flowcontrol, sessiebeheer, import- en exportgedrag. Afhankelijk van het commando vertaal je het naar een opgeslagen procedure, pijplijn, laadoperatie of expliciet, niet-ondersteund resultaat.

Migration Assistant vertaalt BTEQ-scripts naar opgeslagen procedures en bewaart ondersteunde scriptelementen. Bekijk de gegenereerde opgeslagen procedures en integreer ze in de juiste workflows.

BTEQ constructfamilie Fabric-equivalent Notes
Regelstroom en vertakkingen Opgeslagen procedureIF / / GOTOWHILE- of pijplijncondities Verplaats labels, voorwaarden en repeat-instructies naar T-SQL control flow of pipeline orchestration.
Data-opname en export COPY INTOen Fabric-pijplijnkopieeractiviteiten Importen kunnen worden COPY INTO; verplaatsen exporten en externe bestandsverwerking naar pijplijnen of CETAS.
Foutafhandeling en beëindiging Procedure-retourcodes en pijplijnfaalpaden Capture ERRORCODE en ACTIVITYCOUNT; voeg orchestratorlogica toe voor ERRORLEVEL en maximum-error beleid.
Runtime-metadata en variabelen Procedureparameters / @@ERROR / @@ROWCOUNT / pijplijnvariabelen Kaart omgevingsvariabelen en BTEQ-statuswaarden toe aan parameters, variabelen en vastgelegde uitvoeringsstatus.
Scriptwrapper en SQL-uitvoering Stored procedure wrapper met vertaalde T-SQL Een BTEQ-script kan een procedure worden; haal schema-niveau objecten uit en bewaar mislukte statements voor beoordeling.
Timing en procesuitvoering WAITFOR, planningen, wachtactiviteiten, notitieboekjes of pipeline-activiteiten Map HANG naar WAITFOR; verplaats besturingssysteemcommando's buiten het magazijn.

Niet-ondersteunde BTEQ-statements

Migration Assistant verwijdert de volgende BTEQ-instructies uit de vertaalde code:

BTEQ-verklaring Vertaalresultaat
.DEFAULTS Verwijderd uit de code
.ERROROUT, .ERRORLEVEL, en standalone .MAXERROR Verwijderd uit de code
.EXPORT DATA, .EXPORT REPORT, .EXPORT DIF en .EXPORT INDICDATA FILE = path Verwijderd uit de code
.EXPORT RESET Verwijderd uit de code
.FORMAT, .WIDTH, .FOLDLINE, .TITLEDASHESen .SIDETITLES Verwijderd uit de code
.LOGOFF Verwijderd uit de code
.LOGON tdpid/user,pwd Verwijderd uit de code
.OS command, .TSO command en .CMS command Verwijderd uit de code
.PAGELENGTH, .PAGEBREAK, .HEADING en .FOOTING Verwijderd uit de code
.ECHOREQ Verwijderd uit de code
.RECORDMODE, .INDICDATA en .LARGEDATAMODE Verwijderd uit de code
.RETLIMIT n,m en standalone .RETCANCEL Verwijderd uit de code
.RUN FILE = script.bteq Verwijderd uit de code
.SEPARATOR en standalone .NULL AS Verwijderd uit de code
.SESSION CHARSET, .SESSION SQLFLAG, .SESSION TRANSACTION en .SESSION DATEFORM Verwijderd uit de code
.SHOW CONTROLS en .SHOW VERSIONS Verwijderd uit de code

Valideer vertaalde code

Gebruik waar mogelijk geautomatiseerde tests, en voer vervolgens functionele beoordelingen uit met de eigenaren van de werklast.

  • Vergelijk het aantal objecten en onopgeloste afhankelijkheden.
  • Vergelijk de resultaten op rijniveau voor representatieve en grensinvoer.
  • Valideer decimale precisie, tijdstempels, null-semantiek, stringopvulling, collatie en niet-ASCII-tekst.
  • Test foutpaden, transactiegedrag, herpogingen en gedeeltelijke fouten.
  • Voer downstream rapporten en semantische modellen uit op het doelwit.
  • Test representatieve datavolumes en gelijktijdigheid.
  • Bekijk gegenereerde SQL voor onnodige nesting, rij-voor-rij verwerking en bronspecifieke fysieke afstemming.
  • Behoud bron-SQL, vertaalde SQL, beoordelingsbeslissingen van beoordelaars en test bewijs samen.