Guide sur les performances et le réglage de l’activité de copieCopy Activity performance and tuning guide

L’activité de copie Azure Data Factory offre une solution de chargement de données de premier ordre, sécurisée, fiable et hautes performances.Azure Data Factory Copy Activity delivers a first-class secure, reliable, and high-performance data loading solution. Elle vous permet de copier des dizaines de téraoctets de données tous les jours entre une grande variété de banques de données cloud et locales.It enables you to copy tens of terabytes of data every day across a rich variety of cloud and on-premises data stores. Les performances de chargement des données très rapides constituent la clé pour vous permettre de vous concentrer sur le problème « big data » principal : créer des solutions d’analyse avancées et obtenir des informations approfondies à l’aide de toutes ces données.Blazing-fast data loading performance is key to ensure you can focus on the core “big data” problem: building advanced analytics solutions and getting deep insights from all that data.

Azure fournit un ensemble de solutions d’entrepôt de données et de stockage de données de niveau entreprise, et l’activité de copie offre une expérience de chargement des données hautement optimisée qui est facile à configurer et à mettre en œuvre.Azure provides a set of enterprise-grade data storage and data warehouse solutions, and Copy Activity offers a highly optimized data loading experience that is easy to configure and set up. Avec une seule activité de copie, vous pouvez obtenir ce qui suit :With just a single copy activity, you can achieve:

  • Chargement de données dans Azure SQL Data Warehouse à 1,2 Gbits/s.Loading data into Azure SQL Data Warehouse at 1.2 GBps.
  • Chargement de données dans le stockage des objets blob Azure à 1,0 Gbit/sLoading data into Azure Blob storage at 1.0 GBps
  • Chargement de données dans Azure Data Lake Store à 1,0 Gbit/sLoading data into Azure Data Lake Store at 1.0 GBps

Cet article aborde les points suivants :This article describes:

Notes

Si vous n’êtes pas familiarisé avec l’activité de copie, consultez Vue d’ensemble des activités de copie avant de lire cet article.

Performances de référencePerformance reference

À titre de référence, le tableau ci-dessous décrit la valeur de débit de copie en Mo/s pour les paires de source et de récepteur données durant une seule exécution de l’activité de copie à partir de tests internes.As a reference, below table shows the copy throughput number in MBps for the given source and sink pairs in a single copy activity run based on in-house testing. À des fins de comparaison, il montre également comment les différents paramètres des unités d’intégration de données ou de scalabilité du runtime d’intégration auto-hébergé (plusieurs nœuds) peuvent améliorer les performances de la copie.For comparison, it also demonstrates how different settings of Data Integration Units or Self-hosted Integration Runtime scalability (multiple nodes) can help on copy performance.

Matrice des performances

Important

Quand une activité de copie est exécutée sur un runtime d’intégration Azure, le nombre minimal d’unités d’intégration de données (auparavant appelées Unités de déplacement de données) autorisé est de deux. S’il n’est pas spécifié, consultez les unités d’intégration de données par défaut utilisées dans les unités d’intégration de données.

Points à noter :Points to note:

  • Le débit est calculé à l’aide de la formule suivante : [taille des données lues à partir de la source]/[durée d’exécution de l’activité de copie].Throughput is calculated by using the following formula: [size of data read from source]/[Copy Activity run duration].
  • Les chiffres de référence des performances dans le tableau ont été mesurés à l’aide du jeu de données TPC-H durant une seule exécution de l’activité de copie.The performance reference numbers in the table were measured using TPC-H dataset in a single copy activity run. Les fichiers de test des magasins basés sur fichier sont constitués de plusieurs fichiers d’une taille de 10 Go.Test files for file-based stores are multiple files with 10GB in size.
  • Dans le cas de banques de données Azure, la source et le récepteur sont dans la même région Azure.In Azure data stores, the source and sink are in the same Azure region.
  • Pour une copie hybride entre des magasins de données en local et dans le cloud, chaque nœud de runtime d’intégration auto-hébergé était exécuté sur un ordinateur isolé du magasin de données et présentant les caractéristiques ci-dessous.For hybrid copy between on-premises and cloud data stores, each Self-hosted Integration Runtime node was running on a machine that was separate from the data store with below specification. Lorsqu’une seule activité était exécutée, l’opération de copie n’a utilisé qu’une petite partie du processeur ou de la mémoire de l’ordinateur de test, ou de la bande passante réseau.When a single activity was running, the copy operation consumed only a small portion of the test machine's CPU, memory, or network bandwidth.
    UCCPU 32 cœurs 2,20 GHz Intel Xeon E5-2660 v232 cores 2.20 GHz Intel Xeon E5-2660 v2
    MémoireMemory 128 Go128 GB
    RéseauNetwork Interface Internet : 10 Gbits/s ; interface intranet : 40 Gbits/sInternet interface: 10 Gbps; intranet interface: 40 Gbps

Conseil

Vous pouvez augmenter le débit en utilisant plus d’unités d’intégration de données. Par exemple, avec 100 unités d’intégration de données, vous pouvez copier des données depuis Azure Stockage Blob dans Azure Data Lake Store avec un débit de 1,0 Go/s. Pour plus d’informations sur cette fonctionnalité et sur le scénario pris en charge, consultez la section Unités d’intégration de données.

Unités d’intégration de donnéesData integration units

Une unité d’intégration de données (auparavant appelée « unité de déplacement de données cloud ») est une mesure qui représente la puissance (une combinaison d’allocation de ressources d’UC, de mémoire et de réseau) d’une unité dans Data Factory.A Data Integration Unit (DIU) (formerly known as Cloud Data Movement Unit or DMU) is a measure that represents the power (a combination of CPU, memory, and network resource allocation) of a single unit in Data Factory. Une unité d’intégration de données s’applique seulement à Azure Integration Runtime , et non pas au runtime d’intégration auto-hébergé.DIU only applies to Azure Integration Runtime, but not Self-hosted Integration Runtime.

Le nombre minimal d’unités d’intégration de données pour exécuter l’activité de copie est de deux.The minimal Data Integration Units to empower Copy Activity run is two. S’il n’est pas spécifié, le tableau suivant répertorie les unités d’intégration de données par défaut utilisées dans différents scénarios de copie :If not specified, the following table lists the default DIUs used in different copy scenarios:

Scénario de copieCopy scenario Unités d’intégration de données par défaut déterminées par serviceDefault DIUs determined by service
Copie de données entre des magasins basés sur des fichiersCopy data between file-based stores Entre 4 et 32, selon le nombre et la taille des fichiers.Between 4 and 32 depending on the number and size of the files.
Tous les autres scénarios de copieAll other copy scenarios 44

Pour remplacer cette valeur par défaut, spécifiez comme suit une valeur pour la propriété dataIntegrationUnits.To override this default, specify a value for the dataIntegrationUnits property as follows. Les valeurs autorisées pour la propriété dataIntegrationUnits vont jusqu’à 256.The allowed values for the dataIntegrationUnits property is up to 256. Le nombre réel d’unités d’intégration de données que l’opération de copie utilise au moment de l’exécution est égal ou inférieur à la valeur configurée, en fonction de votre modèle de données.The actual number of DIUs that the copy operation uses at run time is equal to or less than the configured value, depending on your data pattern. Pour plus d’informations sur le niveau de gain de performances que vous pouvez obtenir lorsque vous configurez plusieurs unités pour une source et un récepteur de copie spécifiques, voir Performances de référence.For information about the level of performance gain you might get when you configure more units for a specific copy source and sink, see the performance reference.

Vous pouvez voir les unités d’intégration de données réellement utilisées pour chaque exécution de la copie dans la sortie de l’activité de copie lors de la surveillance de l’exécution d’une activité.You can see the actually used Data Integration Units for each copy run in the copy activity output when monitoring an activity run. Pour plus d’informations, consultez la rubrique sur le monitoring de l’activité de copie.Learn details from Copy activity monitoring.

Notes

Définition de DIUs supérieure à 4 actuellement s’applique uniquement lorsque vous copier plusieurs fichiers à partir d’Azure stockage/Data Lake Storage d’Amazon S3/Google Cloud Storage/cloud FTP/cloud SFTP pour les autres magasins de données cloud.

Exemple :Example:

"activities":[
    {
        "name": "Sample copy activity",
        "type": "Copy",
        "inputs": [...],
        "outputs": [...],
        "typeProperties": {
            "source": {
                "type": "BlobSource",
            },
            "sink": {
                "type": "AzureDataLakeStoreSink"
            },
            "dataIntegrationUnits": 32
        }
    }
]

Impact des unités d’intégration de données sur la facturationData Integration Units billing impact

Il est important de garder à l’esprit que vous êtes facturé selon la durée totale de l’opération de copie.It's important to remember that you are charged based on the total time of the copy operation. La durée totale de déplacement de données qui vous est facturée correspond à la somme de la durée de toutes les unités d’intégration de données.The total duration you are billed for data movement is the sum of duration across DIUs. Si un travail de copie prenait auparavant une heure avec deux unités cloud et qu’il prend maintenant 15 minutes avec huit unités cloud, le montant total de la facture reste identique.If a copy job used to take one hour with two cloud units and now it takes 15 minutes with eight cloud units, the overall bill remains almost the same.

Copie en parallèleParallel Copy

Vous pouvez utiliser la propriété parallelCopies pour indiquer le parallélisme que vous voulez que l’activité de copie utilise.You can use the parallelCopies property to indicate the parallelism that you want Copy Activity to use. Vous pouvez penser cette propriété comme le nombre maximum de threads dans une activité de copie qui peut lire dans votre source ou écrire dans vos banques de données réceptrices en parallèle.You can think of this property as the maximum number of threads within Copy Activity that can read from your source or write to your sink data stores in parallel.

Pour chaque exécution d’activité de copie, Data Factory détermine le nombre de copies en parallèle à utiliser pour copier les données depuis la banque de données source et vers la banque de données de destination.For each Copy Activity run, Data Factory determines the number of parallel copies to use to copy data from the source data store and to the destination data store. Le nombre de copies en parallèle par défaut qu’il utilise dépend du type de source et de récepteur que vous utilisez :The default number of parallel copies that it uses depends on the type of source and sink that you are using:

Scénario de copieCopy scenario Nombre de copie en parallèle par défaut déterminé par le serviceDefault parallel copy count determined by service
Copie de données entre des magasins basés sur des fichiersCopy data between file-based stores Dépend de la taille des fichiers et du nombre d’unités d’intégration de données utilisées pour copier des données entre les deux banques de données cloud, ou de la configuration physique de l’ordinateur du runtime d’intégration auto-hébergé.Depends on the size of the files and the number of Data Integration Units (DIUs) used to copy data between two cloud data stores, or the physical configuration of the Self-hosted Integration Runtime machine.
Copie de données de n’importe quel magasin de données source vers le stockage Table AzureCopy data from any source data store to Azure Table storage 44
Tous les autres scénarios de copieAll other copy scenarios 11

Conseil

Lors de la copie de données entre magasins basés sur un fichier, le comportement par défaut (déterminé automatiquement) offre généralement le meilleur débit.

Pour contrôler la charge sur les machines qui hébergent vos banques de données ou pour optimiser les performances de copie, vous pouvez choisir de remplacer la valeur par défaut et spécifier une valeur pour la propriété parallelCopies.To control the load on machines that host your data stores, or to tune copy performance, you may choose to override the default value and specify a value for the parallelCopies property. La valeur doit être un nombre entier supérieur ou égal à 1.The value must be an integer greater than or equal to 1. Au moment de l’exécution, pour des performances optimales, l’activité de copie utilise une valeur inférieure ou égale à la valeur que vous avez définie.At run time, for the best performance, Copy Activity uses a value that is less than or equal to the value that you set.

"activities":[
    {
        "name": "Sample copy activity",
        "type": "Copy",
        "inputs": [...],
        "outputs": [...],
        "typeProperties": {
            "source": {
                "type": "BlobSource",
            },
            "sink": {
                "type": "AzureDataLakeStoreSink"
            },
            "parallelCopies": 32
        }
    }
]

Points à noter :Points to note:

  • Lorsque vous copiez des données entre des banques basées sur fichier, la valeur parallelCopies détermine le parallélisme au niveau du fichier.When you copy data between file-based stores, the parallelCopies determine the parallelism at the file level. La segmentation dans un seul fichier se produit en arrière-plan de manière automatique et transparente. Elle est conçue pour utiliser la meilleure taille de segment appropriée pour un type de magasin de données source donné pour charger des données de manière parallèle et orthogonale à la valeur parallelCopies.The chunking within a single file would happen underneath automatically and transparently, and it's designed to use the best suitable chunk size for a given source data store type to load data in parallel and orthogonal to parallelCopies. Le nombre réel de copies en parallèle que le service de déplacement de données utilise pour l’opération de copie au moment de l’exécution ne peut pas être supérieur au nombre de fichiers dont vous disposez.The actual number of parallel copies the data movement service uses for the copy operation at run time is no more than the number of files you have. Si le comportement de copie est défini sur mergeFile, l’activité de copie ne peut pas tirer parti du parallélisme au niveau du fichier.If the copy behavior is mergeFile, Copy Activity cannot take advantage of file-level parallelism.
  • Lorsque vous spécifiez une valeur pour la propriété parallelCopies, pensez à l’augmentation de la charge sur vos magasins de données source et récepteur, et sur le runtime d’intégration auto-hébergé si l’activité de copie repose sur ce dernier, par exemple, pour la copie hybride.When you specify a value for the parallelCopies property, consider the load increase on your source and sink data stores, and to Self-Hosted Integration Runtime if the copy activity is empowered by it for example, for hybrid copy. Cela se produit en particulier lorsque plusieurs activités ou exécutions simultanées des mêmes activités ont lieu en même temps dans la même banque de données.This happens especially when you have multiple activities or concurrent runs of the same activities that run against the same data store. Si vous remarquez que le magasin de données ou le runtime d’intégration auto-hébergé est submergé par la charge, diminuez la valeur parallelCopies pour alléger la charge.If you notice that either the data store or Self-hosted Integration Runtime is overwhelmed with the load, decrease the parallelCopies value to relieve the load.
  • Lorsque vous copiez des données à partir de banques qui ne sont pas basées sur fichier vers des banques basées sur fichier, le service de déplacement de données ignore la propriété parallelCopies .When you copy data from stores that are not file-based to stores that are file-based, the data movement service ignores the parallelCopies property. Même si le parallélisme est spécifié, il n’est pas appliqué dans ce cas.Even if parallelism is specified, it's not applied in this case.
  • parallelCopies est orthogonal par rapport à dataIntegrationUnits.parallelCopies is orthogonal to dataIntegrationUnits. La première valeur est calculée à partir de toutes les unités d’intégration de données.The former is counted across all the Data Integration Units.

copie intermédiaireStaged copy

Lorsque vous copiez des données entre une banque de données source et une banque de données réceptrice, vous pouvez choisir d’utiliser le stockage Blob comme banque intermédiaire.When you copy data from a source data store to a sink data store, you might choose to use Blob storage as an interim staging store. La fonctionnalité intermédiaire est particulièrement utile dans les cas suivants :Staging is especially useful in the following cases:

  • Vous voulez recevoir des données à partir de divers magasins de données dans SQL Data Warehouse via PolyBase.You want to ingest data from various data stores into SQL Data Warehouse via PolyBase. SQL Data Warehouse utilise PolyBase comme un mécanisme de haut débit pour charger des données volumineuses dans SQL Data Warehouse.SQL Data Warehouse uses PolyBase as a high-throughput mechanism to load a large amount of data into SQL Data Warehouse. Toutefois, la source de données doit se trouver dans le stockage Blob ou Azure Data Lake Store, et se conformer à des critères supplémentaires.However, the source data must be in Blob storage or Azure Data Lake Store, and it must meet additional criteria. Lorsque vous chargez des données à partir d’un magasin de données autre que le stockage Blob ou Azure Data Lake Store, vous pouvez activer la copie de données via un stockage Blob intermédiaire.When you load data from a data store other than Blob storage or Azure Data Lake Store, you can activate data copying via interim staging Blob storage. Dans ce cas, Data Factory effectue les transformations de données requises pour garantir la conformité vis-à-vis des exigences de PolyBase.In that case, Data Factory performs the required data transformations to ensure that it meets the requirements of PolyBase. Ensuite, il utilise PolyBase pour charger efficacement des données dans SQL Data Warehouse.Then it uses PolyBase to load data into SQL Data Warehouse efficiently. Pour plus d’informations, consultez Utiliser PolyBase pour charger des données dans Azure SQL Data Warehouse.For more information, see Use PolyBase to load data into Azure SQL Data Warehouse.
  • Il peut être assez long parfois d’effectuer des déplacements de données hybrides (c’est-à-dire, de copier à partir d’un magasin de données local vers un magasin de données cloud) sur une connexion réseau lente.Sometimes it takes a while to perform a hybrid data movement (that is, to copy from an on-premises data store to a cloud data store) over a slow network connection. Pour améliorer les performances, vous pouvez utiliser une copie intermédiaire pour compresser les données locales afin que le déplacement des données vers le magasin de données intermédiaire dans le cloud prenne moins de temps, puis décompressez les données dans le magasin intermédiaire avant de les charger dans le magasin de données de destination.To improve performance, you can use staged copy to compress the data on-premises so that it takes less time to move data to the staging data store in the cloud then decompress the data in the staging store before loading into the destination data store.
  • Vous ne souhaitez pas ouvrir les ports autres que le port 80 et le port 443 dans votre pare-feu, en raison des stratégies informatiques d’entreprise.You don't want to open ports other than port 80 and port 443 in your firewall, because of corporate IT policies. Par exemple, lorsque vous copiez des données d’une banque de données locale vers un récepteur Azure SQL Database ou un récepteur Azure SQL Data Warehouse, vous devez activer les communications TCP sortantes sur le port 1433 pour le pare-feu Windows et votre pare-feu d’entreprise.For example, when you copy data from an on-premises data store to an Azure SQL Database sink or an Azure SQL Data Warehouse sink, you need to activate outbound TCP communication on port 1433 for both the Windows firewall and your corporate firewall. Dans ce scénario, une copie intermédiaire peut tirer parti du runtime d’intégration auto-hébergé pour copier tout d’abord les données dans une instance intermédiaire de stockage Blob via HTTP ou HTTPS sur le port 443, puis charger les données dans SQL Database ou SQL Data Warehouse à partir du stockage Blob intermédiaire.In this scenario, staged copy can take advantage of the Self-hosted Integration Runtime to first copy data to a Blob storage staging instance over HTTP or HTTPS on port 443, then load the data into SQL Database or SQL Data Warehouse from Blob storage staging. Dans ce flux, vous n’avez pas besoin d’activer le port 1433.In this flow, you don't need to enable port 1433.

Fonctionnement de la copie intermédiaireHow staged copy works

Lorsque vous activez la fonctionnalité intermédiaire, les données sont d’abord copiées à partir du magasin de données source vers le stockage Blob intermédiaire (indiquez le vôtre).When you activate the staging feature, first the data is copied from the source data store to the staging Blob storage (bring your own). Ensuite, les données sont copiées à partir de la banque de données intermédiaire dans la banque de données de réceptrice.Next, the data is copied from the staging data store to the sink data store. Data Factory gère automatiquement le flux à deux étapes pour vous.Data Factory automatically manages the two-stage flow for you. Data Factory nettoie également les données temporaires du stockage intermédiaire une fois le déplacement de données terminé.Data Factory also cleans up temporary data from the staging storage after the data movement is complete.

copie intermédiaire

Lorsque vous activez le déplacement de données à l’aide d’une banque de données intermédiaire, vous pouvez indiquer si vous souhaitez compresser les données avant de les déplacer de la banque de données source vers une banque de données intermédiaire, et les décompresser avant leur transfert d’une banque de données intermédiaire vers une banque de données réceptrice.When you activate data movement by using a staging store, you can specify whether you want the data to be compressed before moving data from the source data store to an interim or staging data store, and then decompressed before moving data from an interim or staging data store to the sink data store.

Actuellement, vous ne pouvez pas copier de données entre deux banques de données locales à l’aide d’une banque intermédiaire.Currently, you can't copy data between two on-premises data stores by using a staging store.

ConfigurationConfiguration

Configurez le paramètre enableStaging sur l’activité de copie pour spécifier si vous souhaitez que les données soient placées dans un stockage blob intermédiaire avant d’être chargées dans une banque de données de destination.Configure the enableStaging setting in Copy Activity to specify whether you want the data to be staged in Blob storage before you load it into a destination data store. Lorsque vous définissez enableStaging sur TRUE, spécifiez les propriétés supplémentaires répertoriées dans le tableau suivant.When you set enableStaging to TRUE, specify the additional properties listed in the next table. Si vous n’en avez pas, vous devez créer un stockage Azure ou un service lié à la signature d’accès partagé du stockage pour le stockage intermédiaire.If you don’t have one, you also need to create an Azure Storage or Storage shared access signature-linked service for staging.

PropriétéProperty DescriptionDescription Valeur par défautDefault value RequisRequired
enableStagingenableStaging Indiquez si vous souhaitez copier les données via un magasin de données intermédiaire.Specify whether you want to copy data via an interim staging store. FalseFalse NonNo
linkedServiceNamelinkedServiceName Spécifiez le nom d’un service lié AzureStorage faisant référence à l’instance de stockage que vous utilisez comme magasin de données intermédiaire.Specify the name of an AzureStorage linked service, which refers to the instance of Storage that you use as an interim staging store.

Vous ne pouvez pas utiliser le stockage avec une signature d’accès partagé pour charger les données dans SQL Data Warehouse via PolyBase.You cannot use Storage with a shared access signature to load data into SQL Data Warehouse via PolyBase. Vous pouvez l’utiliser dans tous les autres scénarios.You can use it in all other scenarios.
N/AN/A Oui, quand enableStaging est défini sur TRUEYes, when enableStaging is set to TRUE
pathpath Spécifiez le chemin du stockage Blob où vous souhaitez placer les données intermédiaires.Specify the Blob storage path that you want to contain the staged data. Si vous ne renseignez pas le chemin d’accès, le service crée un conteneur pour stocker les données temporaires.If you do not provide a path, the service creates a container to store temporary data.

Ne spécifiez un chemin d’accès que si vous utilisez le stockage avec une signature d’accès partagé, ou si vous avez besoin de données temporaires dans un emplacement spécifique.Specify a path only if you use Storage with a shared access signature, or you require temporary data to be in a specific location.
N/AN/A NonNo
enableCompressionenableCompression Spécifie si les données doivent être compressées avant d’être copiées vers la destination.Specifies whether data should be compressed before it is copied to the destination. Ce paramètre réduit le volume de données transférées.This setting reduces the volume of data being transferred. FalseFalse NonNo

Notes

Si vous utilisez une copie intermédiaire avec compression activée, l’authentification du principal du service ou MSI pour le service lié d’objets blob intermédiaire n’est pas prise en charge.

Voici un exemple de définition de l’activité de copie avec les propriétés qui sont décrites dans le tableau précédent :Here's a sample definition of Copy Activity with the properties that are described in the preceding table:

"activities":[
    {
        "name": "Sample copy activity",
        "type": "Copy",
        "inputs": [...],
        "outputs": [...],
        "typeProperties": {
            "source": {
                "type": "SqlSource",
            },
            "sink": {
                "type": "SqlSink"
            },
            "enableStaging": true,
            "stagingSettings": {
                "linkedServiceName": {
                    "referenceName": "MyStagingBlob",
                    "type": "LinkedServiceReference"
                },
                "path": "stagingcontainer/path",
                "enableCompression": true
            }
        }
    }
]

Impact sur la facturation de la copie intermédiaireStaged copy billing impact

Vous êtes facturé en fonction de deux étapes : la durée de la copie et le type de copie.You are charged based on two steps: copy duration and copy type.

  • Lorsque vous utilisez la copie intermédiaire lors d’une copie dans le cloud (copie de données à partir d’un magasin de données cloud vers un autre magasin de données cloud, les deux étapes utilisant le runtime d’intégration Azure), vous êtes facturé au prix de [somme de la durée de copie pour les étapes 1 et 2] x [prix unitaire de la copie dans le cloud].When you use staging during a cloud copy (copying data from a cloud data store to another cloud data store, both stages empowered by Azure Integration Runtime), you are charged the [sum of copy duration for step 1 and step 2] x [cloud copy unit price].
  • Lorsque vous utilisez la copie intermédiaire lors d’une copie hybride (copie de données à partir d’un magasin de données local vers un magasin de données cloud, une étape utilisant le runtime d’intégration auto-hébergé), vous êtes facturé au prix de [durée de la copie hybride] x [prix unitaire de la copie hybride] + [durée de la copie cloud] x [prix unitaire de la copie cloud].When you use staging during a hybrid copy (copying data from an on-premises data store to a cloud data store, one stage empowered by Self-hosted Integration Runtime), you are charged for [hybrid copy duration] x [hybrid copy unit price] + [cloud copy duration] x [cloud copy unit price].

Procédure de réglage des performancesPerformance tuning steps

Nous vous recommandons d’effectuer cette procédure pour régler les performances de votre service Data Factory avec l’activité de copie :We suggest that you take these steps to tune the performance of your Data Factory service with Copy Activity:

  1. Établir une ligne de base.Establish a baseline. Pendant la phase de développement, testez votre pipeline en utilisant l’activité de copie sur un échantillon de données représentatif.During the development phase, test your pipeline by using Copy Activity against a representative data sample. Collecter les détails de l’exécution et les caractéristiques des performances suivant le monitoring de l’activité de copie.Collect execution details and performance characteristics following Copy activity monitoring.

  2. Diagnostiquer et optimiser les performances.Diagnose and optimize performance. Si les performances que vous observez ne répondent pas à vos attentes, vous devez identifier les goulots d’étranglement.If the performance you observe doesn't meet your expectations, you need to identify performance bottlenecks. Ensuite, optimisez les performances pour supprimer ou réduire l’effet des goulots d’étranglement.Then, optimize performance to remove or reduce the effect of bottlenecks.

    Dans certains cas, lorsque vous exécutez une activité de copie dans ADF, vous voyez directement « Conseils pour le réglage des performances » en haut de la page de surveillance de l’activité de copie comme indiqué dans l’exemple suivant.In some cases, when you execute a copy activity in ADF, you will directly see "Performance tuning tips" on top of the copy activity monitoring page as shown in the following example. En plus de vous indiquer le goulot d’étranglement identifié pour l’exécution de la copie, il vous guide sur les modifications à apporter pour accélérer le débit de copie.It not only tells you the bottleneck identified for the given copy run, but also guides you on what to change so as to boost copy throughput. Actuellement, les conseils pour le réglage des performances offrent des suggestions : par exemple, utiliser PolyBase lors de la copie de données dans Azure SQL Data Warehouse, augmenter l’unité de requête Azure Cosmos DB ou l’unité de transaction de base de données Azure SQL Database quand la ressource côté magasin de données est le goulot d’étranglement, supprimer la copie intermédiaire non nécessaire, etc. Les règles d'optimisation des performances seront également enrichies de façon progressive.The performance tuning tips currently provide suggestions like to use PolyBase when copying data into Azure SQL Data Warehouse, to increase Azure Cosmos DB RU or Azure SQL DB DTU when the resource on data store side is the bottleneck, to remove the unnecessary staged copy, etc. The performance tuning rules will be gradually enriched as well.

    Exemple : copier dans Azure SQL Database avec des conseils pour le réglage des performancesExample: copy into Azure SQL DB with performance tuning tips

    Dans cet exemple, lors l’exécution de la copie, ADF remarque que l’instance Azure SQL DB de réception atteint une utilisation d’unités de transaction de base de données élevée qui ralentit les opérations d’écriture. La suggestion est d’augmenter le niveau Azure SQL DB avec plus de DTU.In this sample, during copy run, ADF notice the sink Azure SQL DB reaches high DTU utilization which slows down the write operations, thus the suggestion is to increase the Azure SQL DB tier with more DTU.

    Surveillance de la copie avec conseils d'optimisation des performances

    En outre, vous trouverez ci-dessous quelques considérations courantes.In addition, the following are some common considerations. Une description complète du diagnostic des performances dépasserait la portée de cet article.A full description of performance diagnosis is beyond the scope of this article.

  3. Étendez la configuration à l’ensemble de votre jeu de données.Expand the configuration to your entire data set. Lorsque vous êtes satisfait des résultats et des performances de l’exécution, vous pouvez étendre la définition et le pipeline pour couvrir l’ensemble de votre jeu de données.When you're satisfied with the execution results and performance, you can expand the definition and pipeline to cover your entire data set.

Considérations relatives au runtime d’intégration auto-hébergéConsiderations for Self-hosted Integration Runtime

Si votre activité de copie est exécutée sur un runtime d’intégration auto-hébergé, notez les points suivants :If your copy activity is executed on a Self-hosted Integration Runtime, note the following:

Configuration : nous vous recommandons d’utiliser un ordinateur dédié pour héberger le runtime d’intégration.Setup: We recommend that you use a dedicated machine to host Integration Runtime. Consultez Considérations relatives à l’utilisation d’un runtime d’intégration auto-hébergé.See Considerations for using Self-hosted Integration Runtime.

Mise à l’échelle : un seul runtime d’intégration auto-hébergé logique comportant un ou plusieurs nœuds peut traiter simultanément plusieurs exécutions de l’activité de copie.Scale out: A single logical Self-hosted Integration Runtime with one or more nodes can serve multiple Copy Activity runs at the same time concurrently. Si vous avez besoin de déplacer des données hybrides avec de nombreuses exécutions d’activité de copie simultanées ou avec un gros volume de données à copier, vous devriez envisager d’augmenter la taille des instances du runtime d’intégration auto-hébergé afin de mieux utiliser vos ressources ou de configurer plus de ressources pour répondre à vos besoins de copie.If you have heavy need on hybrid data movement either with large number of concurrent copy activity runs or with large volume of data to copy, consider to scale out Self-hosted Integration Runtime so as to provision more resource to empower copy.

Considérations relatives à la sourceConsiderations for the source

GénéralitésGeneral

Vérifiez que la banque de données sous-jacente n’est pas submergée par d’autres charges de travail s’exécutant dessus ou s’y rapportant.Be sure that the underlying data store is not overwhelmed by other workloads that are running on or against it.

Pour les banques de données Microsoft, consultez les rubriques relatives à la surveillance et au réglage spécifiques aux banques de données, qui peuvent vous aider à comprendre les caractéristiques de performances de celles-ci, à réduire les temps de réponse et à maximiser le débit.For Microsoft data stores, see monitoring and tuning topics that are specific to data stores, and help you understand data store performance characteristics, minimize response times, and maximize throughput.

Magasins de données basés sur un fichierFile-based data stores

  • Taille et quantité moyennes de fichiers: l’activité de copie transfère les données un fichier à la fois.Average file size and file count: Copy Activity transfers data one file at a time. Pour une même quantité de données à déplacer, le débit global est plus lent si les données se composent de beaucoup de petits fichiers plutôt que de quelques fichiers volumineux, en raison de la phase d’amorçage nécessaire pour chaque fichier.With the same amount of data to be moved, the overall throughput is lower if the data consists of many small files rather than a few large files due to the bootstrap phase for each file. Par conséquent, vous devez autant que possible combiner plusieurs petits fichiers en fichiers plus volumineux pour augmenter le débit.Therefore, if possible, combine small files into larger files to gain higher throughput.
  • Format de fichier et compression : pour d’autres méthodes permettant d’améliorer les performances, voir les sections Considérations relatives à la sérialisation et à la désérialisation et Considérations relatives à la compression.File format and compression: For more ways to improve performance, see the Considerations for serialization and deserialization and Considerations for compression sections.

Bases de données relationnellesRelational data stores

  • Modèle de données : Votre schéma de table a des répercussions sur le débit de copie.Data pattern: Your table schema affects copy throughput. Une taille de ligne importante vous donne de meilleures performances qu’une petite taille de ligne pour copier la même quantité de données.A large row size gives you a better performance than small row size, to copy the same amount of data. Raison : la base de données peut récupérer plus efficacement moins de lots de données contenant moins de lignes.The reason is that the database can more efficiently retrieve fewer batches of data that contain fewer rows.
  • Requête ou procédure stockée : optimisez la logique de la requête ou de la procédure stockée que vous spécifiez dans la source d’activité de copie pour extraire les données plus efficacement.Query or stored procedure: Optimize the logic of the query or stored procedure you specify in the Copy Activity source to fetch data more efficiently.

Considérations relatives au récepteurConsiderations for the sink

GénéralitésGeneral

Vérifiez que la banque de données sous-jacente n’est pas submergée par d’autres charges de travail s’exécutant dessus ou s’y rapportant.Be sure that the underlying data store is not overwhelmed by other workloads that are running on or against it.

Pour les banques de données Microsoft, voir les rubriques relatives à la surveillance et au réglage qui sont spécifiques aux banques de données.For Microsoft data stores, refer to monitoring and tuning topics that are specific to data stores. Ces rubriques peuvent vous aider à comprendre les caractéristiques des performances des banques de données et à déterminer comment réduire les temps de réponse et optimiser le débit.These topics can help you understand data store performance characteristics and how to minimize response times and maximize throughput.

Magasins de données basés sur un fichierFile-based data stores

  • Comportement de copie: si vous copiez des données d’une banque de données basée sur fichier différente, l’activité de copie propose trois options via la propriété copyBehavior.Copy behavior: If you copy data from a different file-based data store, Copy Activity has three options via the copyBehavior property. Elle conserve la hiérarchie, aplatit la hiérarchie ou fusionne les fichiers.It preserves hierarchy, flattens hierarchy, or merges files. La conservation ou l’aplanissement de la hiérarchie entraîne peu ou pas de surcharge de performances, mais la fusion de fichiers entraîne une augmentation de la surcharge des performances.Either preserving or flattening hierarchy has little or no performance overhead, but merging files causes performance overhead to increase.
  • Format de fichier et compression : voir les sections Considérations relatives à la sérialisation et à la désérialisation et Considérations relatives à la compression pour d’autres méthodes permettant d’améliorer les performances.File format and compression: See the Considerations for serialization and deserialization and Considerations for compression sections for more ways to improve performance.

Bases de données relationnellesRelational data stores

  • Comportement de copie: selon les propriétés que vous avez configurées pour sqlSink, l’activité de copie écrit des données dans la base de données de destination de différentes façons.Copy behavior: Depending on the properties you've set for sqlSink, Copy Activity writes data to the destination database in different ways.
    • Par défaut, le service de déplacement de données utilise une API de copie en bloc pour insérer des données en mode Append, ce qui optimise les performances.By default, the data movement service uses the Bulk Copy API to insert data in append mode, which provides the best performance.
    • Si vous configurez une procédure stockée dans le récepteur, la base de données applique les données une ligne à la fois plutôt que de les charger en bloc.If you configure a stored procedure in the sink, the database applies the data one row at a time instead of as a bulk load. Les performances chutent considérablement.Performance drops significantly. Si votre jeu de données est volumineux, le cas échéant, songez à utiliser la propriété preCopyScript .If your data set is large, when applicable, consider switching to using the preCopyScript property.
    • Si vous configurez la propriété preCopyScript pour chaque exécution de l’activité de copie, le service déclenche le script, puis vous utilisez l’API de copie en bloc pour insérer les données.If you configure the preCopyScript property for each Copy Activity run, the service triggers the script, and then you use the Bulk Copy API to insert the data. Par exemple, pour remplacer les données de la table entière par les dernières données, vous pouvez spécifier un script pour commencer par supprimer tous les enregistrements avant de charger en bloc les nouvelles données à partir de la source.For example, to overwrite the entire table with the latest data, you can specify a script to first delete all records before bulk-loading the new data from the source.
  • Modèle de données et taille de lot:Data pattern and batch size:
    • Votre schéma de table a des répercussions sur le débit de copie.Your table schema affects copy throughput. Pour copier une même quantité de données, une taille de ligne importante produit de meilleures performances qu’une petite taille, car la base de données peut valider plus efficacement moins de lots de données.To copy the same amount of data, a large row size gives you better performance than a small row size because the database can more efficiently commit fewer batches of data.
    • L’activité de copie insère des données dans une série de lots.Copy Activity inserts data in a series of batches. Vous pouvez définir le nombre de lignes dans un lot à l’aide de la propriété writeBatchSize .You can set the number of rows in a batch by using the writeBatchSize property. Si vos données comportent des lignes de petite taille, vous pouvez définir la propriété writeBatchSize sur une valeur plus élevée pour réduire la surcharge de traitement par lots et augmenter le débit.If your data has small rows, you can set the writeBatchSize property with a higher value to benefit from lower batch overhead and higher throughput. Si la taille de ligne de vos données est importante, soyez prudent lorsque vous augmentez la valeur writeBatchSize.If the row size of your data is large, be careful when you increase writeBatchSize. Une valeur élevée peut entraîner un échec de la copie en raison de la surcharge de la base de données.A high value might lead to a copy failure caused by overloading the database.

Magasins NoSQLNoSQL stores

  • Pour le Stockage Table:For Table storage:
    • Partition : l’écriture de données en partitions entrelacées dégrade considérablement les performances.Partition: Writing data to interleaved partitions dramatically degrades performance. Classez vos données sources par clé de partition afin qu’elles soient insérées efficacement partition après partition, ou ajustez la logique pour écrire les données dans une seule partition.Sort your source data by partition key so that the data is inserted efficiently into one partition after another, or adjust the logic to write the data to a single partition.

Considérations relatives à la sérialisation et à la désérialisationConsiderations for serialization and deserialization

Une sérialisation et une désérialisation peuvent survenir quand le jeu de données d’entrée ou de sortie est un fichier.Serialization and deserialization can occur when your input data set or output data set is a file. Consultez la page Formats de fichier et de compression pris en charge qui présente des détails sur les formats de fichier pris en charge par activité de copie.See Supported file and compression formats with details on supported file formats by Copy Activity.

Comportement de copie:Copy behavior:

  • Copie de fichiers entre banques de données basées sur fichier :Copying files between file-based data stores:
    • Lorsque les jeux de données d’entrée et de sortie ont les mêmes paramètres de format de fichier ou n’en ont aucun, le service de déplacement de données exécute une copie binaire sans sérialisation ou désérialisation.When input and output data sets both have the same or no file format settings, the data movement service executes a binary copy without any serialization or deserialization. Vous voyez un débit plus élevé par rapport au scénario, dans lequel les paramètres de format de fichier source et récepteur sont différents.You see a higher throughput compared to the scenario, in which the source and sink file format settings are different from each other.
    • Lorsque les jeux de données d’entrée et de sortie sont au format texte et que seul le type d’encodage est différent, le service de déplacement de données n’effectue que la conversion de l’encodage.When input and output data sets both are in text format and only the encoding type is different, the data movement service only does encoding conversion. Il n’effectue aucune sérialisation ni désérialisation, ce qui entraîne une surcharge de performances par rapport à la copie binaire.It doesn't do any serialization and deserialization, which causes some performance overhead compared to a binary copy.
    • Lorsque les jeux de données d’entrée et de sortie diffèrent par leur format de fichier ou leur configuration, par exemple au niveau des séparateurs, le service de déplacement de données désérialise les données sources en flux, les transforme, puis les sérialise au format de sortie que vous avez indiqué.When input and output data sets both have different file formats or different configurations, like delimiters, the data movement service deserializes source data to stream, transform, and then serialize it into the output format you indicated. Cette opération donne lieu à une surcharge des performances beaucoup plus importante par rapport à d’autres scénarios.This operation results in a much more significant performance overhead compared to other scenarios.
  • Lorsque vous copiez des fichiers vers/à partir d’une banque de données qui n’est pas basée sur fichier (par exemple, d’une banque basée sur fichier vers une banque relationnelle), l’étape de sérialisation ou de désérialisation est requise.When you copy files to/from a data store that is not file-based (for example, from a file-based store to a relational store), the serialization or deserialization step is required. Cette étape génère une surcharge significative des performances.This step results in significant performance overhead.

Format de fichier : le format de fichier que vous choisissez peut affecter les performances de copie.File format: The file format you choose might affect copy performance. Par exemple, Avro est un format binaire compact qui stocke des métadonnées avec des données.For example, Avro is a compact binary format that stores metadata with data. Il bénéficie d’une prise en charge étendue dans l’écosystème Hadoop pour le traitement et l’interrogation.It has broad support in the Hadoop ecosystem for processing and querying. En revanche, le format Avro étant plus coûteux en sérialisation et désérialisation, le débit de copie est inférieur par rapport au format texte.However, Avro is more expensive for serialization and deserialization, which results in lower copy throughput compared to text format. Choisissez votre format de fichier dans le flux de traitement de manière holistique.Make your choice of file format throughout the processing flow holistically. Commencez par la forme sous laquelle les données sont stockées dans les banques de données sources ou doivent être extraites de systèmes externes ; le meilleur format pour le stockage, le traitement analytique et les requêtes, et le format dans lequel les données doivent être exportées dans des mini-data warehouses pour les outils de rapport et de visualisation.Start with what form the data is stored in, source data stores or to be extracted from external systems; the best format for storage, analytical processing, and querying; and in what format the data should be exported into data marts for reporting and visualization tools. Parfois, un format de fichier non optimal pour les performances en lecture et écriture peut constituer une option idéale pour le processus analytique général.Sometimes a file format that is suboptimal for read and write performance might be a good choice when you consider the overall analytical process.

Considérations relatives à la compressionConsiderations for compression

Lorsque votre jeu de données d’entrée ou de sortie est un fichier, vous pouvez définir l’activité de copie pour qu’elle effectue une compression ou une décompression lors de l’écriture de données dans la destination.When your input or output data set is a file, you can set Copy Activity to perform compression or decompression as it writes data to the destination. Lorsque vous choisissez la compression, vous trouvez un compromis entre les entrées/sorties (E/S) et le processeur.When you choose compression, you make a tradeoff between input/output (I/O) and CPU. La compression des données a un coût supplémentaire en ressources de calcul.Compressing the data costs extra in compute resources. Toutefois, en retour, elle réduit les E/S réseau et le stockage.But in return, it reduces network I/O and storage. En fonction de vos données, vous pouvez constater une augmentation du débit global de copie.Depending on your data, you may see a boost in overall copy throughput.

Codec : Chaque codec de compression présente des avantages.Codec: Each compression codec has advantages. Par exemple, bzip2 a le plus faible débit de copie, mais vous obtenez les meilleures performances de requêtes Hive avec bzip2, car vous pouvez le fractionner pour traitement.For example, bzip2 has the lowest copy throughput, but you get the best Hive query performance with bzip2 because you can split it for processing. Gzip est l’option la plus équilibrée, et la plus souvent utilisée.Gzip is the most balanced option, and it is used the most often. Choisissez le codec le plus approprié pour votre scénario de bout en bout.Choose the codec that best suits your end-to-end scenario.

Niveau : vous avec le choix entre deux options pour chaque codec de compression, la compression la plus rapide et la compression optimale.Level: You can choose from two options for each compression codec: fastest compressed and optimally compressed. L’option de compression la plus rapide compresse les données aussi rapidement que possible, même si le fichier résultant de l’opération n’est pas compressé de façon optimale.The fastest compressed option compresses the data as quickly as possible, even if the resulting file is not optimally compressed. L’option de compression optimale nécessite plus de temps, et produit une quantité de données minimale.The optimally compressed option spends more time on compression and yields a minimal amount of data. Vous pouvez tester les deux options pour voir celle qui offre les meilleures performances globales dans votre cas.You can test both options to see which provides better overall performance in your case.

Élément à prendre en compte : pour copier une grande quantité de données entre un magasin local et le cloud, envisagez d’utiliser la copie intermédiaire avec la compression.A consideration: To copy a large amount of data between an on-premises store and the cloud, consider using Staged copy with compression enabled. L’utilisation du stockage intermédiaire est utile lorsque la bande passante de votre réseau d’entreprise et de vos services Azure est le facteur limitant et que vous souhaitez que le jeu de données d’entrée et le jeu de données de sortie soient sous forme non compressée.Using interim storage is helpful when the bandwidth of your corporate network and your Azure services is the limiting factor, and you want the input data set and output data set both to be in uncompressed form.

Considérations relatives au mappage de colonnesConsiderations for column mapping

Vous pouvez définir la propriété columnMappings dans l’activité de copie pour mapper la totalité ou un sous-ensemble des colonnes d’entrée aux colonnes de sortie.You can set the columnMappings property in Copy Activity to map all or a subset of the input columns to the output columns. Une fois que le service de déplacement de données a lu les données de la source, il doit effectuer le mappage de colonnes sur les données avant d’écrire celles-ci sur le récepteur.After the data movement service reads the data from the source, it needs to perform column mapping on the data before it writes the data to the sink. Ce traitement supplémentaire réduit le débit de copie.This extra processing reduces copy throughput.

Si votre banque de données source peut faire l’objet de requêtes, par exemple, s’il s’agit d’une banque de données relationnelle telle que SQL Database ou SQL Server ou s’il ne s’agit pas d’une banque NoSQL comme le Stockage Table ou Azure Cosmos DB, envisagez d’envoyer le filtrage de colonnes et la logique de réorganisation à la propriété query , au lieu d’utiliser le mappage de colonnes.If your source data store is queryable, for example, if it's a relational store like SQL Database or SQL Server, or if it's a NoSQL store like Table storage or Azure Cosmos DB, consider pushing the column filtering and reordering logic to the query property instead of using column mapping. Ainsi, la projection survient alors que le service de déplacement de données lit les données à partir de la banque de données source, la où elle est beaucoup plus efficace.This way, the projection occurs while the data movement service reads data from the source data store, where it is much more efficient.

Pour en savoir plus, Mappage de schéma de l’activité de copie.Learn more from Copy Activity schema mapping.

Autres points à considérerOther considerations

Si la taille des données à copier est volumineuse, vous pouvez ajuster votre logique métier pour partitionner davantage les données et planifier l’activité de copie pour qu’elle s’exécute plus fréquemment afin de réduire la taille des données pour chaque exécution de l’activité de copie.If the size of data you want to copy is large, you can adjust your business logic to further partition the data and schedule Copy Activity to run more frequently to reduce the data size for each Copy Activity run.

Faites attention au nombre de jeux de données et d’activités de copie nécessitant que Data Factory se connecte au même magasin de données en même temps.Be cautious about the number of data sets and copy activities requiring Data Factory to connect to the same data store at the same time. De nombreux travaux de copie simultanés peuvent limiter une banque de données, et entraîner une dégradation des performances, une multiplication des tentatives internes de travail de copie et, dans certains cas, des échecs d’exécution.Many concurrent copy jobs might throttle a data store and lead to degraded performance, copy job internal retries, and in some cases, execution failures.

Exemple de scénario : copie depuis un SQL Server local vers le stockage BlobSample scenario: Copy from an on-premises SQL Server to Blob storage

Scénario : un pipeline est conçu pour copier des données d’un serveur SQL Server local vers un stockage Blob au format CSV.Scenario: A pipeline is built to copy data from an on-premises SQL Server to Blob storage in CSV format. Pour accélérer la copie des travaux, les fichiers CSV doivent être compressés au format bzip2.To make the copy job faster, the CSV files should be compressed into bzip2 format.

Test et analyse : le débit de l’activité de copie est inférieur à 2 Mo/s, ce qui est beaucoup plus lent que le test d’évaluation des performances.Test and analysis: The throughput of Copy Activity is less than 2 MBps, which is much slower than the performance benchmark.

Analyse des performances et réglage : pour résoudre le problème de performances, nous allons tout d’abord examiner la manière dont les données sont traitées et déplacées.Performance analysis and tuning: To troubleshoot the performance issue, let’s look at how the data is processed and moved.

  1. Lecture des données : le runtime d’intégration ouvre la connexion à SQL Server et envoie la requête.Read data: Integration runtime opens a connection to SQL Server and sends the query. SQL Server répond en envoyant le flux de données au runtime d’intégration via l’intranet.SQL Server responds by sending the data stream to integration runtime via the intranet.
  2. Sérialiser et compresser les données : le runtime d’intégration sérialise le flux de données au format CSV, et compresse les données dans un flux bzip2.Serialize and compress data: Integration runtime serializes the data stream to CSV format, and compresses the data to a bzip2 stream.
  3. Écriture des données : le runtime d’intégration charge le flux bzip2 vers le stockage Blob via Internet.Write data: Integration runtime uploads the bzip2 stream to Blob storage via the Internet.

Comme vous pouvez le voir, les données sont traitées et déplacées de manière séquentielle en continu : SQL Server > LAN > Passerelle > WAN > Stockage Blob.As you can see, the data is being processed and moved in a streaming sequential manner: SQL Server > LAN > Integration runtime > WAN > Blob storage. Les performances globales sont contrôlées par le débit minimum sur le pipeline.The overall performance is gated by the minimum throughput across the pipeline.

Flux de données

Un ou plusieurs des facteurs suivants peuvent entraîner un goulot d’étranglement des performances :One or more of the following factors might cause the performance bottleneck:

  • Source : SQL Server offre lui-même un faible débit en raison des charges lourdes.Source: SQL Server itself has low throughput because of heavy loads.
  • Runtime d’intégration auto-hébergé :Self-hosted Integration Runtime:
    • LAN : le runtime d’intégration est éloigné de l’ordinateur SQL Server et dispose d’une connexion à faible bande passante.LAN: Integration runtime is located far from the SQL Server machine and has a low-bandwidth connection.
    • Runtime d’intégration : le runtime d’intégration a atteint ses limites de charge pour effectuer les opérations suivantes :Integration runtime: Integration runtime has reached its load limitations to perform the following operations:
      • Sérialisation : la sérialisation du flux de données au format CSV présente un débit lent.Serialization: Serializing the data stream to CSV format has slow throughput.
      • Compression : vous avez choisi un codec de compression lent (par exemple, bzip2, c’est-à-dire 2,8 Mo/s avec Core i7).Compression: You chose a slow compression codec (for example, bzip2, which is 2.8 MBps with Core i7).
    • WAN : la bande passante entre le réseau d’entreprise et vos services Azure est faible (par exemple, T1 = 1 544 Kbits/s ; T2 = 6 312 Kbits/s).WAN: The bandwidth between the corporate network and your Azure services is low (for example, T1 = 1,544 kbps; T2 = 6,312 kbps).
  • Récepteur : le stockage Blob a un faible débit.Sink: Blob storage has low throughput. (Ce scénario est peu probable car son contrat SLA garantit un minimum de 60 Mo/s.)(This scenario is unlikely because its SLA guarantees a minimum of 60 MBps.)

Dans ce cas, la compression de données bzip2 pourrait ralentir l’ensemble du pipeline.In this case, bzip2 data compression might be slowing down the entire pipeline. Un basculement vers le codec de compression gzip peut résoudre ce goulot d’étranglement.Switching to a gzip compression codec might ease this bottleneck.

RéférenceReference

Voici des références relatives au monitoring et au réglage des performances pour quelques magasins de données pris en charge :Here is performance monitoring and tuning references for some of the supported data stores:

Étapes suivantesNext steps

Voir les autres articles relatifs à l’activité de copie :See the other Copy Activity articles: