Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :✅Entrepôt dans Microsoft Fabric
Cet article décrit les méthodes pour migrer des entrepôts de données de SQL Server à Microsoft Fabric Data Warehouse.
Conseil / Astuce
Pour plus d’informations sur la stratégie et la planification, voir Planification de la migration : SQL Server à Fabric Data Warehouse.
Utilisez le Fabric Assistant Migration pour Data Warehouse pour une expérience de migration automatisée depuis SQL Server. Le reste de cet article décrit davantage les étapes manuelles de migration.
Le tableau suivant résume les méthodes de migration du schéma de données (DDL), du code de la base de données (DML) et des données. Chaque option est décrite plus loin dans cet article.
| Option | Method | Qu’est-ce que cela fait ? | Compétence ou préférence | Scénario |
|---|---|---|---|---|
| 1 | Usine de données | Conversion de schéma Extraction de données Ingestion des données |
Pipeline Data Factory | Migration simplifiée des schémas et des données. Recommandé pour les tables de dimension. |
| 2 | Data Factory avec partitionnement | Conversion de schéma Extraction de données Ingestion des données |
pipeline de Data Factory | Migration parallélisée pour de grandes tables de faits. |
| 3 | Migration « schema-first » | Conversion de schéma | pipeline de Data Factory | Migrez d’abord le schéma, puis extrayez et ingérez les données séparément pour un meilleur contrôle du débit. |
| 4 | Scripts de migration SQL | Conversion de schéma Extraction de données Évaluation du code |
T-SQL | Utilisez un IDE et des scripts pour un contrôle granulaire des tâches de migration. |
| 5 | Projets de base de données SQL | Conversion de schéma Évaluation du code |
Projet SQL | Utilisez un projet de base de données pour le contrôle de version, l’évaluation et le déploiement. |
| 6 | dbt | Conversion de schéma Conversion de code de base de données |
dbt | Réutilisez un projet DBT existant en modifiant la configuration de l’adaptateur et de la cible. |
Choisir une charge de travail pour la migration initiale
Lorsque vous décidez où démarrer un projet de migration SQL Server Fabric Data Warehouse, choisissez une zone de charge de travail où vous pouvez :
- Prouver la viabilité de la migration vers Fabric Data Warehouse en apportant rapidement les bénéfices du nouvel environnement. Commencez petit et simple, et préparez-vous à plusieurs petites migrations.
- Laissez à votre personnel technique le temps d’acquérir une expérience pertinente avec les processus et outils qu’ils utilisent pour migrer d’autres charges de travail.
- Créez un modèle pour les migrations ultérieures qui soit spécifique à votre environnement, outils et processus SQL Server.
Conseil / Astuce
Créez un inventaire des objets à migrer, et documentez le processus de migration du début à la fin afin qu’il puisse être répété pour d’autres bases de données ou charges de travail.
Le volume de données lors d’une migration initiale doit être suffisamment important pour démontrer les capacités et les avantages de Fabric Data Warehouse, mais suffisamment faible pour démontrer rapidement la valeur. La valeur typique se situe dans la plage de 1 à 10 téraoctets.
Migrer avec Fabric Data Factory
Fabric Data Factory fournit une interface low-code capable de convertir les DDL de table et de migrer des données depuis SQL Server.
Fabric Data Factory peut effectuer les tâches suivantes :
- Convertir le schéma (DDL) en syntaxe de Fabric Data Warehouse.
- Créez des objets schéma dans Fabric Data Warehouse.
- Migrez les données vers Fabric Data Warehouse.
Option numéro 1. Migration de schéma et de données avec Copy Assistant
Cette méthode utilise l’assistant Data Factory Copy pour se connecter à la base de SQL Server source, convertir la DDL de la table en syntaxe Fabric, et copier les données en Fabric Data Warehouse. Vous pouvez sélectionner une ou plusieurs tables sources. Le pipeline généré utilise une activité ForEach pour copier en parallèle les tables sélectionnées.
Lorsque vous configurez l’opération de copie :
- Utilisez le connecteur SQL Server pour la connexion source.
- Limitez les copies parallèles à un niveau que la base de données source et le réseau peuvent supporter.
- Surveillez la CPU source, les E/S, l’utilisation des journaux de transactions et la latence de la charge de travail en production lors de l’extraction.
Utilisation recommandée
Utilisez Copy Assistant pour une interface simple qui convertit DDL et ingère les tables sélectionnées en une seule opération. Cette méthode convient bien aux tables de dimensions et aux charges de travail plus petites.
Pour les grandes tables, utilisez le partitionnement pour augmenter le parallélisme des lectures et des écritures.
Option 2. Migration des données avec partitionnement
Pour les grandes tables de faits, utilisez une activité de copie pour chaque table et configurez le partitionnement de la source. Utilisez des partitions physiques lorsque disponibles, ou configurez la partition par plage dynamique en spécifiant une colonne numérique ou de date appropriée ainsi que ses valeurs minimales et maximales.
Lorsque vous utilisez le partitionnement :
- Choisissez une colonne de partition qui répartit les lignes de manière uniforme.
- Évitez de créer plus de requêtes source concurrentes que ce que SQL Server peut traiter sans affecter les charges de travail.
- Testez la plage de partitions et les paramètres de copie parallèle par rapport à une charge de travail représentative.
- Augmentez progressivement le parallélisme tout en surveillant la source et la destination.
Utilisation recommandée
Utilisez le partitionnement Data Factory pour de grandes tables de faits lorsque l’extraction parallèle améliore le débit. Dimensionnez le nombre de lots et les plages de partitions selon vos ressources de base de données source et la capacité du réseau.
Option 3. Migration d’abord basée sur le schéma
Pour les bases de données plus grandes, séparez la migration de schéma de la migration des données :
- Convertir et créer des schémas de table dans Fabric Data Warehouse.
- Extraire les données sources dans Azure Data Lake Storage (ADLS) Gen2.
- Utilisez Data Factory ou la commande COPY INTO pour intégrer les données en étapes dans Fabric Data Warehouse.
Séparer ces phases permet d’ajuster l’extraction et l’ingestion de façon indépendante.
Migration de schéma avec Data Factory
Vous pouvez utiliser un pipeline Fabric pour migrer les schémas de table d’SQL Server à Fabric Data Warehouse sans copier les lignes.
Configurer les paramètres du pipeline
Créez un SchemaName paramètre qui spécifie quels schémas migrer. Utilisez dbo comme défaut, ou entrez une liste délimitée par des virgules comme 'dbo','sales'.
Configurez l’activité Recherche
Créez une activité de recherche et configurez sa connexion à la base de données SQL Server source. Sous l’onglet Paramètres :
- Réglez Type de stockage de données sur Externe.
- Sélectionnez la connexion SQL Server source.
- Définissez Use query sur Query.
- Ajoutez une requête dynamique qui renvoie les noms du schéma source et des tables.
Utilisez l’expression suivante pour créer la requête :
@concat('
SELECT s.name AS SchemaName,
t.name AS TableName
FROM sys.tables AS t
INNER JOIN sys.schemas AS s
ON t.type = ''U''
AND s.schema_id = t.schema_id
AND s.name in (',coalesce(pipeline().parameters.SchemaName, 'dbo'),')
')
Configurez l’activité ForEach
Dans l’onglet Paramètres de l’activité ForEach :
- Désactivez Sequential pour autoriser l’exécution simultanée des itérations.
- Fixez le nombre de lots à une valeur que la base de données source peut supporter. Commencez par une valeur conservatrice et testez-la.
- Définissez Items sur
@activity('Get List of Source Objects').output.value.
Configurez l’activité de copie
Dans l’activité ForEach, ajoutez une activité Copier. Sous l’onglet Source :
- Réglez Type de stockage de données sur Externe.
- Sélectionnez la connexion SQL Server source.
- Réglez Use query sur Query.
-
Définissez Query sur
@concat('SELECT TOP 0 * FROM ',item().SchemaName,'.',item().TableName)afin que seules les métadonnées de table soient migrées.
Sous l’onglet Destination :
- Définissez Type de magasin de données sur Espace de travail.
- Définissez le type de stockage de données Workspace sur Data Warehouse, et sélectionnez l’entrepôt de destination.
- Définissez le schéma de destination à
@item().SchemaName. - Fixez la table de destination à
@item().TableName.
Après avoir lancé le pipeline, vérifiez que Fabric Data Warehouse contient chaque table sélectionnée avec le schéma attendu.
Migrer en utilisant des scripts SQL
Utilisez des scripts de migration T-SQL et PowerShell lorsque vous souhaitez un contrôle granulaire sur la conversion de schéma, l’extraction de données et l’évaluation du code.
Les scripts de migration peuvent :
- Convertir le schéma (DDL) en syntaxe de Fabric Data Warehouse.
- Créez des objets schéma dans Fabric Data Warehouse.
- Extraire les données de SQL Server vers ADLS Gen2.
- Signaler la syntaxe T-SQL non prise en charge dans les procédures stockées, fonctions et vues.
L’équipe Microsoft Fabric CAT met à disposition des exemples de code de migration dans le dépôt fabric-migration repository.
Utilisation recommandée
Utilisez des scripts lorsque vous maîtrisez le T-SQL, que vous préférez un environnement de développement intégré et que vous devez contrôler les tâches de migration individuelles. Utilisez COPY INTO ou Data Factory pour ingérer les données extraites dans Fabric Data Warehouse.
Migration à l’aide de projets SQL Database
Fabric Data Warehouse est prise en charge par l’extension SQL Database Projects pour Visual Studio Code.
Un projet de base de données SQL fournit des capacités de contrôle de version, de tests de base de données, de validation de schéma et de déploiement. Il peut :
- Convertir le schéma (DDL) en syntaxe de Fabric Data Warehouse.
- Créez des objets schéma dans Fabric Data Warehouse.
- Évaluer la syntaxe T-SQL non prise en charge dans les procédures stockées, fonctions et vues.
Pour la migration de données, utilisez Data Factory pour copier directement depuis SQL Server, ou extrayez les données vers ADLS Gen2 et intégrez-les avec COPY INTO ou Data Factory.
Pour une présentation pas à pas de l’utilisation des projets de base de données SQL avec des scripts de migration, consultez le dépôt fabric-migration repository.
Pour plus d’informations, voir Commencer avec l’extension SQL Database Projects et Construire un projet de base de données depuis la ligne de commande.
Migration avec DBT
Si votre SQL Server data warehouse utilise la DBT, vous pouvez utiliser l’adaptateur DBT pour Fabric Data Warehouse convertir le code du schéma et de la base de données en modifiant le profil cible et l’adaptateur.
Le cadre dbt génère des scripts DDL et DML à partir de fichiers de modèles. Vous devez migrer les données séparément en utilisant Data Factory ou une autre option de migration de données présentée dans cet article.
Pour commencer, consultez le tutoriel : Configurez la dbt pour Fabric Data Warehouse.
Ingestion de données dans Fabric Data Warehouse
Pour les données intermédiaires, utilisez COPY INTO ou Fabric Data Factory pour ingérer des fichiers d’ADLS Gen2 dans Fabric Data Warehouse. Considérez les conseils suivants :
- Extraire de grandes tables en parallèle lorsque la base de données source et le réseau disposent d’une capacité suffisante.
- Privilégiez les fichiers Parquet pour réduire l’utilisation du stockage et du réseau et améliorer l’efficacité de l’ingestion.
- Chargez plusieurs tables de destination simultanément lorsque votre capacité Fabric peut supporter la charge de travail.
- Surveillez à la fois l’extraction à partir de la source et la capacité de Fabric afin de déterminer le degré optimal de parallélisme.