ZooKeeper运维——数据备份与恢复(事务日志+快照日志,万字总结(6)

最后的话

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

资料预览

给大家整理的视频资料:

给大家整理的电子书资料:

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

		* [(3)获取最新ZXID(zxid\_for\_snap)](#3ZXIDzxid_for_snap_235)
	- [2、事务日志进行数据修正](#2_241)
	- * [(1)获取zxid\_for\_snap之后提交的事务](#1zxid_for_snap_245)
		* [(2)数据修正](#2_249)
		* [(3)获取最新ZXID校验epoch](#3ZXIDepoch_255)
	- [3、数据同步](#3_265)
	- * [(1)Learner 向 Leader 发送 ACKEPOCH](#1Learner__Leader__ACKEPOCH_269)
		* [(2)Leader 初始化 peerLastZxid、minCommittedLog、maxCommittedLog](#2Leader__peerLastZxidminCommittedLogmaxCommittedLog_273)
		* [(3.1)直接差异化同步(DIFF)](#31DIFF_283)
		* [(3.2)先回滚再差异化同步(TRUNC+DIFF)](#32TRUNCDIFF_301)
		* [(3.3)仅回滚同步(TRUNC)](#33TRUNC_320)
		* [(3.4)全量同步(SNAP)](#34SNAP_328)
+ [六、数据备份与恢复流程](#_341)
+ - [1、为什么需要快照日志](#1_343)
	- [2、数据备份策略](#2_349)
	- [3、数据恢复](#3_359)
+ [七、要点总结](#_373)
+ [八、参考资料](#_389)

一、前言

ZooKeeper存储数据的底层数据结构是LSMLog Structured Merge-tree)。基于LSM 实现的存储引擎有两个显著特点:MVCCMulti-Version Concurrency Control)和存储KV,即所有的更新操作,都是先追加事务日志,然后把key-value存储到内存数据库,注意不是replace,而是保存对一个key-value的多个版本。

ZooKeeper的数据备份与恢复,就用到了其事务日志文件和快照日志文件。快照日志文件是什么概念?为什么要有快照日志文件?

如何做数据备份?如何恢复数据?解开这些疑惑,需要深入了解ZooKeeper底层是如何保证数据一致性和集群启动时如何做初始化数据加载和同步。
我的心冰冰的

二、ZooKeeper顺序一致性

ZooKeeper 专门设计了 ZabZookeeper Atomic Broadcast)协议作为其数据一致性协议。所有写操作和客户端会话管理都以事务方式由 Leader 统一协调,使用两阶段提交的方式,保证数据一致性。

1、ZooKeeper如何处理请求

客户端和 ZooKeeper 集群中的任一服务建立连接,即可发送请求,请求主要包括两类,只读请求和事务请求。

(1)只读请求本机处理

只读请求包括 getDatagetChildrenexists 等,zk服务器接收到只读请求无需转发给 Leader,可直接本机处理响应。

(2)事务请求转发给Leader协调

事务请求包括 createdeletesetData 以及客户端会话的创建和销毁(createSessioncloseSession)。

Leader 收到事务请求可以直接协调处理,并发给Follower做数据一致性同步;Follower收到事务请求就需要先转发给 Leader,由Le

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值