GBase 8a Mpp Cluster集群产品参数篇之并行控制参数

  1.   参数名称:gbase_parallel_execution(并行开关)
    
     取值范围:bool变量,缺省值为0(关闭并行)
    
     参数说明:用于控制是否启用并行的开关,可以在配置文件中设置(实例级生效),也可以在session级通过set命令设置(session级生效)
    
  2.   参数名称:gbase_parallel_max_thread_in_pool(express后台线程池的总线程数)
    
     取值范围:0~4096,默认为系统CPU核数,通常不应设置超过cpu核数的2倍
    
     参数说明:用于配置并行执行器线程池中的总线程个数(线程池中的线程为数据库服务启动时创建,执行SQL时从线程池租用,用后归还,可有效避免线程频繁创建和销毁的代价)
    
  3.   参数名称:gbase_parallel_degree(SQL并行度)
    
     取值范围:2~ gbase_parallel_max_thread_in_pool,小于2则表示不启用并行,最大取值范围不超过线程池可以线程数
    
     参数说明:控制每个SQL的最大并行度
    
  4.   参数名称:_gbase_parallel_aggr_mode(并行聚集时的数据切分策略)
    
     取值范围:0——自动评估(缺省值);1——按hash切分;2——按位置划分(Round-Robin)
    
     参数说明:控制并行分组聚集时的数据切分策略,不同的场景适合不同策略,分组字段的distinct值较多时适合hash划分(无需二次聚集),distinct值比较少的时候适合RR划分(划分数据代价低,二次聚集成本不高)。缺省策略为自动评估,如果发现自动评估的策略不准,可以手工设置为适合的策略。
    

示例案例:

某测试项目,6亿行聚出100万个分组,按理说应该评估成round-robin,但这个场景的数据特征是从任何一个相对小的采样窗口(几万条甚至几十万条)看,distinct比例都非常高 30%~50%,只有当采样窗口非常大(达到几百万条规模时)才有可能知道其distinct比例比较低,因此除非采样率非常高,否则无法获知相对准确的distinct比率,但采样率太高对性能的负面影响也可能很大。类似上述场景就属于很难评估准确的,这时需要手工干预,人为设定数据切分策略。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值