系统设计系列讲解 - Kafka系列

求问楼主,之前讲过LSM tree是write快,但是read慢,那为什么kafka这种既write heavy又read heavy的也可以使用LSM tree满足呢?

为啥要涉及 LSM tree ?

哦哦,因为视频里不是提及,kafka底层实现也是类似于LSM tree的结构嘛

不是,而且系统设计一般不会精准到算法数据结构

咦,对不起我稍微有点疑惑,系统设计系列讲解112 - Kafka系列 - Topic - YouTube 里面7分钟左右开始说的,说cassandra是用LSM tree设计的,而kafka底层也是类似。所以kafka不是用LSM tree做的嘛

没说 LSM tree 吧

还想请问楼主,LSM tree一直说是优化write,读取会被牺牲,慢一些,那为什么LSM tree可以用来做write heavy和read headvy的系统呢?是说LSM tree即使牺牲了读取速度,但是依然足够快嘛

哦哦哦,更正一下,我重新听了一遍,说的是log structure storage。不好意思哈~那我重新改一下我的问题,log structure storage这种结构,按理说是优化write,但是读取会被牺牲,慢一些,那为什么log structure storage可以用来做write heavy和read headvy的系统呢?

你想想用户的读操作和写操作各是什么
我不想码那么多字来解释视频已经说过的东西

不好意思哈,我理解能力可能有点差,听了好几遍实在是没太想明白,也试图查了一些资料,但是还是不太理解,还希望楼主大神赐教哈!前面一直以为log structure storage和LSM tree是一个东西,前面自己的确是有一点混乱了,先给楼主道个歉哈。看了楼主很多的视频,真的是受益良多!

我现在想的就是,kafka这种pub/sub的话,会有很多producer在不停的往里写数据,但是也会有同样很多的consumer去读取,再加上每个consumer都会把信息收到一遍,所以我觉得读取的TPS应该和写入差不多,甚至更高一些?(如果错误的话还请楼主大神指正哈)如果上述的成立的话,为什么log structured storage还可以处理呢。

感谢楼主答疑