Developing Distributed Applications Using ZooKeeper
ZooKeeper is a coordination service that provides sets of tools to help manage distributed applications. Building distributed applications comes with challenges that are intrinsic to distributed applications itself, which includes maintaining configuration information, groups, naming, and synchronization.
ZooKeeper allows developers to handle these challenges to create robust distributed applications. ZooKeeper comes with a set of guarantees: sequential consistency, atomicity, single system image, reliability, and timeliness. This course will help you learn how to use ZooKeeper to keep your Big Data applications running smoothly despite the challenges of operating in a complex distributed environment.
What will I get after passing this course?
You will receive a completion certificate.
This course is a component required to receive the IBM Explorer – Big Data Administration badge (upon completion of all badge criteria).
COURSE SYLLABUS
Lesson 1 – Introduction to ZooKeeper
Describe distributed systems and the purpose of Zookeeper
Describe the ZooKeeper consistency guarantees
Describe the basics of Zookeeper components
Describe the application of Zookeeper in Hadoop ecosystem and usage in other real-world scenarios.
Lesson 2 – The ZooKeeper Data Model
Understand ZooKeeper Components in detail
Use ZooKeeper CLI to run commands and interact with ZooKeeper service
Lesson 3 – Programming and Advanced Topics
Manage ZooKeeper’s ACL and authentication to control permissions to the znodes
Handle the various failure modes of ZooKeeper
List the various ZooKeeper bindings and API
Use the Java API to create a ZooKeeper application
Use various ZooKeeper clients to work with ZooKeeper
Understand how ZooKeeper works with ZooKeeper Atomic Broadcast (zab)
Maintain your ZooKeeper environment with ZooKeeper administration
GENERAL INFORMATION
This course is self-paced.
It can be taken at any time.
It can be taken as many times as you wish.
Requirements
Hadoop Foundations I
Recommended skills prior to taking this course
Basic knowledge of operating systems (UNIX/Linux)
Know how to work with the Eclipse IDE