ここで小さなブレーンストーミングを行います。
分散ストレージ ソリューションに最適なソリューションを検索します。私は効率的なキー/値ストレージ、フラットな名前空間、最小限のレイテンシーを探しています。
シナリオ
1Ko 以下の小さなブロブ レコードを保存する予定です。それらは主に生成/消費されたレコードです。
- 1書き込み
- 1 読み取り、まれなケースの詳細。
- アーカイブのため数か月後に削除します。
ただし、一部のレコードは 10Mb まで大きくなる場合があります。これは最大ですが、可能でなければなりません。
データはディスク上でシリアル化する必要があります。
重要
私の最初の優先事項は、ファイルの非常に巨大なリストに対して優れた応答時間を提供できるストレージであり、数億になる場合があります。
もちろん、この数では、ファイルを繰り返し処理することは気にしません (機能を探しますが、パフォーマンスは気にしません。デバッグまたはメンテナンスのためだけです)。
そしてもちろん、SPOF を使用せずに拡張できるソリューションは、より優れたものです。
Linux ソリューションである必要があり、クラウドは許可されていません (プライベート データ)。
まだ見つけたもの
Voldemort、Cassandra、およびHBaseを見ました。
- 残念ながら、Cassandra と HBase は blob レコードに対してあまり効率的ではありません。
- Voldemortはまだ未熟なようで、サポートされているレコード サイズとファイル数に関する情報が見つかりません。
LustreとCephもチェックしますが、キー/値ストアではありません。
CouchBaseとMongoDBは、永続性を有効にするとひどいパフォーマンスを示します。
いくつかのテストを実行していますが、まだ堅実なベンチマークを開始できません。誰かがこのソリューションに関する情報を持っているか、そのようなワークロード用の別の製品設計を知っていますか?