クエリが必要なデータのサイズと、複数のノードで必要に応じてスケーリングできるため、何らかのタイプの NoSQL データベースの使用を検討しています。私は多数の NoSQL 製品を調査してきましたが、データ構造に最高のパフォーマンス、スケーラビリティ、および機能を提供する最良のオプションをまだ決定できていません。
データ構造モデルは、各ドキュメント/セットがその個々の製品の特定のプロパティと説明を含む製品カタログです。プロパティは製品ごとに異なるため、スキーマのない製品が最も効果的です。
サンプル構造は次のようになります
[
{"name": "item name",
"cost": 563.34,
"category": "computer",
"manufacturer: "sony",
.
.
.
}
]
そのため、同じクエリで複数のインデックス/フィールドをフィルター処理して除外できる、レコードセット内のさまざまなデータセットフィールド/インデックスをフィルター処理/クエリできる必要があります。クエリはほとんどが読み取りであり、結合や関係タイプのリンクはあまり必要ありません。
私が調べたのは、Elastic Search、mongodb、OrientDB、Couchbase、および Aerospike です。
- Elastic Search は当然の選択のように思えますが、パフォーマンスと安定性について疑問に思っていましたか?
- Aerospike は、すべてをほとんどメモリ内で実行するため、非常に高速に見えますが、フィルタリングと検索機能はそれほど有能ではないようです。
私のユースケースに最適なオプションは何だと思いますか? または、他に検討すべき推奨DBがあるかどうか。
実際のユースケースでパフォーマンスをテストするのが最善の方法であることはわかっていますが、最初に少し絞り込むことを望んでいます。
ありがとうございました