2

redis や memcached などのキーと値のデータベースが必要ですが、メモリ内ではなくディスク上にある必要があります。データベースにデータを入力した後 (これは定期的にゼロから行っています)、実際にはget操作のみが必要ですが、多くの異なるプロセスが必要です (そのため、Kyoto Cabinet と LevelDB は機能しません)。

500 万個のキーと~10-30gbデータが必要なので、他のいくつかの単純なデータベースも同様に機能しません。

RocksDBが複数の読み取り専用クライアントを処理できるかどうかについての情報は見つかりません。私のOSでビルドするのは簡単ではないので、それを行う前に尋ねたかった. できない場合、動作するデータベースはありますか? できればUbuntuパッケージとPythonバインディングを使用してください;-)。

現在、多数の小さなファイルを使用しているだけですが、簡単なバックアップやコピーなどが必要なため、本当に最悪です。これにより速度が低下する可能性もあると思いますが、それほど問題ではありません.

4

2 に答える 2

1

最も簡単な答えはおそらく Berkeley DB であり、バインディングは stdlib の一部です: https://docs.python.org/2/library/anydbm.html

于 2014-04-24T14:20:58.213 に答える