我如此对Presto中的内存设置感到困惑。请在下面查看此内容:
query.max-memory
query.max-memory-per-node
(base config)
query.max-total-memory
(release in 0.205)
resources.reserved-system-memory
(admin properties)
这就是我能找到的全部。
这是我的Presto设置:
query.max-memory = 2.25GB
query.max-total-memory = 2.25GB
query.max-memory-per-node = 0.75GB
根据我的设置,我发现了以下规则:
query.max-memory-per-node
<= jvm * 0.25
常规池= jvm * 0.4,与resources.reserved-system-memory
保留池= jvm * 0.3
各种内存设置之间的关系。 (就像resources.reserved-system-memory
是通用池吗?query.max-total-memory
=用户内存+系统内存,什么是用户内存和系统内存?)
通用池和保留池用于什么用途?如何更改它们的值?
常规池(占jvm的40%),预留池(占jvm的30%),jvm的最后30%在哪里?还是Presto如何分配我的3GB jvm内存?
答案 0 :(得分:0)
reserved = query.max-memory-per-node
system = 40% of heap
general = heap - system - reserved