私は現在、(時間をかけて) かなり大量のデータを処理する金融プログラムについてブレインストーミングを行っています。C++/Qt GUI アプリになります。
実行時にすべてのデータをメモリに読み込むことは問題外だと思います。十分なデータが与えられると、メモリを大量に消費する可能性があるためです。
必要なものだけをメモリに読み込む方法を考え出そうとしています。たとえば、アカウントが表示されている場合は、実際に表示されているデータ (および絶対に必要なもの) のみです。そうすれば、データ ファイルが 4 GB 程度であっても、メモリ フットプリントを小さく抑えることができます。
ファイルを1行ずつゆっくりと読み取り、必要な特定のデータを識別する「タグ」または何かを見つけてロードする、ある種の検索機能について考えましたが、理論的には、GUIの更新があるたびにこれが発生する可能性があることを考慮してくださいひどい方法のようです。
基本的に、ファイル内の特定のデータを効率的に検索し、それのみをメモリに読み取り、ファイル全体を毎回読み書きすることなく、変更して書き戻すことができるようにしたいと考えています。私は経験豊富なプログラマーではなく、アイデアのグーグル検索はあまり成功していません。
編集:おそらく、Qtの派手なQDataStream関連のクラスを使用してデータを保存するつもりであることに言及する必要があります。つまり、ファイルはバイナリ ファイルである可能性が高く、テキスト ファイルのように行ごとに簡単に検索することはできません。