Sdílet prostřednictvím


Minimalizace problémů s SQL pro migrace Teradata

Tento článek je pátou částí sedmidílné série, která poskytuje pokyny k migraci z Teradata na Azure Synapse Analytics. Cílem tohoto článku jsou osvědčené postupy pro minimalizaci problémů s SQL.

Přehled

Charakteristika prostředí Teradata

Tip

Teradata byla v roce 1980 průkopnicí rozsáhlých databází SQL s využitím MPP.

V roce 1984 společnost Teradata původně vydala svůj databázový produkt. Zavedl techniky MPP (Massively Parallel Processing), které umožňují zpracování dat ve velkém měřítku efektivněji než stávající sálové technologie, které jsou v té době k dispozici. Od té doby se produkt vyvinul a má mnoho instalací mezi velkými finančními institucemi, telekomunikačními a maloobchodními společnostmi. Původní implementace používala proprietární hardware a byla připojena k sálovým počítačům – obvykle procesorům kompatibilním s IBM nebo IBM.

I když nedávná oznámení zahrnovala síťové připojení a dostupnost sady technologií Teradata v cloudu (včetně Azure), většina stávajících instalací je místně, takže mnoho uživatelů uvažuje o migraci některých nebo všech svých dat Teradata do Azure Synapse Analytics, aby získali výhody přechodu na moderní cloudové prostředí.

Tip

Mnoho existujících instalací Teradata jsou datové sklady využívající dimenzionální datový model.

Technologie Teradata se často používá k implementaci datového skladu, která podporuje komplexní analytické dotazy na velké objemy dat pomocí SQL. Dimenzionální datové modely – hvězdicová nebo sněhová vločková schémata – jsou běžné, stejně jako implementace datových tržitek pro jednotlivá oddělení.

Tato kombinace SQL a dimenzionálních datových modelů zjednodušuje migraci na Azure Synapse, protože základní koncepty a dovednosti SQL jsou přenositelné. Doporučeným přístupem je migrace existujícího datového modelu tak, jak je, aby se snížilo riziko a doba potřebná. I když je konečným záměrem provést změny datového modelu (například přechod na model trezoru dat), proveďte počáteční migraci tak, jak je, a pak proveďte změny v cloudovém prostředí Azure s využitím výkonu, elastické škálovatelnosti a nákladových výhod.

Jazyk SQL je sice standardizovaný, ale jednotliví dodavatelé mají v některých případech implementovaná proprietární rozšíření. Tento dokument popisuje potenciální rozdíly SQL, se kterými se můžete setkat při migraci ze starší verze prostředí Teradata, a obsahuje alternativní řešení.

Použití instance Teradata virtuálního počítače Azure v rámci migrace

Tip

Pomocí virtuálního počítače Azure vytvořte dočasnou instanci Teradata, abyste urychlili migraci a minimalizovali dopad na zdrojový systém.

Při spuštění migrace z místního prostředí Teradata využijte prostředí Azure. Azure poskytuje cenově dostupné cloudové úložiště a elastickou škálovatelnost k vytvoření instance Teradata v rámci virtuálního počítače v Azure, která je v souladu s cílovým Azure Synapse prostředím.

S tímto přístupem je možné použít standardní nástroje Teradata, jako je Teradata Parallel Data Transporter (nebo nástroje pro replikaci dat třetích stran, jako je replikace attunity), k efektivnímu přesunu podmnožin tabulek Teradata, které se mají migrovat do instance virtuálního počítače, a všechny úlohy migrace pak můžou probíhat v prostředí Azure. Tento přístup má několik výhod:

  • Po počáteční replikaci dat není zdrojový systém ovlivněn úlohami migrace.

  • V prostředí Azure jsou k dispozici známá rozhraní, nástroje a nástroje Teradata.

  • V prostředí Azure nedochází k žádným potenciálním problémům s dostupností šířky pásma sítě mezi místním zdrojovým systémem a cílovým cloudovým systémem.

  • Nástroje, jako je Azure Data Factory, můžou efektivně volat nástroje, jako je Teradata Parallel Transporter, a rychle a snadno migrovat data.

  • Proces migrace se orchestruje a řídí zcela v rámci prostředí Azure.

Použití Azure Data Factory k implementaci migrace řízené metadaty

Tip

Automatizujte proces migrace pomocí funkcí Azure Data Factory.

Automatizujte a orchestrujte proces migrace s využitím možností v prostředí Azure. Tento přístup také minimalizuje dopad migrace na stávající prostředí Teradata, které se už může blížit plné kapacitě.

Azure Data Factory je cloudová služba pro integraci dat, která umožňuje vytváření pracovních postupů řízených daty v cloudu pro orchestraci a automatizaci přesunu a transformace dat. Pomocí služby Data Factory můžete vytvářet a plánovat pracovní postupy řízené daty (označované jako kanály), které můžou ingestovat data z různorodých úložišť dat. Může zpracovávat a transformovat data pomocí výpočetních služeb, jako jsou Azure HDInsight Hadoop, Spark, Azure Data Lake Analytics a Azure Machine Learning.

Když vytvoříte metadata pro seznam tabulek dat, které se mají migrovat, a jejich umístění, můžete použít zařízení služby Data Factory ke správě a automatizaci částí procesu migrace. Můžete také použít Azure Synapse Pipelines.

Rozdíly SQL DDL mezi teradata a Azure Synapse

JAZYK DDL (SQL Data Definition Language)

Tip

Příkazy CREATE TABLE SQL DDL a CREATE VIEW mají standardní základní prvky, ale používají se také k definování možností specifických pro implementaci.

Standard ANSI SQL definuje základní syntaxi pro příkazy DDL, jako CREATE TABLE jsou a CREATE VIEW. Tyto příkazy se používají v teradata i Azure Synapse, ale byly také rozšířeny tak, aby umožňovaly definovat funkce specifické pro implementaci, jako je indexování, distribuce tabulek a možnosti dělení.

Následující části popisují možnosti specifické pro Teradata, které je potřeba zvážit při migraci na Azure Synapse.

Důležité informace o tabulce

Tip

Pomocí existujících indexů můžete indikovat kandidáty na indexování v migrovaném skladu.

Při migraci tabulek mezi různými technologiemi se mezi těmito dvěma prostředími fyzicky přesunou jenom nezpracovaná data a jejich popisná metadata. Jiné databázové prvky ze zdrojového systému, jako jsou indexy a soubory protokolů, se nemigrují přímo, protože nemusí být potřeba nebo se můžou v novém cílovém prostředí implementovat odlišně. Například v syntaxi Teradata CREATE TABLE neexistuje žádný ekvivalent MULTISET možnosti.

Je důležité pochopit, kde se ve zdrojovém prostředí používaly optimalizace výkonu , například indexy. To označuje, kam je možné v novém cílovém prostředí přidat optimalizaci výkonu. Pokud byl například ve zdrojovém prostředí Teradata vytvořen ne jedinečný sekundární index (NUSI), může to znamenat, že v migrované databázi Azure Synapse by se měl vytvořit ne clusterovaný index. Jiné nativní techniky optimalizace výkonu, jako je například replikace tabulek, můžou být použitelnější než přímé vytvoření indexu typu like-for-like.

Nepodporované typy tabulek Teradata

Tip

Standardní tabulky v rámci Azure Synapse můžou podporovat migrované časové řady Teradata a dočasné tabulky.

Teradata obsahuje podporu speciálních typů tabulek pro časové řady a dočasná data. Syntaxe a některé funkce pro tyto typy tabulek nejsou přímo podporovány v rámci Azure Synapse, ale data je možné migrovat do standardní tabulky s příslušnými datovými typy a indexováním nebo dělením ve sloupci datum a čas.

Teradata implementuje funkci dočasného dotazu prostřednictvím přepsání dotazu a přidává do dočasného dotazu další filtry, aby se omezil příslušný rozsah dat. Pokud se tato funkce aktuálně používá ve zdrojovém prostředí Teradata a má se migrovat, bude potřeba toto další filtrování přidat do příslušných dočasných dotazů.

Prostředí Azure obsahuje také specifické funkce pro komplexní analýzu dat časových řad ve velkém měřítku, které se označují jako time series insights – jsou zaměřené na aplikace pro analýzu dat IoT a pro tento případ použití mohou být vhodnější.

Nepodporované datové typy Teradata

Tip

Vyhodnoťte dopad nepodporovaných datových typů v rámci přípravné fáze.

Většina datových typů Teradata má v Azure Synapse přímý ekvivalent. Následující tabulka obsahuje datové typy Teradata, které nejsou podporovány v Azure Synapse spolu s doporučeným mapováním. V tabulce je typ sloupce Teradata typ, který je uložený v systémovém katalogu – například v DBC.ColumnsV.

Typ sloupce Teradata Datový typ Teradata datový typ Azure Synapse
++ TD_ANYTYPE Není podporováno v Azure Synapse
A1 POLE Není podporováno v Azure Synapse
AN POLE Není podporováno v Azure Synapse
AT ČAS ČAS
BF BYTE BINÁRNÍ
BO BLOB Datový typ objektu BLOB není přímo podporovaný, ale je možné ho nahradit binárním.
BV VARBYTE BINÁRNÍ
CF VARCHAR CHAR
CO CLOB Datový typ CLOB není přímo podporovaný, ale je možné ho nahradit funkcí VARCHAR.
CV VARCHAR VARCHAR
D DESETINNÝCH DESETINNÝCH
DA DATE (Datum) DATE (Datum)
DH INTERVAL OD DNE DO HODINY Datové typy INTERVAL nejsou v Azure Synapse podporované, ale výpočty kalendářních dat je možné provádět pomocí funkcí porovnání kalendářních dat (například DATEDIFF a DATEADD).
DM INTERVAL DEN AŽ MINUTA Datové typy INTERVAL nejsou v Azure Synapse podporované, ale výpočty kalendářních dat je možné provádět pomocí funkcí porovnání kalendářních dat (například DATEDIFF a DATEADD).
DS INTERVAL DEN AŽ SEKUNDA Datové typy INTERVAL nejsou v Azure Synapse podporované, ale výpočty kalendářních dat je možné provádět pomocí funkcí porovnání kalendářních dat (například DATEDIFF a DATEADD).
DT DATASET Datový typ DATOVÉ SADY je podporován v Azure Synapse.
DY DEN INTERVALU Datové typy INTERVAL nejsou v Azure Synapse podporované, ale výpočty kalendářních dat je možné provádět pomocí funkcí porovnání kalendářních dat (například DATEDIFF a DATEADD).
F FLOAT FLOAT
HM INTERVAL OD HODINY DO MINUTY Datové typy INTERVAL nejsou v Azure Synapse podporované, ale výpočty kalendářních dat je možné provádět pomocí funkcí porovnání kalendářních dat (například DATEDIFF a DATEADD).
HR HODINA INTERVALU Datové typy INTERVAL nejsou v Azure Synapse podporované, ale výpočty kalendářních dat je možné provádět pomocí funkcí porovnání kalendářních dat (například DATEDIFF a DATEADD).
HS INTERVAL OD HODINY DO SEKUNDY Datové typy INTERVAL nejsou v Azure Synapse podporované, ale výpočty kalendářních dat je možné provádět pomocí funkcí porovnání kalendářních dat (například DATEDIFF a DATEADD).
I1 BYTEINT TINYINT
I2 SMALLINT SMALLINT
I8 BIGINT BIGINT
I CELÉ ČÍSLO INT
JN JSON Datový typ JSON není v současné době přímo podporován v rámci Azure Synapse, ale data JSON je možné uložit do pole VARCHAR.
MI MINUTA INTERVALU Datové typy INTERVAL nejsou v Azure Synapse podporované, ale výpočty kalendářních dat je možné provádět pomocí funkcí porovnání kalendářních dat (například DATEDIFF a DATEADD).
MO INTERVAL MĚSÍC Datové typy INTERVAL nejsou v Azure Synapse podporované, ale výpočty kalendářních dat je možné provádět pomocí funkcí porovnání kalendářních dat (například DATEDIFF a DATEADD).
MS INTERVAL OD MINUTY DO SEKUNDY Datové typy INTERVAL nejsou v Azure Synapse podporované, ale výpočty kalendářních dat je možné provádět pomocí funkcí porovnání kalendářních dat (například DATEDIFF a DATEADD).
N ČÍSLO ČÍSELNÉ
PD TEČKA(DATUM) Lze převést na VARCHAR nebo rozdělit na dvě samostatná data.
PM OBDOBÍ (ČASOVÉ RAZÍTKO S ČASOVÝM PÁSMEM) Lze převést na VARCHAR nebo rozdělit na dvě samostatná časová razítka (DATETIMEOFFSET).
PS TEČKA(ČASOVÉ RAZÍTKO) Lze převést na VARCHAR nebo rozdělit na dvě samostatná časová razítka (DATETIMEOFFSET).
PT OBDOBÍ(ČAS) Lze převést na varchar nebo rozdělit do dvou samostatných časů.
PZ OBDOBÍ (ČAS S ČASOVÝM PÁSMEM) Lze převést na VARCHAR nebo rozdělit do dvou samostatných časů, ale s časovým pásmem není pro TIME podporováno.
SC DRUHÝ INTERVAL Datové typy INTERVAL nejsou v Azure Synapse podporované, ale výpočty kalendářních dat je možné provádět pomocí funkcí porovnání kalendářních dat (například DATEDIFF a DATEADD).
SZ ČASOVÉ RAZÍTKO S ČASOVÝM PÁSMEM DATETIMEOFFSET
TW ČASOVÉ RAZÍTKO DATETIME nebo DATETIME2
TZ ČAS S ČASOVÝM PÁSMEM Funkce TIME WITH TIME ZONE není podporována, protože funkce TIME se ukládá pomocí "nástěnných hodin" času pouze bez posunu časového pásma.
XM XML Datový typ XML není v současné době přímo podporován v rámci Azure Synapse, ale data XML mohou být uložena v poli VARCHAR.
YM INTERVAL OD ROKU DO MĚSÍCE Datové typy INTERVAL nejsou v Azure Synapse podporované, ale výpočty kalendářních dat je možné provádět pomocí funkcí porovnání dat (například DATEDIFF a DATEADD).
YR INTERVAL ROK Datové typy INTERVAL nejsou v Azure Synapse podporované, ale výpočty kalendářních dat je možné provádět pomocí funkcí porovnání dat (například DATEDIFF a DATEADD).

Pomocí metadat z tabulek katalogu Teradata můžete určit, jestli se má některý z těchto typů dat migrovat, a povolit to v plánu migrace. Například pomocí dotazu SQL, jako je tento, můžete najít výskyty nepodporovaných datových typů, které vyžadují pozornost.

SELECT
ColumnType, CASE
WHEN ColumnType = '++' THEN 'TD_ANYTYPE' 
WHEN ColumnType = 'A1' THEN 'ARRAY' WHEN 
ColumnType = 'AN' THEN 'ARRAY' WHEN 
ColumnType = 'BO' THEN 'BLOB'
WHEN ColumnType = 'CO' THEN 'CLOB'
WHEN ColumnType = 'DH' THEN 'INTERVAL DAY TO HOUR' WHEN 
ColumnType = 'DM' THEN 'INTERVAL DAY TO MINUTE' WHEN 
ColumnType = 'DS' THEN 'INTERVAL DAY TO SECOND' WHEN
ColumnType = 'DT' THEN 'DATASET'
WHEN ColumnType = 'DY' THEN 'INTERVAL DAY'
WHEN ColumnType = 'HM' THEN 'INTERVAL HOUR TO MINUTE' WHEN
ColumnType = 'HR' THEN 'INTERVAL HOUR'
WHEN ColumnType = 'HS' THEN 'INTERVAL HOUR TO SECOND' WHEN
ColumnType = 'JN' THEN 'JSON'
WHEN ColumnType = 'MI' THEN 'INTERVAL MINUTE' WHEN 
ColumnType = 'MO' THEN 'INTERVAL MONTH'
WHEN ColumnType = 'MS' THEN 'INTERVAL MINUTE TO SECOND' WHEN
ColumnType = 'PD' THEN 'PERIOD(DATE)'
WHEN ColumnType = 'PM' THEN 'PERIOD (TIMESTAMP WITH TIME ZONE)'
WHEN ColumnType = 'PS' THEN 'PERIOD(TIMESTAMP)' WHEN 
ColumnType = 'PT' THEN 'PERIOD(TIME)'
WHEN ColumnType = 'PZ' THEN 'PERIOD (TIME WITH TIME ZONE)' WHEN
ColumnType = 'SC' THEN 'INTERVAL SECOND'
WHEN ColumnType = 'SZ' THEN 'TIMESTAMP WITH TIME ZONE' WHEN
ColumnType = 'XM' THEN 'XML'
WHEN ColumnType = 'YM' THEN 'INTERVAL YEAR TO MONTH' WHEN
ColumnType = 'YR' THEN 'INTERVAL YEAR'
END AS Data_Type,
COUNT (*) AS Data_Type_Count FROM
DBC.ColumnsV
WHERE DatabaseName IN ('UserDB1', 'UserDB2', 'UserDB3') -- select databases to be migrated
GROUP BY 1,2
ORDER BY 1;

Tip

Nástroje a služby třetích stran můžou automatizovat úlohy mapování dat.

Existují dodavatelé třetích stran, kteří nabízejí nástroje a služby pro automatizaci migrace, včetně mapování datových typů. Pokud se již v prostředí Teradata používá nástroj ETL třetí strany, například Informatica nebo Talend, můžou tyto nástroje implementovat jakékoli požadované transformace dat.

Generování jazyka DDL (Data Definition Language)

Tip

Použití existujících metadat Teradata k automatizaci generování CREATE TABLE a CREATE VIEW DDL pro Azure Synapse.

Upravte existující teradata CREATE TABLE a skripty a CREATE VIEW vytvořte ekvivalentní definice s upravenými datovými typy, jak je popsáno výše v případě potřeby. Obvykle to zahrnuje odebrání dalších klauzulí specifických pro Teradata, jako FALLBACK je nebo MULTISET.

Všechny informace, které určují aktuální definice tabulek a zobrazení v existujícím prostředí Teradata, se však uchovávají v tabulkách systémového katalogu. Toto je nejlepší zdroj těchto informací, protože je zaručeno, že budou aktuální a úplné. Mějte na paměti, že uživatelsky udržovaná dokumentace nemusí být synchronizovaná s aktuálními definicemi tabulek.

Přístup k těmto informacím prostřednictvím zobrazení do katalogu, například DBC.ColumnsV a generování ekvivalentních CREATE TABLE příkazů DDL pro ekvivalentní tabulky v Azure Synapse.

Tip

Nástroje a služby třetích stran můžou automatizovat úlohy mapování dat.

Existují partneři Microsoftu , kteří nabízejí nástroje a služby pro automatizaci migrace, včetně mapování datových typů. Pokud se v prostředí Teradata již používá nástroj ETL třetí strany, jako je Informatica nebo Talend, může tento nástroj implementovat všechny požadované transformace dat.

Rozdíly SQL DML mezi teradata a Azure Synapse

Jazyk DML (SQL Data Manipulation Language)

Tip

Příkazy SELECTSQL DML , INSERTa UPDATE mají standardní základní prvky, ale můžou také implementovat různé možnosti syntaxe.

Standard ANSI SQL definuje základní syntaxi pro příkazy DML, jako SELECTjsou , INSERTUPDATE, a DELETE. Tyto příkazy používají teradata i Azure Synapse, ale v některých případech existují rozdíly v implementaci.

Následující části popisují příkazy DML specifické pro Teradata, které byste měli zvážit při migraci do Azure Synapse.

Rozdíly v syntaxi SQL DML

Mějte na paměti tyto rozdíly v syntaxi jazyka DML (SQL Data Manipulation Language) mezi Teradata SQL a Azure Synapse (T-SQL) při migraci:

  • QUALIFY: Teradata podporuje QUALIFY operátor. Příklad:

    SELECT col1
    FROM tab1
    WHERE col1='XYZ'
    QUALIFY ROW_NUMBER () OVER (PARTITION by
    col1 ORDER BY col1) = 1;
    

    Ekvivalentní syntaxe Azure Synapse je:

    SELECT * FROM (
    SELECT col1, ROW_NUMBER () OVER (PARTITION by col1 ORDER BY col1) rn
    FROM tab1 WHERE col1='XYZ'
    ) WHERE rn = 1;
    
  • Aritmetika data: Azure Synapse obsahuje operátory, jako DATEADD jsou a DATEDIFF které lze použít u DATE polí neboDATETIME. Teradata podporuje přímé odčítání kalendářních dat, například SELECT DATE1 - DATE2 FROM...

  • Jako GROUP BY řadový zadejte explicitně název sloupce T-SQL.

  • LIKE ANY: Teradata podporuje LIKE ANY syntaxi, například:

    SELECT * FROM CUSTOMER
    WHERE POSTCODE LIKE ANY
    ('CV1%', 'CV2%', 'CV3%');
    

    Ekvivalent syntaxe Azure Synapse je:

    SELECT * FROM CUSTOMER
    WHERE
    (POSTCODE LIKE 'CV1%') OR (POSTCODE LIKE 'CV2%') OR (POSTCODE LIKE 'CV3%');
    
  • V závislosti na nastavení systému můžou být porovnávání znaků v Teradata ve výchozím nastavení nerozlišující malá a velká písmena. V Azure Synapse se při porovnávání znaků vždy rozlišují velká a malá písmena.

Použití funkce EXPLAIN k ověření starší verze SQL

Tip

K vyhledání potenciálních problémů s migrací použijte skutečné dotazy z existujících protokolů dotazů systému.

Jedním ze způsobů, jak otestovat kompatibilitu starší verze Teradata SQL s Azure Synapse, je zachytit některé reprezentativní příkazy SQL ze starších protokolů dotazů systému, před tyto dotazy zadat předponu EXPLAIN a (za předpokladu, že migrovaný datový model "like-for- like" v Azure Synapse se stejnými názvy tabulek a sloupců) spustit tyto EXPLAIN příkazy v Azure Synapse. Jakýkoli nekompatibilní SQL vyvolá chybu – tyto informace použijte k určení měřítka úlohy přepočítávání. Tento přístup nevyžaduje načtení dat do prostředí Azure, pouze vytvoření příslušných tabulek a zobrazení.

Funkce, uložené procedury, triggery a sekvence

Tip

V rámci přípravné fáze vyhodnoťte počet a typ migrovaných ne-datových objektů.

Při migraci z vyspělého staršího prostředí datového skladu, jako je Teradata, je často potřeba migrovat do nového cílového prostředí jiné prvky než jednoduché tabulky a zobrazení. Mezi příklady patří funkce, uložené procedury, triggery a sekvence.

V rámci přípravné fáze vytvořte inventář objektů, které je potřeba migrovat, a definujte metody pro jejich zpracování. Pak v plánu projektu přiřaďte odpovídající přidělení zdrojů.

V prostředí Azure můžou existovat zařízení, která nahrazují funkce implementované jako funkce nebo uložené procedury v prostředí Teradata. V tomto případě je často efektivnější používat integrovaná zařízení Azure než překódovat funkce Teradata.

Tip

Produkty a služby třetích stran můžou automatizovat migraci jiných než datových prvků.

Partneři Microsoftu nabízejí nástroje a služby, které můžou migraci automatizovat.

Další informace o každém z těchto prvků najdete v následujících částech.

Functions

Stejně jako u většiny databázových produktů podporuje Teradata systémové funkce a uživatelem definované funkce v rámci implementace SQL. Při migraci na jinou databázovou platformu, jako je Azure Synapse, jsou k dispozici běžné systémové funkce, které je možné migrovat beze změny. Některé systémové funkce můžou mít trochu odlišnou syntaxi, ale požadované změny je možné automatizovat. Systémové funkce, u kterých neexistuje žádný ekvivalent, například libovolné uživatelem definované funkce, může být potřeba překódovat pomocí jazyků dostupných v cílovém prostředí. Azure Synapse k implementaci uživatelem definovaných funkcí používá oblíbený jazyk Transact-SQL.

Uložené procedury

Většina moderních databázových produktů umožňuje ukládání procedur v databázi. Teradata poskytuje jazyk SPL pro tento účel. Uložená procedura obvykle obsahuje příkazy SQL a určitou procedurální logiku a může vrátit data nebo stav.

Vyhrazené fondy SQL Azure Synapse Analytics také podporují uložené procedury pomocí T-SQL, takže pokud musíte uložené procedury migrovat, překódujte je odpovídajícím způsobem.

Aktivační události

Azure Synapse nepodporuje vytváření triggerů, ale můžete je implementovat v rámci Azure Data Factory.

Sekvence

Azure Synapse sekvence se zpracovávají podobným způsobem jako v teradata. K vytvoření náhradních klíčů nebo spravované identity se používá identita.

Mapování Teradata na T-SQL

Tato tabulka ukazuje mapování datového typu Azure Synapse SQL kompatibilní s teradata na T-SQL:

Datový typ Teradata Azure Synapse datového typu SQL
 bigint  bigint
 bool  bit
 boolean  bit
 byteint  tinyint
 char [(p)]  char [(p)]
 char se liší [(p)]  varchar [(p)]
 znak [(p)]  char [(p)]
 znak lišící se [(p)]  varchar [(p)]
 date  date
 datetime  datetime
 dec [(p[,s])]  decimal [(p[,s])]
 decimal [(p[,s])]  decimal [(p[,s])]
 double  float(53)
 dvojitá přesnost  float(53)
 float [(p)]  float [(p)]
 float4  float(53)
 float8  float(53)
 int  int
 int1 tinyint
 int2 smallint
 int4 int
 int8 bigint
 integer integer
 interval Nepodporuje se
 national char varying [(p)] nvarchar [(p)]
 národní znak [(p)] nchar [(p)]
 národní charakter lišící se [(p)]  nvarchar [(p)]
 nchar [(p)]  nchar [(p)]
 numeric [(p[,s])]  numeric [(p[,s])
 nvarchar [(p)]  nvarchar [(p)]
 real  real
 smallint  smallint
 time  time
 čas s časovým pásmem  Datetimeoffset
 čas bez časového pásma  time
 timespan  Nepodporuje se
 časové razítko  datetime2
 timetz  Datetimeoffset
 varchar [(p)]  varchar [(p)]

Souhrn

Typické starší instalace Teradata se implementují způsobem, který usnadňuje migraci do Azure Synapse. Používají SQL pro analytické dotazy na velké objemy dat a mají určitou formu dimenzionálního datového modelu. Díky těmto faktorům jsou vhodnými kandidáty pro migraci na Azure Synapse.

Pokud chcete minimalizovat úlohu migrace skutečného kódu SQL, postupujte podle těchto doporučení:

  • Počáteční migrace datového skladu by měla proběhnout tak, jak je, aby se minimalizovalo riziko a čas potřebný i v případě, že konečné prostředí bude obsahovat jiný datový model, například trezor dat.

  • Zvažte použití instance Teradata na virtuálním počítači Azure jako odrazového můstku v rámci procesu migrace.

  • Seznamte se s rozdíly mezi implementací Teradata SQL a Azure Synapse.

  • Pomocí metadat a protokolů dotazů ze stávající implementace Teradata vyhodnoťte dopad rozdílů a naplánujte přístup ke zmírnění.

  • Automatizujte proces všude, kde je to možné, abyste minimalizovali chyby, rizika a čas pro migraci.

  • Pokud chcete migraci zjednodušit, zvažte použití specializovaných partnerů a služeb Microsoftu .

Další kroky

Další informace o nástrojích od Microsoftu a třetích stran najdete v následujícím článku v této sérii: Nástroje pro migraci datového skladu Teradata do Azure Synapse Analytics.