一百八十一、Hive——海豚调度HiveSQL任务时当Hive的计算引擎是mr或spark时脚本的区别(踩坑,附截图)

一、目的

当Hive的计算引擎是spark或mr时,发现海豚调度HQL任务的脚本并不同,mr更简洁

二、Hive的计算引擎是Spark时

(一)海豚调度脚本

#! /bin/bash

source /etc/profile

nowdate=`date --date='0 days ago' "+%Y%m%d"`

yesdate=`date -d yesterday +%Y-%m-%d`

hive -e "

use hurys_dc_dwd;

set hive.vectorized.execution.enabled=false;
set hive.auto.convert.join=false;
set mapreduce.map.memory.mb=10150;
set mapreduce.map.java.opts=-Xmx6144m;
set mapreduce.reduce.memory.mb=10150;
set mapreduce.reduce.java.opts=-Xmx8120m;
set hive.exec.dynamic.partition.mode=nonstrict;
set hive.exec.dynamic.partition=true;
set hive.exec.parallel=true;
set hive.support.concurrency=false;
set mapreduce.map.memory.mb=4128;
set hive.vectorized.execution.enabled=false;

set hive.exec.dynamic.partition=true;

set hive.exec.dynamic.partition.mode=nonstrict;

set hive.exec.max.dynamic.partitions.pernode=1000;

set hive.exec.max.dynamic.partitions=1500;

insert overwrite table dwd_evaluation partition(day='$yesdate')

select device_no,

cycle,

lane_num,

create_time,

lane_no,

volume,

queue_len_max,

sample_num,

stop_avg,

delay_avg,

stop_rate,

travel_dist,

travel_time_avg

from hurys_dc_ods.ods_evaluation

where volume is not null and date(create_time)= '$yesdate'

group by device_no, cycle, lane_num, create_time, lane_no,

volume, queue_len_max, sample_num, stop_avg, delay_avg, stop_rate, travel_dist, travel_time_avg

"

(二)任务流执行结果

调度执行成功,时间需要1m29s

三、Hive的计算引擎是MR时

(一)海豚调度脚本

#! /bin/bash

source /etc/profile

nowdate=`date --date='0 days ago' "+%Y%m%d"`

yesdate=`date -d yesterday +%Y-%m-%d`

hive -e "

use hurys_dc_dwd;

set hive.exec.dynamic.partition=true;

set hive.exec.dynamic.partition.mode=nonstrict;

set hive.exec.max.dynamic.partitions.pernode=1000;

set hive.exec.max.dynamic.partitions=1500;

insert overwrite table dwd_evaluation partition(day='$yesdate')

select device_no,

cycle,

lane_num,

create_time,

lane_no,

volume,

queue_len_max,

sample_num,

stop_avg,

delay_avg,

stop_rate,

travel_dist,

travel_time_avg

from hurys_dc_ods.ods_evaluation

where volume is not null and date(create_time)= '$yesdate'

group by device_no, cycle, lane_num, create_time, lane_no,

volume, queue_len_max, sample_num, stop_avg, delay_avg, stop_rate, travel_dist, travel_time_avg

"

(二)任务流执行结果

调度执行成功,时间需要1m3s

四、脚本区别

计算引擎为spark时,脚本比计算引擎为mr多,而且spark运行速度比mr慢

set hive.vectorized.execution.enabled=false;
set hive.auto.convert.join=false;
set mapreduce.map.memory.mb=10150;
set mapreduce.map.java.opts=-Xmx6144m;
set mapreduce.reduce.memory.mb=10150;
set mapreduce.reduce.java.opts=-Xmx8120m;
set hive.exec.dynamic.partition.mode=nonstrict;
set hive.exec.dynamic.partition=true;
set hive.exec.parallel=true;
set hive.support.concurrency=false;
set mapreduce.map.memory.mb=4128;
set hive.vectorized.execution.enabled=false;

mr为计算引擎时任务流脚本不能添加上面这些优化语句,不然会报错

在海豚调度HiveSQL任务流,推荐使用mr作为Hive的计算引擎。

不仅不需要安装spark,而且脚本简洁、任务执行速度快!

相关推荐
roman_日积跬步-终至千里12 小时前
为什么 Hive 无法通过同步 JDBC 导出百万级数据?
数据仓库·hive·hadoop
roman_日积跬步-终至千里15 小时前
Hive JDBC vs MySQL JDBC:**“服务端推完就跑,客户端慢慢吃”**详解
数据仓库·hive·hadoop
计算机毕业编程指导师1 天前
【计算机毕设推荐】Python+Hadoop+Spark共享单车数据可视化分析系统 毕业设计 选题推荐 毕设选题 数据分析 机器学习 数据挖掘
大数据·hadoop·python·计算机·数据挖掘·spark·课程设计
计算机毕业编程指导师1 天前
【计算机毕设】基于Hadoop的共享单车订单数据分析系统+Python+Django全栈开发 毕业设计 选题推荐 毕设选题 数据分析 机器学习 数据挖掘
大数据·hadoop·python·计算机·数据挖掘·spark·django
计算机毕业编程指导师1 天前
【计算机毕设选题推荐】基于Hadoop+Spark的诺贝尔奖可视化分析系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习 数据挖掘
大数据·hadoop·python·计算机·spark·毕业设计·诺贝尔奖
计算机毕业编程指导师1 天前
基于Spark的性格行为数据分析与可视化系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习 数据挖掘
大数据·python·数据挖掘·数据分析·spark·毕业设计·性格行为
郑寿昌2 天前
2026年MR交互革命:事件相机重塑手势眼动同步
数码相机·mr
m0_716255002 天前
第二部分 电商离线数仓 全套项目代码(可直接在你伪分布式 Hive 运行)
hive·hadoop·分布式
郑寿昌2 天前
2026年MR框架对事件相机支持前瞻
数码相机·mr
为儿打call2 天前
SparkSQL 广播超时排查:小表但是多分区 = BroadcastTimeout
大数据·spark