Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Genie Migrate, precedentemente il convertitore di codice agentico, utilizza Genie Code per convertire SQL esistenti da dialetti come T-SQL, Snowflake, Redshift, Oracle, BigQuery e Teradata in codice che gira su Azure Databricks. Organizzi il tuo lavoro in un progetto di migrazione e scegli un framework di destinazione per l’output: SQL per generare query Databricks SQL, oppure Notebooks per generare notebook Databricks che utilizzano l'API DataFrame. Genie Migrate analizza ogni script sorgente, valida l'output convertito e corregge iterativamente gli errori prima di scrivere i risultati in una cartella workspace.
Genie Migrate fa parte degli strumenti Databricks per migrare i carichi di lavoro da data warehouse e strumenti ETL esistenti ad Azure Databricks. Converte il codice SQL di origine durante l'organizzazione e il rilevamento del lavoro in un progetto di migrazione.
Come funziona
Per avviare una conversione, creare un progetto di migrazione nell'area di lavoro. Il progetto tiene traccia dello stato di ogni file e offre un'unica posizione per gestire la migrazione.
Quando esegui una conversione, Genie Code distribuisce sottoagenti che convertono i file contemporaneamente. Ogni sottoagente analizza il dialetto sorgente e genera il codice equivalente per il framework di destinazione del progetto (Databricks SQL o un notebook Databricks). Successivamente controlla il codice convertito:
- Sintassi: Controlla che il codice convertito giri su Azure Databricks senza errori.
-
intento semantico: Controlla che il codice convertito mantenga la logica di business del sorgente, come le stesse join e
WHEREclausole.
Quando un controllo fallisce, il sottoagente revisiona il codice e lo controlla di nuovo. Genie Code applica anche le tue abilità personalizzate quando converte i file. Vedi Creare un'abilità personalizzata (opzionale). I file convertiti vengono scritti direttamente nella cartella dell'area di lavoro specificata per il progetto.
È anche possibile convertire un singolo file o una cartella senza un progetto usando il /migrate comando in una conversazione Genie Code.
Requirements
- I file SQL esistenti devono essere accessibili nell'area di lavoro, caricati come file dell'area di lavoro o aperti nell'editor.
- L'area di lavoro deve soddisfare i requisiti del codice Genie. Vedere Codice Genie.
- Per utilizzare il framework di destinazione Notebooks o l'analisi e la lineage del progetto, che sono in Beta, un amministratore dell'area di lavoro deve attivare le Funzionalità Sperimentali dei Progetti di Migrazione dalla pagina Anteprime. Vedere Gestire le anteprime di Azure Databricks.
Origini e limitazioni supportate
Il convertitore supporta i dialetti di origine seguenti:
- T-SQL
- Snowflake SQL
- Redshift SQL
- Oracle
- BigQuery
- Teradata
Quando crei un progetto di migrazione, scegli uno dei seguenti framework target:
- SQL: Databricks compatibili con ANSI query SQL.
-
Notebooks (Beta): notebook Databricks che utilizzano l'API DataFrame, con
spark.sqlper la logica più chiara in SQL.
I limiti seguenti si applicano a ogni conversione:
- Un batch può contenere un massimo di 300 file.
- Gli script BTEQ di Teradata non sono ancora supportati.
Convertire il codice SQL esistente
I passaggi seguenti descrivono come convertire SQL esistente in un progetto di migrazione.
Passaggio 1: Caricare i file di origine
Caricare i file SQL esistenti (.sql) usando il browser dei file dell'area di lavoro oppure usare l'interfaccia della riga di comando di Databricks per caricare in blocco una directory di script.
Passaggio 2: Creare un progetto di migrazione
Creare un progetto di migrazione dall'area di lavoro:
- Fare clic su
>Progetto di migrazione. - Immettere un nome per il progetto.
- Usare i selettori a discesa per scegliere un dialetto di origine e un framework di destinazione. Per Target framework, scegli SQL per generare query SQL Databricks, oppure Notebooks (Beta) per generare notebook Databricks.
- Immettere il percorso del file nella cartella Destinazione di destinazione. Fare clic su Sfoglia per scegliere una destinazione da un elenco di cartelle dell'area di lavoro disponibili.
- (Facoltativo) Immettere il percorso di un file di derivazione che descrive la derivazione del progetto. Fare clic su Sfoglia per scegliere il file da un elenco di file nell'area di lavoro.
- Clicca su Crea.
Passaggio 3: Aggiungere file al progetto
Nel nuovo progetto:
- Fare clic su Aggiungi file>+ Aggiungi file.
- Selezionare la cartella di origine o un file dall'area di lavoro.
Il progetto elenca ogni file con il tipo di file, il numero di righe e lo stato di conversione.
Passaggio 4: Esaminare la complessità e la derivazione del codice (facoltativo)
Analizza il progetto per rivedere la complessità del codice e le dipendenze tra file prima di convertire. L'analisi del progetto e la tracciabilità sono in Beta. Per utilizzarli, un amministratore dello spazio di lavoro deve attivare Migration Projects Experimental Features dalla pagina Previews. Vedere Gestire le anteprime di Azure Databricks.
- Nel progetto, clicca su Analizza tutto. Se il progetto non ha lineage, l'azione predefinita è Analizza tutto . Altrimenti, seleziona Analizza tutto dal menu a tendina del pulsante. L'analisi copre ogni file del progetto, anche se selezioni i file.
- Aspetta che finisca l'analisi. Per annullare un'analisi in corso, clicca su Stop. Quando l'analisi termina, il pulsante diventa Converti tutto.
- Clicca su un file sorgente per aprire la sua valutazione di complessità e clicca su Lineage per aprire un grafo di dipendenza che mostra file e tabelle interdipendenti che devi migrare insieme.
Passaggio 5: Eseguire la conversione
Per convertire file specifici, selezionali e clicca su Converti selezionati. Per convertire tutti i file nel progetto, cancella la selezione e clicca su Converti tutto. Genie Code apre una conversazione, richiama la competenza di migrazione e distribuisce i subagenti per convertire i file contemporaneamente. Ogni file convertito viene visualizzato come file collegato nel progetto. Il convertitore contrassegna ogni file con uno stato:
- Verde: convertito correttamente
- Giallo: Revisione delle esigenze
- Rosso: conversione non riuscita
- Grigio: in corso
Passaggio 6: Esaminare i risultati della conversione
Per i progetti SQL, fai clic su un file convertito per aprire un confronto affiancato nell'editor SQL, con il codice sorgente accanto al codice Databricks SQL proposto. Accettare tutte le modifiche suggerite o rivedere e accettare singole modifiche. Per i progetti Notebooks , clicca su un file convertito per aprire il notebook Databricks generato. Per gli script che non vengono convertiti, modifica il codice nell'editor oppure chiedi a Genie Code di convalidare nuovamente o riprovare sezioni specifiche. Quando sei soddisfatto, esegui il SQL convertito o il notebook per confermare che funzioni su Azure Databricks. Se lo stesso errore si presenta in diversi file, cattura la correzione in una skill personalizzata e riesegui quei file. Vedi Creare un'abilità personalizzata (opzionale).
Creare una competenza personalizzata (facoltativa)
Le competenze personalizzate consentono di codificare le regole business che Genie Code si applicano automaticamente durante ogni conversione. Usarli per gestire i tipi di dati proprietari, applicare modelli di destinazione preferiti o acquisire correzioni apportate ripetutamente. Una competenza di migrazione è una competenza Genie Code, quindi è possibile crearla e gestirla allo stesso modo di qualsiasi altra competenza. Per ulteriori dettagli, consulta Estendere Genie Code con le funzionalità dell'agente.
Non devi definire tutte le tue competenze prima del tuo primo contributo. La maggior parte delle regole che un'abilità dovrebbe catturare diventa chiara solo dopo aver esaminato i primi risultati. Un flusso di lavoro tipico è:
- Converti un insieme rappresentativo di file.
- Esamina i file che necessitano di revisione o che hanno avuto esito negativo e cerca errori che si ripetono tra i file, come lo stesso tipo di dato, funzione o schema di denominazione non supportato.
- Crea un'abilità che catturi la correzione per ogni errore ricorrente.
- Seleziona solo i file interessati e clicca su Converti i selezionati. Genie Code applica la nuova competenza a quei file.
Ripeti questo ciclo mentre converti più codice. Genie Code applica ogni abilità alle conversioni successive nello spazio di lavoro, quindi una correzione copre altri file con lo stesso schema.
È possibile creare un'abilità dalle impostazioni di Genie Code o da una conversazione di Genie Code. Usare il percorso delle impostazioni per competenze complesse che includono istruzioni dettagliate, esempi o file di supporto. Usare il percorso della chat per competenze rapide e a regola singola.
Impostazioni del codice Genie
Crea lo skill come file, in modo da poter scrivere istruzioni dettagliate e gestirne il versionamento in una cartella Git:
Nel pannello Genie Code fare clic
Impostazioni, quindi fare clic su
Aprire la cartella skills.
Crea una cartella per la tua skill nel percorso skills dell'area di lavoro,
Workspace/.assistant/skills/. Ad esempio:Workspace/.assistant/skills/sql-migration/.Nella cartella skill creare un
SKILL.mdfile con il frontmatter richiesto e le regole di conversione. Per esempio:--- name: sql-migration description: Conversion rules to apply when migrating legacy SQL to ANSI SQL. --- Always convert the custom type MYDATE to TIMESTAMP_NTZ.
Genie Code rileva la skill la prossima volta che esegui una conversione.
Chat di Genie Code
Descrivere la regola di conversione che si vuole codificare, quindi chiedere a Genie Code di salvarla:
Tip
Always convert our custom type MYDATE to TIMESTAMP_NTZ. Save this as a custom migration skill.
Genie Code crea e registra la competenza e la applica alle conversioni future nell'area di lavoro.
Per visualizzare le competenze attive:
Tip
Show me my migration skills
Per rimuovere un'abilità:
Tip
Delete the migration skill for [description]
Le competenze dell'area di lavoro vengono archiviate a livello di area di lavoro e condivise tra tutti gli utenti dell'area di lavoro.
Suggerimenti per il test
Nell'ambito del ciclo agentico, il convertitore analizza ogni script di origine, verifica che l'output convertito sia sintatticamente valido e semanticamente equivalente all'origine e corregge in modo iterativo le sezioni che hanno esito negativo prima di scrivere i risultati. I suggerimenti seguenti consentono di esaminare e acquisire fiducia nell'output:
- Conversione in batch: converti un piccolo batch di due-cinque file in un’unica sessione per verificare che la conversione di più file funzioni correttamente dall’inizio alla fine.
- Convalida della sintassi: dopo la conversione, eseguire l'output in un editor o un notebook SQL di Databricks per verificare che venga eseguito senza errori.
-
Casi perimetrali: includere uno script con costrutti specifici del dialetto, ad esempio funzioni finestra T-SQL, Snowflake
QUALIFYo RedshiftLISTAGG, per vedere come il convertitore gestisce modelli non semplici. - Correttezza semantica: eseguire le query originali e convertite sui dati di test equivalenti e confrontare i risultati. Verificare che l'output sia semanticamente corretto, non solo sintatticamente valido.