CSVでエクスポートさせるときFasterCSVはよく使うけど、レコード数が増えればそれに比例して処理スピードが鈍化する。 People.find(1, :include=>:profiles) としたとき、もしhas_manyしているprofileが1000個あった場合、そもそもオブジェクトのnewがボトルネックになる。これをさらにFasterCSVでeach回してcsv化するとなるとさらに遅い。1000ならまだいけるが、1万、10万というオーダーになると終わる。 なので、こういうときはmysqlがバックアップ用としてサポートしているsqlを使う。直接mysqlにsqlを投げてcsvを吐いてもらおう。 Profile.connection.execute("SELECT id, name, created_at from profiles where people_id = 1 INTO
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く