Linux存储系统可靠性是很关键的


1. Leveldb在写数据时,采用先写日志,后写实际的用户数据KV。写日志采用了fdatasync方式写。
wri     te   op     ti   on.sync= true保证了数据每次写操作都采用同步的方式,必须写完再返回,这样速度很慢,却确保了系统的整体的可靠性。

 Linux存储系统可靠性是很关键的_设计制作_可编程逻辑

虽然确保了系统的可靠性,但极大地损失了性能,无法满足线上的需求。
最后采用writeop  TI on.sync=false的方式保证机器如果不重启,就不会丢配置。
Leveldb写日志方式为:1. 写日志 2. fflush将用户态的数据推入内核态。3. 写内存中的数据。
恢复日志方式:从日志内容中恢复数据(由于写日志时调用fflush推给了内核态,所以即使程序崩溃,仍然可以读取到,而且速度很快),并恢复到memtable中。

所以我们在线上运行过程中如果调用KV写入方法成功了,说明日志内容已经fflush到了内核层,但由于数据是异步刷新到硬盘上,所以如果这个时候重启,那么数据就会丢失,但如果只是程序崩溃,是不会丢数据的。
2.  ext4文件系统。data=journal  重要的数据写入到了日志区,并且在空闲时刻,将数据第二次从日志区读出,并写入到相应位置。这样做会影响系统的效率与性能。
默认系统只会写metadata到journal区域,但是如果用户开启了data=journal,那么用户的数据也会写入到journal区,保证系统crash consistency。

29
61
0
53

相关资讯

  1. 1、赵又廷、邓伦、易烊千玺都在影院等你!江苏卫视跨年晚会蓄力加载中~3546
  2. 2、娱乐品牌攻城掠地2018中国或成全球娱乐中心4028
  3. 3、《司藤》剧组很穷?导演亲自客串,张彬彬助理也在剧中“打酱油”693
  4. 4、电视剧剧情被广告抢风头评论称因剧情太弱3011
  5. 5、文章王志文加盟《一步之遥》同闯姜文大上海4806
  6. 6、《延禧攻略》于正剧透:魏璎宁死亡之谜,和高贵妃有关系1978
  7. 7、吴卓林欠房租半夜投靠妈妈吴绮莉,成龙却忙着发新歌:物是人非4388
  8. 8、帝国杂志2018年度最佳电影榜单,漫威稳居第一2093
  9. 9、唐嫣伴娘团定了!不是刘亦菲杨幂,而是这四位美丽俏佳人!722
  10. 10、日本恐怖片《来了》新预告,《告白》导演新作,胆小慎入!1449
全部评论(0)
我也有话说
0
收藏
点赞
顶部