在启用 spark 的 DSE 中,可以为 Cassandra 分配多少内存?

how much memory can be allocated to Cassandra in DSE with spark enabled?

目前我的 DSE Cassandra 用完了所有内存。因此,经过一段时间并增加数据量后,整个系统就会崩溃。但是spark和ops center和agent等也需要好几个G的内存。我现在试图只将一半的内存分配给 cassandra,但不确定这是否可行。

这是我的错误信息:

 kernel: Out of memory: Kill process 31290 (java) score 293 or sacrifice child

默认情况下,DSE 将执行器内存设置为 (Total Ram)*(.7) - Ram Used By C*。这对大多数系统来说应该没问题。使用此设置,Spark 应该不能 OOM C* 或 Vice Versa。如果您想更改该倍数 (.7),它在 dse.yaml 文件中设置为

initial_spark_worker_resources: 0.7

如果我要为系统选择最小内存,则为 16GB,但如果您是认真的,我建议至少使用 32GB。如果您正在进行大量内存缓存,则应该增加更多。