00:00
比如说我现在呢,想提交一个MR了啊,MR那是不是这儿就是咱们上午提交MR的那个,呃,那个命令啊,对吧,那这时候我想指定队列啊,如果你不指定队列,它默认是哪个队列呀,那就是default啊,这个队列是由哪个参数决定的呀。他肯定有一个参数吧,对不对,哪个参数。这个大家应该之前讲过吧。讲过讲过,但是肯定是忘了,我知道啊,咱往下翻啊,这应该是由谁决定的呢?实际上是由这个参数决定的来,就是大家在这看到的这个参数。叫做map reduce.job.q name啊,那这个就是我们指明队列的参数啊,那这时候呢,我们需要在哪,需要在。来复制一下啊,需要在咱们这个提交MR的这个。命令的这个炸包后边啊,在炸炸包后边我们需要干什么呀?我们需要呃,诶不是炸包后边吧,我们看下是哪啊,是炸包后边吗?是派后边啊,一般情况下不是JA包后边,一般情况下是在你那个呃,如果说你自己写的一个mmr,这你应该写的是一个啥呀?是一个全列名对吧?啊,你需要在你的那个全类全列名后边去写这个参数啊,那咱们在这就放在派后边吧,啊放在这,那这里边我们加一个杠大D啊杠大D在这指的什么?就是一个相当于一个呃,就是呃覆盖的一个参数啊,就是你在这儿可以配我们mmr当中的任意参数,什么参数都能配,比如说你那个输出路径啊啊,比如说你的压缩格式啊等等,在这儿都能配,然后呢,它会覆盖掉这个默认的参数。
01:35
啊,那一个参数你就加一个杠大D就行啊,是这样的啊,那你加那个参数MAP6点job.q然后呢,后边等于哎,Have,然后注意咱们能够提交任务的队列只能是什么样的来着,只能是那个子节点对吧?啊这个只能是这样的啊哎,你不能提交呃,像这种父节点都是不可以的啊在这这能提交,这能提交,这能提交就是他没有子节点,你就能提交任务是这样的啊啊那这时候咱们回车。
02:01
这个任务呢,就会被提交上去来,那咱们打开这个,呃,8088页面,咱们看一下这个队列能不能看出来啊。来看。这是咱这个任务对不对?这个任务当中是不是有一个字段叫做Q啊,Q下边已经是have q了啊,默认情况下是default啊,这个咱们应该是能够看出来啊,OK,那现在我们这个任务已经完成了,就是普通的MR,咱们是这么指定的,那接下来呢,我们再来看一下呃这种呃,比如说那个谁啊,比如说咱们那个呃,Have客户端那边我们怎么指定队列。嗯。还有核酸怎么指定,大家大家猜一猜应该怎么指定啊?是不是set参数就可以了,对吧,那三的哪个参数其实还是这个啊map reduce,然后呢,点drop.e EQ name,你可以先看一下的默认值回车,是不是就是default呀,啊,那这时候呢,我们可以给它设成咱们这个have,比如说等于have啊,那这时候我们再去提交任务啊,Insert一个啊走。
03:02
这个时候我们注意去观察一下,哎,咱们这个页面上的这个,呃,这个任务啊,刷新一下。哎,这个是刚才咱们提交的海王Spark,你看它现在的队列是不是也是have队列了呀,而且你这时候呢,你去看schedule,你是能看到的,看到没有,它所使用的是不是就是have队列的这个资源呀,哎,就是这个,那咱们这个是能够看出来的啊,能看出来的行,那这是have,咱们如何指令队列。啊,Have指定完之后呢?那还有谁,那刚才前面还提到了,咱们scoop是不是也要指明这个队列呀,对不对,那scoop怎么指明啊,啊来怎么指明,我们现在进到OPT,诶不用进到OPT,我们进到哪进到我们那个并目录,咱们脚本是不是就有一个词库脚本,咱把这个脚本打开看一下啊,My circle to h加y.SH然后回撤啊来,那这个就是我们一个scope的提交任务的一个命令,对不对,就是它,你说这个东西我要想指明队列怎么办呢?
04:01
其实也是加参数呗,对不对,也加参数,这个怎么加注意啊,我们是在SCO import,然后后边呢,哎,咱们再加一行加一行,我们加什么内容呢?哎,就还是加这部分内容复制。然后放在这就行了啊,然后注意啊,那这边我们是一个杠,而不是跟其他参数一样的两个杠,这个呢,相当于是一个额外的一个参数啊,跟他们其实不一样的啊,咱们杠大d my produce.job q name,然后呢,点击空格,然后加一个换行符,你给它加在这就行了。啊,那咱们一会儿做一个这样的统一的规定啊,做一个统一规定,我们现在整个呃,咱们那个容量调度器当中有俩队列,一个是default,一个是have,对吧,咱们做一个规定啊,我们所有的测试的这个任务啊,咱们后续都提交到default队列,提交default是不是就不用指定了呀,对吧?那我们所有后来经需要交给阿兹卡班去调度的啊,因为大家都知道啊,前面简单简单说过了,我们这个scoop任务,以及后边咱们所有的circle circle是不是都得分装到脚本里边啊,对吧?封了脚本是不是都要交给那个阿兹卡湾这种调度工具学调度吧?啊,所有交给调度工具调度的任务咱们都提交到have队列里边,那死库这个任务是不是就是咱们第一个要交给调度器调度的任务啊,以它的队列我们就指名为have,所以这个位置呢,大家一会儿都要修改。
05:24
啊,我改了之后大家也都要修改啊,这得改一下啊,那这儿改了之后还有个地方得改,咱们前面大家回顾了啊,这个脚本,我们这个port data函数其实完成了两个功能,一个是导数据,一个是干啥,一个是键索引,对吧?啊一个导数据一个键索引啊,那所以说键索引我是不是也是MR,那所以也要指定队列,那它放在哪啊,前面说一般情况放在咱们那个全类名的后边是不是就行,那放在这个位置啊,摁一下这个I,然后加在这个注意啊,保留这个前后的空格,就你这个杠前面要有一个空格,你这个have后边呢,也要跟哎后边的参数有一个空格啊,给它隔开就行啊,大家记得呢,把这个位置都改一下啊,都改一下呃,然后大家现在如果需要的话呢,可以截一个图。
06:09
啊,可以截个图,嗯,你得知道从哪改啊,改什么地方啊,可以截个图啊,这个位置。我确认一下啊。嗯。来这个位置,还有这个位置。啊。截图或者说我一会课下呢,把咱这个脚本给大家再发一份也行啊行,那这个呃,Scoop的这个队列咱们就应该就知道怎么指定了,对吧,就在这指定一下就行啊好,Shift这Z行,那相当于我们就完成了这几个,呃,就是几个任务提交,提交任务的方式,那个队列,队列的这个指明方式就说完了啊呃,还剩一个对吧,还剩一个那个Spark任务对不对,那Spark任务怎么指明队列大家知道吗?知不知道啊Spark咱们一般提交任务的方式呢,有好几个啊c model l,然后呢,我们进到这个Spark。
07:02
SPA,然后进到BI目录,那BI目录当中我们提交任务的这个脚本呢,有这样几个,比如说SPA shell,这相当是一个交互式客户端,对吧?啊,那这个你在启动它的时候指纹一个参数就行,拿参数一会给你看啊,还有SPA circle SPA circle呢,就跟咱们那个have客户端一样,你把它打开就里边能写circle,它也是能够set参数的啊,或者说呢,你也是在进它的时候就给他把那个队列指明也行,那下边这样的一个SPA me,这个也是就用来我们提交那种led那个大包的任务的,对吧?那这个呢,也是可以指明参数的,指明哪个呢?其实咱们这可以看一下啊,比如说我敲一个s Spark。SPA,然后呢杠submit,然后边呢,我们嗯,杠杠har试一下啊h he LB看有没有回车。哎,已经出来了是吧,那出来了之后呢,咱们这里边儿呢,就有一个什么东西看一下。是不是Spark on雅安对不对啊,那这就有一个啥呀。杠杠Q后边的写name,然后它默认是啥,默认default,那我要想提交的have,那你就在执行这个Spark submit的时候写一个啥呀,杠杠QUEUE,然后呢,后边选啥,还这是不是就提交到have队列里边来呀,是这样的啊,所以这块呢,大家得知道我们不同的任务,哎,如何去指明这个队列啊,咱们知道就可以了啊把视频录一下。
我来说两句