Comment le curseur # fast_executemany dans pyodbc peut-il accélérer les insertions en masse dans MS SQL Server ?

Susan Sarandon
Libérer: 2024-11-03 04:42:02
original
869 Les gens l'ont consulté

How Can Cursor#fast_executemany in pyodbc Speed Up Bulk Inserts to MS SQL Server?

Accélération des insertions en masse dans MS SQL Server à l'aide de pyodbc : informations et solutions

Pour améliorer l'efficacité des insertions en masse dans un serveur MS SQL table utilisant pyodbc, envisagez de tirer parti des avantages de sa fonctionnalité Cursor#fast_executemany. Introduite dans la version 4.0.19, cette fonctionnalité optimise le processus d'insertion, réduisant considérablement le temps d'exécution.

Lorsque le fichier CSV contenant les données à insérer réside sur un client distant plutôt que sur la machine locale hébergeant l'instance SQL Server ( ou un emplacement réseau SMB/CIFS accessible), la commande T-SQL BULK INSERT peut ne pas être réalisable. Dans de tels cas, Cursor#fast_executemany offre une alternative intéressante.

Démonstration :

Considérez le scénario dans lequel vous insérez 1 000 lignes de données dans une table « fast_executemany_test ». En utilisant les paramètres par défaut, l'opération prend environ 22 secondes :

<code class="python">crsr.executemany(sql, params)</code>
Copier après la connexion

En activant simplement Cursor#fast_executemany via :

<code class="python">crsr.fast_executemany = True</code>
Copier après la connexion

Vous pouvez accélérer l'insertion à seulement 1 seconde, en coupant le temps d'exécution par un facteur significatif. Tirez parti de cette fonctionnalité pour rationaliser vos insertions groupées et améliorer les performances globales de vos tâches d'importation de données.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal