dremio 学习四 内存以及logs 配置

dremio 是基于java 开发的,对于jvm 以及系统内存的配置就很重要了

最大内存(推荐配置)

最大内容,可以方便dremio 自动基于节点类型进行heap 以及direct 内存的分配
参数 DREMIO_MAX_MEMORY_SIZE_MB=16384
同时我们可以自己配置heap 以及direct 内存,但是有一些约定

  • 如果都指定了,那么最大的就忽略了
  • 如果一个指定了,dremio 自动基于遗留的内存进行调整

heap 内存

参考DREMIO_MAX_MEMORY_SIZE_MB=16384

direct 内存

 
DREMIO_MAX_DIRECT_MEMORY_SIZE_MB=16384 

说明,注意需要给os 保留至少1-2G内存

默认配置

如果没有设置,dremio 自动进行计算,规则如下

  • 协调节点
    If DREMIO_MAX_MEMORY_SIZE_MB is ≥18 GB, Heap is 16 GB and Direct uses the remaining.
    If DREMIO_MAX_MEMORY_SIZE_MB is <18 GB, Direct is 2 GB and Heap uses the remaining.
  • 执行节点
    If DREMIO_MAX_MEMORY_SIZE_MB is ≥32 GB, Heap is 8 GB and Direct uses the remaining.
    If DREMIO_MAX_MEMORY_SIZE_MB is ≥6 GB, Heap is 4 GB and Direct uses the remaining.
    Otherwise, Heap is 2 GB and Direct uses the remaining
    注意DREMIO_MAX_MEMORY_SIZE_MB内存至少是4G

heap 监控

dremio 自己包含了一个heap 监控,对于heap 超过了阈值的85%会进行查询的kill
对于执行节点dremio 会尝试进行至少释放25%的heap 内存,如果碰到类似的问题,可以尝试
加大heap 内存,重试,增加执行节点,以及减少查询的并行度

log 配置

我们可以基于环境变量进行配合,比如

 
DREMIO_LOG_DIR=/var/log/dremio

参考资料

https://docs.dremio.com/advanced-administration/dremio-env.html
https://docs.dremio.com/deployment/memory-config.html

posted on 2021-02-08 11:27  荣锋亮  阅读(278)  评论(0编辑  收藏  举报

导航