00:00
好,那我们来说一下接下来的任务啊,呃,我们现在数据已经在买SQL当中了,那咱现在这个目的很明确啊,就是把MYSQL里边的数据给它传到咱们的HDFS上,Hfs上,其实啊,大家想想啊,你就是要实现一个这样的功能,咱们不借助于工具,你说你能不能能不能实现。不借助于工具能不能实现?你很能嘛,My soql咱们学过JDPC对吧,对不对,你JPC是不是可以,呃从这个MYS里边读出去完事呢,你是不是还学过HS那个什么,呃,IO操作呀,对不对,那是不是就可以通过自己写Java代码也能将MYSQL里边的数据写到as可以,这你是可以实现的啊,这可以实现啊,但是你可能自己写的不好,还是那个道理,你可能自己写的写的不好,那所以咱们这呢,哎,通常会借助一个这个工具啊,咱们叫什么呢?叫做S库吧。啊,SCO啊,或者是咱们前面给大家提到的,用谁也行啊,啊data data衫啊当然也可以啊,也可以啊在咱这呢,我们采用的是这个scoop啊scoop呃,那接下来我们就得先学一下这个SCO,因为SCO咱真没学啊啊没学,那咱们现在就单独先学习一下这个scoop啊啊那scoop这个东西是干什么用的已经大家已经明确了,它可以实现什么样的功能呢?可以实现关系型数据库和海杜op生态之间的这个数据的双向传输。
01:25
啊双什么叫双面传输啊,就是可以从my circle到hfs,也可以从hfs到my circle s库,它所能够实现的这个功能。啊啊,那接下来我们去看一眼这个scoop的官网啊,官网呢,我已经提前打开了,这是它的官网啊完了现在呢,给大家介绍一下scoop呢?呃,它这个名字是按怎么来的啊,Scoop怎么来的呀。这很简单啊,Circle后边来一个海度吧,Ado啊,然后呢,这个掐头把中间去掉啊,曲头,然后曲尾拼起来,Scoop就来了啊,就这么啊,其实名字没啥,这个没啥可说的啊,那现在我们重点说一下什么啊,说一下这个scoop,呃,它的这个底层原理是什么?
02:11
啊,实际像school底层原理很简单,大家很熟悉,就是什么呢?就是我们map producedu。啊,Scoop它的底层就是mapdu啊,也就是说假如说我现在呢,想去执行一个这个数据的传输工作,我需要把MYSQL里边的部分数据写到咱们哪呢,写到这个,买SQL咱们写到咱们,呃,想想想把买SL里边的一个数据写到HT当中。对不对,那这时候你是不是会提交一个SCO任务啊,对吧,那SCO任务底层就跑了一个什么东西,就跑了一个MR啊,就是这样的啊,而且他这个MR呢,比较简单啊,那MR呢,它是哪种MR呢?是map only啊什么意思,就是只有map没有reduce。啊,大家想想为什么呢?只有ma没有reduce。呃,对员很想到,因为沙布太费时间了,对吧?啊呃,当然这个是一个原因吧,呃,当然大家得得从SCO它这个框架的呃这个定位来看啊,似乎干啥用的,是不是传数据的呀,它是分析用的吗?不是,它不是分析用的,那所以传数据就是指指是什么,一读一写是不就完事了啊,我没有分析没有计算啊,所以说需要reduce吗?诶不需要啊,所以就是一个就只只用map就够了,哎,卖不啊,一个读一个写。
03:24
啊,那其实scoop他完成的工作是什么呢。那它依赖于咱们的mmr对吧?Emr这个框架已经很成熟了,那他自己做的工作主要是哪些呢?啊,其实coop这个框架它主要做的工作就是自定义了,哎,Input format和output format,哎,这就是它所自定义的工作,Input form用来干什么?比如说我现在要做的工作是什么呀?是从我们的my circleql当中去读取数据,对不对?那它得有一个什么呀?是不是得有一个能够去买circlele里边读数据的input format呀,对不对啊,那我现在要从Oracle里边读出去,那是不是也得有一个从Oracle里边读数去的input format呀?那这些东西咱们海杜林本身自带有吗?虽然是没有的,那S库就是自定义完成了这些东西。
04:11
啊,然后往外写呢,它也自定义了output for ma啊,其实是这样的啊,那这个其实就是咱们此库的底层原理啊,就是MR,但是只有mapb,而他所做的工作呢,主要就是自定义了,哎,Input form和output format。啊是这是他所做的工作,这是咱们的原理,咱们得了解一下啊行,那完了之后呢,我们再来看一下啊,看一下什么东西,看一下咱们scope大家需要注意的一个点就是它的版本啊,它版本我们现在scoop呢有俩版本。一个叫做SCO1,一个叫做SCO2。一个一,一个二。然后这个一和这个二呢,它俩并不是这个继承的关系,不是说我这个二是基于一来的,不是这样的啊,它俩不兼容,这个相当于是两个呃并行的分支,两个并行分支它俩不兼容啊,它俩不兼容啊好,那现在我们来看一下这两个呃相当于两个分支的版本号都是什么样的啊,我们在这儿呢,可以点一下这个document啊,点一下。
05:11
然后之后你看这是不是有一个死库唯一啊死库一,我们现在最新版本是1.4.7啊,然后1.4.6 1.4.5,这是一的这个版本号那二呢?二什么二是一点九九点几。啊,你看它虽然叫死味,但还是一点几对吧,而且是一点九点几说明什么。说明这个二啊,其实现在还不成熟,你看这个版本二就能看出来,现在是逐无限逼近于这个二对吧,但始终没有到二啊,也是现在咱们呃,用的还是谁呢?用的还是咱们的库一啊,其实下面呢,也有一个详细的说明啊,咱们可以简单看一下这段话啊,他什么这个呃,Latest啊,Stable release,就是稳定版是什么版本,是1.4.7 1.4.7啊,然后这个SCO2里边的最新版本是多少多少呢?是1.99.7啊,这是它最新版本啊,然后这个SCHOOL2里边的最新版本呢,他说什么东西啊,和我们SCHOOL1的最新版本它是不兼容的啊,其实就是两个分支它不兼容啊,完事了啊,然后看后边and not feature complete。
06:16
什么呀,就是功能目前还不齐全啊,It is not intended for production deployment,这这句话怎么理解呀啊,就是说我们这个SCHOOL2呢,实际上现在还不不什么呀。啊,就是还呃不用于我们这个生产环境的部署啊,也是实际上我们现在使用还是用的是1.1school唯一这个系列S唯一啊,那它最新是1.4.7啊,最新1.4.7,这是关于它这个版本的事,我们大家需要去啊了解一下好了,那现在刚才相当于简单介绍一下这个SCO吧,它的这个呃原理以及这个scoop的在一个注意事项,就是它的版本,好,那这个说完之后,我们就开始呃准备去讲解咱们这个scoop如何使用了啊在咱们文档上,我们使用的这个S库版本不是最新的,我们用的是scoop1.4.6啊啊我录下视频。
我来说两句