pyodbc を使用した MS SQL Server への一括挿入の高速化: 洞察とソリューション
MS SQL Server への一括挿入の効率を高めるにはpyodbc を使用してテーブルを作成する場合は、Cursor#fast_executemany 機能の利点を活用することを検討してください。バージョン 4.0.19 で導入されたこの機能は、挿入プロセスを最適化し、実行時間を大幅に短縮します。
挿入用のデータを含む CSV ファイルが、SQL Server インスタンスをホストしているローカル マシンではなくリモート クライアントに存在する場合 (またはアクセス可能な SMB/CIFS ネットワークの場所)、T-SQL BULK INSERT コマンドは実行できない可能性があります。このような場合、Cursor#fast_executemany は魅力的な代替手段を提供します。
デモ:
「fast_executemany_test」テーブルに 1000 行のデータを挿入するシナリオを考えてみましょう。デフォルト設定を使用すると、操作には約 22 秒かかります。
<code class="python">crsr.executemany(sql, params)</code>
次の方法で Cursor#fast_executemany を有効にするだけで、
<code class="python">crsr.fast_executemany = True</code>
挿入をわずか 1 秒に加速できます。実行時間は重要な要因によって異なります。この機能を利用して一括挿入を合理化し、データ インポート タスクの全体的なパフォーマンスを向上させます。
以上がpyodbc の Cursor#fast_executemany を使用すると、MS SQL Server への一括挿入をどのように高速化できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。