00:00
好,接下来呢,我们来看一下生产者分区,那首先我们来到这个发送原理这块啊,把这张图呢给它钉出来。定出来之后,我们再回来。那回来干什么呢?嗯,大家看一下。这是外部的数据过来之后,我们是经过散的方法进行往外发送啊,而且散的方法里面还有带这个回调的,以及呢,还有同步发送,是这样吗?哎,相当于数据呢,走到这儿,走到这儿之后,现在我们走到生产者,哎生产者分区是在这儿。那走到这,那前面这个拦截器和这个序列化器为什么没讲呢。哎,之前在讲这块的时候,大概给大家说了一下,说这个拦截器啊,其实在生产环境当中我们用的并不多,哎,主要呢,是这个用这个flu的对应的拦截器相对说要多一些。那这个呢,哎,我们就不讲了,那下面这个蓄热化器,蓄热化器啊,哎,由于我们通常情况下在企业里面传输的数据类型呢,都是实训这种类型啊,也就是说很少去自定义,也说这块呢,哎,我们暂时呢啊,也不考虑给大家去讲啊,那之后呢,我们的数据呢,就已经走到了对应的这个分区器。
01:07
所以说我们就详细的研究一下这个分区器,那首先看的第一个就是分区器的好处。放机。打开首先第一个好处。大家想摆在我面前的是100T的这个数据。这么大量的数据,如果说放到一台服务器上,那很难单独的去进行一个存储,那我们就想如何把它切割成一块一块的,那这时候呢,分区就引入进来了。它可以合理的使用存储资源,让我们每一个分区在一个博上进行存储,可以把海量的数据按照分区切割成一块一块。比如说这里面,我把它这个100G的数据啊,切割成三块。放在三台服务器上,每台呢承担33T左右。那这不就OK了吗?
02:02
是吧,哎,行,那这是这个好处,那同学说海哥你切割成33T,那每台服务器的压力还是很大呀,那不用担心33T的数据啊,下面呢,它在存储的时候还是按照1G一块啊进行分割存储,那后面讲存储原理的时候再给大家详细说啊,总之我们能把海量的数据先按照。分区先切上那么一刀,行。这是这块,那大家在想后半句说合理的控制这个分区任务啊,可以实现负载均衡,那它怎么实现的呢?其实在企业里面有这种情况,比如说第一台服务器啊,能够存储的这个硬盘是1T,第二台服务器呢100T,第三台服务器也是100T硬盘。那如果是这样的情况下,我这100T的资源如何均匀的分布在博客零,博客一,博客二上呢?那这时候我们就要根据每台服务器的存储能力,是适当的进行控制数据的一个存储啊,哎,那这时候你就可以对这个分区进行自定义。
03:04
我让这个一号分区和二号分区多存储一些数据,让零号分区少存储一些数据,那是不是就起到了一个负载均衡的一个目的。啊,就是这样的哈,就是从存储的角度呢,让我们存储的更加灵活啊,这是分区的第一个好处。那么在大数据场景下啊,分析一个问题,除了从存储的角度去考虑,还需要从计算的角度去考虑啊,那好我们来看一下。那首先呢,如果说这块我们采用分区的话,它能够提高生产者往这个博客集群发送的一个并行度。你想如果是100T的这个数据发往到一个broke。那你最多一个县城对不对,那这个速度呢,非常慢,但反过来我100G的数据,我可以往这发,可以往这发,可以往这发。我多增加几台服务器,那我的并行度就大大的提高了,那我传输的这个效率啊也就提高了。那好,那从那个消费的角度,同样道理,如果你是数据只放到一个分区里面,就说这里面是100T。
04:07
所有数据都打到这儿。那么你一个消费者来消费的话,这个消费速度就非常非常慢,那反过来我把100G的数据分割进行存储,存储在不同的服务器上,那我就可以组成一个消费者组。哎,每一个消费者呢,消费其中一部分。那我这个处理速度不就更快了。所以从这个存储和计算的角度来说,这个分区啊,都有大大的好处啊,所以说这个分区在企业里面呢,用的是非常非常多的啊。
我来说两句