00:00
好,那我们汉已经学完了,然后稍微做一下总结,然后总结我们主要从面试和开发的一个角度来说一下吧,其实我们在讲课的过程当中,已经分别对这些点做了不同的一个重点,像整个的。这几章啊,我们所说的,我们所说最重点的哪张啊。六和九,六和九这两张相对来说比较重要啊,然后这两张分别在两个不同的地方,这个是从开发开发角度来说,哎,它是真正的实战,然后这个东西是不是面试过程当中的一个重点啊,我们说无论哪个框架,刚才我们所列的哈多还是贝斯have以及SPA,他这个调优是必问的吧,而且我跟大家说了,就是你们做项目的时候,是不是要自己总结自己所犯的错误啊,你像这种技术组长,他这个优势就体现出来了,是不是技术组长,因为他他接触到的错误是全组的呀,对吧,他能总结的东西更多啊,所以说你们还是要讨讨好一下技术组长是吧,让他总结的错误啊,跟大家分享分享分享分享啊,然后我们来看一下,首先我们看一下咱们开发的时候,开发的时候就工作的时候,你要过。
01:21
用期嘛,对吧,你不是说你进去了之后试用期过不了,总是在换工作,就是一家公司拿三个月,一家工作拿三个月,这样也不太好啊,希望还是长久的干下去是吧,要到自己愿意跳的时候去跳,而不是说试用期没过被人干掉的跳槽是吧,这是主动和被动,这个区别还是挺大的,好,那我们主要看一下,然后第一个是第二章的一个安装,安装这个其实比较简单是吧?啊,主要是你要知道它里面有哪些配置。啊,里面哪些配置,其实我们所做的配置相对来说比较少啊,很多的一个配置信息是不是我们在have窗口进行改变的呀,你像那种严格模式,那你肯定你知要到公司安装,肯定严格模式肯定在你的配置信息里面就写死了吧,好,这个安装这款大家说了解一下,就是还有一个就是原数据信息你给他调到什么MYSL当中,因为它默认的德比是单用户模式的,单用户模式的。
02:20
啊,之后这个DML和DDL这个语言,那开发的过程当中,那不用说这两个。哎,怎么出现了这个玩意是吧,这两个语句啊,以及这个查询。这个就真正的去操作什么害的时候要用的吧,哎都是离不开的,你包括你建表建库是不是这个DDL啊,然后这个里边还记得这个里面是做什么的吗。数据控制语言数据操作语言操作数据的,对吧,就导入导出嘛,是吧,在这一章所讲的导入导出的那个内容,你要知道,而且最常用的是不是漏的。
03:03
对吧,最常用的是漏,还有就是你针对于已有的数据来见表了,那个用的是哪个关键字啊。对location是吧,就是说你的数据已经在HDFS了,然后你要在这个位置进行建表,你用location你就不用接了表之后再把数据录了进来,录入进来直接在这个路径上建表就可可以了,所以说这两个在公司当中还是最常用的啊,然后还有一个就是你从已有的表上。来创建分区表或者分筒表啊,那就是ins色和in select的这个语句啊,让你导入数据的时候走MR任务,是不是走MR任务这个时候才能产生分区和分桶是这样的。啊,之后查询这块啊,这块一个内容这块大家有总结吗?就这这些几个拜。啊,自己去做一个小表格啊,因为这个时候,因为你刚学完可能比较清楚,但是当你学完后面的还这辈子Spark以后,你就又忘了啊,因为现在刚学你天天用的,那肯定是记得的,所以说你一定要做一个表格,做个表格你以后在复习的时候,你看着这个表格就知道了啊,不需要具体的去看,然后去测一下这个到底是什么用的啊,就是说形成表格还是很有用的,就是你复习的时候会很方便,会很方便啊这几个那我们再过一下吧,就这个order是这个全局排序是吧,还有这个。
04:33
他是做每个分区内进行排序的,也就是每个reducer内部进行排序的,那这个东西你一定要结合什么来啊。不是单独还没讲进行的半呢的一个个数吧,啊reduce的一个个数啊,你一定要记得设置的,要不然你要是一个的话,它是不是跟上面是一样的,结果说出来是一样的,后面是这个分区以及这个字段class by其实是这两个字是吧,结合体是吧,当它两个字段相同的时候啊,你就可以直接用class by来代替,但你要需要知道的就class by,它只能有默认的排序规则啊,你不能从。
05:19
指定他这个排序规则是不是。好之后是分桶和它的一个抽象查询,其实这个分区也好,分桶也好,都是为了什么?解决数据量太大的问题吧,便于管理,便于管理啊,重要是一些函数,函数就是你要知道怎么去查看,然后每个函数怎么用法你要知道,然后还有呢,就是自定义函数吧,哎,自定义函数最重要的其实不是说记成哪个类,而是说它那个方法吧。方法一定要保持一致啊,方法一定要保持一致,然后之后压缩存储和调优这一块呢,是在你实现了需求的基础上要考虑的问题了吧,就是说你这个搜索之前是跑20秒,那慢慢想办法把它变成十秒五秒呢啊,你去优化的,优化的,当然优化的过程当中,你会发现这个搜索写的越来越长啊,这是正常的啊,你的搜口会可能会写的越来越长,但是它过程当中一个逻辑啊,越来越来一个处理的逻辑越来越难,就是说有可能你每个map,每个reducer,它处理的一个数据量在不断的减少啊,由于你S限定的很多的一个条件啊,是这样的,一定是在你这个需求。
06:37
完成的基础上,你再去考虑调优的事情嘛,考虑调优的事情,然后这个主要是从开发层面,你看开发层面主要还是用吧,以用为主是吧,以用为主的,然后我们从面试的这个角度来说一下,那我们之前已经提过了,面试的过程当中是什么最重要。调优吧,其实它的一个用也是很重要的。
07:01
这块是面试,面试当中比较问的多的一个点啊,就是他这个本质啊,然后他这个架构是什么样呢?你要绘画那个图左边是什么m store是吧,然后这个地方是SDFS,是它一个底层,然后这个地方是客户端嘛,然后这个地方是它四个什么优化器,解析器,哎等等这些内容,你这个图要稍微的有点印象,有点印象到面试之前把这个图再记一记,然后防止他问到的时候尽量去画啊,尽量去画。然后数据库的一个比较,数据库的比较,因为你天天你就这几天的过程当中,你是不是感觉天天在写写搜呀,感觉不到与数据库的一些差别了,是吧。所以说他在编试过程当中,他有可能会随嘴问一句,哎,这个have与数据库有什么不同啊啊,那你要大致的能了解一些,没必要就是说照通篇的给它背下来啊,给它背下来啊,最重要的一定是这个调优这块,调优这块,然后标红的这块表的优化。
08:01
然后数据倾斜并行执行,还有GM重用压缩这块就是用的非常多的一个优化手段,非常多的一个优化手段,你像这个fish抓取,它默认就是默吧,默认就是默,你不用改本地的模式,你就做测试的时候,或者说数据量小的时候,你去做一下吧,这个都相对来说好一点,严格模式一定是开启了,所以说这些没标红的这些字段,它都是默认,都已经设置好的吧,啊已经设置好的,你要知道有这些内容,但是更重要的就是你实际操作的时候。这几个标红的是不是你实际操作的时候视情况而定啊,啊你相应的要采取一些方法,采取一些方法这个地方写在这些地方,你一定要是结合你实际开发当中的一个。问题来吧,因为后面咱们还有一些,呃,关于这个还有的一些项目做的时候有哪些问题,然后你是怎么调的,你把这个形成自己的一个东西啊,你给面试官说的时候能显得自然一点,不是像自己背的是吧,就是真的你遇到问题了,然后真正你用这些方法去给他解决了,一定要给人这种感觉。
09:12
好,然后还有一个点就是呃,在面试过程当中啊,除了调优,其实你的一个开发当中所用的这些查询啊,特别是那些什么分区函数,那些分分析函数是吧,你一定要记得清楚,因为面试之前一般稍微大一点公司啊。而且现在胸前的情况来看,出去面试的学员反馈的情况来看,一般公司都会有一轮笔试。都会有一轮笔试,他会拿着你笔试卷子以及你的简历来问你啊,来面试你啊,会根据你的笔试结果来的啊,那have这块你要做汉的话,那笔试那就是具体的写这些还口吧,所以说这些函数啊,你还是要熟的,你要熟的,所以说这些时候有时候有时间练的时候呢,一定要练熟了,但是练熟了说实话你学完Spark又忘了是吧,又忘了这是正常的,但是回头回过头来,就像我一直所强调的,这时候把它练的有多熟,你回过头来看的时候,你会很轻松嘛,轻松很多。
10:12
这是主要的从面试和开发的角度一个总结,大家稍微注意一下,当然到最后面试之前啊,肯定还有模拟面试,模拟面试就是就是没模拟面试通过了才才放大家模你面试啊。这打。
我来说两句