00:03
好,我们继续啊,那么这说了啊,需要注意的是。那么一个中啊,仅包含一个commit目录是吧?所有的map的file文件是存放在这个目录里边的。啊,这无论当前博中存放的。多少topic的消息,注意啊,我们大家知道,就你一个博客里边可以存放很多。主题的消息很多topic的消息。是吧,因为我们不同的topic,实际上按照我们之前分析的理论来说,不同的topic是放在不同的不同的消息,而是放在不同的Q队列里边的。但现在的问题是什么?现在的问题是啊,我们无论broke里边存放多少topic的消息,这些消息都被注意顺序写入到了map的文件中。都被顺序写到了map文件中,也就是说,这些消息在博中存放时,并没有被按照topic进行分类存放。
01:07
这这这就我们大家到到现在啊,我们大家肯定心里边会有疑问了。和很大的问题。就是我们之前说的那些Q在哪呢?不是消息都存在Q里边吗?为什么现在它不分topic的全部存在?这个麦克。是不是?这个问题我们一会儿在这儿再给大家详细说啊,那么在这儿呢,需要我们大家。都是知道的啊,就是其实前面都说了,再给大家强调一遍吧。啊,Map的。哎呀。文件是什么?呃,顺序。嗯。都写的。这是顺序,顺行它顺序。读写啊顺序读写的顺序访问的,我们大家知道有顺序的有什么,有随机的。
02:05
对吧,顺序的快呀。是不是顺序的话,呃,所以呃。所以,其。访问效率。对吧。呃,那这个里边咱们有有哥们就会说这样一个问题,那老雷,那你说的这啊属于什么,属于这种沙滩硬盘。是吧,我们的机械硬盘,那我如果现在用的是S。叫做固固态硬盘啊,我觉得固态硬盘那这个好像关系不大吧,不是啊,你注意嗯,不管你是SSD的还是sata的。就是我们顺序存存取的这种。效率啊,都会高于随机存取的,这是我们大家需要需要了解的。就要知道的,当然你说这个三代硬盘,它里边有磁头啊,对吧,啊,它它这个磁头呃,你要找谁,你要顺序存放的话,它就扇区不用转。
03:09
啊,是吧,啊,那么。呃,这个这个这个这个你这个SI硬盘,呃,就是呃。它它不存在这个,呃,寻到问题是吧?啊错了啊,刚才说的是三大硬盘啊,它是磁陶,呃,这个磁头需要寻到对吧?他需要寻到,呃,但是他。如果顺序存放的话,嗯,它不需要循他只需要什么那个扇区稍微转就行了。就是吃头不动。但你要是。这个这个随机存放的,你磁头还要动。所以那个效率就变低了。那你SD里面不存在磁头的问题啊。但它不存在这个问题,它一样是顺序。呃,存取的效率要高,具体sid硬盘啊,它的工能大家可以从网上,你要感兴趣啊,可以从网上去查找一些相关的资料。
04:09
所以在这啊,就给大家写上这么一句话啊,无论是S。呃,这个磁盘。还是,嗯。下塔。磁盘。呃,这个。通常情况下。顺序。城区。呃,效率都会。高于。飞机。陈。争取。这是我们大家需要了解到的这么一点啊。呃。那么下边我们我们继续看啊,我下边就继续看这什么,这是它的消息单元。
05:02
是吧,小学单元小学单元啊,这这个图可能有点小啊。完了给大家打开这个,就把它画这个原图啊。大家看一下啊,这个里边这每一每一行就是一条。呃,消息就成为一个,大家看每一行称为一个什么消息单元啊。消息单元。你看那的开卡文件内容由一个个的消息单元构成。每个消息单元中包含。效益总长大家看。就这个MIG棱,就是我们的消息总长是吧,你你你一共呃,这整个这条这个是多长,然后这是它的什么物理偏移量,就是它的物理地址。这是一条消息的物理地址啊。然后这是什么。真正的消息体body是吧,然后这个消息的长度。
06:02
要T就是你这个实际上是producer。是谁?就你消息的生产者是谁是吧?这消息啊被生产被发送的时间戳是吧?你这条消息它的主题是什么?Topic这条消息要存放在。哪个Q?在这个Q里边,它的偏移量是多少,这个就是这里边就有出现新的问题了啊,这里面怎么又有出现Q了,对吧,那是啊,肯定要有Q的事,要不然我们之前说的就有问题了。是不是?所以。大家看啊,这这这这说了一大堆,有多少啊,实际上这里面有21项消息相关的属性。一个消息单元里边会有20多条啊,二十二十二十条这个这个呃,21条啊,这个相关的属性。
07:00
那么。这里边儿呢。呃,就是就是。呃呃。需要。注意。呃,消息。单元中是。包含什么?秀。相关。属性的。所以。所以我们。需要。呃,需要,呃,这个这个呃。十分留意。十分留意啊这个。Log。鱼。Q点的。关系行吗?是吧,这这就是一个问题。
08:00
我们后续啊,所以我们。后续。学习中。就需要十分留意这关系。是吧,这第一个啊,第二个。呃,就是刚才我们说了啊,其实和那个文件名又有关系了,就那个。我我我现在啊,这条消息咱们现在就说啊,比如说这个L2。这是啥,他可便宜点啊,你你看一下我下面写的什么。看这吧,文件呃,Log中。名称为N,你注意我这个文件名。叫什么叫N?名称为N的。呃,麦文件内部就是这是N,为什么它文件名叫N,是因为你看我这个偏移量是什么。第一条消息的平移量是N。看看吧。那么我现在就说L2。
09:02
L2等于什么?就这条消息,它的偏移量commit log of,偏移量是多少呢?实际上很简单。就等于。前面的。就是或者这样说吧,等于它。呃,L1加上。Mg Le。也就是说啊,写一下,给大家写一下。就是,呃。嗯。这个这个这个这个怎么说呢?嗯,一个。Map的。文件中。嗯。呃,DM。条。呃,DM。的消息单元。
10:02
Commit log。Of sat。便宜量。等于什么?我这样写。不是M嘛,是吧,嗯,咱们不要M了,为了好写一些啊,M加一是吧,M加一个小写啊,M加一。等于。哎呀。是不是M。对吧,加上谁呀。MSG,注意加的是MSG。这谁的?这M的啊。这M的。就到这儿。当然这个M,嗯。是什么?
11:00
GM是大于。等于。等等。是吧,这M是大于等于零的啊。也就是说大家看,呃,如果这是M,那就是。呃,M减一。然后这不这是它嘛,然后配上谁,呃,这这这个消息单元,它本身的长度。对吧,那它是大于等于零的,你可以是零,如果M是零的话,这不是第一条就是,呃,零加一就是一嘛,从这开始算的啊是吧。所以这是什么,这是我们这个消息单元啊,消息单元我们看到它就长这样,里边包含很多的东西,我们真正的消息啊在这。真正的消息内容在这儿。它里面还包含了我们的,呃,这个这个生产者的信息,包含了我们的topic。包含了我们的。
12:01
当然我这里边儿没写。还有谁肯定有tag,你注意啊,肯定有tag。是不是啊,有topic your t啊,然后还有Q,然后还有什么大家看。有物理地址。然后有他的。Offset便宜量。对不对,这些东西都有,这这些东西我们到后续都要用到的啊,那后续都要用,我们在讲后后边这个,所以文件啊,Get file的时候要用到的。OKOK,背到这里就行。
我来说两句