00:00
好,接下来我们对比一下刚才我们所说的这几种存储格式,看它的一个什么存储最后的大小,然后一个查询的一个时间,看有没有什么区别吧,来呃,首先有一个数据,这个数据呢,你就不要从这拿啊,这有的啊,给大家发到这里边。这不有一个资料对吧,资料里面有一个date。对,然后这个拉个点,对,你把这个东西。把他拖到这个集群上就行了,没开。OK,那我们记下号,CD的OBD model号里面多开几个。然后再来一个吧,一般三个是吧,然后奥加PCD的OBD model懂这四等会我们把数据,我们先把数据拖进来吧,对,落点对,OK。
01:01
然后我们连下咱们那个。B。Have so,兔。然后在这CD到OB model好B吧,啊,通过这种方式来连接。感叹号,Connector,然后是JBBC冒号,然后是have to。很好,他都跑1021走他的规模。这样就进来了吧,进来之后现在我们数据也导进来了,现在我们要对这个数据进行建表吧,我们先来看一下这个数据啊,稍微打开一下看有哪些字段是吧,这个数据量还是比较大的。这是一些日志文件,能看出来吧,网站的一些搜索的日志啊,搜索日志,然后有时间有网址等等,然后查询到发现字一个个ID,然后看一下主播,看一下多少条是吧。
02:02
10万条啊,10万条的一个数据,我们拿这10万条来测一下,搞进来,然后见表。见表我就自己在手上了,看一下那个建表语句好吗?啊,在这这相应的里面呢,它一个字段,字段之后,你看我们现在建的是。Text file的,哎,其实你不写这个,这个不要是不是就是text file,哎,那默认的就是那我们显示的指明一下啊,来把这个表现一下C。走一下。接完之后我们把数据导进来吧,漏data。然后是。O BT model。哎,杠小了是吧,Model model然后是四。
03:00
下面的一个log点什么model,这个四,这个四下面L看一下。他那点对是吧,那点data table。是log-TXT啊,不是test这个。表,这个表标志着它是以text文件格式来存储的。走一下。完了。走完了,我们也不能随那个心啊是吧,10万条还是挺恐怖的,应该是导进去了是吧?啊,之前的应该没有问题,或者这样我们再不从这来看一下也可以吧。看有没有那个文件有没有上传上来对不对。然后。刷新项是这个吧,哎,这个我们刚建的表点进来上来了吧,18兆是吧,原始的18兆,好,接下来我们分别要建一个orc存储的表和一个什么PU的存储的表吧,来一下。
04:13
Orc。这个就是只是这个地方做了改变,看见了吗?其他东西都不变啊,什么东西都不变。OC的表已经建完了,那这个时候你往OC表里面放数据的时候,你能不能用漏的呀。如果你说你用的。存储的格式还是text吧,因为的命令其实是put上去的,还记得吧,你你漏的数据,你看它是把把这个文件直接放进去的。你放进去了肯定是不可能的吧,就跟我们当时建的分图表一样啊。建分总表,你要想分总表生效,除了你那两个属性起作用之外。你还是通过insert查询的这种方式导入的吧,一定要走map任务懂不懂啊啊,一定要走ma任务来看的啊。
05:07
来我们来执行一下啊,你这个时候就不能漏的,你要漏着的话,它还是肯定一样大啊,看完全看不出来效果的。那但是你要是这种方式,其实就是text file这种。你用MA6或者说直接录的都一样吗?因为你用它最后还是看你的文件嘛,CTRLC。走,好,让他走这个memory的一个程序。刚才是这样啊,我们稍微记录几个,这个是18.13是吧,这个是text。它默认了这种18.13这么大小的原始数据啊,这么大。这个是text file放在这啊,18.13,然后这个是orc,等会我们上传完的时候可以看一下它这个大小吧。
06:05
哎,上传完了是吧,来。Log OC。2.78兆2.78。2.782.78兆,接下来我们看一下什么,还有一个的这种文件格式,看它是多大啊,同样的我们建一个它的这个类型的表。等一下诶。杠。成功了吗?这是出现了什么错误?Tables?有了是吧,检成功了,然后我们把数据导进来。同样的,也要。通过这个什么select的这种insert查询方法,让他走MR程序啊才可以,要不然他怎么运用我们那种。
07:03
其他的一个存储格式啊,对吧,走一下。然后我们可以把这个放在这儿等着是吧。P q ET pocket,看它那个大小,最终大小是多大。走完了是吧,看一下啊。搭配的13兆,13兆。13会小一点是吧,会小一点,然后接下来我们看他那个查询速度吧,查询速度啊,它10万条我们select。Count的吧,新就不要不要新了,这新等会填不了了是吧,然后from,然后是log-TST吧,有一个这个表对吧,看他那个执行时间抗的心是不是也会走MR任务啊,看他执行的一个时间走一下。
08:08
其实咱们那个数据量还不够大,10万条真够大,10万条是不够大,真不够大,其实你想想看,你走的是还妈个任务,你他妈的启动时间就会占很长时间了。就是占很多的一个时间了。他这个是多少时间,二十二十万条没问题吧,就数据肯定是对的,都是导进来了,然后22,然后把这个放在这儿,就是这个文本的时代,它是22秒。这个肯定跟每个人的机器也不一样是吧,你就自己跟自己的机器比就行了,你不要跟人家的机器比啊,没有意义是吧。然后是ORC是吧,ORC,求一下它ORC这种它的一个执行时间在多长时间。
09:01
其实咱们用虚拟机玩的数据量还是上不去啊,没办法,虚拟机稍微大一点跑不动。10万条在我们虚拟机来说已经很大了,但是真的你在公司当中10万条都不会,不可能用大数据技术是吧?来。他好像又有一点是吧,还有那个帕的这种,来看一下他的名字就是帕是吧。走下。数据量小的时候。这个MR的一个启动时间就占了很大的一部分。其实这个策略我们看不出来,他们之间太大的一个差别啊,太大一个差别从查询上。
10:03
它跟这个差不多是吧,但是它会稍微优一点,稍微优一点,而且但是你从什么。这个上面一对比你就发现什么,这个就会有很多了,OC这种的一个存储格式有很多的,还有很多的,所以当当中啊,公司当中应用的你知道了,在have当中,如果存储的格式应该用什么,Orc or压缩方式呢?S snapping啊,Snapping肯定是这两个东西结合在一块用的当中,这两个是最常用的,但也不一定就是所不能说所有的公司都这样用,对吧,但是他肯定是最常用的,因为从各个方面,无论从查询啊,还有这个存储的一个空间来说。他相对来说都是很优的很优的,我们之前看我之前测的数据啊。这个大小肯定都一样的啊,大小不能变吧,我们之前说我存起来是是18.1兆,现在变成18兆,这不会啊,因为数据都一样的,所以大小是一样的,然后主要看一下它的一个查询时间是吧。
11:10
在这。差不多差不多,这是做了三次测试。这是分别,这个是第一次,然后这个是OC的第一次,然后是他是吧,都很接近是吧,都他是最优的。然后它会稍微次一点,它其实但是总体来说,他们时间都是干什么都很接近嘛,无论你错了多少次啊,它根据当时的集群的环境啊,或者你跑的一个进程能看出来这几个数字,你看这样,21.08,二十二点六十七,这个你看它稍微高一点了。然后这个21点什么零七啊,就是说他们上下浮动都不大,都很接近的,都很接近,包括我这一次测新测的一个数据是吧,啊也是很接近的,也是很接近的,你们当然你们自己的机器的性能可能有点关系,但是你测出来就是这三个数字,它们三个之间是很接近的吧,查询速度很接近,但是就存储效率方面来说,Orc是很优的。
12:11
OC是很优的,所以在公司当中它应用最广的还有一种OC的一个方式,C的方式。
我来说两句