私は最近、いくつかのセンサーデータを保存するための時系列データプロジェクトに取り組んでいます。最大の挿入/書き込みスループットを達成するために、私はキャップ付きコレクションを使用しました(mongodbドキュメンテーションのcappedコレクションは読み取り/ 。私は通常のコレクションに対してインデックスを持たないコレクションを持つPythonドライバを使用して数千のドキュメント/レコードを挿入/書き込みするためのコレクションをテストすると、通常のコレクションよりもキャップ付きコレクションの書き込みパフォーマンスの向上に大きな違いは見られませんでした。例としては、pymongoドライバを使用して1つのスレッドに40Kのレコードを挿入したようなものです。キャップ付きのコレクションは約25.4秒かかり、通常のコレクションは25.7秒かかりました。MongoDBはコレクションのパフォーマンスをキャップしました
キャップドコレクションの挿入/書き込みスループットを最大限に引き出すことができますか?これは時系列データの収集に適していますか?
パフォーマンスは関係なく、あなたがそれに「挿入」どのくらいのデータ、安定/定数残っていません。定期的なコレクションのパフォーマンスは、コレクションのサイズとともに低下します。 –
また、現在の標準では40kのドキュメントは何もありません。 (あなたが本当に弱いハードウェアを持っていない限り)。数十億の書類をそれぞれ書いてみてください。あなたは違いを見るでしょう。 –
こんにちはSergio、私は、キャップ付きcollection.i上の万のレコードの挿入を実行しています通常のコレクション以上の改善を見ることができませんでした。私はドライバも挿入率の改善のために重要ですか?私は現在32スレッドの8コアマシンを使用しています。このハードウェア構成では、上限のあるコレクションがパフォーマンスのバウンスを与えるのに十分ではありませんか? –