SlideShare a Scribd company logo
1 of 16
Apache Zookeeper 101
By TungQD
AGENDA
- What is Zookeeper
- Zookeeper Architecture
- Zookeeper Data Model
- Leader Election
- Demo
- FAQ
ZooKeeper is a centralized
service for maintaining
configuration information,
naming, providing distributed
synchronization, and providing
group services.
WHO AM I?
What problems
can it solve?
● Group membership
● Distributed data structures
● Reliable configuration service
● Distributed workflow
What is a Distributed System?
“A distributed system consists of multiple
computers that communicate through a computer
network and interact with each other to achieve a
common goal.”
-Wikipedia-
A
R
C
H
I
T
E
C
T
U
R
E
The Zookeeper Data Model
D
A
T
A
M
O
D
E
L
ZNODE
Ephemeral Znodes:
Ephemeral Znodes are
deleted when the creating
client's session ends.
Ephemeral znodes also
cannot have any child
znodes attached to it.
Persistent znodes:
Persistent znodes on the
other hand,can have child
znodes and are only deleted
by any client, even the one
that wasn’t the creator,
subject to the znode’s
access control list.
Sequential znodes:
Sequential znode is given a
10-digit number in a
numerical order at the end of
its name. Let’s say client1
created a sznode1. In the
ZooKeeper server, the
sznode1 will be named like
sznode0000000001
➤ Creating a Znode
create -<options> /<znode-name> <znode-data>
Ex: Persistent (Default): create /znode mydata
Ephemeral: create –e /eznode mydata
Sequential: create –s /sznode mydata
➤ Deleting a Znode
delete /<znode>
rmr /<znode-with-child>
➤ Reading a Znode Data
get /<znode-name>
➤ (Re) Writing a Znode Data
set /<znode-name> <new-data>
Zookeeper Command Line Interface (CLI)
ZNode Watches
● Clients can set watches on znodes:
o NodeChildrenChanged
o NodeCreated
o NodeDataChanged
o NodeDeleted
● Changes to a znode trigger the watch and ZooKeeper sends the client a notification.
● Watches are one time triggers.
● Watches are always ordered.
● Client sees watched event before new znode data.
● Client should handle cases of latency between getting the event and sending a new
request to get a watch.
ZooKeeper - Consistency
Guarantees
➤ Sequential Consistency
➤ Atomicity
➤ Single System Image
➤ Reliability
➤ Timeliness
L
E
A
D
E
R
E
L
E
C
T
I
O
N
Zookeeper
Management
tools
- Netflix Exhibitor
- Zookeeper UI(web)
- Zookeeper GUI (desktop -
Windows)
- ZK-web
- Zoo Navigator
Who uses Zookeepers?
COMPANIES:
1. Yahoo
2. Netflix
3. LinkedIn
4. Rackspace
5. Zynga
And many more….
PROJECTS IN FOSS:
1. Apache Map/Reduce (Yarn)
2. Apache Hbase
3. Apache Solr
4. Neo4j
5. Katta
And many more….
DEMO & FAQ
THANK YOU

More Related Content

What's hot

Hive + Tez: A Performance Deep Dive
Hive + Tez: A Performance Deep DiveHive + Tez: A Performance Deep Dive
Hive + Tez: A Performance Deep Dive
DataWorks Summit
 
Scaling Hadoop at LinkedIn
Scaling Hadoop at LinkedInScaling Hadoop at LinkedIn
Scaling Hadoop at LinkedIn
DataWorks Summit
 
Hadoop Architecture | HDFS Architecture | Hadoop Architecture Tutorial | HDFS...
Hadoop Architecture | HDFS Architecture | Hadoop Architecture Tutorial | HDFS...Hadoop Architecture | HDFS Architecture | Hadoop Architecture Tutorial | HDFS...
Hadoop Architecture | HDFS Architecture | Hadoop Architecture Tutorial | HDFS...
Simplilearn
 

What's hot (20)

PySpark in practice slides
PySpark in practice slidesPySpark in practice slides
PySpark in practice slides
 
Hadoop Security Architecture
Hadoop Security ArchitectureHadoop Security Architecture
Hadoop Security Architecture
 
Introduction to Hadoop and Hadoop component
Introduction to Hadoop and Hadoop component Introduction to Hadoop and Hadoop component
Introduction to Hadoop and Hadoop component
 
What Is Hadoop | Hadoop Tutorial For Beginners | Edureka
What Is Hadoop | Hadoop Tutorial For Beginners | EdurekaWhat Is Hadoop | Hadoop Tutorial For Beginners | Edureka
What Is Hadoop | Hadoop Tutorial For Beginners | Edureka
 
Zookeeper Introduce
Zookeeper IntroduceZookeeper Introduce
Zookeeper Introduce
 
A Thorough Comparison of Delta Lake, Iceberg and Hudi
A Thorough Comparison of Delta Lake, Iceberg and HudiA Thorough Comparison of Delta Lake, Iceberg and Hudi
A Thorough Comparison of Delta Lake, Iceberg and Hudi
 
Introduction to Spark Internals
Introduction to Spark InternalsIntroduction to Spark Internals
Introduction to Spark Internals
 
Apache Spark Data Source V2 with Wenchen Fan and Gengliang Wang
Apache Spark Data Source V2 with Wenchen Fan and Gengliang WangApache Spark Data Source V2 with Wenchen Fan and Gengliang Wang
Apache Spark Data Source V2 with Wenchen Fan and Gengliang Wang
 
Intro to HBase
Intro to HBaseIntro to HBase
Intro to HBase
 
Hadoop HDFS Concepts
Hadoop HDFS ConceptsHadoop HDFS Concepts
Hadoop HDFS Concepts
 
Introduction to HDFS
Introduction to HDFSIntroduction to HDFS
Introduction to HDFS
 
Hive + Tez: A Performance Deep Dive
Hive + Tez: A Performance Deep DiveHive + Tez: A Performance Deep Dive
Hive + Tez: A Performance Deep Dive
 
Hudi architecture, fundamentals and capabilities
Hudi architecture, fundamentals and capabilitiesHudi architecture, fundamentals and capabilities
Hudi architecture, fundamentals and capabilities
 
Introduction to Spark with Python
Introduction to Spark with PythonIntroduction to Spark with Python
Introduction to Spark with Python
 
Scaling Hadoop at LinkedIn
Scaling Hadoop at LinkedInScaling Hadoop at LinkedIn
Scaling Hadoop at LinkedIn
 
Learn Hadoop Administration
Learn Hadoop AdministrationLearn Hadoop Administration
Learn Hadoop Administration
 
Compression Options in Hadoop - A Tale of Tradeoffs
Compression Options in Hadoop - A Tale of TradeoffsCompression Options in Hadoop - A Tale of Tradeoffs
Compression Options in Hadoop - A Tale of Tradeoffs
 
How to understand and analyze Apache Hive query execution plan for performanc...
How to understand and analyze Apache Hive query execution plan for performanc...How to understand and analyze Apache Hive query execution plan for performanc...
How to understand and analyze Apache Hive query execution plan for performanc...
 
Hadoop Internals
Hadoop InternalsHadoop Internals
Hadoop Internals
 
Hadoop Architecture | HDFS Architecture | Hadoop Architecture Tutorial | HDFS...
Hadoop Architecture | HDFS Architecture | Hadoop Architecture Tutorial | HDFS...Hadoop Architecture | HDFS Architecture | Hadoop Architecture Tutorial | HDFS...
Hadoop Architecture | HDFS Architecture | Hadoop Architecture Tutorial | HDFS...
 

Similar to Apache zookeeper 101

Cassandra Tools and Distributed Administration (Jeffrey Berger, Knewton) | C*...
Cassandra Tools and Distributed Administration (Jeffrey Berger, Knewton) | C*...Cassandra Tools and Distributed Administration (Jeffrey Berger, Knewton) | C*...
Cassandra Tools and Distributed Administration (Jeffrey Berger, Knewton) | C*...
DataStax
 
Zookeeper big sonata
Zookeeper  big sonataZookeeper  big sonata
Zookeeper big sonata
Anh Le
 
Windows内核技术介绍
Windows内核技术介绍Windows内核技术介绍
Windows内核技术介绍
jeffz
 

Similar to Apache zookeeper 101 (20)

Apache zookeeper seminar_trinh_viet_dung_03_2016
Apache zookeeper seminar_trinh_viet_dung_03_2016Apache zookeeper seminar_trinh_viet_dung_03_2016
Apache zookeeper seminar_trinh_viet_dung_03_2016
 
Introduction to apache zoo keeper
Introduction to apache zoo keeper Introduction to apache zoo keeper
Introduction to apache zoo keeper
 
Winter is coming? Not if ZooKeeper is there!
Winter is coming? Not if ZooKeeper is there!Winter is coming? Not if ZooKeeper is there!
Winter is coming? Not if ZooKeeper is there!
 
MongoDB World 2018: Transactions and Durability: Putting the “D” in ACID
MongoDB World 2018: Transactions and Durability: Putting the “D” in ACIDMongoDB World 2018: Transactions and Durability: Putting the “D” in ACID
MongoDB World 2018: Transactions and Durability: Putting the “D” in ACID
 
Cassandra Tools and Distributed Administration (Jeffrey Berger, Knewton) | C*...
Cassandra Tools and Distributed Administration (Jeffrey Berger, Knewton) | C*...Cassandra Tools and Distributed Administration (Jeffrey Berger, Knewton) | C*...
Cassandra Tools and Distributed Administration (Jeffrey Berger, Knewton) | C*...
 
Zookeeper Architecture
Zookeeper ArchitectureZookeeper Architecture
Zookeeper Architecture
 
Zookeeper big sonata
Zookeeper  big sonataZookeeper  big sonata
Zookeeper big sonata
 
Bridging the Gap
Bridging the GapBridging the Gap
Bridging the Gap
 
Go Hack Yourself - 10 Pen Test Tactics for Blue Teamers
Go Hack Yourself - 10 Pen Test Tactics for Blue TeamersGo Hack Yourself - 10 Pen Test Tactics for Blue Teamers
Go Hack Yourself - 10 Pen Test Tactics for Blue Teamers
 
Beyond php it's not (just) about the code
Beyond php   it's not (just) about the codeBeyond php   it's not (just) about the code
Beyond php it's not (just) about the code
 
Device Identification & Driver Management (DIDM)
Device Identification & Driver Management (DIDM)Device Identification & Driver Management (DIDM)
Device Identification & Driver Management (DIDM)
 
Bridging the Gap: Lessons in Adversarial Tradecraft
Bridging the Gap: Lessons in Adversarial TradecraftBridging the Gap: Lessons in Adversarial Tradecraft
Bridging the Gap: Lessons in Adversarial Tradecraft
 
Beyond php - it's not (just) about the code
Beyond php - it's not (just) about the codeBeyond php - it's not (just) about the code
Beyond php - it's not (just) about the code
 
Windows内核技术介绍
Windows内核技术介绍Windows内核技术介绍
Windows内核技术介绍
 
WebApps vs Blockchain dApps (SmartContracts): tools, vulns and standards
WebApps vs Blockchain dApps (SmartContracts): tools, vulns and standardsWebApps vs Blockchain dApps (SmartContracts): tools, vulns and standards
WebApps vs Blockchain dApps (SmartContracts): tools, vulns and standards
 
Intro to Databases
Intro to DatabasesIntro to Databases
Intro to Databases
 
20120116 - NvMgr
20120116 - NvMgr20120116 - NvMgr
20120116 - NvMgr
 
how-to-bypass-AM-PPL
how-to-bypass-AM-PPLhow-to-bypass-AM-PPL
how-to-bypass-AM-PPL
 
Monitoring - deeper dive
Monitoring  - deeper diveMonitoring  - deeper dive
Monitoring - deeper dive
 
SVCC-2014
SVCC-2014SVCC-2014
SVCC-2014
 

Recently uploaded

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Recently uploaded (20)

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 

Apache zookeeper 101

  • 2. AGENDA - What is Zookeeper - Zookeeper Architecture - Zookeeper Data Model - Leader Election - Demo - FAQ
  • 3. ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services. WHO AM I?
  • 4. What problems can it solve? ● Group membership ● Distributed data structures ● Reliable configuration service ● Distributed workflow
  • 5. What is a Distributed System? “A distributed system consists of multiple computers that communicate through a computer network and interact with each other to achieve a common goal.” -Wikipedia-
  • 7. The Zookeeper Data Model D A T A M O D E L
  • 8. ZNODE Ephemeral Znodes: Ephemeral Znodes are deleted when the creating client's session ends. Ephemeral znodes also cannot have any child znodes attached to it. Persistent znodes: Persistent znodes on the other hand,can have child znodes and are only deleted by any client, even the one that wasn’t the creator, subject to the znode’s access control list. Sequential znodes: Sequential znode is given a 10-digit number in a numerical order at the end of its name. Let’s say client1 created a sznode1. In the ZooKeeper server, the sznode1 will be named like sznode0000000001
  • 9. ➤ Creating a Znode create -<options> /<znode-name> <znode-data> Ex: Persistent (Default): create /znode mydata Ephemeral: create –e /eznode mydata Sequential: create –s /sznode mydata ➤ Deleting a Znode delete /<znode> rmr /<znode-with-child> ➤ Reading a Znode Data get /<znode-name> ➤ (Re) Writing a Znode Data set /<znode-name> <new-data> Zookeeper Command Line Interface (CLI)
  • 10. ZNode Watches ● Clients can set watches on znodes: o NodeChildrenChanged o NodeCreated o NodeDataChanged o NodeDeleted ● Changes to a znode trigger the watch and ZooKeeper sends the client a notification. ● Watches are one time triggers. ● Watches are always ordered. ● Client sees watched event before new znode data. ● Client should handle cases of latency between getting the event and sending a new request to get a watch.
  • 11. ZooKeeper - Consistency Guarantees ➤ Sequential Consistency ➤ Atomicity ➤ Single System Image ➤ Reliability ➤ Timeliness
  • 13. Zookeeper Management tools - Netflix Exhibitor - Zookeeper UI(web) - Zookeeper GUI (desktop - Windows) - ZK-web - Zoo Navigator
  • 14. Who uses Zookeepers? COMPANIES: 1. Yahoo 2. Netflix 3. LinkedIn 4. Rackspace 5. Zynga And many more…. PROJECTS IN FOSS: 1. Apache Map/Reduce (Yarn) 2. Apache Hbase 3. Apache Solr 4. Neo4j 5. Katta And many more….