Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Dit artikel is deel vijf van een zevendelige reeks die richtlijnen biedt voor het migreren van Oracle naar Azure Synapse Analytics. De focus van dit artikel is aanbevolen procedures voor het minimaliseren van SQL-problemen.
Overzicht
Kenmerken van Oracle-omgevingen
Het oorspronkelijke databaseproduct van Oracle, uitgebracht in 1979, was een commerciële RELATIONELE SQL-database voor OLTP-toepassingen (On-Line Transaction Processing), met veel lagere transactietarieven dan vandaag. Sinds die eerste release is de Oracle-omgeving uitgegroeid tot veel complexer en omvat talloze functies. De functies omvatten client-serverarchitecturen, gedistribueerde databases, parallelle verwerking, gegevensanalyse, hoge beschikbaarheid, datawarehousing, technieken voor gegevens in het geheugen en ondersteuning voor cloudexemplaren.
Advies
Oracle heeft het concept 'datawarehouse-apparaat' in het begin van de jaren 2000 geïntroduceerd.
Vanwege de kosten en complexiteit van het onderhouden en upgraden van verouderde on-premises Oracle-omgevingen willen veel bestaande Oracle-gebruikers profiteren van de innovaties die worden geboden door cloudomgevingen. Met moderne cloudomgevingen, zoals cloud, IaaS en PaaS, kunt u taken zoals infrastructuuronderhoud en platformontwikkeling delegeren aan de cloudprovider.
Veel datawarehouses die ondersteuning bieden voor complexe analytische SQL-query's op grote gegevensvolumes, maken gebruik van Oracle-technologieën. Deze datawarehouses hebben meestal een dimensional gegevensmodel, zoals ster- of sneeuwvlokschema's, en gebruiken datamarts voor afzonderlijke afdelingen.
Tip
Veel bestaande Oracle-installaties zijn datawarehouses die gebruikmaken van een dimensional gegevensmodel.
De combinatie van SQL- en dimensionale gegevensmodellen in Oracle vereenvoudigt de migratie naar Azure Synapse omdat de concepten van het SQL- en basisgegevensmodel overdraagbaar zijn. Microsoft raadt u aan om uw bestaande gegevensmodel naar Azure te verplaatsen om de risico's, inspanningen en migratietijd te verminderen. Hoewel uw migratieplan mogelijk een wijziging in het onderliggende gegevensmodel bevat, zoals een overstap van een Inmon-model naar een gegevenskluis, is het zinvol om in eerste instantie een migratie naar eigen inzicht uit te voeren. Na de eerste migratie kunt u vervolgens wijzigingen aanbrengen in de Azure-cloudomgeving om te profiteren van de prestaties, elastische schaalbaarheid, ingebouwde functies en kostenvoordelen.
Hoewel de SQL-taal is gestandaardiseerd, implementeren afzonderlijke leveranciers soms eigen extensies. Als gevolg hiervan kunt u SQL-verschillen vinden tijdens uw migratie waarvoor tijdelijke oplossingen in Azure Synapse zijn vereist.
Azure-faciliteiten gebruiken om een migratie op basis van metagegevens te implementeren
U kunt het migratieproces automatiseren en organiseren met behulp van de mogelijkheden van de Azure-omgeving. Deze aanpak minimaliseert de prestaties van de bestaande Oracle-omgeving, die mogelijk al dicht bij de capaciteit wordt uitgevoerd.
Azure Data Factory is een cloudservice voor gegevensintegratie die ondersteuning biedt voor het maken van gegevensgestuurde werkstromen in de cloud voor het organiseren en automatiseren van gegevensverplaatsing en gegevenstransformatie. U kunt Data Factory gebruiken om gegevensgestuurde werkstromen (pijplijnen) te maken en te plannen die gegevens uit verschillende gegevensarchieven opnemen. Data Factory kan gegevens verwerken en transformeren met behulp van rekenservices zoals Azure HDInsight Hadoop, Spark, Azure Data Lake Analytics en Azure Machine Learning.
Azure bevat ook Azure Database Migration Services om u te helpen bij het plannen en uitvoeren van een migratie vanuit omgevingen zoals Oracle. SQL Server Migration Assistant (SSMA) voor Oracle kan de migratie van Oracle-databases automatiseren, waaronder in sommige gevallen functies en procedurele code.
Tip
Automatiseer het migratieproces met behulp van De mogelijkheden van Azure Data Factory.
Wanneer u van plan bent om Azure-faciliteiten, zoals Data Factory, te gebruiken om het migratieproces te beheren, maakt u eerst metagegevens waarin alle gegevenstabellen worden vermeld die moeten worden gemigreerd en hun locatie.
SQL DDL-verschillen tussen Oracle en Azure Synapse
De ANSI SQL-standaard definieert de basissyntaxis voor DDL-opdrachten (Data Definition Language). Sommige DDL-opdrachten, zoals CREATE TABLE en CREATE VIEW, zijn gebruikelijk voor Zowel Oracle als Azure Synapse, maar zijn uitgebreid om implementatiespecifieke functies te bieden, zoals indexering, tabeldistributie en partitioneringsopties.
Tip
SQL DDL-opdrachten CREATE TABLE en CREATE VIEW standaardkernelementen hebben, maar worden ook gebruikt om implementatiespecifieke opties te definiëren.
In de volgende secties worden de Oracle-specifieke opties besproken die moeten worden overwogen tijdens een migratie naar Azure Synapse.
Overwegingen voor tabellen en weergaven
Wanneer u tabellen migreert tussen verschillende omgevingen, worden doorgaans alleen de onbewerkte gegevens en de metagegevens beschreven waarmee deze fysiek worden gemigreerd. Andere database-elementen van het bronsysteem, zoals indexen en logboekbestanden, worden meestal niet gemigreerd omdat ze mogelijk onnodig zijn of anders worden geïmplementeerd in de nieuwe omgeving. De TEMPORARY optie binnen de syntaxis van CREATE TABLE Oracle is bijvoorbeeld gelijk aan het prefixen van een tabelnaam met het # teken in Azure Synapse.
Prestatieoptimalisaties in de bronomgeving, zoals indexen, geven aan waar u prestatieoptimalisatie in de nieuwe doelomgeving kunt toevoegen. Als bitmap-indexen bijvoorbeeld vaak worden gebruikt in query's in de bronomgeving van Oracle, suggereert dat dat er een niet-geclusterd index moet worden aangemaakt in Azure Synapse. Andere systeemeigen technieken voor prestatieoptimalisatie, zoals tabelreplicatie, zijn mogelijk meer van toepassing dan het rechtstreeks maken van like-for-like indexen. SSMA voor Oracle kan migratieaanbeveling bieden voor tabeldistributie en indexering.
Tip
Bestaande indexen geven kandidaten aan voor indexering in het gemigreerde magazijn.
SQL-weergavedefinities bevatten DML-instructies (SQL Data Manipulation Language) die de weergave definiëren, meestal met een of meer SELECT instructies. Wanneer u instructies migreertCREATE VIEW, moet u rekening houden met de DML-verschillen tussen Oracle en Azure Synapse.
Niet-ondersteunde Oracle-databaseobjecttypen
Oracle-specifieke functies kunnen vaak worden vervangen door Azure Synapse-functies. Sommige Oracle-databaseobjecten worden echter niet rechtstreeks ondersteund in Azure Synapse. In de volgende lijst met niet-ondersteunde Oracle-databaseobjecten wordt beschreven hoe u equivalente functionaliteit in Azure Synapse kunt bereiken:
Indexeringsopties: in Oracle hebben verschillende indexeringsopties, zoals bit-toegewezen indexen, op functies gebaseerde indexen en domeinindexen, geen direct equivalent in Azure Synapse. Hoewel Azure Synapse deze indextypen niet ondersteunt, kunt u een vergelijkbare vermindering van schijf-I/O bereiken met behulp van door de gebruiker gedefinieerde indextypen en/of partitionering Schijf-I/O verminderen de queryprestaties.
U kunt nagaan welke kolommen worden geïndexeerd en hun indextype door query's uit te voeren op systeemcatalogustabellen en -weergaven, zoals
ALL_INDEXES,DBA_INDEXES,USER_INDEXESenDBA_IND_COL. U kunt ook de weergavendba_index_usageofv$object_usagequeryen wanneer bewaking is ingeschakeld.Azure Synapse-functies, zoals parallelle queryverwerking en in-memory caching van gegevens en resultaten, maken het waarschijnlijk dat er minder indexen nodig zijn voor datawarehouse-toepassingen om uitstekende prestatiedoelen te bereiken.
Geclusterde tabellen: Oracle-tabellen kunnen worden geordend, zodat tabelrijen die vaak samen worden geopend (op basis van een gemeenschappelijke waarde) fysiek worden opgeslagen. Deze strategie vermindert schijf-I/O wanneer gegevens worden opgehaald. Oracle heeft ook een hash-clusteroptie voor afzonderlijke tabellen, waarmee een hash-waarde wordt toegepast op de clustersleutel en rijen met dezelfde hash-waarde fysiek worden opgeslagen.
In Azure Synapse kunt u een vergelijkbaar resultaat bereiken door te partitioneren en/of andere indexen te gebruiken.
Gerealiseerde weergaven: Oracle ondersteunt gerealiseerde weergaven en beveelt een of meer van deze weergaven aan voor grote tabellen met veel kolommen, waarbij slechts een paar kolommen regelmatig worden gebruikt in query's. Materialized views worden automatisch ververst door het systeem wanneer gegevens in de basistabel worden bijgewerkt.
In 2019 kondigde Microsoft aan dat Azure Synapse gerealiseerde weergaven ondersteunt met dezelfde functionaliteit als in Oracle. Gematerialiseerde weergaven zijn nu een previewfunctie in Azure Synapse.
In-databasetriggers: in Oracle kan een trigger zo worden geconfigureerd dat deze automatisch wordt uitgevoerd wanneer er een triggergebeurtenis optreedt. Aanleidende gebeurtenissen kunnen zijn:
Een DML-instructie, zoals
INSERT,UPDATEofDELETE, wordt uitgevoerd. Als u een trigger hebt gedefinieerd die wordt geactiveerd vóór eenINSERTinstructie in een klanttabel, wordt de trigger eenmaal geactiveerd voordat een nieuwe rij in de klanttabel wordt ingevoegd.Een DDL-instructie, zoals
CREATEofALTER, wordt uitgevoerd. Deze triggerende gebeurtenis wordt vaak gebruikt om schemawijzigingen vast te leggen voor controledoeleinden.Een systeem gebeurtenis zoals opstarten of afsluiten van de Oracle-database.
Een gebruikersevenement, zoals aanmelden of afmelden.
Azure Synapse biedt geen ondersteuning voor Oracle-databasetriggers. U kunt echter gelijkwaardige functionaliteit bereiken met behulp van Data Factory, maar hiervoor moet u de processen die gebruikmaken van triggers herstructureren.
Synoniemen: Oracle ondersteunt het definiëren van synoniemen als alternatieve namen voor verschillende databaseobjecttypen. Deze typen omvatten tabellen, weergaven, reeksen, procedures, opgeslagen functies, pakketten, gerealiseerde weergaven, Java-klasseschemaobjecten, door de gebruiker gedefinieerde objecten of andere synoniemen.
Azure Synapse biedt momenteel geen ondersteuning voor het definiëren van synoniemen, maar als een synoniem in Oracle verwijst naar een tabel of weergave, kunt u een weergave in Azure Synapse definiëren die overeenkomt met de alternatieve naam. Als een synoniem in Oracle verwijst naar een functie of opgeslagen procedure, kunt u het synoniem in Azure Synapse vervangen door een andere functie of opgeslagen procedure die het doel aanroept.
Door de gebruiker gedefinieerde typen: Oracle ondersteunt door de gebruiker gedefinieerde objecten die een reeks afzonderlijke velden kunnen bevatten, elk met hun eigen definitie en standaardwaarden. Deze objecten kunnen vervolgens op dezelfde manier worden verwezen binnen een tabeldefinitie als ingebouwde gegevenstypen, zoals
NUMBERofVARCHAR.Azure Synapse biedt momenteel geen ondersteuning voor door de gebruiker gedefinieerde typen. Als de gegevens die u wilt migreren, door de gebruiker gedefinieerde gegevenstypen bevatten, 'platmaken' ze in een conventionele tabeldefinitie of als ze matrices van gegevens zijn, normaliseren ze in een afzonderlijke tabel.
SQL DDL-generatie
U kunt bestaande Oracle CREATE TABLE en CREATE VIEW scripts bewerken om gelijkwaardige definities te bereiken in Azure Synapse. Hiervoor moet u mogelijk gewijzigde gegevenstypen gebruiken en Oracle-specifieke componenten verwijderen of wijzigen, zoals TABLESPACE.
Tip
Gebruik bestaande Oracle-metagegevens om het genereren van CREATE TABLE en CREATE VIEW DDL voor Azure Synapse te automatiseren.
In de Oracle-omgeving geven systeemcatalogustabellen de huidige tabel-/weergavedefinitie op. In tegenstelling tot door de gebruiker onderhouden documentatie is systeemcatalogusinformatie altijd volledig en synchroon met de huidige tabeldefinities. U hebt toegang tot informatie over de systeemcatalogus met behulp van hulpprogramma's zoals Oracle SQL Developer. Oracle SQL Developer kan DDL-instructies genereren CREATE TABLE die u kunt bewerken om toe te passen op equivalente tabellen in Azure Synapse, zoals wordt weergegeven in de volgende schermopname.
Oracle SQL Developer voert de volgende CREATE TABLE instructie uit, die Oracle-specifieke componenten bevat die u moet verwijderen. Zet eventuele niet-ondersteunde gegevenstypen om voordat u de aangepaste CREATE TABLE instructie uitvoert in Azure Synapse.
U kunt ook automatisch instructies genereren CREATE TABLE op basis van de informatie in Oracle-catalogustabellen met behulp van SQL-query's, SSMA of migratiehulpprogramma's van derden . Deze benadering is de snelste en meest consistente manier om CREATE TABLE instructies voor veel tabellen te genereren.
Tip
Hulpprogramma's en services van derden kunnen taken voor gegevenstoewijzing automatiseren.
Externe leveranciers bieden hulpprogramma's en services voor het automatiseren van migratie, met inbegrip van de toewijzing van gegevenstypen. Als een ETL-hulpprogramma van derden al in gebruik is in de Oracle-omgeving , gebruikt u dat hulpprogramma om vereiste gegevenstransformaties te implementeren.
SQL DML-verschillen tussen Oracle en Azure Synapse
De ANSI SQL-standaard definieert de basissyntaxis voor DML-opdrachten, zoals SELECT, INSERTen UPDATEDELETE. Hoewel Oracle en Azure Synapse beide DDL-opdrachten ondersteunen, implementeren ze in sommige gevallen dezelfde opdracht anders.
Tip
De standaard SQL DML-opdrachten SELECTen INSERTUPDATE kunnen extra syntaxisopties hebben in verschillende databaseomgevingen.
In de volgende secties worden de Oracle-specifieke DML-opdrachten besproken die moeten worden overwogen tijdens een migratie naar Azure Synapse.
Verschillen in SQL DML-syntaxis
Er zijn enkele verschillen in SQL DML-syntaxis tussen Oracle SQL en Azure Synapse T-SQL:
DUALtabel: Oracle heeft een systeemtabel dieDUALbestaat uit precies één kolom met de naamdummyen één record met de waardeX. DeDUALsysteemtabel wordt gebruikt wanneer een query om syntaxis een tabelnaam vereist, maar de inhoud van de tabel is niet nodig.Een voorbeeld van een Oracle-query die gebruikmaakt van de
DUALtabel isSELECT sysdate from dual;. Het Equivalent van Azure Synapse isSELECT GETDATE();. Om de migratie van DML te vereenvoudigen, kunt u een equivalenteDUALtabel maken in Azure Synapse met behulp van de volgende DDL.CREATE TABLE DUAL ( DUMMY VARCHAR(1) ) GO INSERT INTO DUAL (DUMMY) VALUES ('X') GONULLwaarden: eenNULLwaarde in Oracle is een lege tekenreeks, vertegenwoordigd door eenCHARofVARCHARtekenreekstype lengte0. In Azure Synapse en de meeste andere databasesNULLbetekent dit iets anders. Wees voorzichtig bij het migreren van gegevens, of bij het migreren van processen die gegevens verwerken of opslaan, om ervoor te zorgen datNULLwaarden consistent worden verwerkt.Syntaxis van Oracle outer join: hoewel recentere versies van Oracle ansi outer join-syntaxis ondersteunen, gebruiken oudere Oracle-systemen een eigen syntaxis voor outer joins die gebruikmaken van een plusteken (
+) in de SQL-instructie. Als u een oudere Oracle-omgeving migreert, kunt u de oudere syntaxis tegenkomen. Voorbeeld:SELECT d.deptno, e.job FROM dept d, emp e WHERE d.deptno = e.deptno (+) AND e.job (+) = 'CLERK' GROUP BY d.deptno, e.job;De equivalente ANSI-standaardsyntaxis is:
SELECT d.deptno, e.job FROM dept d LEFT OUTER JOIN emp e ON d.deptno = e.deptno and e.job = 'CLERK' GROUP BY d.deptno, e.job ORDER BY d.deptno, e.job;DATEgegevens: in Oracle kan hetDATEgegevenstype zowel datum als tijd opslaan. Azure Synapse slaat datum en tijd op in afzonderlijkeDATE,TIMEenDATETIMEgegevenstypen. Wanneer u Oracle-kolommenDATEmigreert, controleert u of ze zowel datum als tijd of alleen een datum opslaan. Als ze alleen een datum opslaan, wijst u de kolom toe aanDATE, anders aanDATETIME.DATERekenkundig: Oracle ondersteunt het aftrekken van een datum van een andere, bijvoorbeeldSELECT date '2018-12-31' - date '2018-1201' from dual;. In Azure Synapse kunt u datums aftrekken met behulp van deDATEDIFF()functie, bijvoorbeeldSELECT DATEDIFF(day, '2018-12-01', '2018-12-31');.Oracle kan gehele getallen aftrekken van datums, bijvoorbeeld
SELECT hire_date, (hire_date-1) FROM employees;. In Azure Synapse kunt u gehele getallen optellen of aftrekken van datums met behulp van deDATEADD()functie.Updates via weergaven: in Oracle kunt u invoeg-, update- en verwijderbewerkingen uitvoeren voor een weergave om de onderliggende tabel bij te werken. In Azure Synapse voert u deze bewerkingen uit op een basistabel, niet op een weergave. Mogelijk moet u ETL-verwerking opnieuw engineeren als een Oracle-tabel wordt bijgewerkt via een weergave.
Ingebouwde functies: in de volgende tabel ziet u de verschillen in de syntaxis en het gebruik van sommige ingebouwde functies.
| Oracle-functie | Beschrijving | Synapse-equivalent |
|---|---|---|
| ADD_MONTHS | Een opgegeven aantal maanden toevoegen | DATEADD |
| CAST | Een ingebouwd gegevenstype converteren naar een ander gegevenstype | CAST |
| DECODEREN | Een lijst met voorwaarden evalueren | CASE-expressie |
| EMPTY_BLOB | Een lege BLOB-waarde maken |
0x constante (lege binaire tekenreeks) |
| EMPTY_CLOB | Een lege CLOB- of NCLOB-waarde maken |
'' (lege tekenreeks) |
| INITCAP | De eerste letter van elk woord hoofdletters maken | Door de gebruiker gedefinieerde functie |
| INSTR | Positie van een subtekenreeks in een tekenreeks zoeken | CHARINDEX |
| LAATSTE_DAG | De laatste datum van de maand ophalen | EOMONTH |
| LENGTE | Tekenreekslengte in tekens ophalen | LEN |
| LPAD | Links-uitvullen van de tekenreeks tot de opgegeven lengte | Expressie met behulp van REPLICATE, RECHTS en LINKS |
| MOD | De rest van een deling van één getal door een ander ophalen |
% bediener |
| MONTHS_BETWEEN | Het aantal maanden tussen twee datums ophalen | DATEDIFF |
| NVL | Vervang NULL door uitdrukking |
ISNULL |
| SUBSTR | Een subtekenreeks van een tekenreeks retourneren | deelstring |
| TO_CHAR voor datum/tijd | Datum/tijd converteren naar tekenreeks | OMZETTEN |
| TO_DATE | Een tekenreeks converteren naar datum/tijd | OMZETTEN |
| VERTALEN | Eén-op-één vervanging van tekens | Expressies met REPLACE of een door de gebruiker gedefinieerde functie |
| TRIM | Voorloop- of volgtekens verwijderen | LTRIM en RTRIM |
| TRUNC voor datum/tijd | Datum/tijd inkorten | Expressies met CONVERTEREN |
| UNISTR | Unicode-codepunten converteren naar tekens | Expressies met NCHAR |
Functies, opgeslagen procedures en reeksen
Wanneer u een datawarehouse migreert vanuit een volwassen omgeving zoals Oracle, moet u waarschijnlijk andere elementen dan eenvoudige tabellen en weergaven migreren. Voor functies, opgeslagen procedures en reeksen controleert u of hulpprogramma's in de Azure-omgeving hun functionaliteit kunnen vervangen, omdat het meestal efficiënter is om ingebouwde Azure-hulpprogramma's te gebruiken dan om de Oracle-functies opnieuw te coderen.
Als onderdeel van de voorbereidingsfase maakt u een inventaris van objecten die moeten worden gemigreerd, definieert u een methode voor het afhandelen ervan en wijst u de juiste resources toe aan uw migratieplan.
Microsoft-hulpprogramma's zoals SSMA voor Oracle en Azure Database Migration Services of migratieproducten en -services van derden kunnen de migratie van functies, opgeslagen procedures en reeksen automatiseren.
Tip
Producten en services van derden kunnen de migratie van niet-gegevenselementen automatiseren.
In de volgende secties worden de migratie van functies, opgeslagen procedures en reeksen besproken.
Functies
Net als bij de meeste databaseproducten ondersteunt Oracle systeem- en door de gebruiker gedefinieerde functies binnen een SQL-implementatie. Wanneer u een verouderd databaseplatform migreert naar Azure Synapse, kunt u meestal algemene systeemfuncties migreren zonder dat u dit hoeft te wijzigen. Sommige systeemfuncties hebben mogelijk een iets andere syntaxis, maar u kunt eventuele vereiste wijzigingen automatiseren.
Voor Oracle-systeemfuncties of willekeurige door de gebruiker gedefinieerde functies die geen equivalent hebben in Azure Synapse, codeert u deze functies opnieuw met behulp van de doelomgevingstaal. Door de gebruiker gedefinieerde Oracle-functies worden gecodeerd in PL/SQL, Java of C. Azure Synapse maakt gebruik van de Transact-SQL-taal om door de gebruiker gedefinieerde functies te implementeren.
Opgeslagen procedures
De meeste moderne databaseproducten ondersteunen het opslaan van procedures in de database. Oracle biedt hiervoor de PL/SQL-taal. Een opgeslagen procedure bevat doorgaans zowel SQL-instructies als procedurelogica en retourneert gegevens of een status.
Azure Synapse ondersteunt opgeslagen procedures met behulp van T-SQL, dus u moet alle gemigreerde opgeslagen procedures in T-SQL opnieuw coderen.
Reeksen
In Oracle is een reeks een benoemd databaseobject, gemaakt met behulp van CREATE SEQUENCE. Een reeks biedt unieke numerieke waarden via de CURRVAL en NEXTVAL methoden. U kunt de gegenereerde unieke getallen gebruiken als surrogaatsleutelwaarden voor primaire sleutels. Azure Synapse implementeert CREATE SEQUENCEniet, maar u kunt reeksen implementeren met behulp van IDENTITY kolommen of SQL-code waarmee het volgende reeksnummer in een reeks wordt gegenereerd.
UITLEG gebruiken om verouderde SQL te valideren
Tip
Gebruik echte query's uit de bestaande systeemquerylogboeken om potentiële migratieproblemen te vinden.
Ervan uitgaande dat een gemigreerd gegevensmodel vergelijkbaar is in Azure Synapse met dezelfde tabel- en kolomnamen, is één manier om verouderde Oracle SQL te testen op compatibiliteit met Azure Synapse:
- Leg enkele representatieve SQL-instructies vast uit de logboeken van de querygeschiedenis van het verouderde systeem.
- Voorvoegsel voor deze query's met de
EXPLAINinstructie. - Voer de
EXPLAINinstructies uit in Azure Synapse.
Elke incompatibele SQL genereert een fout en de foutgegevens kunnen worden gebruikt om de schaal van de recoding-taak te bepalen. Voor deze aanpak hoeft u geen gegevens in de Azure-omgeving te laden. U hoeft alleen de relevante tabellen en weergaven te maken.
Samenvatting
Bestaande verouderde Oracle-installaties worden doorgaans geïmplementeerd op een manier die migratie naar Azure Synapse relatief eenvoudig maakt. Beide omgevingen maken gebruik van SQL voor analytische query's op grote gegevensvolumes en gebruiken over het algemeen een vorm van dimensional gegevensmodel. Deze factoren zorgen ervoor dat Oracle-installaties een goede kandidaat zijn voor migratie naar Azure Synapse.
Samenvattend zijn onze aanbevelingen voor het minimaliseren van de taak voor het migreren van SQL-code van Oracle naar Azure Synapse:
Migreer uw bestaande gegevensmodel zoals het is om risico's, inspanningen en migratietijd te minimaliseren, zelfs als er een ander gegevensmodel gepland is, zoals een gegevenskluis.
Inzicht in de verschillen tussen de Oracle SQL-implementatie en de Azure Synapse-implementatie.
Gebruik de metagegevens en querylogboeken van de bestaande Oracle-implementatie om de impact van het wijzigen van de omgeving te beoordelen. Plan een aanpak om de verschillen te beperken.
Automatiseer het migratieproces om risico's, inspanningen en migratietijd te minimaliseren. U kunt Microsoft-hulpprogramma's zoals Azure Database Migration Services en SSMA gebruiken.
Overweeg om gespecialiseerde hulpprogramma's en services van derden te gebruiken om de migratie te stroomlijnen.
Volgende stappen
Zie het volgende artikel in deze reeks voor meer informatie over hulpprogramma's van Microsoft en derden: Hulpprogramma's voor migratie van Oracle-datawarehouse naar Azure Synapse Analytics.