00:00
好,那同样的还是把昨天的内容做一个回顾啊,做回顾呃,其实昨天所讲东西呢,主要都一些代码对吧?代码呃,但是重点要关注一下,就是我们所说的那删除操作那块啊,它是比较特殊的对吧?啊,它里边点的比较多一点啊,比较多一点,大家要记住的就是有几种那个删除标记。对吧,删除标记要知道一下对吧,里边有DV的从大到小family对吧啊,你删按照肉来删,按照列组来删,都是什么经历的卡到对吧啊,它一个列头一个列头去删的,然后你可以指定到列的去删。那d delete的column对吧,那你也可以指定到。列之后可以单个列了啊,可以单个列就不加S的那种API,那就删除单个列,它的一个标记是d delete的标记啊,D列标记,而且还有一个本质,大家关注一下,就是说你的一个删除操作的一个本质,实际上还是什么插入操作对吧?啊,还是往里面放数据,因为它只不过放的不是value,放的是一个table,是一个类型,对吧?啊,这个类型是这个意思啊,里边这这这这个地方就是我们所说的删除这块要关注的一个点,其他的就还好增加改查呀,那块跟我们API都一样,只不说删除操作,它还有一个地方,跟我们API当中不一样的地方,对吧。
01:22
API跟命令行不一样的地方就是删除到列足的时候,对吧?啊,那个其实命令行里面他不报括我应该是可以被删掉的,但是应该在它有bug嘛,对吧,所以有问题,这个呢,大家关注一下,其实还好,你要记得,你别记得那个命令行里边说不能删就行了,你要记得这个东西是可以干的,可以删掉的,因为在生产环境当中,更多的操作是拿API去操作。啊,拿ipi操作的,你不可能说你获取数据啊,或者说插入数据啊,拿那个命令行嘛,几一条数据,你想想看,你慢慢写负的得写多多长时间是不可能的,不存在的,对吧,还有SKY嘛,这种也是可能的啊,就是呃,在测试环境当中,如果说你安装起来了,你要做测试,看这个东西OOK,那可能会用到这个,我们所提到的这个命令行啊,正常的一个增加奶查,肯定是用代码的一个方式去操作的啊这意思。
02:14
之后呢,是我们所聊的这个map。它来个呃,读取h base数据,同时呢,它还能往H去写数据,当有个前提条件,就是说你得把h base相应的价包给它放到。他多的整个的克拉画下对吧?啊,那里边咱们要记的是哪些点。就是这个当中,你觉得如果说你要写这个代码,要记什么东西啊。一个是table,一个是什么tabler啊,Tabler其实还有两个类,咱们是没见着,还有两个类呢,是跟map相关的,前面读的,还有一个是他写的,一个叫table input for,还有一个叫table out for啊,就是因为我们所知道的map这个阶段呢,它并不是说读数据的阶段呢,前面还有一个叫input方号的阶段,对吧?啊,Input读取数据的啊,这里边呢,你要写的是table map。
03:13
然后呢,你是通过如果说你是通过table。Map video,那个YouTube这个工具类来初始化整个这个map的,那他自己就绑定上了什么。Table的方法,你别说在里面叫个点set这个map,然后是这个table map这个不行,那你这样设置的话,他最终用的input form还是T能听懂啊,还是T的input form就一行一行的,最后就报那个什么类型转化错误了,因为你只是用了一个map,但是你要用人家那个提供的工具类去初始化这个map,初始化这个对吧,去封装这个,那他就自己跟这个和这个out啊会关联上,因为人家自己在里面做这个事啊,你不要自己去set,那样不行啊,那不行的,OK,那同时在我们设置这个map类跟reduce类的同时。
04:06
他将我们的入餐跟出餐是不是也写在里边了,对吧,你也不用单独的去写什么job set input啊等等这些东西就不用写了,Input pass和那个奥pass对吧,这个东西没有了,因为那个地方大家要关注的是job点赛。是应该是fair input for点对吧。之前我们设置不是叫过点赛什么东西吗?但是到输入输出的参数是不是fair的跟fair out呀,它指的是给。Fair input跟fair用的,而我们所使用的那个text input,它不是fair input这个类嘛,对吧?啊,他们俩之间是集成关系啊,集成关系是这个意思,所以呢,你在那设置也没有用,因为人家根本就没有用了那个什么。Five input,人家用的是table input跟table,所以呢,你通过那种设置参数也没用,人家在那个工具类里边就帮你把这个事情能给你搞定了啊,那其实写MR当中呢,你要关注的点就这些,至于这个map方法内容是什么样子,还有reduce方法内容是什么样子,是业务而定吧啊,看你的业务逻辑是什么样子的啊,你是随便可以调的啊,这个意思,这哪是我们所讲的与have这边的个人么?
05:21
集成啊,与have这边一个集成,那我们要关注的就是说它可以建立关联表,但是呢,就是这个内容啊,它比较麻烦的点在于他们俩不兼容,但如果说我们用的是CDH的啊,它是解决兼容性的,CDH大概是什么样的,后面我们会讲到,呃,如果说你用的是have,那将会是have。然后假设啊是1.2.1,假设我们1.2.1跟这个1.31假设在C点当中是兼容的,他的版本是这样的,后面再跟着一个C点是假如说点3.6随便一个版本,好这边呢是h1.301-CDH5.3.6啊它的版本号是这个样子,那你只要。
06:04
后面保持一致,前面这些东西各个版本你不用管兼容性给你个什么解决好了啊,已经解决兼容性,因为CDS就是解决大数据整个的一个金融性问题了。啊,就解决这个问题的啊,关注一下,到时候呢,我们能看到这个版本啊,类似这个版本啊,当然CD它是解决这个兼容性,它一般的,呃,它里边那个版本就是说看到的哈,多没看版本呃,比我们正常的去看到的会偏低一些。肯定理解,他起码得等人家框架稳定了之后,CDS才会用这个框架去提成,说做一个稳定版嘛,再做一个兼容版,对吧?啊,那肯定都稳定之后,所以呢,它略慢于整个其他框架的一个更新啊,就类似于如果你生产玩家当中用阿法奇的,可能你选中1.7,但是你用CCD可能跟阿尔法奇这个1.7是同时出一个版本,它里边所用的是什么。可能2.5,可能2.4能理解这个事吧,因为他起码要等到2.7这个东西变成稳定版之后,过一段时间有一些bug都采完通了之后,他再去把这个集成去兼容吧,啊是这个意思,当然现在呃,由于那个整个的大数据集群不是大数据集群,大数据的框架发展比较快啊,现在那个哈多的三点几了呀,我最近没关注,反正早就3.3.0了,对吧,所以CD是六版本,应该是6.4还是6.5版本里边用的是3.0,他3.0人家发多3.0就自带够我用,而且呢,有流失计算了,有流失计算了。
07:38
呃,我们也在搞这块的一个事情,跟那个其他的有一些企业当中,现在企业也用的比较少啊,用3.0的比较少,呃,先交流,或者说我们自己会去,呃研究一下,如果说生产环境当中发现很多公司去换到3.0的话,那可能我们会推出诶两天的视频啊,或者说作为扩展的形式去讲一讲3.0的新特性等等这些东西,因为它就算升级到3.0,大部分东西应该还是一样的吧,对吧,核心的内容还一样的,可能就是引入了一些新特性啊,或者有一些配置去做了一些修改,那我们可能会去啊出学视影讲,但是现在很会出,因为我们所了解到出去的学生当中,我们发现只有一第一家公司在用。
08:17
所以不可能现在着急出这个水平没必要对吧,因为因务面试讲了,你进了之后,你公司也不用面试,也不问浪费啊,就等于白学了啊,没有用,到时候如果说呃,有有需要的时候啊,我们会去出那个视频整个的啊,你们就是随便随时回来考,这个都无所谓啊,那个无所谓啊,视频都是有的,你们不是注册会员吗。对吧,啊,就是会更新一些技术啊,更新技术啊。OK,那之后呢,是我们所说的这个,它这个集成的一个场景,更多的时候其实应用在。H base数据已经存在了之后,你have要对这个数据做分析,对吧?那你可以选用ma,也可以选用have来建关联表,那如果说I位置表存在了,你建号表的时候要建什么外部表对吧?啊,要建外表是这个意思啊,建外部表哎,这种场景要多页,而且我们也测了,呃,你建入建完关联表之后往have里边导数据。
09:15
是不是h base能看到对吧,往h base里边负的数据tab里边照样能看到的啊,是照样能看到的,是这个意思,但是你要关注一个点,就昨天我们测出来的一个点,呃,Base当中呢,没有什么类型,但是have还是有类型的了啊,所以你在放数据的时候,H那边你要注意一下啊,要注意下,因为最后我们看到放数据value是best点。Tobes里边可以传。Three double in等等这些类型都有吧,啊,也就是说它可以给你转过去啊,可以给你转过去这块要注意一下啊。当然如果说你写的是那个,呃,Int类型或者long类型啊,它你在命令行里边看的时候,如果说你不是在API里边best点通信,它best点通道给他转回来,你在命令行里面看到的东西呢,呃。
10:08
会看不懂那个数字。会看不懂那个数字,因为人家对于string我们知道它是不是string.get best这种方式对吧,然后返回来是new的一个string啊,一个u.F8这种形式来做到,但是对于int类型呢,它是将这个数据右移八位。啊右移,然后产生的一个结果,所以你可以这个东西呢,你可以put一个int类型的数据,就是在API里边。去put一个in特类型的数据,Int类型数据恢复的吧。就最后Y6那个地方改成半点多。Best就是put进去的时候,Best To Best里边写一个一或者二,然后你在API里面,在命令堂里面就盖,你看一下。啊,你就知道,因为它对于那么跟这个我们所看到的那个in特类型啊,它不是说像string一样去get这种方式获得的自接数度,而是说用一八位来这种方式来获得啊,它这个方式不一样啊,方式不一样,所以呢,你看到的你别说哎这个乱码了,什么样,不是乱码了,本身它就是在命令行里面呢,他就是直接把那个数据给他拿出来了啊,原原原封不动的拿出来了啊,所以说他没有给你做这个转换啊,做转换,所以你看到那个内容呢,呃,还有一个中文应该是可以正常显示的,我记得是,但是就是数字在命令行里边是不是你看到的一二。
11:29
啊,它是用于八倍的一个结果。行,那这是我们昨天所讲的一些内容,其实内容并不多啊,因为整个的应该是耽误了一节多课,对吧,昨天。
我来说两句