PostgreSQL挿入パフォーマンス最適化:毎秒2000件から92000件へ
2025-05-16
Hatchetチームは、PostgreSQLへの挿入速度を31倍に向上させ、毎秒2000件から92000件に到達しました。主要な最適化は、接続プーリング、バッチ挿入、COPYコマンドです。接続数の増加は必ずしもパフォーマンス向上に繋がらないことを発見し、最適なバランスを見つける必要がありました。バッチ挿入はスループットを大幅に向上させましたが、レイテンシも増加するため、バッチサイズとフラッシュ間隔の調整が必要です。COPYコマンドはデータの返却が不要な場合、非常に効率的でした。本稿では、複数テーブルへのトランザクション挿入やUNNESTの使用といった高度な最適化技術にも言及しており、今後の記事で詳細を解説する予定です。
開発
バッチ挿入