【技术实现步骤摘要】
一种用于Hive
‑
SQL执行效率的提升方法及系统
[0001]本专利技术公开一种用于Hive
‑
SQL执行效率的提升方法及系统,涉及计算存储
技术介绍
[0002]随着生产力、消费力的不断解放,企业的业务场景、业务流程不断迭代,在这样高速高压的环境下,社会各界组织的决策者需要以高效便捷的手段来把控组织运营状态,每天需要浏览大量的、关键的业务指标,很显然不断增长的业务分析需求让组织存储计算集群倍感压力。
[0003]Hive
‑
SQL计算脚本是一种常用的、广泛的数据计算载体,常用来搭建离线数据仓库。集群面临的压力即,在传统的数仓开发中,数据工程师在实现数仓分层、指标计算时仅考虑如何完成需求,往往忽略了对代码、对执行策略的优化,久而久之计算集群疲惫不堪,对新增的Hive
‑
SQL计算脚本无暇顾及,而往日的计算脚本则令其气喘吁吁。
[0004]在这种背景之下,为了给有限的计算资源“解绑”,使其有能力面对未来更多的Hive
‑
SQL计算脚本并能游刃有余地应对往日的Hive
‑
SQL计算脚本,故先专利技术一种用于Hive
‑
SQL执行效率的提升方法及系统,以解决上述问题。
技术实现思路
[0005]本专利技术针对现有技术的问题,提供一种用于Hive
‑
SQL执行效率的提升方法及系统,所采用的技术方案为:一种用于Hive
‑
S ...
【技术保护点】
【技术特征摘要】
1.一种用于Hive
‑
SQL执行效率的提升方法,其特征是所述的方法具体步骤如下:S1基于当下计算任务的跑数表现选择最优的YARN调度器;S2基于队列利用率对计算任务关键环节任务进行并行拆分;S3优化计算引擎、mapper以及reducer数量配置,优化代码计算逻辑;S4对存在数据倾斜问题的进行倾斜治理。2.根据权利要求1所述的方法,其特征是所述S1基于当下计算任务的跑数表现选择最优的YARN调度器的具体步骤如下:S101基于组织的Hive
‑
SQL计算脚本执行特点选择最优的调取器策略;S102对队列执行时序要求且顺序固定的一组Hive
‑
SQL计算脚本采用FIFO Scheduler调度策略;S112对队列既要执行需求有时序要求且顺序固定的一组Hive
‑
SQL计算脚本,又要应对随机的,低频率的临时查询时采用Capacity Scheduler调度策略;S122对存在大量的、针对不同需求的Hive
‑
SQL计算脚本,且会发生随机的、高频率的临时查询时,采用Fair Scheduler调度策略。3.根据权利要求2所述的方法,其特征是所述S2基于队列利用率对计算任务关键环节任务进行并行拆分的具体步骤如下:S201对数据来源表按业务关键拆分;S202通过where关键字对最大化均分数据量的字段加以限制;S203将该计算脚本拆分为多个并行的计算脚本。4.根据权利要求3所述的方法,其特征是所述S3优化计算引擎、mapper以及reducer数量配置,优化代码计算逻辑的具体步骤如下:S301更改Hive的计算引擎为TEZ;S302利用TEZ计算引擎将计算解析为先执行全部map任务,再执行全部reduce任务。5.根据权利要求4所述的方法,其特征是所述S4对存在数据倾斜问题的进行倾斜治理的具体步骤如下:S401通过执行日志发现倾斜问题,找出倾斜问题发生的key;S402对key所在的代码段基于nvl()函数以及rand()函数进行治理。6.一种用于Hive
‑
SQL执行效率的提升系统,...
【专利技术属性】
技术研发人员:吴锦坤,张金波,张睿智,周庆勇,
申请(专利权)人:浪潮云信息技术股份公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。