开发者社区> 问答> 正文

Flink中的RocksDB的术语LSM具体是什么?

Flink中的RocksDB的术语LSM具体是什么?

展开
收起
游客vwuxaq6iqaowc 2021-12-09 14:02:52 445 0
1 条回答
写回答
取消 提交回答
  • LSM(log-structed-merge-tree) 上述原理是使用LSM tree这种结构来实现的,上图也是LSM tree的一种直观体现,那为什么要选用LSM tree呢?

    B+树(MySQL InnoDB索引)和log型(append)文件操作(数据库WAL日志)是数据读写效率的两个极端。 磁盘读写分为随机读写和顺序读写,一般来说随机读写的效率要低于顺序读写。

    B+树解决的是磁盘随机读慢的问题,但随机写无法保证效率,因为写入数据时涉及到树的重构。 log型(append)文件操作解决的是磁盘随机写慢的问题,但读时需要遍历整个文件。

    B+树读效率高而写效率差;log型文件操作写效率高而读效率差;因此要在排序和log型文件操作之间做个折中,于是就引入了log-structed merge tree模型,通过名称可以看出LSM既有日志型的文件操作,提升写效率,又在每个sstable中排序,保证了查询效率

    2021-12-09 14:03:15
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Flink CDC Meetup PPT - 龚中强 立即下载
Flink CDC Meetup PPT - 王赫 立即下载
Flink CDC Meetup PPT - 覃立辉 立即下载