00:00
好,那大家有没有想过一一个问题,就是我们在录的数据的时候,最后一般的我们像刚才说了分区表你都最好加一个分区信息,那如果不加他会怎么办呢?有没有同学有这种想法试一下,对吧,大家会觉得怎么样,就没有想法是吗?没想过这个问题啊,主动思考问题的能力太差了是吗?有时候就是这种脑洞大开,能够发现一些新的新的东西啊table,然后呢,Dept下发现PR这张表之前我们是不是都跟那个partition对,等于什么什么东西啊,对吧?啊,但是这其实那是正规的写法,那这种呢,我们看一下。他在走mmr了,他居然走mmr了,然后就说明这个任务能启动,说明这个S没有问题是不是,然后我们主要看一下它的分区信息是什么。
01:12
这个地方呢,还有可能大家在运行的时候有可能会失败,哎,我这个地方失败这样啊,我做一个操作,大家猜一下他是为什么原因会失败。我把这个data目录分发了,然后再来看一下这次能不能成功。看大家之前MR学的怎么样,这个完全就跟MR有关系啊,跟汉语没有关系。我看这能不能成功啊,其实最好是把这个数据放到HDFS。
02:00
这个应该是过了对吧,刚才就直接报错了,现在任务都启动了,这好了对吧,我们先看一下,大家还是思考那个问题啊,刷新发了个什么鬼啊,叫对等于have default partitions默认的啊,就默认的把它放进来啊,其实也没啥用,这个东西对吧?啊,一般的,所以说嗯,最好我们在用分区表的时候还是指定分区吧,啊虽然可以,但是这个东西你后面怎么用啊,这玩意儿人家都是这样的,就你一个人这样。对吧,太奇怪了啊,所以说不要这样用啊,不要这样用,那刚才之前的任务是跑失败的,我去把整个data目录分发了一下,任务就成功了。想一想跟MR有关系,一个都不知道,对,你想啊,就我把数据只分发了,那刚才的错误你是不能推出来,可能是103107104没有数据导致的,对吧?那我跑M2任务,103104没有数据,他就报错了,为什么会产生这种现象?
03:23
那是因为have,它里面走的默认用的是雅安嘛,那雅安是不是你把任务提交给resource manager了,接下来跑map任务,跑reduce任务,是不是resource manager说了算,是不是resource manager随便选个机器啊。对吧,选什么机器有可能就选到什么103104了,一加载是不是文件不存在,我们看一下这个报错信息啊,应该是那个说所谓的,但是这个地方不一定能看到详细的什么信息。这还真看不到啊,这个还看不到,这看不到啊,也也有的人呢,他没分发,他运气好他也能运行,那刚好怎么样,102就是任务发到102才运行的好对吧?也有这种可能性啊,也有这种可能性啊,运气比较好,我就在102,哎,我这成功了,这没关系,那是因为你可能运气比较好,正好任务发到什么102上运行的,因为三台机器上是不是都有note manager啊,对吧,既然你都有note manager,是不是任何一台机器都有执行任务的可能性,对吧?啊,运气不好的你跑好多次都不行,运气好的可能就一次就成功了,对吧?但实际上我们就算你成功了,我们也不会这样弄,因为他的一个这个分区太奇怪了,对吧,这个知道一下啊,知道一下,正好就跟大家说一下,呃,文件的问题,如果说你用MR任务读取的本地文件,那一定要保证三台信息都有,这样你的MR任务。
04:57
才不会出错,因为很有可能就读不到这个数据导致的问题,对吧啊。
我来说两句