2017-11-10 13 views
-3

Excelデータベースにエクスポートするデータベースを約1,100,000レコード持っています。私は "スプレッドシート"宝石を使って何の問題もなく1,000レコードを挿入することができます。しかし、1,000回の実質的な取引が始まった後。 1,000から2,000レコードまで、CPU使用率100%の非常に遅い挿入です。 2,000のシステム全体がクラッシュした後。Rubyスクリプトを使用してmysqlから1,10,000レコードをExcelシートに挿入する方法

1つのExcelシートで1,000レコードのExcelシートを作成し、Excelシートをマージするのは好ましくありません。

Environment: 
    Linux-Ubuntu 14.04 OS, 
    Ram: 1GB, 
    Ruby Version: ruby 2.3.1p112 

答えて

0

宝石を使用したり、Excel形式にエクスポートしたりしないでください。プロダクトはCSVです。

これはプレーンテキスト形式ですが、excelは何の問題もなくそれを読み取ります。


また、MySQLにはexport to CSV itselfの機能があります。

+0

使用方法 \t \t mysql mydb -e "select * from mytable" -B | s/$/\ "/ s/$/\"/s/$/\ "/ s/$/\"/mytable。ルビースクリプトのcsv ? – teamg

+0

なぜrubyスクリプトからshellコマンドを使いたいのですか?シェルから実行するだけで、ルビのCSVを使ってアプローチすることもできます。 – mudasobwa

+0

まず、時間を取って返信してくれてありがとう、本当にあなたの助けに感謝します。 私は巨大なデータを取り込み、Excelシートにデータを挿入しなければならないルビースクリプトに取り組んでいます。だから私はこのコマンドをRubyスクリプトで使用しようとしているのですが、これは私がやっていないものです。周囲の解決策を探してください。 – teamg

関連する問題