1.Yarn
默认调度器为
Capacity Scheduler
(容量调度器),且默认只有一个队列——
default
。
如果队列中执行第一个任务资源不够,就不会再执行第二个任务,一直等到第一个任务执行
完毕。
(
1
)启动
1
个
hive
客户端,执行以下插入数据的
sql
语句。
hive (default)> insert into table student values(1,'abc');
执行该语句,
hive
会初始化一个
Spark
会话,用以执行
hive on spark
任务。由于未指定
队列,故该
Spark
会话默认使用的就是
default
队列,且会一直占用该队列,直到退出
hive
客户端。
可访问
ResourceManager
的
web
页面查看相关信息。
(
2
)在
hive
客户端开启的状态下,提交一个
MR
。
[atguigu@hadoop102 ~]$ hadoop jar /opt/module/hadoop-
3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar pi 1 1
MR
任务同样未指定队列,所以其默认也提交到了
default
队列
任务提交界面如下:
ResourceManager
的
web
页面如下:
(
2
)在
hive
客户端开启的状态下,提交一个
MR
。
[atguigu@hadoop102 ~]$ hadoop jar /opt/module/hadoop-
3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar pi 1 1
MR
任务同样未指定队列,所以其默认也提交到了
default
队列
任务提交界面如下:
ResourceManager 的 web 页面如下:
(
3
)容量调度器
default
队列中,同一时间只有一个任务执行,并发度低,如何解决呢?
见下一节。