1Kbから100kbまでのサイズの3000のcsvファイルを含むフォルダーがあります。これらのファイルのすべての行は43文字の長さです。合計サイズは171Mbです。
これらのファイルをできるだけ速く解析するプログラムを作成しようとしています。
私は最初に自分の実装を試しましたが、これらの結果に満足していませんでした。次に、StackOverflowでLumenWorks.Framework.IO.Csvを見つけました。それは大胆な主張をしています:
145のフィールドと50,000のレコードを含む45MBのCSVファイルを使用して、より現実的な数値を提供するために、リーダーは約30MB/秒を処理していました。全体として、1.5秒かかりました。マシンの仕様はP43.0GHz、1024MBでした。
私は単にそれらの結果の近くに何も得られません。私のプロセスは>>10分かかります。これは、1つの大きなストリームではなく、小さなファイルがたくさんあり、そこにオーバーヘッドがあるためですか?他に何かできることはありますか?
LumenWorksの実装は、引用符、エスケープ、コメント、複数行のフィールドを処理することは言うまでもなく、私自身の実装よりも速くはないと感じています(ベンチマークはしていません)。カンマ区切りの整数の非常に規則的な形式があります。
乾杯