私は66MBの大きなタブ区切りファイルを持っており、データを抽出するための最良のアプローチを知りたいです。
- テキストパーサーを使用しますか?それはメモリの問題を引き起こしますか?
- SQL Serverにインポートしますか?
- それを小さなチャンクに分割しますか?
このような大きなファイルを効率的に処理するための最良の方法は何ですか?
私は66MBの大きなタブ区切りファイルを持っており、データを抽出するための最良のアプローチを知りたいです。
このような大きなファイルを効率的に処理するための最良の方法は何ですか?
時間の経過とともにファイルのサイズが大きくならないことを確認することはできないため、最も便利な方法は、ファイルを 1 行ずつ読み取って内容を処理することです。
66MB は、最新のシステムで処理するには比較的重要ではありません。File.ReadAllLines() を使用したり、メモリにロードされた 66 MB のファイル全体を操作したりするのに問題はありません。
実際に考慮すべきことは、66MB ファイルの内容です。それは一つのことですか?10,000 個のリスト?一度に個々の「項目」(たとえば、1 行など) を操作できる場合は、一度に 1 行ずつ読むことができます。1行で66MBの場合、ファイルから一度に特定のバイト数を読み取ることができます。
リレーショナル データベースにデータを挿入する場合。どのように使用するかによって、挿入方法が決まります。それが本当に 66 MB のデータ チャンクであり、分割する意味がない場合。ほとんどのデータベースには、問題なく 66 MB を保持できるタイプ (IE BLOB) があります。