00:00
好,接下来我们看一下这个哈尔,它这个整个的一个架构,架构它什么样的呢?首先它分成了这么几块,可以说三块或者四块吧。首先这块啊,这块最底下这一层我们比较熟悉的啊,你可以把它理解成一个或者两个也可以对吧。这是它是数据的一个存储,放在HDFS吧,然后他执行的。计算还是mmr,这两个我们已经学过了,在have当中呢,它是怎么跟这个哈度来交互的,它中间有一种驱动的,有这种驱动的啊,来看一下整个哈的架座,你不能忘了那个麦stop这个东西,这个东西是什么,我们先看这一款。他这个have当中,它其实自己最主要的就是这么多内容,我把这个图重新画一下,很吧好。
01:07
这么端是它的一个核心的一个内容,因为你看啊,这块叫什么客户端嘛,客户端是可以有自己的一个这种客户端,命令行的客户端哈,多是不是也有命令行的客户端,也有什么API的客户端啊,对吧?啊都可以操作咱们这一个HD的集群。啊,Have也,Have也一样,你可以通过正常的命令函数操作。当然你也可以通过。JDBC这种驱动JDBC大家相对来说比较熟一点是吧,MY当中如果说你要用在代码当中去操作MYS的话,你是不是要有GBC的驱动嘛,对吧,等等这些内容啊,有四个属性版。哪四个JA要吧,URL要吧,啊,就你连哪个数据库,连哪个数据库,然后user name跟他错吧,啊这四个属性那类比了之后。
02:07
其实我们知道,如果你想要用。代码当中去操作汉的话,它也一样嘛,因为它走的也是JDBCJDBC不是有个接口嘛,对吧,接口这样这块是它的一个客户端,那它核心的内容在另一块。首先整个的是它的一个驱动,它有驱动还有驱动好,然后你注意看它里面有这四块内容。这四块内容就是主要讲的就是开口。转化为MR所经过的哪些组件?你还不提交,你不是have里边写的,还考最终把MR提交给。雅安的吧,雅安的它是怎么来做的啊,首先它有一个解析器,你想想看,这个解析器里边干什么,你还口是传进来的吧,解析还是什么,去找那个模板吧,找模板之后编译一下。
03:20
翻译成具体的代码,然后如果你的号网它自己本身。会对你的会有一定的优化的。而且越高版本优化的措施越来越多,就类似于咱们那个表的照应,那三个当中是不是讲了什么大表教育小表,用小表驱动大表吧,把小表放在前面对吧,放在前面啊,其实在汉文当中高完本以后。这个操作你无论把大表跟小表放在前面,后面他都是小表给你优化到前面去了,哎,他自己会有很多的一个优化措施,优化措施,但是老的版本的时候,你要用老的版本0.9几的时候,那你你要自己要想到这个大表跟小表的问题,但是现在你设置一个属性就够了,而且默认那个属性是打开的,那到后面我们优化的时候肯定会提啊,就是说你要知道它对于你的海会有一定的优化,会有一定的优化之后。
04:26
那执行器是干什么?就是最终要提交给燃去运行的框一个组件了吧,哎,就是由他来执行的。来执行的,也就是黑克到MYS,其实我们刚才那个粗略的比点,哎,中间就是有一个模板,但这个模板怎么走的,它中间还涉及到什么解析、编译、优化,最终才是执行。这几个组件你要清楚,要清楚,然后。
05:01
我们要讲的这个TOTO本身是什么意思?原数据对吧,它这个原数据,为什么这还有一个原数据呢,要想一想。你看啊,我们have呢,它是类似个语句,那肯定有数据库有表对吧,啊一张表,然后它的数据呢,是存在HDFS的,对吧,这没有问题吧,他HDF存的是一个一个的文件吗?那个。好,然后你在搜课里面写了你谁select新from t这张表。最终他在执行MR任务的时候,他是不是实际的去读这个file,是不是啊,他肯定读这个file,读这个表有什么用,而且我们讲have是不存数据的,实际数据存在范这个范围的,它去这个地方读的,那大家好,说到这呢,那大家想一下这个middleto这个原数据是干什么用的?
06:02
有的同学说什么映射,有的同学说位置意思都对了啊,就是就是表跟这个文件之间的一个对应关系。对应关系啊,就是这个原数据信息啊,它存储的是他们之间的一个关系,要不然想想看,你的数据存在ids,然后我have里面是丙。那这个表肯定是表结构的,就表说明了什么表的字段,然后字段的什么属性等等,这些信息肯定有啊,因为你创建表的时候,这些东西要有吗?好,那这两个东西,你在这张表的时候,他能读到这个数据,那肯定中间有一个东西把它们关联起来了。啊,在汉语当中,它就是那个原数据,原数据关联起来的。
07:00
就通过这个管理起来的,OK,它默认的这个原数据存在德比数据库里面。对于数字里我们讲have,它不是一个存储数据的框架,它连原数据它都不是自己存的。他都不自己存,他都让别人给他存啊,只不过用到的时候,他去那个数据库里边去拿,拿出来,他默认的是存在德比数据库里边,但是放在德比数据库里边,它是一个单用户模式。Single user中的单用户模式,也就是说你开多个窗口的时候会有问题。啊,最终你现在要知道,就是最终我们会把它放到MYSO里面,MY里面你现在知道这个内容就够了啊,因为到时候我们会展示在存放在多力数据库里面,它出现的这个问题啊,所以我们才要改,如果它没有问题,我们是没必要改的。啊,没必要改的,但是你要知道原数据信息存储的实际是什么内容,其实这个表跟数据之间的对应关系,什么位置关系啊,大小啊,什么具体的数据在哪啊,对吧,等等这些一个之间的对应关系,哎,存在这个MM,然后这下面是具体的相应的一个解释啊,我在讲这张图的时候已经讲过了,大家但是这些文字自己还是读一读啊,有时候还是读一读啊,加深一下理解好吧。
我来说两句