このアプリケーションではstd::map
、(キー、値)データを格納し、シリアル化を使用してそのデータをディスクに格納するために使用します。このアプローチでは、ディスクI / Oがパフォーマンスのボトルネックであり、キーを使用した値の検索はそれほど高速ではないことがわかりました。
私はLevelDBに出くわし、それを使用することを考えています。しかし、いくつか質問があります。
- LevelDBのドキュメントには、(文字列、文字列)キーと値のペア用に作成されたと記載されています。カスタムキーと値のペアに使用できないということですか?
- とLevelDBの違い
std::map
は、LevelDBが永続的でありstd::map
、メモリ内で機能することです。つまり、ディスクI/OのボトルネックがlevelDBにとってより問題になるということですか。
より具体的には、LevelDBがより良い選択であるかどうかを誰かが説明できますstd::map
か?
PS:hash_map
sを使ってみましたが、遅いようですstd::map