1 日あたり約 2M のレコードが約 2G のメモリを消費する KDB/Q データベースがあります。一日の終わりに、テーブル間の結合を行い、結果をディスク上のファイルに出力するいくつかのレポート機能を実行します。計算中、メモリ使用量は 15G まで増加します。私の問題は、この操作が終了するとメモリが解放されず、DB が再起動されるまで 15G のメモリがすべて消費されることです。
KDB にいくつかのテーブルをメモリからアンロードするように指示したいのですが (削除はしません)、他のアプリがまだ接続しているため、DB を再起動したくありません。
KDB にメモリから何かをアンロードするように指示する方法はありますか?
編集:
誰かが興味を持っている場合は.Q.gc[]
、KDB 2.5+ を調べてみることをお勧めします。有望に見えます。