我们一直在考虑容量规划的内存,并在我们的一个k8s集群上运行了一个Helm部署的8GB限制的QuestDB示例。
我们最近开始从它的指标中剔除指标,我试图找到questdb_memory_mem_used
指标的底部,它偶尔会看到超出资源限制的偏移。
有没有人很好地处理了什么因素促成了这个指标,以及我们可能会看到什么?
作为参考,NATIVE_*
标记的指标在同一时间段内似乎更合理:
我们一直在考虑容量规划的内存,并在我们的一个k8s集群上运行了一个Helm部署的8GB限制的QuestDB示例。
我们最近开始从它的指标中剔除指标,我试图找到questdb_memory_mem_used
指标的底部,它偶尔会看到超出资源限制的偏移。
有没有人很好地处理了什么因素促成了这个指标,以及我们可能会看到什么?
作为参考,NATIVE_*
标记的指标在同一时间段内似乎更合理:
1条答案
按热度按时间wbgh16ku1#
根据QuestDB公开的documented Prometheus metrics,
questdb_memory_mem_used
包括所有本机内存分配,如果尚未触及虚拟内存,则可能包括虚拟内存。此指标包括mmapped文件,因此其值如此之大。当您访问示例上的大型表时,可能会看到此指标增长。
DISTINCT
和JOIN
查询也会影响此指标。请注意mmmapped内存是有弹性的,并且大部分是虚拟的。只有空闲内存被用于页面缓存,所以如果这个指标有一个很大的值也没关系。