Aller au contenu principal

Convertissez le code SQL avec le convertisseur de code agentique

info

Bêta

Cette fonctionnalité est en bêta. Pour l'utiliser, un administrateur de Workspace doit activer le convertisseur de code agentique depuis la page Prévisualisations . Consultez Gérer les aperçus Databricks.

Le convertisseur de code agentique utilise Genie Code pour convertir le SQL existant de dialectes tels que T-SQL, Snowflake, Redshift, Oracle, BigQuery et Teradata en SQL ANSI qui s'exécute sur Databricks. Vous organisez votre travail dans un projet de migration, où le convertisseur analyse chaque script source, valide le résultat converti et corrige itérativement les erreurs avant d'écrire les résultats dans un dossier Workspace.

Le convertisseur de code intelligent fait partie des outils Databricks pour la migration des charges de travail des entrepôts de données existants et des outils ETL vers Databricks. Il convertit votre SQL source pendant que vous organisez et suivez le travail dans un projet de migration.

Comment ça marche

Vous start une conversion en créant un projet de migration dans votre Workspace. Le projet suit l'état de chaque fichier et vous offre un endroit unique pour gérer la migration.

Schéma du workflow de conversion : les fichiers sources sont ajoutés à un projet de migration, les sous-agents Genie Code les convertissent, et le SQL ANSI validé est écrit dans un dossier Workspace.

Lorsque vous exécutez une conversion, Genie Code invoque la compétence de migration et déploie des sous-agents qui convertissent les fichiers simultanément. Chaque sous-agent analyse le dialecte source, génère l'équivalent ANSI SQL, valide le résultat et réessaie les sections qui échouent. Les fichiers convertis sont écrits directement dans le dossier du Workspace que vous spécifiez pour le projet.

Vous pouvez également convertir un fichier ou un dossier unique sans projet à l'aide de la commande /migrate dans une conversation Genie Code.

Exigences

  • Un workspace activé pour le convertisseur de code agentique Bêta. Un administrateur de workspace active la fonctionnalité depuis la page Prévisualisations . Voir Gérer les aperçus Databricks.
  • Vos fichiers SQL existants doivent être accessibles dans votre workspace, soit upload en tant que fichiers de workspace, soit ouverts dans l'éditeur.
  • Votre Workspace doit répondre aux exigences de Genie Code. See Genie Code.

Sources prises en charge et limites

Le convertisseur prend en charge les dialectes sources suivants :

  • T-SQL
  • Snowflake SQL
  • Redshift SQL
  • Oracle
  • BigQuery
  • Teradata

Le convertisseur cible le SQL ANSI. Les limites suivantes s’appliquent à chaque conversion :

  • Un batch peut contenir un maximum de 300 fichiers.
  • Un script peut contenir un maximum de 1 000 lignes.
  • Les scripts Teradata BTEQ ne sont pas encore pris en charge.

Convertir le code SQL existant

Les étapes suivantes décrivent comment convertir du SQL existant dans un projet de migration.

Étape 1 : upload les fichiers source

Upload vos fichiers SQL existants (.sql) à l’aide du navigateur de fichiers du Workspace, ou utilisez la CLI Databricks pour upload en masse un répertoire de scripts.

Étape 2 : créez un projet de migration

Créez un projet de migration depuis votre workspace :

  1. Cliquez sur Nouvelle icône > Projet de migration .
  2. Saisissez un **Nom** pour le projet.
  3. Utilisez les sélecteurs déroulants pour choisir un dialecte source et un framework cible .
  4. Saisissez le chemin d’accès au fichier du **Dossier de destination** cible. Cliquez sur Parcourir pour choisir une destination dans la liste des dossiers Workspace disponibles.
  5. (Facultatif) Saisissez le chemin d'accès à un **fichier de lignage** qui décrit le lignage du projet. Cliquez sur **Parcourir** pour choisir le fichier dans une liste de fichiers de votre Workspace.
  6. Cliquez sur Créer .

Nouvelle boîte de dialogue de projet de migration affichant les champs nom du projet, dialecte source, framework cible et dossier de destination.

Étape 3 : Ajoutez des fichiers à votre projet

Dans le nouveau projet :

  1. Cliquez sur **Ajouter des fichiers** > **+ Ajouter des fichiers**.
  2. Sélectionnez le dossier source ou un fichier depuis votre Workspace.

Le projet répertorie chaque fichier avec son type de fichier, son nombre de lignes et son état de conversion.

Canevas de projet de migration affichant les fichiers source ajoutés avec leur type de fichier, leur nombre de lignes et leur état de conversion.

Étape 4 : examiner la complexité du code et la traçabilité (facultatif)

Si vous avez exécuté l'Analyseur Lakebridge, upload sa sortie JSON vers le projet pour examiner la complexité du code et la traçabilité. Cliquez sur un fichier source pour ouvrir une évaluation de la complexité, puis cliquez sur Traçabilité pour ouvrir un graphe de dépendances qui montre les fichiers et tables interdépendants que vous devez migrer ensemble. Pour obtenir des instructions sur l'exécution de l'Analyseur, consultez le guide de l'Analyseur Lakebridge.

Étape 5 : Exécutez la conversion

Sélectionnez les fichiers à convertir et cliquez sur **Exécuter**. Genie Code ouvre une conversation, invoque la compétence de migration et déploie des sous-agents pour convertir les fichiers simultanément. Chaque fichier converti apparaît comme un fichier lié dans le projet. Le convertisseur marque chaque fichier avec un statut :

  • Vert : Converti avec succès
  • Jaune : Examen requis
  • Red : échec de la conversion
  • Gris : En cours

Étape 6 : Examiner les résultats de la conversion

Cliquez sur un fichier converti pour ouvrir une comparaison côte à côte dans l’éditeur SQL, avec le code source à côté du Databricks SQL proposé. Acceptez toutes les modifications suggérées, ou examinez et acceptez les modifications individuelles. Pour les scripts qui ne parviennent pas à être convertis, modifiez le code dans l’éditeur ou demandez à Genie Code de revalider ou de réessayer des sections spécifiques. Une fois satisfait, exécutez le code SQL converti dans un Notebook ou l’éditeur SQL pour confirmer son exécution sur Databricks.

Créer une compétence personnalisée (facultatif)

Les compétences personnalisées vous permettent d'encoder des règles métier que Genie Code applique automatiquement lors de chaque conversion. Utilisez-les pour gérer les types de données propriétaires, appliquer les modèles cibles préférés ou enregistrer les corrections que vous effectuez de manière répétée. Une compétence de migration est une compétence Genie Code, vous pouvez donc la créer et la gérer de la même manière que toute autre compétence. Pour plus de détails, consultez Étendre Genie Code avec les compétences d'agent.

Vous pouvez créer une compétence à partir des paramètres de Genie Code ou d'une conversation Genie Code. Utilisez le chemin des paramètres pour les compétences complexes qui incluent des instructions détaillées, des exemples ou des fichiers de support. Utilisez le chemin de discussion pour des compétences rapides et à règle unique.

Créez la compétence en tant que fichier afin que vous puissiez rédiger des instructions détaillées et le versionner dans un dossier Git :

  1. Dans le panneau Genie Code, cliquez sur Icône d'engrenage. Paramètres , puis cliquez sur Flèche dans l'icône. Ouvrir le dossier des compétences .

  2. Créez un dossier pour votre compétence sous le chemin des compétences du Workspace, Workspace/.assistant/skills/. Par exemple, Workspace/.assistant/skills/sql-migration/.

  3. Dans le dossier de compétences, créez un fichier SKILL.md avec le frontmatter requis et vos règles de conversion. Par exemple :

    ---
    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 prend en compte la compétence la prochaine fois que vous exécutez une conversion.

Les compétences Workspace sont stockées au niveau du Workspace et partagées entre tous les utilisateurs du Workspace.

Conseils pour le test

Dans le cadre de sa boucle agentique, le convertisseur analyse chaque script source, valide que la sortie convertie est syntaxiquement valide et sémantiquement équivalente à la source, et corrige itérativement les sections qui échouent avant d'écrire les résultats. Les conseils suivants vous aident à examiner la sortie et à lui faire confiance :

  • Conversion par batch : Convertissez un petit batch de deux à cinq fichiers en une session pour vérifier que la conversion de plusieurs fichiers fonctionne de bout en bout.
  • Validation syntaxique : Après la conversion, exécutez la sortie dans un éditeur Databricks SQL ou un Notebook pour confirmer qu'elle s'exécute sans erreurs.
  • Cas limites : Incluez un script avec des constructions spécifiques au dialecte, telles que des fonctions de fenêtre T-SQL, Snowflake QUALIFY ou Redshift,LISTAGG pour voir comment le convertisseur gère les modèles non triviaux.
  • Exactitude sémantique : Exécutez les queries originales et converties par rapport à des données de test équivalentes et comparez les résultats. Confirmez que la sortie est sémantiquement correcte, et pas seulement syntaxiquement valide.

Ressources supplémentaires