00:00
上一节我们已经把业务数据准备好了啊,那本节我们就可以使用scoop去同步这个业务数据了,对吧?啊,那现在呢,我们需要将SOP安装一下啊,然后呢,学习一下scoop如何使用啊来,我先简单介绍一下scoop这个工具啊,首先呢,Scoop它是一个海量数据的传输工具。啊,OK啊,它能够在观形数据库和海杜生态之间去传输数据,然后大家需要注意的是啊,这个传输它是一个双向的传输啊scoop呢,它既能够把关型数据库的数据传输到hi doop这个生态当中,也能够把hi doop生态的数据给它传输到诶关系型数据库里边,然后从关型数据库到hi doop,诶这个传输过程呢,在死库里边被称为导入。啊,反之呢,则称为导出,就一个导入一个导出,那大家可以想一想啊,我们现在要做的是不是就应该是导入啊,对吧?我们要把my circlel当中的业务数据传输到HDFS上边,没错,咱们现在要做的就是导入啊,好,那还有一点大家需要注意啊,就是scoop的底层原理是什么啊,实际上就是my produce。
01:08
啊,但是由于啊,这个SCO呢,它只负责数据的传输,它并不是一个计算引擎,对吧?啊,那所以在这儿呢,它并没有一些聚合运算,所以scoop的这个map呢,它只有map没有reduce,好,那scoop呢,我们了解这么多,哎,就够了啊,那接下来呢,我们去给它安装一下,那我们先把scoop的安装包上传一下啊OK,那scoop的安装包呢,就在给大家发的资料里边啊,我们打开资料,然后找到7SCOOP啊这里边儿就是scoop的安装包啊好,那现在我们给他上传一下,呃,首先我们来到OPT software这个目录啊。啊,然后在这儿呢,我创建一个路径make d啊scoop完之后呢,进到scoop完之后呢,我们用这个工具传输一下。好,我们先找到这个安装包,找到资料,资料里边的scoop对吧,然后双击上传。好,那库的安卓包我们就已经拿到了啊,然后之后呢,我们需要先给它解压一下啊,T-z X vfco,然后杠大C解压到OPT model,这个路径下好已经完毕了,然后呢,我们过去给它改个名啊,来CD到OPT model啊,完之后呢,MV啊,Scoop。
02:14
改成scoop,只保留scoop就行了啊好,那完之后呢,我们进到scoop这个目录啊,那接下来呢,我们需要去修改一下scoop的一个配置文件啊,那修改谁呢?我们来看一下文档来往下翻啊,在这儿呢,我们需要去修改一个scoop env文件,那当然呢,这个文件的名字呢,诶里边有一个template对吧?我们需要先将这个template去掉啊,去掉之后才能生效啊啊,那现在我们来改一下,首先呢,我们先进到康目录啊,然后呢,MV scoop env。然后点SH改成点SH。啊,那完事完之后呢,我们打开这个文件去修改一下啊,来scoop env.SH,啊,那这个文件里边我们重点要修改的是哪些内容呢?其实很简单啊,主要就是几个环境变量啊,我们来看一下都需要改哪个环境变量啊,文档当中已经给大家准备好了,对吧?我们其实可以直接给它复制过来啊来CTRLC啊完了之后呢,我给它放到最底下就行。
03:12
好,那大家来观察一下,在这儿呢,我们一共放了哪些环境变量啊?那首先先看前两个,这两个是不是都是与hi doop相关的呀?对吧?有一个hideop common home,还有一个hi map right home,然后再往下呢?还有一个have home,对不对?然后再往下呢?是不是还有一个组keep home和组keepper配置文件的路径啊?没错吧,OK,那我给大家解释一下,就是我们在这儿为什么要配置这样的几个环境变量,我们先看had doop的这两个环境变量啊,一个是common home,一个是ma right home啊,但是际让我们安装op的时候呢,并没有去区分这两个路径啊,所以在这儿呢,这两个环境变量都指向hiop的安装目录就可以了啊,然后大家呢,要根据自己的实际情况进行相应的修改啊,指向自己的嗨度op的安装目录,好,那这两个环境变量的作用是什么呢?其实很简单啊,刚才我们提到了,哎,我们说scoop呢,它的底层是map对吧?那所以scoop的运行是不是需要依赖于op这个环境啊,没错吧,所以说它需要拿到op的依赖,拿到hi do的配置文件啊,这个大家一定要注意一下啊,好,我们继续往下看,下边这个呢是have home,诶scoop为什么需要用到have home呢?来我给大家解释一下啊,那前面我们提到了啊,我们说scoop呢,它能够在关行数据库和hi doop之间进行数据的双向传输,对吧,一个叫做导入。
04:33
库一个叫做导出啊,那当我们去导入数据的时候,也就是将数据从关型数据库导到hidoop的时候呢,哎,实际上呢,我们是可以把数据导到HDFS的一个路径,也可以直接把数据导到哎have的一张表当中,那甚至呢,也可以直接把数据呢导到h base的一张表当中。啊,那假如说现在我就要把my serveq的数据直接导入到have这张表当中,那你说scoop是不是需要用到have的依赖啊,对吧?那所以说这时候呢,我们需要给它配置一个have home啊,这个呢是大家要注意的一点啊,OK,那我们继续往下看,那下边两个呢,是组keepper的两个相关配置,对吧?一个是组keepper home,一个是组keep的配置文件所在的路径,组keepper复D,那为什么要配置两个组keeper的环境变量呢?
05:21
哎,这个其实也不难理解啊,刚才咱们提到了,我们说使用死库吧,是不是也可以直接把数据导入到h base的一张表当中啊,我们之前在学习h base的时候应该讲过,对吧?我们要想往h base里边去读写数据,对吧?我们首先就得跟谁进行交互,就是首先就得跟组K进行交互啊,对吧?而且我们只需要诶给客户端一个组K的地址就足够了,没错吧?啊,那所以说我现在SCO要想把数据直接写到h base1张表当中,那所以说他必须得拿到组kper的地址才可以,没错吧?那所以在这儿呢,我们需要给它配置以下两个组kper相关的环境变量啊好,那这就是我们这个配置文件,然后大家呢,自己去修改的时候呢,一定要以自己的实际情况为准啊,就是这些路径呢,一定要跟自己的安装目录保持一致啊,不要完全照搬文档啊好,那这个完之后把它关闭就可以了,Shift zz,好,那我们继续往下进行啊,来我们往下看,那下边我要干啥,下边是不是咱们需要去拷贝一个。
06:22
C的驱动啊,啊,那由于啊,我们需要使用死库去读取买的数据,对吧?那所以说那它是必须得建立一个跟买S的连接啊,对吧?那建立连接是不是就得需要用到这个JBC的驱动,没错吧?啊,这个驱动呢,我们之前已经上传到high豆OP102的OPT software这个路径下了,对吧?那现在呢,我们给它拷贝一下就行,拷贝到哪呢?拷贝到SOP的立崩录下啊,OK,那现在我们去操作一下来,我们直接cp op PT software my circle里边是不是有一个这样的驱动啊对吧?现在呢,我给它放到scoop的这个live目录里边,Scoop live,好,那这个驱动我们就已经拿过来了,OK,那至此呢,咱们的scoop就已经安装完成了,那完成之后呢,我们可以先使用SOP的一个命令啊,去验证一下SCO的环境是不是正常的啊,如果环境没问题,我们再去深入的学习scoop的用法啊,OK,咱们执行哪条命令呢?就是这条命令,来我先粘出来,然后再给大家解释啊,来CTRLC给它放到SCO的根目录下去执行啊,就这个目录。
07:22
来拿过来大家来看一下啊,在这呢,我们是不是调用了scoop的B目录下边的一个SOP脚本啊,对不对,那这个呢,实际上就是scoop的入口啊,完了之后我们看下边后边是不是给它传了一大堆的参数啊,对吧,分别是啥?我们主要看一下啊,首先第一个list database。啊,实际上这个呢,相当于是我们给coop传了一个令啊,就是告诉coop我们现在要干什么啊,那在这儿我们除了能传这个database之外呢,我们还能传入import或者是export,如果我们传的是import,那这个啥意思?是不是就表明我们现在要做的是啥?是不是数据的导入啊,对吧?那如果我们传的是export呢?那是不是就是数据的导出啊,对吧?这个大家理解一下,好,那我们在这儿传一个list database,我们要做的具体工作是啥呀?
08:10
啊,是不是就是展示数据库啊,对吧?展示哪儿的数据库啊,来我们往后看,我们看一下后边这几个参数大家就知道了啊好,后边这个参数分别是啥呢?先看第一个杠杠connect啊,后边呢,咱们传的是一个啥?是不是一个借DBC的URL啊对吧?然后再往后走,后边是不是有一个username等于root对吧?那后边呢,还有一个password密码,没错吧,大家来看啊,实际这几个参数就表明我们现在要干啥,是不是要连接my circlel数据啊,对吧?啊,有URL啊,有用户名,有密码,然后理论上啊,我们要想连接MYSL数据库,是不是还得再传一个driverva name对吧?但是在这儿呢,我们是不用传的啊,此库它能够自己获取到啊,那所以说那前面这个list database这个参数我们要展示的是哪的数据库啊,是不是显然是MYSQL里边的数据库啊,没错吧,那现在我们执行一下这个命令啊,如果能够把MYSQ里边的数据库展示出来,那就说明我们现在的环境是没有问题的,对吧?啊,然后有一点大家要注意一下啊,就是后边这几个参数啊,大家要根据自己的实际情况。
09:10
进行相应的修改啊,那现在我直接回车,好,大家注意观察,那下边是不是已经把我们买circleq当中的数据库列出来了呀,对吧?诶,那就说明我们现在库的环境呢是没有问题的,OK,那至此呢,Scoop的安装工作就全部完成了。
我来说两句