视频:DAOS在后傲腾时代的发展策略_哔哩哔哩_bilibili
代替方案 WAL (write ahead log)
在架构上用DRAM 代替PMEM,如图
变化是:
傲腾方案: PMEM 数据写到内存就完成"落盘",是一个原子操作.
WAL 方案:元数据写到DRAM,定时的回刷到SSD,大部分时间性能和PMEM一样,但是在回刷数据到SSD的时候会有性能抖动。
WAL:
1,记录所有内存变化到一个连续的buffer中
2,将这个buffer提交到SSD (落盘)
WAL 相比PMEM的缺点还有,等节点故障时,需要从SSD把元数据重新恢复到内存中,这个过程比较慢,而PMEM就不存在这个动作(上电数据就在内存--PMEM中)
WAL回刷
#------------------------------------
对象放置算法
DAOS的数据结构:daos container (有点像文件夹)
DAOS的分层概念 (通过Dkey 和Akey 完成灵活的分布管理)
两层不同的存储媒介(蓝色:PMEM/DRAM 灰色:SSD)
副本模式和EC模式
副本:数据丢失,恢复副本,性能影响较小。 缺点:请求发给主,主通知其他副本去拉数据,从节点同时去拉数据,带宽压力大。
EC:数据丢失,重构数据,性能影响较大。
心跳:swim
发现节点故障,发送最新map给其他节点,重建数据
数据重建