update.あるテーブルに対して複数のレコードを同時に登録したいことがあります。このときに登録する数だけINSERTを発行するのはあまり効率がよくありません。INSERTと言われる単発のSQLで一括登録する方法がよく使われます。INSERTはどういうものか確認する。COLLATE=utf8_unicode_ci複数のINSERTを発行する。INSERTで一括登録する。(values);それぞれのSQLでこのような違いがありますが、登録されるレコード結果は同じになります。INSERTを使うには、activerecord-importという大変便利なgemがあるので利用させていただきます。activerecord-import使い方はとても簡単で、登録するレコード(model)のインスタンスをすべて配列にいれて、クラスメソッドのimportにそれを渡すだけです。booksこれで10回分のINSERT文が1つにまとめられます。パフォーマンスを検証する1度に登録する数を100レコードにし、それを100回繰り返す処理で計測してみる。Railsの通常処理でINSERTを繰り返すパターン。INSERTするパターン。...;Railsの通常パターンでは毎回COMMITされてしまうので、TRANSACTIONを使ったパターンも追加する。7.1316secそれぞれ7回計測し、1番速いものと遅いものを除外した5回平均のデータ。INSERTを使うとパフォーマンスは大きく向上しました。upLoginユーザーは見つかりませんでした。