栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

ZooKeeper: Wait-free coordination for Internet-scale systems论文理解

ZooKeeper: Wait-free coordination for Internet-scale systems论文理解

ZooKeeper介绍

Zookeeper 是用来协调分布式应用的服务框架,它是一个通过冗余容灾的服务器集群,提供 API 给 client ,用以实现一些 原语( 如配置管理、成员管理、领导人选举、分布式锁等 ),在这些原语的基础上可以实现一些分布式应用程序( 如 GFS 、MapReduce 、VM-FT 的 test-and-set server 以及雅虎的 Fetching Service 、Katta 、YMB 等 )。

Zookeeper本身可以作为大型分布式系统的基础架构,为其提供领导人选举、server状态确认等功能

与ZooKeeper定位相似的还有最近比较有名的etcd(掘金)

ZooKeeper需要注意的地方

1、数据结构仿照linux文件系统设计,类似于树的结构,便于加锁检查

2、大型分布式系统通常读写操作比例能达到10-100,因此ZooKeeper为了提升读操作的吞吐量进行了大量的改变

例如:

保持弱一致性,即读到的内容不一定是最新的内容。ZooKeeper的server直接读取Replica的数据,提升了执行的效率。

实际上,随着server数量的增加,ZooKeeper读操作越来越快,写操作越来越慢(写需要进行主从复制等,很花费时间)。

当然,对于写操作和读操作,ZooKeeper严格保持了FIFO的要求,对执行顺序有着较强的要求。

可以参考下面的示意图:

为了保证顺序性,ZooKeeper引入了id来保证顺序。通过zxid保证读数据即使是在不同的replica上读也不会违背顺序性。

3、ZooKeeper虽然不支持锁机制,但本身可以实现分布式锁,验证了其介绍,强的原语可以用于实现弱的原语。

具体的构造方法可以参考下面一节的参考资料

参考资料

《 ZooKeeper : Wait-free coordination for Internet-scale systems 》论文研读 - BrianLeeLXT - 博客园

掘金

http://nil.csail.mit.edu/6.824/2020/notes/l-zookeeper.txt

CAP和base理论讲解:掘金

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/283157.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号