RocksDB 写入流程详解

本文涉及的产品
RDS AI 助手,专业版
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
简介: 最初的写入流程,继承自 leveldb,多个 写线程组成一个 group, leader 负责 group 的 WAL 及 memtable 的提交,提交完后唤醒所有的 follwer,向上层返回。 支持 allow_concurrent_memtable_write 选项,在1的基础上,leader 提交完 WAL 后,group 里所有线程并发写 memtable。
  • 最初的写入流程,继承自 leveldb,多个 写线程组成一个 group, leader 负责 group 的 WAL 及 memtable 的提交,提交完后唤醒所有的 follwer,向上层返回。
  • 支持 allow_concurrent_memtable_write 选项,在1的基础上,leader 提交完 WAL 后,group 里所有线程并发写 memtable。原理如下图所示,这个改进在 sync=0的时候,有3倍写入性能提升,在 sync=1时,有2倍性能提升,参考Concurrent inserts and the RocksDB memtable
  • 支持 enable_pipelined_write 选项,在2的基础上,引入流水线,第一个 group 的 WAL 提交后,在执行 memtable 写入时,下一个 group 同时开启,已到达 Pipeline 写入的效果。

_2018_01_29_11_33_08

相关文章
|
存储 缓存 固态存储
存储性能软件加速库(SPDK)
存储性能软件加速库(SPDK)
|
7月前
|
存储 人工智能 安全
手提式干粉灭火器检查工作,如何做到可执行、可追溯、可管理?
手提式干粉灭火器是厂区、楼宇等场所常见的消防设备,但其日常检查常流于形式。本文分析传统检查方式存在的信息断层、执行不规范等问题,提出通过二维码系统实现标准化、可追溯的管理模式,提升管理效率与执行力,推动安全责任落实。
|
机器学习/深度学习 人工智能 Cloud Native
福利「Flink Forward Asia 2023 」视频合集!
2023 年 12 月 9 日,Flink Forward Asia 2023 在北京圆满结束。本届大会共有 70+ 演讲议题、30+ 一线大厂技术与实践分享。现所有专场回放视频已经出炉,并在开发者社区上线。
6584 2
福利「Flink Forward Asia 2023 」视频合集!
|
存储 SQL 缓存
io_uring之liburing库安装
io_uring之liburing库安装
1422 0
|
存储 分布式计算 NoSQL
RocksDB:高性能键值存储引擎初探
RocksDB:高性能键值存储引擎初探
|
存储 NoSQL 关系型数据库
RocksDB 事务实现和应用场景
RocksDB 事务实现和应用场景
|
Rust Unix Windows
使用Cargo国内镜像提升Rust开发效率
使用Cargo国内镜像提升Rust开发效率
2417 0
|
存储 测试技术 Apache
阿里云实时计算企业级状态存储引擎 Gemini 技术解读
本文整理自阿里云 Flink 存储引擎团队李晋忠,兰兆千,梅源关于阿里云实时计算企业级状态存储引擎 Gemini 的研究。
127349 4
阿里云实时计算企业级状态存储引擎 Gemini 技术解读
|
存储 MySQL 关系型数据库