ZooKeeper 的持久化机制

本文探讨了数据持久化的概念,比较了ZooKeeper中SnapShot全量快照和TxnLog增量事务日志的优缺点,并提出结合两者以优化持久化策略。快照模式定期备份DataTree数据结构,但不保证数据实时性。

持久化的定义:

  • 数据,存到磁盘或者文件当中。
  • 机器重启后,数据不会丢失。内存 -> 磁盘的映射,和序列化有些像。

ZooKeeper 的持久化:

  • SnapShot 快照,记录内存中的全量数据
  • TxnLog 增量事务日志,记录每一条增删改记录(查不是事务日志,不会引起数据变化)

持久化的作用:
快照的缺点,文件太大,而且快照文件不会是最新的数据。 增量事务日志的缺点,运行时间长了,日志太多了,加载太慢。二者结合最好。

快照模式:

  • 将 ZooKeeper 内存中以 DataTree 数据结构存储的数据定期存储到磁盘中。
  • 由于快照文件是定期对数据的全量备份,所以快照文件中数据通常不是最新的。

见图片:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员JavaWind

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值