さて、私はNoSQLデータベースについて少し調査を行ってきましたが、それらは私が必要としているものに適したオプションのようです。ただし、問題は、これらのデータベースの多くが、ディスクではなくRAMに対して読み取り/書き込みを行っていることです。これは、サーバーリソースが十分にある場合や、大量のデータブロックが予想されない場合に最適ですが、最悪の事態に備える必要があると思います。
これらのデータソースから受け取ることを期待しているのは、クエリごとに25KBから150KBの範囲で、単一のキー値の場合は最大150KBです。平均的なユーザーは、これらのキーを500から5000の範囲で生成し、無限に成長する可能性があります(ただし、おそらくその5000の範囲のどこかで停止します)。すばやく計算すると(ほとんどのデータは25〜150の上限にあるため、「平均」として100KBを使用します。ほとんどのユーザーは、おそらく2000〜3000のクエリを生成します):100KB*3000-つまりユーザーあたり300MB!あなたがまともなユーザーベースを取得し始めたときの非常識な量のデータ。したがって、最終的には、クエリ内のほとんどのデータを破棄して1KB程度を超えないようにしますが、それでもほとんどのRAM機能をはるかに上回ります。
ですから、私が探しているのは、データをディスクに保存し、オブジェクトをRAMにキャッシュするソリューションだと思います。しかし、私はすべてのソリューションを受け入れています。皆さんの考えを教えてください。私はこのことを速く実行し続けたいです...
編集:
通行人に役立つように少し違った言い方をします。
パフォーマンスを最大化することを検討しているが、NoSQLデータベースで大量のデータを処理する場合、推奨されるNoSQLデータベースは何でしょうか。データをディスクに保存するものだと思いますが、パフォーマンスが大幅に低下する可能性があります。そこに「両方の長所」の解決策はありますか?これらのレコードは、送信された後は変更されず、から読み取られるだけであることに注意することが重要です(ただし、それほど頻繁ではない可能性があります)。
管理が非常にクリーンに見えるため、このようなタスクについてRedisを調べていますが、完全にRAMで実行されるため、小さなデータブロック、または複数のインスタンスを同時に実行する複数のサーバーが必要です。これは私が行っていないことです。にアクセスできます。