細い行 (5 ~ 50 列) を使用する大量の読み取りシナリオに合わせて Cassandra を調整したいと考えています。アイデアは、行キャッシュを使用し、データが行キャッシュに対して大きすぎる場合に備えて、キー キャッシュを有効にすることです。
24 GB RAM を搭載したデュアル Intel Xeon サーバーを使用しています (3 つのリング内に 2 つのデータ センター - 合計 6 台のマシンを提供)
これらは、デフォルト構成に加えた変更です。
cassandra-env.sh
#JVM_OPTS="$JVM_OPTS -ea"
MAX_HEAP_SIZE="6G"
HEAP_NEWSIZE="500M"
カサンドラ.yaml
# do not persist caches to disk
key_cache_save_period: 0
row_cache_save_period: 0
key_cache_size_in_mb: 512
row_cache_size_in_mb: 14336
row_cache_provider: SerializingCacheProvider
6GB を Cassandra JVM に、0.5GB をキー キャッシュ (6GB ヒープのうち) に、14GB をオフヒープとして行キャッシュに割り当てるという考えです。JVMプロセスは1つしか実行されておらず、最大2GBのオーバーヘッドがあるはずなので、OSにはまだ4GBで十分です。
この設定は最適ですか? ヒントはありますか?
ありがとう、マチェイ