データに基づいてビデオを視覚化するアプリを構築するために、Atom/Electron を使用しています。各ビデオには、各フレームの情報を含む対応する CSV ファイルがあります。動画は約100分なので、ファイル容量もたっぷり!
私が抱えている問題は、ファイルの読み込みと解析に数秒かかることです。ほとんどの場合、これは問題ではありません。しかし、動画の一部のプレイリストを作成する必要があり、動画が変更されるたびに CSV ファイル全体を読み込むことは実行可能なオプションではありません。
ファイル ストリーミング オプションを fast-csv として探していましたが、ファイルの任意の部分の読み取りを開始できませんでした。
編集:FSのドキュメントから。この場合、問題は、ファイル内の必要な位置に対応するバイトをどのように知ることができるかということです。
オプションには、ファイル全体ではなく、ファイルから一定範囲のバイトを読み取るための開始値と終了値を含めることができます。start と end はどちらも包括的で、0 から始まります。
この状況に対するより適切で最もパフォーマンスの高いアプローチは何だと思いますか?
具体的には:
CSV ファイルの任意の部分からストリームの読み取りを開始する方法はありますか?
この問題をより適切に解決できる別の保存方法があると思いますか?
アップデート:
最後に、データをバイナリ形式のファイルに保存することでこれを解決しました。ファイルに含まれる列の数がわかっているので、パフォーマンスに影響を与えることなく、ファイルのセグメントから直接読み取ることができます。