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>
En activant simplement Cursor#fast_executemany via :
<code class="python">crsr.fast_executemany = True</code>
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!