00:00
还有最后一个啊,就是说这里边其实have当中呢,它是有很多很多的参数的,除了我们在have当side里边看到之外,我们给大家看一下它的参数有多少啊,这就为我们配的参数啊,那我们能配在这里边说明像这些东西它都怎么样,它在have当中能识别这个P吧,它内部有的对吧?那它的一个配置信息有哪一些呢?我们来看一看。啊,来点开它默认的配置信息,啊,在这个have default标文件里面点开。这么多算还比较多的对吧?啊,所以配016,那你就拿着这个东西来找对吧,假如说我拿着它来找啊,那大家觉得你看啊,这个东西配置是不是买所有的URL地址,那默认的当中如果能找得到,大家觉得应该是什么?如果能找得到,他应该是什么?
01:05
嗯。呃,这个还不行,这个不是属性,这是描述对吧,我们继续啊。找到他的一个具体的一个配置信息,哎,我找到我复制错了是吗。我怎么复制的这玩意,对我就说没找到这个,因为复制它吧,对吧,到这来搜啊,我就说这个属性默认是处对吧,就校验,所以说我们把这个属机改成那什么force呀,这么复制的是time,很奇怪,看没来看一下啊,它默认的配置信息。是不德,我们前说了,它默认的德数据库嘛,对,你要不改它连的就是德比啊,跟马S没有关系,所以说这里边能够配置的信息啊,都在这儿啊,这是默认的配置信息,包括我们所提到的它的一个,呃,还有这个驱动,那它的驱动对应的驱动名呢,默认的情况下,这是德比的驱动的全路径。
02:09
啊,用的德比的对吧,我们换到MYL就要换成MY里驱动,所以说这是它的一个配置信息,我们可以通过这个default这个查ma去看,还有一种方式在这,我们可以在这里边set。是是封了对吧,就是它是通过KV什么什么东西等于什么什么来表示的,对吧,这是它所有的,这是最后是系统的相关内容嘛,还有他自己的一个配置信息上面加包的比较多了,包括上面有可能看不全啊,这个就不全了,对吧,因为他只能显示这么多,其实S呢,也能看到我们所有的一个信息,包括这个是所谓的时区,对吧,你看啊,其实那有同学之间问,那我们没有配这个。哈多相关的东西,它为什么能找到我们哈多内容,主要就是因为我们给的环境变量,它从系统的环境变量当中把我们的信息干什么。
03:04
都能够找得到对吧,包括当前的加目录啊,当前用户的名字这个东西是不是刚才我们还见到过,在配置log附近的时候,对吧?啊用的变量的名字啊,它都有,它都有,那这就涉及到假如说我们想修改一个参数,那有好多种修改方法了。对吧,第一个,那我们就直接改什么,改have杠,这就相当于全局的一个配置,对对吧,当然你也可以不改它,不改它就用的默认的配置信息了,那你找一下默认的是多少,那这个就是全局的,你自己它呢,这个have-S会覆盖掉have-defot里边这个没问题吧,对吧,这个在哈多里边,这种配置文件太多了。就类似于MR,它会MR这行用过程当中,它会加载八个配置文件,是不是哪八个四个defult,四个赛对吧?啊四个赛他会用你的赛就覆盖掉defult,就是说你的赛优先级比这个T要高,但是我们在写MR任务的时候,是不是可以在写代码的时候,在我代码的resource目录底下我也放一个哈,To跑或者HDFS-set点常量对吧?但这个配置信息又比你在集群上启动的时候读取的那个配置信息级别要什么要高,还有呢,代码里边再去修改是不是它的级别是最高的,其实就是加载顺序的问题,对吧,就是加载顺序他肯定优先加载默认的,然后加载我们自己在集群上配的,然后加载你代码里边了,加载完之后,你代码里边再修改是不是再加载的,所以它是覆干的关系,所以我们说的优先级更高。
04:53
的,其实是最后加载后面加载的会覆盖到前面加载的,对吧?啊是这样的一个过程,那在这个地方也一样,那有时候有的东西啊,我不想写在配置文件里面,因为写在配置文件里面所有人都能用了。
05:08
我当前这个任务可能需要一些特殊的配置信息,对吧,假如说当前这个任务跑的时候呢,这个表里边有很多的小文件,我可能需要用一个什么com input的方法来用,我是不是临时设置一下呀,其他任务可能也不受影响,对吧,其实就这个意思啊,那其他的方式还有两种,第一种呢,我们通过命令行。传递参数的方式,那么传呢,让b have,然后加一个杠,Have come,后面还是跟着什么KV啊,跟着KV好,那我们来试一下这种方式啊,注意它跟的是叫杠焊抗房,然后跟着KV对吧?这个是对当前的这一次启动的窗口有效啊,那我们试一下来我们做个什么事呢?B,我们就不搞跟文档当中一样的这个什么AB的一个。
06:03
个数对吧,那我们做个什么事呢?这样have康复不KVK等于什么东西对吧,那我们等于这个来啊。哎,这个是等于按照我们优先级的一个考虑,这个优先级是不是比刚才have杠赛里面配置更高啊。什么东西没了?刚才是不是有OT呀,还注意刚才是不是有这个对吧,因为当前我们启动的时候又重新指定了一下配置基金。
07:05
对吧,又重新指定了一下,而且它的优先级肯定比。配置文件要高对吧?啊,因为它后加载嘛,启动的时候再去用啊,所以说这个时候就不打印这个什么狗信息了,好呃,就是这个数据库信息了,对吧?好,那我们先加个新from test表头信息有没有啊有对吧,因为我没有改表头信息,那这个时候还有一种方式,我们在进来好以后。还可以改,还来。我把这个给他拿过来,在这里面呢,等于一个什么好,我再去查还有吗?没了啊没了好,那这两种啊,这个通过命令行启动的时候去指定参数呢,对当前这个窗口启动的时候都有效,而如果你在里边去改。
08:03
对于当前执行完这个命令之后,下面的东西是什么有效的啊,好,那么问题来了,我在这个里边我去算它。我等于处呢,那大家觉得哪个优先级更高啊,已经出来了,我一回车这个default就已经怎么样出来了,对吧?啊,就已经出来了啊,所以说这个相当于你在写代码封装的时候,启动的时候,呃,在result底下写的那个东西,而这个里边呢,相当于代码优先级对吧?最后加载的啊,因为最后再读嘛,你就随时设置的,对吧,它可以通过这种方式啊,通过这种方式,那一般的我们可以怎么去用呢?对吧?这些东西其实我们刚才我看到了,在have当中,我们可以通过杠E或者杠F来执行什么。
09:00
不进到汉客户端里边去执行S对吧,那我们就可以把配置信息呢,写在你的S前面。就只给这一个文件里边的东西用,或者说只给我们什么b have杠我双引号,我在这可以去set一个什么什么东西,对吧,你随便写啊,然后分号隔开,然后后面我就写c select什么东西,那就只给当前的你这个搜里面用,对吧,相当于是一种临时生效的方式,而且这个包括在这写的啊,在这写的都是临时生效的。对吧,那我CTRLC我重新进来,我不用这种方式,我用b have进来,那库名和表头信息。都会怎么样,都会打印啊,都会打印,因为我们没有去改了嘛,对吧,我们可以看一下啊,首先进来之后是不是就可以验证库比有了,然后我们去select from test。
10:02
表头信息应该也是什么有的对吧?啊,表头信息也有的啊,就刚才我们所聊的这种方式啊,在这通过命令行携带进来的呢,它是对当次还不生效,包括我们在里边去使用什么赛的命令去设置它相应的一个参数,也是仅对本次have有效,如果说重启。这两个东西都不生效了啊,都档次的,而且优先级是从上往下越来越高的,因为加载顺序嘛,还是那个问题,那你最后写的这个是不是最后加载相当于对吧,前面都加载好了,然后你再去修改一下它的值,对吧?啊,一定是这样子啊,它的一个生效规则啊,行,这是我们所说的,但是有的东西啊,呃,系统级的就类似于log forg打印日志的,那不好意思,在这里边设置不了,没有这个参数嘛,那我们注意啊,在这里边你通过S能设置的参数,一定是通过这个地方能干什么,能查得到的一些参数啊。
11:06
刚才那不说这个东西在这里边是没有的啊,那那个东西你说在这里边去设置它都不识别,假如说或者说这样啊,我们进来之后,我随便下载一个,你觉得他有这玩意属性吗。他设置了它也不报错,但其实没有意义是不是啊,没有意义啊,这个东西也没有意义,因为它没有这个属性。啊,它根本就没有这个属性,你要能够让它正常生效的得是什么,刚才我们说的你到这个have default这个常态文件里边能找到的一些属性信息啊,才可以,对吧,这个配置信息呢,比较多,它不像哈多那边,哈多里边你要找这个默认的配置信息得去哪找。对,只能去官网上找那个的文件。对吧,啊,去官网上找这个have当中呢,他把这个po的文件呢,都给我放在这还比较好的,就是有时候呢,我们去改进信息,我们看一下主要的我们可能看的是什么东西呢,看的是这个。
12:05
有的人说这个反正我也不看,我就直接把这个属性复制到那个谷歌,复制到百度里边,我直接查是吧,那也行啊,一般的我们看这个属性啊,都是看它的什么描述信息啊,看它的描述信息,那这里面呢,我们就来看一下啊,它里边有一个。啊,这是安定是吧,那个。哎,我们去找一下那个东西啊,所谓的这这。我们搜一下它的一个引擎,看这默认的引擎是什么干么?那你要换引擎就知道怎么换了,把这个属性配置到have杠里边T或者说配置个什么Spark对吧?啊,引擎它都有的,这是默认的引擎,直接通过这个地方,我们是不是也能看得出来它引擎还有Spark和T子,对吧?我给你举个例子啊,那这个呢,是可以通过配置文件去改的,但是你不要轻易的改啊,因为现在没有T加包,你有Spark加包吗?你就光改Spark,那有意义吗?你没有下包那运行什么呀,对吧?啊,所以呢,得有本地,得有太子环境,得有这个SPA环境,那就一样的,假如说我们本地没装央哈。
13:27
你看能运行吗?那肯定运行不了对吧,你配置的信息你肯定要有,就类似于这我们配了买circlel,如果你买这文装这个东能起来吗?肯定没有对吧,不是说配置文件往那一写就简单的了事了啊,还得有相应的环境对吧?啊,所以说你这个时候说把它改成T子改成SPA,那是不睡效的,没有用的啊,后面呢,我们还要去引入它对应的什么。讲包起码你得带,跟have一样。不跟哈多一样,得在环境变量里面能有吧,对吧,你在环境变量里面能找到啊,起码得做这个事情啊,一样的,后面T子跟SSPA也一样的啊,我们这两个以擎呢,都会涉及到啊,都会涉及到啊,但是它的一个这两个显著特点呢,就是比mmr要快啊,就这个点,其他的倒还好啊,这是我们所聊的它的一个属性配置的一个问题,这款东西也没什么难度吧,对吧?啊就正常去配一下,当然后面啊,我们现在呢,介绍的参数并不多,后面在调优的时候,我们还会看到很多很多的这种参数啊,再遇到的时候再去讲,因为这个时候不可能说讲到这块时候对着这个haveat一个一个往物吧,那不封了吗?你不封我也封了是吧,对吧,而且有很多属性,说实话我也没去仔细研究过,因为不可能啊,那公司当中也不可能说你用have的时候把所有的配置文件全部看一遍了,这是不存在不现实的,对吧,任何一个人都做不到啊,但是如果说呃,不是用的人开发的人。
14:56
他们肯定要用对吧?啊写这个人,但是开发的人正常的过程中用的时候是不会说关注里边所有的配置信息的,这是不可能的啊,这也不现实啊,那我们主要就展出来相关重要的,那我们这些重要东西来自于哪呢?就是官方文档,官方文档整个的安装当中呢,它会告诉你应该配什么,起码能保证它基本的什么并行啊,后面调优呢,是优化的事情,对吧。
我来说两句