Big Data and Hadoop Training
Zookeeper
Page 2Classification: Restricted
Agenda
•Zookeeper
Page 3Classification: Restricted
Zookeeper
•ZooKeeper is a distributed Co-ordinated service.
•Partial failures are intrinsic in distributed systems.
•ZooKeeper gives you a set of tools to build distributed applications that can
safely handle partial failures
Page 4Classification: Restricted
A scenario
•A group of servers provides services to the clients. To maintain the list of
these servers at a certain place is a challenge – Can’t be stored on a single
node; even if stored on multiple machines, removing a certain entity from
the list is challenging.
•ZooKeeper provides a group membership service to achieve the above
requirement.
Page 5Classification: Restricted
Group membership in ZK
•ZK provides a high availability file system.
•It doesn’t have files & directories though – but, znodes
•Znodes - contain data (as a file) & also contain other znodes(as directories)
•Znodes form a hierarchical namespace, and a natural way to build a
membership list is to create a parent znode with the name of the group and
child znodes with the names of the group members (servers)
Page 6Classification: Restricted
Group membership in ZK
Page 7Classification: Restricted
ZK data model
•ZK maintains a hierarchical tree of nodes called znodes. A znode stores data
and has a corresponding ACL(access list)
•ZooKeeper is designed for coordination (which typically uses small
datafiles), not high-volume data storage, so there is a limit of 1 MB on the
amount of data that may be stored in any znode.
•Data access is atomic
•A write will replace all the data associated with a znode. A Write will either
succeed or fail. ZooKeeper does not support an append operation
Page 8Classification: Restricted
ZK data model – node types
•Znodes – ephemeral & persistent
•A znode’s type is set at creation time and may not be changed later
•An ephemeral znode is deleted by ZooKeeper when the creating client’s
session ends
•a persistent znode is not tied to the client’s session and is deleted only
when explicitly deleted by a client (not necessarily the one that created it)
•An ephemeral znode may not have children, not even ephemeral ones.
•Even though ephemeral nodes are tied to a client session, they are visible to
all clients (subject to their ACL policies, of course)
•Ephemeral znodes are ideal for building applications that need to know
when certain distributed resources are available
Page 9Classification: Restricted
ZK data model – sequence numbers
•A sequential znode is given a sequence number by ZooKeeper as a part of its
name
•If a znode is created with the sequential flag set, then the value of a
monotonically increasing counter (maintained by the parent znode) is
appended to its name.
•If a client asks to create a sequential znode with the name /a/b-, for
example, the znode created may actually have the name /a/b-3. If, later on,
another sequential znode with the name /a/b- is created, it will be given a
unique name with a larger value of the counter—for example, /a/b-5
•Sequence numbers can be used to impose a global ordering on events in a
distributed system and may be used by the client to infer the ordering. You
can use this in Lock sevice
Page 10Classification: Restricted
ZK data model – Watches
•Watches allow clients to get notifications when a znode changes in some
way
•Watches are set by operations on the ZooKeeper service and are triggered
by other operations on the service
•For example, a client might call the exists operation on a znode, placing a
watch on it at the same time. If the znode doesn’t exist, the exists operation
will return false. If, some time later, the znode is created by a second client,
the watch is triggered, notifying the first client of the znode’s creation
•Watchers are triggered only once
Page 11Classification: Restricted
Thank You

More Related Content

PDF
MySQL Performance Schema in Action
PPTX
CrateDB - Giacomo Ceribelli
PDF
MySQL Rebuild using Logical Backups
PDF
Electron, databases, and RxDB
PPTX
Tales From the Field: The Wrong Way of Using Cassandra (Carlos Rolo, Pythian)...
PPTX
Scylla Summit 2018: Adventures in AdTech: Processing 50 Billion User Profiles...
PDF
How Orange Financial combat financial frauds over 50M transactions a day usin...
PDF
Proven Low-Cost Database for Your Business
MySQL Performance Schema in Action
CrateDB - Giacomo Ceribelli
MySQL Rebuild using Logical Backups
Electron, databases, and RxDB
Tales From the Field: The Wrong Way of Using Cassandra (Carlos Rolo, Pythian)...
Scylla Summit 2018: Adventures in AdTech: Processing 50 Billion User Profiles...
How Orange Financial combat financial frauds over 50M transactions a day usin...
Proven Low-Cost Database for Your Business

What's hot (20)

PPTX
Building a Multi-Region Cluster at Target (Aaron Ploetz, Target) | Cassandra ...
PPTX
Introduction to NoSQL Database
PDF
Stream or segment : what is the best way to access your events in Pulsar_Neng
PPT
Mesos study report 03v1.2
PDF
Mesos - A Platform for Fine-Grained Resource Sharing in the Data Center
PDF
Using cassandra as a distributed logging to store pb data
PDF
Disney+ Hotstar: Scaling NoSQL for Millions of Video On-Demand Users
PPTX
Migrating from a Relational Database to Cassandra: Why, Where, When and How
PDF
Discover some "Big Data" architectural concepts with Redis
PDF
Webtech Conference: NoSQL and Web scalability
PPTX
MongoDB vs Scylla: Production Experience from Both Dev & Ops Standpoint at Nu...
ODP
ODP
Barcamp MySQL
PDF
Mashing the data
PPTX
Empowering the AWS DynamoDB™ application developer with Alternator
ODP
Cassandra - Tips And Techniques
PPTX
Aruman Cassandra database
PPTX
Cassandra vs Databases
PDF
Use Cases for Oacle Pluggable Databases in Development Environments
PPTX
Apache Cassandra Lunch #70: Basics of Apache Cassandra
Building a Multi-Region Cluster at Target (Aaron Ploetz, Target) | Cassandra ...
Introduction to NoSQL Database
Stream or segment : what is the best way to access your events in Pulsar_Neng
Mesos study report 03v1.2
Mesos - A Platform for Fine-Grained Resource Sharing in the Data Center
Using cassandra as a distributed logging to store pb data
Disney+ Hotstar: Scaling NoSQL for Millions of Video On-Demand Users
Migrating from a Relational Database to Cassandra: Why, Where, When and How
Discover some "Big Data" architectural concepts with Redis
Webtech Conference: NoSQL and Web scalability
MongoDB vs Scylla: Production Experience from Both Dev & Ops Standpoint at Nu...
Barcamp MySQL
Mashing the data
Empowering the AWS DynamoDB™ application developer with Alternator
Cassandra - Tips And Techniques
Aruman Cassandra database
Cassandra vs Databases
Use Cases for Oacle Pluggable Databases in Development Environments
Apache Cassandra Lunch #70: Basics of Apache Cassandra
Ad

Similar to Zookeeper (20)

PPTX
Apache zookeeper seminar_trinh_viet_dung_03_2016
PDF
Apache Zookeeper
PPTX
Introduction to apache zoo keeper
PDF
Tech Talks_25.04.15_Session 3_Tibor Sulyan_Distributed coordination with zook...
PPTX
Zookeeper Architecture
PPTX
Apache zookeeper 101
PPTX
Zookeeper big sonata
PPT
Zookeeper Introduce
PPTX
Zookeeper Tutorial for beginners
PDF
Базы данных. ZooKeeper
PDF
Introduction to Apache ZooKeeper | Big Data Hadoop Spark Tutorial | CloudxLab
PPTX
Winter is coming? Not if ZooKeeper is there!
PDF
A Python Petting Zoo
PPTX
Leo's Notes about Apache Kafka
PPTX
So we're running Apache ZooKeeper. Now What? By Camille Fournier
PDF
Introduction to ZooKeeper - TriHUG May 22, 2012
PDF
Apache ZooKeeper
PDF
zookeeperProgrammers
PPTX
Distributed Applications with Apache Zookeeper
PPTX
Meetup on Apache Zookeeper
Apache zookeeper seminar_trinh_viet_dung_03_2016
Apache Zookeeper
Introduction to apache zoo keeper
Tech Talks_25.04.15_Session 3_Tibor Sulyan_Distributed coordination with zook...
Zookeeper Architecture
Apache zookeeper 101
Zookeeper big sonata
Zookeeper Introduce
Zookeeper Tutorial for beginners
Базы данных. ZooKeeper
Introduction to Apache ZooKeeper | Big Data Hadoop Spark Tutorial | CloudxLab
Winter is coming? Not if ZooKeeper is there!
A Python Petting Zoo
Leo's Notes about Apache Kafka
So we're running Apache ZooKeeper. Now What? By Camille Fournier
Introduction to ZooKeeper - TriHUG May 22, 2012
Apache ZooKeeper
zookeeperProgrammers
Distributed Applications with Apache Zookeeper
Meetup on Apache Zookeeper
Ad

Recently uploaded (20)

PPTX
Build Your First AI Agent with UiPath.pptx
DOCX
search engine optimization ppt fir known well about this
PDF
Getting started with AI Agents and Multi-Agent Systems
PDF
Comparative analysis of machine learning models for fake news detection in so...
PDF
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
PPT
Galois Field Theory of Risk: A Perspective, Protocol, and Mathematical Backgr...
PDF
A contest of sentiment analysis: k-nearest neighbor versus neural network
PPT
What is a Computer? Input Devices /output devices
PDF
Produktkatalog für HOBO Datenlogger, Wetterstationen, Sensoren, Software und ...
PDF
Developing a website for English-speaking practice to English as a foreign la...
PDF
Convolutional neural network based encoder-decoder for efficient real-time ob...
PPTX
GROUP4NURSINGINFORMATICSREPORT-2 PRESENTATION
PPTX
Custom Battery Pack Design Considerations for Performance and Safety
PDF
OpenACC and Open Hackathons Monthly Highlights July 2025
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
sbt 2.0: go big (Scala Days 2025 edition)
PDF
“A New Era of 3D Sensing: Transforming Industries and Creating Opportunities,...
PPT
Geologic Time for studying geology for geologist
PDF
Consumable AI The What, Why & How for Small Teams.pdf
PPTX
The various Industrial Revolutions .pptx
Build Your First AI Agent with UiPath.pptx
search engine optimization ppt fir known well about this
Getting started with AI Agents and Multi-Agent Systems
Comparative analysis of machine learning models for fake news detection in so...
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
Galois Field Theory of Risk: A Perspective, Protocol, and Mathematical Backgr...
A contest of sentiment analysis: k-nearest neighbor versus neural network
What is a Computer? Input Devices /output devices
Produktkatalog für HOBO Datenlogger, Wetterstationen, Sensoren, Software und ...
Developing a website for English-speaking practice to English as a foreign la...
Convolutional neural network based encoder-decoder for efficient real-time ob...
GROUP4NURSINGINFORMATICSREPORT-2 PRESENTATION
Custom Battery Pack Design Considerations for Performance and Safety
OpenACC and Open Hackathons Monthly Highlights July 2025
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
sbt 2.0: go big (Scala Days 2025 edition)
“A New Era of 3D Sensing: Transforming Industries and Creating Opportunities,...
Geologic Time for studying geology for geologist
Consumable AI The What, Why & How for Small Teams.pdf
The various Industrial Revolutions .pptx

Zookeeper

  • 1. Big Data and Hadoop Training Zookeeper
  • 3. Page 3Classification: Restricted Zookeeper •ZooKeeper is a distributed Co-ordinated service. •Partial failures are intrinsic in distributed systems. •ZooKeeper gives you a set of tools to build distributed applications that can safely handle partial failures
  • 4. Page 4Classification: Restricted A scenario •A group of servers provides services to the clients. To maintain the list of these servers at a certain place is a challenge – Can’t be stored on a single node; even if stored on multiple machines, removing a certain entity from the list is challenging. •ZooKeeper provides a group membership service to achieve the above requirement.
  • 5. Page 5Classification: Restricted Group membership in ZK •ZK provides a high availability file system. •It doesn’t have files & directories though – but, znodes •Znodes - contain data (as a file) & also contain other znodes(as directories) •Znodes form a hierarchical namespace, and a natural way to build a membership list is to create a parent znode with the name of the group and child znodes with the names of the group members (servers)
  • 7. Page 7Classification: Restricted ZK data model •ZK maintains a hierarchical tree of nodes called znodes. A znode stores data and has a corresponding ACL(access list) •ZooKeeper is designed for coordination (which typically uses small datafiles), not high-volume data storage, so there is a limit of 1 MB on the amount of data that may be stored in any znode. •Data access is atomic •A write will replace all the data associated with a znode. A Write will either succeed or fail. ZooKeeper does not support an append operation
  • 8. Page 8Classification: Restricted ZK data model – node types •Znodes – ephemeral & persistent •A znode’s type is set at creation time and may not be changed later •An ephemeral znode is deleted by ZooKeeper when the creating client’s session ends •a persistent znode is not tied to the client’s session and is deleted only when explicitly deleted by a client (not necessarily the one that created it) •An ephemeral znode may not have children, not even ephemeral ones. •Even though ephemeral nodes are tied to a client session, they are visible to all clients (subject to their ACL policies, of course) •Ephemeral znodes are ideal for building applications that need to know when certain distributed resources are available
  • 9. Page 9Classification: Restricted ZK data model – sequence numbers •A sequential znode is given a sequence number by ZooKeeper as a part of its name •If a znode is created with the sequential flag set, then the value of a monotonically increasing counter (maintained by the parent znode) is appended to its name. •If a client asks to create a sequential znode with the name /a/b-, for example, the znode created may actually have the name /a/b-3. If, later on, another sequential znode with the name /a/b- is created, it will be given a unique name with a larger value of the counter—for example, /a/b-5 •Sequence numbers can be used to impose a global ordering on events in a distributed system and may be used by the client to infer the ordering. You can use this in Lock sevice
  • 10. Page 10Classification: Restricted ZK data model – Watches •Watches allow clients to get notifications when a znode changes in some way •Watches are set by operations on the ZooKeeper service and are triggered by other operations on the service •For example, a client might call the exists operation on a znode, placing a watch on it at the same time. If the znode doesn’t exist, the exists operation will return false. If, some time later, the znode is created by a second client, the watch is triggered, notifying the first client of the znode’s creation •Watchers are triggered only once