Esaminare le attività e le cartelle di output per la conversione dello schema da Oracle al server flessibile di Database di Azure per PostgreSQL

Dopo l'esecuzione di una conversione dello schema, l'estensione Visual Studio Code PostgreSQL crea due tipi di output: esaminare le linee guida e i file di schema PostgreSQL generati. Usare questo articolo per comprendere quali file aprire per primi, come assegnare priorità alle attività di revisione e come esplorare la struttura di cartelle creata dallo strumento di conversione.

Questo articolo si concentra sul risultato della conversione dello schema. Non tratta la migrazione dei dati.

Quale output consente di decidere

L'output generato consente a diversi stakeholder di rispondere a domande diverse:

Domanda Avvia con
Lo schema convertito è pronto per la convalida? reports/customer_summary.md.
Quali elementi necessitano di revisione umana? Riquadro Schema Review nell'estensione Visual Studio Code PostgreSQL.
Quale file SQL generato corrisponde a un oggetto Oracle? postgres_ddl/<schema>/<object_type>/.
Perché è necessario esaminare un oggetto specifico? Aprire l'attività nel riquadro Revisione schema e leggerne la descrizione e l'evidenza. Il report di blocco correlato in reports/chunks/ fornisce un contesto aggiuntivo.
Cosa deve eseguire lo script di distribuzione? deploy.sql.
Cosa è necessario condividere con il supporto per la risoluzione dei problemi? reports/, internal/e i metadati della sessione pertinenti. Non condividere credenziali o segreti.

Iniziare con la cartella della sessione

Ogni esecuzione di conversione crea una cartella di sessione nella directory degli artefatti di migrazione. L'ID sessione esatto cambia per ogni esecuzione.

<project-root>/
  artifacts/
    oracle/
      _migration/
        convert/
          sessions/
            <session-id>/

Aprire reports/customer_summary.md prima all'interno della cartella della sessione. Fornisce la valutazione complessiva dell'idoneità e indirizza agli altri report, SQL generato e alle attività di revisione per quella esecuzione.

Esaminare e risolvere le attività in Visual Studio Code

Un'attività di revisione è un elemento contrassegnato che richiede un giudizio umano prima di usare lo schema convertito. Lo strumento crea attività di revisione quando rileva il comportamento da verificare, quando produce DDL di fallback o quando non riesce a convertire completamente un oggetto. Molte attività sono promemoria di convalida per le differenze tra il comportamento di Oracle e PostgreSQL, ad esempio la precisione numerica, la gestione di data e ora, il controllo delle transazioni, la gestione delle eccezioni o la risoluzione dello schema.

Il riquadro Schema Review nell'estensione Visual Studio Code PostgreSQL è la posizione principale per valutare e risolvere queste attività. Il riquadro offre due visualizzazioni:

  • Raggruppato. Attività raggruppate per categoria. Le categorie visualizzate dipendono dallo schema convertito e possono includere elementi quali Generale, Semantica numerica, Comportamento di data/ora, Stringa vuota/NULL, DBMS_OUTPUT e NLS/Regole di confronto. Ogni gruppo mostra le attività totali, il numero di revisioni necessarie e il numero di blocchi, in modo da poter pianificare la correzione in base al tema.
  • Attività. Singole attività con filtri per Stato, Priorità, Tipo di oggetto e Schema. Usare questa visualizzazione per valutare, assegnare e risolvere l'elemento di lavoro per elemento.

Passare da Pending a Resolved per tenere traccia dello stato di avanzamento.

Schermata del riquadro di revisione dello schema nell'estensione PostgreSQL di Visual Studio Code che mostra le viste Raggruppate e Attività.

Campi attività visualizzati nella visualizzazione Attività

Column Cosa mostra
Titolo Breve descrizione del problema e dell'oggetto Oracle interessato.
Stato Pending o Resolved.
Criticità Gravità del problema: Mandatory (alto), Recommended (medio) o Optional (basso).
Tipo oggetto Tipo di oggetto Oracle, ad esempio Table, Index, Procedure, Function, Trigger o View.
Descrizione Evidenza che spiega perché lo strumento ha contrassegnato l'oggetto.
Actions Esegui attività apre la modalità agente di GitHub Copilot con il contesto dell'attività per una correzione guidata. Risolve contrassegna il completamento dell'attività dopo la revisione manuale o dopo aver accettato la correzione proposta.

Livelli di criticità

Lo strumento assegna a ogni attività di revisione un livello di criticità mappato a una priorità:

Criticità Priorità Quando risolvere
Obbligatorio Alto Risolvere prima della distribuzione. L'oggetto convertito non è pronto per l'uso in produzione fino a quando non si risolve l'attività.
Raccomandato Medium Risolvere prima di promuovere lo schema nella produzione. L'oggetto può essere distribuito, ma il comportamento deve essere convalidato rispetto all'origine Oracle.
Facoltativo Low Risolvere quando è conveniente. L'attività evidenzia una piccola differenza o un'opportunità di miglioramento.

Risolvere un'attività

È possibile risolvere un'attività di revisione in due modi:

  • Con la modalità agente di GitHub Copilot: seleziona Esegui attività per avviare la modalità agente di GitHub Copilot in Visual Studio Code usando come contesto il DDL di origine, il DDL PostgreSQL generato e le evidenze dell'attività. Esaminare la correzione proposta, applicarla e quindi selezionare Risolvi.
  • Manually: aprire il file .sql generato in postgres_ddl/<schema>/<object_type>/, applicare la correzione in Visual Studio Code, convalidarla nel database scratch e quindi selezionare Resolve.

Annotazioni

La risoluzione di un'attività di revisione aggiorna il file generato .sql in postgres_ddl/, ma la modifica non viene applicata automaticamente al database scratch. Connettersi al database scratch da Visual Studio Code ed eseguire il file .sql aggiornato per convalidare la correzione prima di contrassegnare l'attività come risolta.

Risolvere prima le attività obbligatorie perché bloccano la convalida della distribuzione. Risolvere le attività consigliate prima di promuovere lo schema nell'ambiente di produzione e gestire le attività facoltative quando è utile.

Esaminare il flusso di lavoro delle attività

Usare questo flusso di lavoro al termine della conversione:

  1. Aprire reports/customer_summary.md per comprendere la decisione generale di idoneità.
  2. Aprire il riquadro Schema Review in Visual Studio Code, passare a Grouped e risolvere prima Mandatory.
  3. Passare a Attività per filtrare, assegnare e valutare gli elementi consigliati e facoltativi .
  4. Esaminare il file PostgreSQL generato per ogni attività in postgres_ddl/<schema>/<object_type>/.
  5. Selezionare Esegui attività per risolvere l'attività con la modalità agente Copilot GitHub oppure applicare una correzione manuale e quindi selezionare Resolve.
  6. Applicare il file aggiornato .sql al database scratch e testare l'oggetto corretto. La risoluzione di un'attività non applica automaticamente la modifica al database scratch.
  7. Rieseguire la conversione se si modifica l'ambito di origine, si corregge un oggetto di origine, si aggiungono estensioni di destinazione mancanti, si modifica search_path o si aumenta la capacità di Microsoft Foundry.

Struttura delle cartelle di output

La cartella del progetto di conversione contiene file di configurazione, artefatti Oracle estratti, artefatti di conversione, file PostgreSQL generati e linee guida per le applicazioni. I nomi delle cartelle possono variare leggermente in base alla versione dell'estensione.

<project-root>/
  artifacts/
    oracle/
      _migration/
        extract/
          ddl/
          reports/
          internal/
        chunks/
          reports/
          internal/
        convert/
          sessions/
            <session-id>/
              deploy.sql
              reports/
                customer_summary.md
                technical_conversion_report.md
                review_tasks.md
                chunks/
              postgres_ddl/
                <schema>/
                  <object_type>/
              internal/
  results/
    application_guidance/

Elementi di estrazione

La artifacts/oracle/_migration/extract/ cartella contiene gli oggetti Oracle e i report acquisiti durante la fase di estrazione.

File o cartella Purpose
ddl/ DDL Oracle di origine raggruppati per schema e tipo di oggetto.
reports/oracle_extraction_report.md Riepilogo dell'estrazione comprensibile.
reports/excluded_objects.csv Oggetti esclusi intenzionalmente dallo strumento.
reports/unsupported_types.csv Tipi o costrutti Oracle non supportati trovati durante l'estrazione.
internal/ Metadati, file di dipendenza e log usati dallo strumento per la risoluzione dei problemi.

Suddivisione in blocchi degli artefatti

La artifacts/oracle/_migration/chunks/ cartella mostra il modo in cui lo strumento raggruppa gli oggetti estratti in batch con riconoscimento delle dipendenze per la conversione.

File o cartella Purpose
reports/chunk_generation_report.md Riepilogo dei blocchi, della distribuzione degli oggetti, delle dipendenze e della pianificazione dei token.
internal/ Metadati, file di dipendenza e log usati dallo strumento per la risoluzione dei problemi.

Artefatti di conversione

La artifacts/oracle/_migration/convert/sessions/<session-id>/ cartella contiene l'output di conversione principale per un'esecuzione.

File o cartella Purpose
reports/customer_summary.md Riepilogo della preparazione di facile lettura per i dirigenti, con stato della conversione e azioni successive.
reports/review_tasks.md Copia Markdown delle attività di revisione per riferimento e controllo offline. Risolvere le attività dal riquadro Schema Review in Visual Studio Code.
reports/technical_conversion_report.md Report tecnico dettagliato per amministratori di database e ingegneri della migrazione.
reports/chunks/ Report di conversione per blocco, per un'analisi più approfondita.
postgres_ddl/ File a livello di oggetto Database di Azure per PostgreSQL .sql raggruppati per schema e tipo di oggetto.
deploy.sql Script di distribuzione consolidato generato dall'output dello schema convertito.
internal/ Metadati, file di dipendenza e log usati dallo strumento per la risoluzione dei problemi.

Linee guida per le applicazioni

La results/application_guidance/ cartella contiene note di codifica generate dallo schema convertito. Utilizzare queste note come input quando si converte il codice dell'applicazione che richiama lo schema convertito. Ad esempio, è possibile utilizzarli durante l'adattamento di client Oracle PL/SQL, ORM o componenti che richiamano stored procedure per farli funzionare con PostgreSQL.

Usare file SQL a livello di oggetto

Usare la postgres_ddl/ cartella quando un'attività di revisione punta a un oggetto specifico. La struttura di cartelle raggruppa i file in base allo schema e al tipo di oggetto Oracle. Quando si convertono più schemi nella stessa esecuzione, ogni schema ottiene la propria cartella di primo livello in postgres_ddl/:

postgres_ddl/
  HR/
    TABLE/
    FUNCTION/
    PROCEDURE/
    TRIGGER/
    VIEW/
  SALES/
    TABLE/
    FUNCTION/
    PROCEDURE/
    TRIGGER/
    VIEW/

Il DDL Oracle estratto in artifacts/oracle/_migration/extract/ddl/ segue lo stesso <schema>/<object_type>/ layout.

Usa con attenzione i prompt generati

Alcune attività di revisione includono un prompt di Copilot GitHub contenente DDL di origine, DDL PostgreSQL generato, prove e azioni suggerite. Usare queste istruzioni per velocizzare l'indagine, ma esaminare il contenuto prima di incollarlo in qualsiasi chat o flusso di lavoro di supporto. Seguire i criteri dell'organizzazione per condividere nomi di schema, nomi di oggetti e logica di business.

Condividi gli artefatti giusti con gli stakeholder

Usare elementi diversi per gruppi di destinatari diversi:

Pubblico Condividi
Sponsor del progetto e stakeholder aziendali reports/customer_summary.md e un riepilogo degli elementi bloccati o di revisione.
Amministratori di database e ingegneri della migrazione Il riquadro Schema Review in Visual Studio Code (o reports/review_tasks.md per la revisione offline), reports/technical_conversion_report.md, postgres_ddl/ e deploy.sql.
Team dell'applicazione Rivedi le attività per procedure, funzioni, trigger, pacchetti, viste e tabelle esposte all'applicazione, classificate nel riquadro Revisione schema.
Team di supporto I rapporti, i log pertinenti e l'ID dell'attività o il nome dell'oggetto. Rimuovere credenziali e segreti prima della condivisione.