4paradigm / pafka

Pafka is originated from the OpenAIOS project to leverage an optimized tiered storage access strategy to improve overall performance for streaming/messaging system.
Apache License 2.0
68 stars 6 forks source link

Pafka 写 PMem 的时候需要同步刷盘 #16

Closed GOODBOY008 closed 2 years ago

GOODBOY008 commented 3 years ago

问题: 1、PMem 定位是持久化内存,可以作为磁盘使用但是不符合PMem设计的初衷。 2、PMem 如果写满,数据需要保留,如何迁移? 3、后期如果支持PMem 刷盘,需要考虑PMem 数据淘汰策略/阈值,保证PMem空间一直可用,从而保证其性能平稳。

lumianph commented 3 years ago

多谢建议,以上大部分的feature也正是我们考虑之中,会在0.2.0版本引入分级存储的功能,主要功能会包括

  1. 使用PMem作为第一级高速存储设备
  2. 如果PMem被写满,或者达到一个threshold,则开始写入第二级存储设备
  3. 分级存储设备之间维持一个数据迁移策略,尽可能保障数据的读写都落在性能更好的PMem中

这个功能是作为分级存储,而不是把数据同步写入PMem和disk,这么做主要还是考虑PMem目前本身就容量较大,并且相比较SSD等设备反而有更好的TBW。另外对比disk raid方案,我们还是主要依赖于Kafka本身的多副本机制保持高可用。