Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Das Oracle-zu-Azure Database for PostgreSQL-Schemakonvertierungsfeature in der PostgreSQL-Erweiterung für Visual Studio Code hilft Ihnen, Ihre vorhandenen Oracle-Datenbank-Schemaobjekte in ein mit PostgreSQL kompatibles Schema zu konvertieren. Diese Funktionalität wurde für relationale Schemas entwickelt und stellt sicher, dass das konvertierte Schema nahtlos mit Azure Database für PostgreSQL flexiblen Server funktioniert.
Das Tool bietet eine projektbasierte Benutzeroberfläche zum Automatisieren der Schemakonvertierung. Wenn bestimmte Objekte nicht automatisch konvertiert werden können, kennzeichnet das Tool sie als Überprüfungsaufgaben, die Sie manuell mithilfe von GitHub Copilot Agents auflösen können.
Architektur
Der Schemakonvertierungsprozess umfasst mehrere Komponenten, die zusammenarbeiten:
- Quell-Oracle-Datenbank: Ihre vorhandene Oracle-Datenbank, die das zu konvertierende Schema enthält
- Visual Studio Code PostgreSQL-Erweiterung: Die primäre Schnittstelle zum Verwalten des Konvertierungsprozesses
- Azure Database for PostgreSQL Flexible Server: Wird als Zwischendatenbank für Validierung und Tests verwendet
- Azure OpenAI: Bietet intelligente Transformationsfunktionen für komplexe Schemaobjekte
- Schema-Konvertierungs-Agents. KI-gesteuerte Agents, welche den automatischen Konvertierungsprozess verarbeiten
Funktionsweise
Der Schemakonvertierungsprozess verwendet einen intelligenten, multistage Ansatz, der die automatisierte Transformation mit der menschlichen Aufsicht kombiniert:
- Verbindung und Ermittlung: Das Tool stellt eine Verbindung mit Ihrer Oracle-Datenbank und katalogisiert alle Schemaobjekte dar. Sie analysiert ihre Struktur, Abhängigkeiten und Komplexität, um einen Konvertierungsplan zu erstellen.
- AI-Powered Transformation: Schemakonvertierungs-Agents verwenden Azure OpenAI, um Oracle-spezifische Konstrukte intelligent in PostgreSQL-kompatible Entsprechungen zu transformieren. Die KI versteht Kontext, Beziehungen und bewährte Methoden für beide Datenbankplattformen.
- Validierung in der Scratch-Umgebung: Das Tool testet alle konvertierten Objekte in der Azure-Datenbank für PostgreSQL (Scratch-Datenbankumgebung). In diesem Schritt wird die Syntaxkorrektur und Kompatibilität vor der endgültigen Ausgabegenerierung sichergestellt.
- Generierung von Überprüfungsaufgaben: Das Tool kennzeichnet Objekte, die nicht vollständig automatisiert werden können oder menschliche Beurteilungen erfordern, als Überprüfungsaufgaben. Diese Objekte können komplexe Geschäftslogik oder Oracle-spezifische Features umfassen, die manuelle Aufmerksamkeit erfordern.
- Geführte Lösung: Der GitHub Copilot Agent Mode bietet intelligente Unterstützung beim Abschließen von Überprüfungsaufgaben. Es bietet kontextbezogene Vorschläge und Azure Database für PostgreSQL flexible Server best Practices, die Ihnen helfen, fundierte Entscheidungen zu treffen.
-
Ausgabegenerierung: Das Tool konvertiert erfolgreich überprüfte Objekte in organisierte PostgreSQL-Dateien
.sql, die für die Bereitstellung in Ihrer Zielumgebung bereit sind.
Installieren der Erweiterung
Die Oracle-zu-PostgreSQL-Schemakonvertierungsfunktion ist in die PostgreSQL-Erweiterung für Visual Studio Code integriert. Sie benötigen keine separate Erweiterung - sie ist als umfassendes Feature in der Haupt-PostgreSQL-Erweiterung enthalten.
Installationsschritte
-
Öffnen Sie den Erweiterungs-Marketplace: Wählen Sie in Visual Studio Code auf der Aktivitätsleiste auf der linken Seite das Symbol "Erweiterungen" aus, oder verwenden Sie die Tastenkombination
Ctrl+Shift+X(Windows/Linux) oderCmd+Shift+X(macOS). - Suchen Sie nach PostgreSQL: Geben Sie im Suchfeld "Extensions Marketplace" "PostgreSQL" ein, um die Erweiterung zu finden.
- Installieren Sie die Erweiterung: Suchen Sie die PostgreSQL-Erweiterung in den Suchergebnissen, und wählen Sie "Installieren" aus.
- Access-Schemakonvertierung: Wenn die Erweiterung installiert ist, wird in der Visual Studio Code-Randleiste ein Elefantensymbol angezeigt, das die PostgreSQL-Erweiterung darstellt. Sie können über diese Erweiterungsschnittstelle auf das Schemakonvertierungsfeature zugreifen.
Schemakonvertierungs-Workflow
In diesem Abschnitt werden die Kernkonzepte erläutert, die im Oracle-zu-PostgreSQL-Schemakonvertierungsworkflow verwendet werden – einschließlich Konvertierungseinheiten (Schemas, Tabellen, Indizes, Ansichten und Prozeduren), Überprüfungsaufgaben für die menschliche Aufsicht, Validierung der Testdatenbank, KI-gestützte Schemakonvertierungs-Agents und die resultierenden PostgreSQL SQL-Artefakte. Das Verständnis dieser Konzepte hilft Ihnen, Konvertierungsergebnisse zu interpretieren, gekennzeichnete Elemente zu priorisieren und aufzulösen und konvertierte Dateien für die Bereitstellung in Azure Database für PostgreSQL flexiblen Server vorzubereiten.
Scratch-Datenbank
Ein flexibler Azure-Datenbank für PostgreSQL-Server, den Sie während der Konvertierung für Validierungszwecke verwenden, um die Kompatibilität sicherzustellen. Mit diesem Ansatz wird Folgendes sichergestellt:
- Konvertierte Objekte sind syntaktisch korrekt.
- Abhängigkeiten werden ordnungsgemäß aufgelöst.
- Leistungseigenschaften werden beibehalten.
- Azure-spezifische Features werden entsprechend angewendet.
Überprüfen von Aufgaben
Das Tool kennzeichnet Elemente zur manuellen Überprüfung, wenn die KI ein Objekt nicht vollständig konvertieren kann oder ein zweites Aussehen empfiehlt. Allgemeine Überprüfungsaufgaben umfassen:
- Komplexe PL/SQL-Verfahren, die manuelle Optimierung erfordern
- Oracle-spezifische Datentypen mit mehreren PostgreSQL-Alternativen
- Benutzerdefinierte Funktionen mit Oracle-spezifischer Logik
GitHub Copilot-Agent-Modus
Ein integriertes Feature in Visual Studio Code, das geführte Anweisungen bereitstellt, um Überprüfungsaufgaben abzuschließen und das Schema mit Ihren Anwendungsanforderungen in Einklang zu bringen. Der Agentmodus bietet Folgendes:
- Kontextbezogene Vorschläge für Schemaänderungen
- Empfehlungen für bewährte Methoden für Azure-Datenbank für PostgreSQL
- Codeabschluss für komplexe Transformationen
- Integration in Ihren vorhandenen Entwicklungsworkflow
Sicherheit und Netzwerk
Wenn Sie das Schemakonvertierungsfeature verwenden, stellen Sie sicher, dass Ihre Visual Studio Code-Umgebung sowohl mit Ihrer Oracle-Quelldatenbank als auch mit der flexiblen Azure-Serverinstanz für PostgreSQL eine sichere Verbindung herstellen kann, die Sie als Scratch-Datenbank verwenden.
Microsoft empfiehlt, eine Verbindung mit einer Azure OpenAI-Ressource mithilfe eines privaten Endpunkts herzustellen. Weitere Informationen finden Sie unter Erstellen eines privaten Endpunkts für Azure OpenAI.
Weitere Informationen zum Sichern Ihrer Azure OpenAI-Verbindungen finden Sie unter "Daten", "Datenschutz" und "Sicherheit" für Azure Direct Models in Azure AI Foundry.
Von Bedeutung
Kundenvalidierungsverantwortung: Dasselbe KI-Modul, das für die Schemakonvertierung verwendet wird, kann auch bei der Validierung und Überprüfung helfen. KI-Systeme können gelegentlich ihre eigenen Fehler bestätigen. Um Datenverluste, funktionale Regressionen oder Sicherheitsprobleme zu verhindern, überprüfen Sie unabhängig alle konvertierten Objekte und Überprüfungsaufgabenauflösungen vor der Bereitstellung in der Produktion. Sie sollten zu Kontrollzwecken die Azure AI Foundry-Inhaltsfilterung aktivieren, um die Zahl der schädlichen oder unerwünschten Ausgaben zu reduzieren. Anleitungen finden Sie unter Inhaltsfilterung in Azure AI Foundry.
Warum sollte das Schemakonvertierungsfeature verwendet werden?
Das Konvertieren von Oracle-Schemas in Azure Database für PostgreSQL optimiert die Migration und Modernisierung. Dies reduziert den manuellen Aufwand und das Risiko, indem die Transformationen automatisiert, die Ergebnisse in einer Scratch-Datenbank validiert, eine KI-unterstützte Überprüfung ermöglicht und eine auf Microsoft Azure optimierte Ausgabe bereitgestellt wird, die für den Einsatz bereit ist.
- Automatisierte Konvertierung: Reduziert den manuellen Aufwand, indem kompatible Schemaobjekte automatisch konvertiert werden.
- KI-gestützte Intelligenz: Verwendet Azure OpenAI für intelligente Transformationsentscheidungen
- Überprüfungs-erster Ansatz: Verwendet die Scratch-Datenbank, um sicherzustellen, dass konvertierte Objekte ordnungsgemäß funktionieren.
- Integrierter Workflow: Arbeitet nahtlos in der Visual Studio Code-Entwicklungsumgebung
- Überprüfung und Verfeinerung: Bietet klare Anleitungen für manuelle Überprüfungsaufgaben
- Azure-Optimierung: Entwickelt für die Azure-Datenbank für PostgreSQL flexiblem Server
Unterstützte Schemaobjekte
Das Konvertierungstool unterstützt eine breite Palette von Oracle-Schema- und Codeobjekten, einschließlich Datendefinitionselementen, Komponenten auf Schemaebene und prozeduralem Code. Sie können zwar viele gängige Objekte automatisch konvertieren, aber möglicherweise müssen Sie die Zuordnung für bestimmte Oracle-spezifische Features oder proprietäre Erweiterungen manuell überprüfen oder anpassen. Ausführliche Listen der unterstützten Objekte und bekannten Einschränkungen finden Sie in den Abschnitten in diesem Artikel.
Datenbankschemaobjekte
Das Konvertierungstool unterstützt die folgenden Oracle-Datenbankobjekte:
- Tabellen – Tabellendefinitionen, Spaltenspezifikationen und Einschränkungen auf Tabellenebene
- Einschränkungen – Primärschlüssel, Fremdschlüssel, eindeutige Einschränkungen, Check-Einschränkungen
- Indizes - B-Baum-Indizes, eindeutige Indizes, zusammengesetzte Indizes
- Sequenzen – Oracle-Sequenzobjekte für autoinkrementierende Werte
- Trigger - Trigger auf Zeilenebene und Anweisungsebene
- Ansichten – Standarddatenbankansichten
- Materialisierte Ansichten - Oracle-Materialisierte Ansichten und Aktualisierungslogik
- Schemas – Objekte auf Schemaebene und Organisation
- Synonyme – Öffentliche und private Synonyme (mit Einschränkungen)
Oracle-Codeobjekte
Erweiterte Oracle-Codekonstrukte, die für die Konvertierung unterstützt werden:
- Trigger – Komplexe Triggerlogik und Ereignisbehandlung
- Pakete - Oracle-Paketspezifikationen und -gremien
- Funktionen – Benutzerdefinierte Funktionen mit komplexer Logik
- Gespeicherte Prozeduren – Oracle gespeicherte Prozeduren und Parameterbehandlung
Unterstützte Oracle-Versionen
In diesem Abschnitt werden die Datenbankmodulversionen zusammengefasst, die automatisierte Schemakonvertierung unterstützen, und hebt Kompatibilitätsaspekte hervor. Verwenden Sie die aufgeführten unterstützten Oracle- und PostgreSQL-Versionen, um die besten Ergebnisse zu erzielen. Überprüfen Sie Konvertierungen in einer Nichtproduktionstestumgebung, und verwenden Sie den neuesten Nebenpatch jeder unterstützten Hauptversion. Wenn Ihre Umgebung eine nicht unterstützte Version verwendet oder Oracle proprietäre Features enthält, müssen Sie möglicherweise vor der Bereitstellung zusätzliche manuelle Zuordnungen oder Überprüfungen durchführen.
Die folgenden Oracle-Datenbankversionen unterstützen die Schemakonvertierung:
- Oracle 21c
- Oracle 18c
- Oracle 19c
- Oracle 12.2
- Oracle 12.1
Feedback und Support
Verwenden Sie für Fehler, Featureanforderungen und Probleme im Zusammenhang mit dem Schemakonvertierungsfeature oder der PostgreSQL-Erweiterung das integrierte Feedbacktool in Visual Studio Code. Sie können auf zwei Arten auf dieses Tool zugreifen:
Hilfemenü
Gehe zu Hilfe>Problem melden
Befehlspalette
- Öffnen Sie die Befehlspalette mit
Ctrl+Shift+P(Windows/Linux) oderCmd+Shift+P(macOS). - Führen Sie den Befehl aus: PGSQL: Problem melden.
Wenn Sie Ihre Anfrage erstellen oder Feedback geben, fügen Sie Schema Conversion: als Präfix in Ihren Titel ein. Dieses Präfix hilft dem Entwicklungsteam, Schemakonvertierungsbezogenes Feedback schnell zu identifizieren und zu priorisieren. Dieser Feedbackmechanismus hilft dem Entwicklungsteam, die Schemakonvertierungsfunktion kontinuierlich zu verbessern und alle Probleme zu beheben, die während Ihres Oracle zu PostgreSQL-Migrationsprojekten auftreten.