zoukankan      html  css  js  c++  java
  • drill 学习 五 配置说明- 内存

    关于 drill 的配置主要包含了:

    • 内存配置
    • 多租户配置
    • 安全配置
    • 性能以及功能配置
    • 查询profile以及数据配置配置

    内存配置

    drill 使用包含了jvm 的直接内存,堆内存,核心使用最多的是直接内存,默认是8G,但是推荐配置更好(drill 高效使用了内存)
    大部分场景drill使用的是内存,并不使用磁盘,jvm 堆内存默认是4G,4-8G基本就够用了

    • 修改分配的内存
      默认位置/conf/drill-env.sh 修改需要重启
      参考选项
     
    #export DRILLBIT_MAX_PROC_MEM=${DRILLBIT_MAX_PROC_MEM:-"13G"}
    //Maximum cumulative memory allocated to the Drill process during startup. This option was introduced in Drill 1.13.
    #export DRILL_HEAP=${DRILL_HEAP:-"4G"}
    //Maximum theoretical heap limit for the JVM per node.
    #export DRILL_MAX_DIRECT_MEMORY=${DRILL_MAX_DIRECT_MEMORY:-"8G"}  
    //Java direct memory limit per node.
    #export DRILLBIT_CODE_CACHE_SIZE=${DRILLBIT_CODE_CACHE_SIZE:-"1G"} 
    //Do not modify the DRILLBIT_CODE_CACHE_SIZE. The value for this parameter is auto-computed based on the heap size and cannot exceed 1GB. 

    一些说明
    比如DRILLBIT_MAX_PROC_MEM=40G,则以下的配置总和不能超过40G

     
    DRILL_HEAP=8G
    DRILL_MAX_DIRECT_MEMORY=10G
    DRILLBIT_CODE_CACHE_SIZE=1024M
    • 修改查询的内存分配
      可以将Drill分配给每个查询的内存量配置为硬限制或占总直接内存的百分比。在planner.memory.max_query_memory_per_node和planner.memory.percent_per_query选项设置的存储器,drill可分配给一个节点上的查询量。这两个选项均默认启用。在这两个选项中,Drill选择提供最多内存的设置
      如果修改每个查询分配的内存,并继续遇到内存不足错误,则可以尝试减小该planner.width.max_per_node选项的值。减小此选项的值会降低每个节点的并行度。但是,这可能会增加查询完成所需的时间。
      还可以修改drill.exec.memory.operator.output_batch_sizeDrill 1.13中引入的选项。该drill.exec.memory.operator.output_batch_size选项限制了Flatten,Merge Join和External Sort运算符分配给外发批次的内存量。限制分配给外发批次的内存可以提高并发性,并防止查询因内存不足错误而失败。
      传出批处理的平均行大小(根据传入的批处理大小计算)确定了可放入该批处理的可用内存的行数。如果查询因内存错误而失败,请减小该drill.exec.memory.operator.output_batch_size选项的值以减小输出批处理大小。
      默认值为16777216(16 MB)。允许的最大值是536870912(512 MB)。输入以字节为单位的值。
      注意:不建议将批大小配置为小于1 MB,因为这可能会导致性能问题

    参考资料

    https://drill.apache.org/docs/configuring-drill-memory/
    https://drill.apache.org/docs/sort-based-and-hash-based-memory-constrained-operators/

  • 相关阅读:
    Eclipse的自动排版设置(format)
    Java中" "表示几个空格
    cookie和session详解
    IO流操作详解
    springmvc常用注解标签详解
    mavenWeb工程建立步骤
    数据导出为excel表格
    Springmvc jar包介绍
    【初级算法】5.只出现一次的数字
    【初级算法】4.存在重复
  • 原文地址:https://www.cnblogs.com/rongfengliang/p/13766815.html
Copyright © 2011-2022 走看看