在四级事务流水线中,如何根据每个级别的特性分别优化其并行粒度?
第一级日志缓冲(收集一个任务队列中所有写入内容的相关日志)和第二级日志落盘由于存在数据依赖,由单一线程串行完成;第三级写内存表则由多个线程并发完成对内存表的写入;第四级提交负责释放相应的资源(如所持有的锁和内存空间等),使所有修改可见,由多个线程并行完成。所有的写入线程采取主动拉取(Pull)工作的方式,从任意级别中获取所需执行的任务。这种设计允许X-Engine 引擎分配更多的线程,以处理带宽高、延迟低的访问内存的工作,适用较少的线程完成带宽相对较低、延迟相对较高的写入磁盘工作,提高了硬件资源的利用率。
以上内容摘自《云原生数据库原理与实践》,这本书可以在电子工业出版社天猫店购买。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。