2017-07-03 7 views
1

長い間ループが実行されており、各繰り返しでデータが作成されています。しばらくするとデータがRAMをいっぱいにする傾向があるので、ディスクに保存することをお勧めします。私の頭に浮かぶ最初のことは、データをバイナリファイルとして保存するためにcPickleを使うことでした。cPickleで保存された辞書をRAMにロードせずに更新する

ここに詳細な計画があります。各反復の後、新しいデータは反復カウントをそのキーとして持つ辞書に追加されます。この辞書は、ディスクに書き込まれます。この手順は、繰り返しごとに繰り返されます。
問題は、ディスク上のファイルを更新する方法がわかりません。私が知っている唯一の解決策は、辞書を再度読​​み込み、新しいデータを追加し、それを書き戻すことです。しかし、最終的には、辞書を毎回メモリにロードしなければならないので、この方法は意味をなさない。

cPickleを使用して保存した辞書を、内容をRAMに再度ロードせずに更新する方法はありますか?または、おそらくこのタスクを実行する別の方法が存在するでしょうか?

答えて

関連する問題