00:00
好,各位同学,那这个h base科认证咱是不是就做完了呀,对吧?做完之后就只剩下麒麟这一小部分了啊,这个相对来说比较简单了啊,我们来看一下此处我们需要做哪些准备工作,先看第一个啊,是不是也是需要为麒麟准备一个系统用户啊对吧?当然我们一会儿启动麒麟进程的时候,是不是也要使用麒麟自己的用户,对吧?那现在我们给它创建出来,来这个是创建用户,下面呢是修改密码,来我们给它执行一下,注意啊,这个在哪执行,是不是在102这一台节点,这就行了,对吧?我们因为只需要在102的一台节点启用,呃,使用启动麒麟对吧?好,接下来我们继续往下进行啊,再往下走,那再往下走的话呢,我们大家来看一下这个位置啊。我们需要干啥?需要修改一个HDFS上面的一个路径,这个路径是啥啊?叫做呃,KEY0点en nv.h DFS working d这个参数其实是哪的一个参数啊,是麒麟的抗复目录下边的一个配置文件当中的一个参数,这个参数呢,它指向的是HDF一个路径啊,大家应该还记得吧,我们之前在讲那个呃麒麟的时候,我们第一次启动的时候,是不是当初还报了一个小错误啊,对吧?我当初是不是将HDFS的一个麒麟路径给它删除了?
01:09
还还记得吧啊,那个路径其实就是一个所谓的哎,麒麟的工作路径,它里边呢,会存储一些麒麟在运行过程当中产生的数据啊,是这样的啊,那所以说此处我们需要干啥,是不是把那个路径所有者改一下啊,对吧,得改一下啊,那当然要想改的话,是不是也得先认证为HDFS用户,我这本身就是HTFS啊,都在那儿呢,我直接执行一这个修改权限的命令就可以了。这应该能看懂吧,Hi FS杠杠达尔have,呃,这个hi后边来一个麒麟,诶,然后大家稍微注意一下,哎,我此处我认证为谁了。我不是认证游戏了,我把这个所有者改为谁了?我是不是改为汉武了呀,对吧,我并没有改为谁,我并没有改为这个麒麟,诶这是为何,这是为啥。为啥要改为害我?啊,这个需要给大家解释一下啊,那大家都知道啊,我们麒麟它实际上作为的是一个什么。
02:03
是一个客户端对不对啊,我们这个客户端我需要干啥,我一会儿需要去读取哈的数据啊,我需要往这个雅安上面去提交MR任务或者是Spark任务,对不对,那最终呢,我还要把数据写到哪,写到HP里边,所以说从整个流程来看,麒麟扮演的角色是不是都是一个客户端对不对?那你说我要去访问这种科S认证的集权,那咱们这客户到底干啥,是不是得认证对不对?那我认证为谁呢?他说我认证为谁比较合适?但是我认为谁比较合适,我认为麒麟吗?我是认为麒麟吗?哎,不是啊,这里边认证谁最合适啊,是不是认证为have是最合适的,为啥啊,你想一想,你读取have的时候,呃,咱们那个数据源是谁?数据源是不是就是have对不对,你是不是要读have里边的表,那我们之前在跑全流程的时候,哎,咱们是不是将呃,Have这个也就我们数仓啊,数仓所有的数据资源的所有者是不是都改成了这个have了呀,对不对,那些表的所有者是不是都是have,是是这个道理吧,那所以说我此处认证为have是不是最合适的,哎,我是不是能够拥有所有的权限呀,对吧?是这样的啊,那所以说诶我们这样呢,就有一个这样的一个规定啊,那麒麟我们后续啊,在执行任务的时候,哎,我们会将其认证为have啊,认为have啊,那你想一想,既然认证为have了,那所以说我们后期在计算的过程当中,去访问这个路径的时候,就是他这个所谓的工作路径的时候,那你说我是以谁的身份去访问的?
03:29
是不是就是以have的身份去访问,那所以说我此时我是不是将其呃它的所有者改成have了呀,对吧,这个理解一下就行啊好,那所以说在这呢,我们就给它设为have就行了啊,我这儿呢,应该已经把这个命令执行完了吧?啊执行完了啊,那执行完之后我们继续往下进行啊,那再往下该干啥了,再往下呢,我们是不是需要将哎这个麒麟的本地的安装目录的所有者改成麒麟,注意这个为啥要改成麒麟,这个怎么不改成还啊。这个为啥不会伤害我?啊,这个其实跟计算任务没关系吧,对不对,这个我改本地路径只跟谁有关系,是不是跟只跟我这个进程的启动用户有关系,对,我一会儿是不是要用麒麟启动,你用麒麟启动,那这边我是不是就改成麒麟啊,对吧?啊,那这样一来就不会有权限问题啊,OK,这个理解一下啊,好,那现在呢,我们把这个改一下啊,那本地我们就改完了,改完之后接下来我们就可以去做相关的操作了啊大家看一下我这个启动麒麟的时候是怎么启动的,这块一定要好好看一下啊。
04:25
大家来看一下,我首先先干啥,首先我是不是先在麒麟这个用户下边认证为have主体了呀。啊,这个一定要看清楚啊,大家来注意观察一下,我这做了一个什么操作,是不是速度杠I-U麒麟,然后后边又来了一个K,然后杠KT往后边完走走走,这是不是认证为have了。对不对啊,注意是在哪认证为have了,是在麒麟用户下边认证为have了,能理解吧,啊是麒麟用户下面认为have了,那麒麟用下认为have之后,那下边我用谁的身份去启动的麒麟。
05:02
我是不是用麒麟的身份啊,去启动这个麒麟啊,对吧,啊是是这个道理吧,那所以说我这个启动这个进程是不是就属于麒麟用户。没错吧,那我这个麒麟用户启动的进程啊,去和我们的HDFS去和我们的hi进行交互的时候,那你说我认证的身份就是谁。是不是就是在麒麟用户下边认证为的那个科S主体的身份呀,对吧,那也就是谁呀。也就是have,实际上是这么一回事啊,这块大家怎么去理解一下这个事儿啊,比如说我举个例子啊,大家这其实就能够看懂了,那现在呢,比如说我这开两个103啊,假如我开两个103。两幺零三,这两个零三呢,我分别是谁啊,那首先我这个103我是比如说我是入用户啊,比如说这个103我是入用户,我可list一下,我看现在是谁,那我现在是不是没有认证,我现在是没有认证啊,我我这开一零行不行,我说开103还不行,我换一个我用102吧,把这个关掉,我这个呢也给它来关掉,来我看一下啊。
06:03
来,我看两个102。啊,那这两个102呢,我可以例子一下,那大家注意观察我这是谁,我这是呃,HDY用户对吧,然后我现在的系统用户是谁,是root对吧,也就是我现在是不是在root用户下边认证为谁了,认证为HTS了对吧?啊那现在我这个102呢,我给它切到哪,我给它切到这个,呃,比如艾股so艾特硅谷啊没问题,这个切到艾股对吧?啊弄完之后我现在有没有人这。我爱里硅股下面是没有认证信息的,对不对?好,那我在爱里硅谷下边,我认证为谁呢?我认证为这个,比如说K一下啊,我K你的谁,比如说我就K你的爱硅谷来走好,那现在呢,我输入一个名艾特硅谷,哎,输错了啊,再重新来一下at特硅谷好,然后我k list一下,K list啊k list好大家注意观察,现在是谁是吧?艾特硅谷对吧?也就是我在这个102,它是root用户下边,我不是认证为这个呃,HTS了对不对,我在艾艾特硅谷下边,我是不是认证为这个艾特硅谷了呀,对吧?好,那现在注意观察啊,那由于麒麟他他要干啥,是不是要去访问这个hive或访问HTS对吧?那我现在就模拟一下麒麟啊,比如说我用我我用我自己的用户去访问have,比如说我现在呢,进到一个have的这个客户端来,咱们进一下。
07:17
啊,注意我这个是在哪儿,是在这个幺零这个root这个用户的102对吧,进入到爱have了,那我这边我再来一个吧,这个是在谁?这个是在哪?这个是在我这个爱兔Google下边进入到have里边了,对吧?好,接下来咱们看一下啊。我在这里边分别一会儿去测试一下我的用户是谁啊。来大家注意观察啊,那现在是在库这边对不对,我执行一个select c current user来回车,那你大家猜这个应该是谁。这样是的。是不是现代反是是这个道理吧,那完之后呢,我这边呢,我再来执行一下like current有点大家说我这个应该是谁。
08:00
说不定是二五才对,对不对,咱们看是不是。哎,是不是X5,那这说明了一个什么问题?说明什么问题?说明什么问题说明啊,你看啊,我刚才在root用户下边,我在root用户下边啊,我是不是成hfs了,然后我用root这个用户的身份去启动了,还有客户端。是是这个道理吧,那所以我现在我去跟hi进行交互的时候,它获取的是我哪一个认证信息,实际上我现在102这台节点啊,Hi度102,我是不是既认证了这个,呃,HTFS也认证了hi do牌对吧?呃,不是也认也认了这个艾特硅谷对吧?他俩都是102吧,对不对,这两台节点我是不是都做了认证,一个是A,一个是at股,那他到底是怎么选这个信息的呢?呃,到底怎么去选这个身份的呢?啊,其实大家这应该就能看明白了啊,呃,咱们再来重说啊,那我在幺六在这个root这个用户下边,我是不是认证at FS了,然后我用root用户启动了have的客户端对不对?那所以说我现在这个haveve这边,它识别到的我的客S认证信息就谁,是不是就是root用户下边的认证信息对不对,也就是谁呀,也就是HS,那同样道理,我在艾特硅谷这个用户下边,这边对不对?呃,我艾特硅谷用户,我是不是认证为艾特硅谷了对不对?然后呢,我又用爱特硅谷这个系统用户去启动了一个派客户端,那这个客户端它所识别到的我的科S主体信息就是谁。
09:23
是不是就是用艾特硅谷,诶,这个用户下边去认证的那个科S主体的信息,也就是艾特硅谷啊,对吧?啊是这样的啊,OK,那这块呢,大家一定要搞清楚,那所以说现在我们再回过头来看这个操作,你看能不能看懂啊啊大家一起看一下啊呃,首先我在这个麒麟的用户下边是不是认证成have主体了,没错吧,那我现在是不是又用麒麟用户启动了一个麒麟的进程。对不对,这个骑的进程,你就把它当一个啥,就把它当做我们刚才那个have后。是这个道理吧,那你说这个进程,这个客户端,它去识别我们这个102这台节点的这个认证信息的时候,因为102这个节点可能有很多的认证信息,对不对,比如说我张三认成张三的,李四认成李四了,王五认成王五了,对不对,对不对,那你说他是怎么选的,他选的是谁?
10:11
他是不是会选择麒麟这个用户下边啊,这个麒麟用户是谁,是不是就是启动我这个进程的用户,对不对,会启选用这个用户下边认证的这个科主体的信息,也就是也就是haveve,那这样一来,我后续去跟have交互,去跟HS交互,去跟h base交互的身份都是谁,是不是都是have。对不对,都是have啊,那have是不是拥有对我们数仓当中所有表的访问权限对不对,那所以这这套呢,它就能通了啊,是这么一回事,这块大家理解一下啊好,那现在呢,我们去把这两个命令执行一下,我先执行这个啊来打过来拿之后呢,我我我这会儿我给退了啊,这都不用了,来退出啊,那这个呢,我也给他这个退出,退出主要是为了啊控一点这个资源出来啊好,那现在呢,我先把这个命令执行一下啊,这个命令应该能看懂吧,是不是切到企麟用户对不对,然后呢,是不是K以ne为这个have用户对不对,那现在我回车。
11:02
啊,那麒麟下面的认证信息就是谁了,是不是就是have了对吧?啊好,弄完之后我们继续往下进行往下走。来看这这个命令,这个命令好好理解吧,是不就是用麒麟用户的身份去执行一个麒麟的启动命令啊,对吧,好,那现在我执行一下。啊,这个麒麟启动可能稍微有点慢,咱们稍微等一下啊。把这个麒麟启动肯定是没有问题的啊,关键是麒麟不能光启动,麒麟启动之后它的能干啥才算是正常的呀。我得能够去构建Q吧,能够去读数据,能去计算,能够往HP里写,这一套通了是不是咱算是正确的,没错吧?啊这个大家要注意一下啊好,那现在呢,我们把这个复制一下来拿过来,拿来之后呢,我现在打开我这个呃页面来拿过来。稍等一下啊,启动的比较慢,可能等一会儿才能访问啊,来CTRLV。重新访问啊。再稍微等一下啊。都还没起来。Her wait。
12:01
嗯,麒麟确实起的比较慢啊,稍微等一下。这个资源应该还够吧,我一下啊杠H。没问题,够用。来,走,还是不能访问的来。来,我换个浏览器啊,来CTRLV走。啊,就是没起来呢,就等会儿吧啊。嗯。嗯,太慢了,这样。我把视频先停一下啊,先暂停一下,诶不用暂停了,当然暂停就起来了,现在已经起来了对不对,起来之后呢,我们给登录一下啊呃,我不在这登录了,我我还是在谷歌浏览器吧,啊谷歌浏览器里边咱们是有那个记录对吧?OK啊,那现在我们CTRL喂,走好,那现在呢,我们登录一下,还是使用之前的用户名密码对吧,老给好,那现在是不是已经登录进来了,对不对,登录进来之后,现在就表明咱们能正常使用了吗?能吗?哎,并不能对吧,并不能啊,怎么样才才能算能计算是不是才算对不对,那怎么计算啊,大家注意观察一下这个位置啊,这是没有选择project,一定要选一下啊,选择j ma那Q吧,咱之前已经建好这个对吧,现在我说又有一天新的数据了,我是正好又可以算一次,对不对,那咱们点击这个build啊,点build完了之后,日期正好他现在是不是呃16对不对,我现在接个谁就行,我接个十期是不是就可以啊,那这样一来是不是能拿到16号的数据啊,对吧?啊,然后这儿呢,将要讲到这儿了,我稍微给大家提一个醒啊,就是我们麒麟当中啊,你在计算cube的时候,你前后的日期是不能有交集的。
13:29
啊,是不能有重复的,比如说我昨天已经算了一个15~16的了,我再算一个15~16行不行不行,他不让你算啊,这个一定要注意啊,不能有交集,那我这是不是之前是15~16,现在是16~17啊对吧?那有同学可能说了,你15~16跟16~17,这个16是不有交集吗?有吗?没有,咱是左闭右开对不对啊,你前一天有16,后一天是不是没有16啊,对吧?啊,这当时指的是这个00:00:00这一刻啊,理解一下啊,行,那这个没问题的话,我提交一下。好,这个任务呢,正常情况下是不是就会提交上去啊,对吧,咱们稍微等一下啊,只要他的第一个任务它能够成功啊,是绿色的,那是不是就证明了我们这个环境是OK的呀,对吧?啊,咱们稍微的等一下啊,来我们看一下这个任务,那现在已经是running的状态了啊,来稍微的等一下。
14:15
而且正好等一下之后呢,我们可去干干一下什么事啊,我们可以去看一下雅安上边啊,雅安上边提交任务的那个人是谁。正常应该是谁呢,你说。他这个是不是计算任务得交盐上啊,对吧,你说应该是谁才对。应该是麒麟还是have才对,应该是,这应该是have才对,对吧,我们是不是认证为have用户了,对不对,跟那个h base,跟那个海杜P以及那个h base已经交付的应该是have才对,对不对,那一会我们看一下是不是have啊,来刷新一下,这第一个任务还没有完成啊,稍微等一下。如果是have,那就说明我们之前的设计呢,是没有问题的啊。稍微等一下。也忒慢了。
15:01
稍微等一下啊。呃,我先把视频先暂停一下吧。好,那这第一步已经完成了,对吧?啊第完了第一步其实在干啥,咱们可以简单看一下第一步做了一个什么操作。是不是create了一个什么immediate Fla have table啊,其实就啥意思,是不是创建了一个中间的have当中的一个Fla就扩平的意思,对吧,其实是一个啥呀,其实一打宽表啊,你可以点开这个log,你看它做啥了,是不是在have当中去创建了一个这样的一个表,就是这个表其实就是啥呀,就是我们这个Q当中的维度字段加上度量值,它给你召唤成一个大宽表了,能理解吧,它照那压行表它才做的计算啊啊,那这个怎么操作呢?啊,是不是就执行了一个什么这个呃亥呃杠一的这样的一个命令啊,对吧,完了之后下边应该还会往里边去装载一些数据,对不对,这里边是有任务的对吧?啊,那现在呢,我们就可以去诶看一下雅人上面这个呃执行任务的身份是谁啊,那我们进到1038088对吧?啊,稍微等一下啊进来进来之后大家注意观察,这个是不是就是我们刚刚麒麟所提交的这个相关的任务啊对吧?好,那现在来看是不是就是have。
16:15
这个没有问题吧,对不对,就是害我啊,那OK,那就说明我们现在这个呃,麒麟的配置呢,是正确的,没有任何问题的啊OK,好好,那到麒麟呢,到到现在为止呢,我们这个麒麟的相关配置就全部完成了啊来我把视频停一下。
我来说两句