Zookeeper Benefits and Limitations | ZooKeeper Pros & Cons


1. Zookeeper Benefits and Limitations

After learning introduction and features of Zookeeper, you have understood Zookeeper very well. Now, in this ZooKeeper tutorial, we will discuss ZooKeeper benefits and limitations. There are several features which are very beneficial for users. At the same place, there are some limitations also, which we must know before working on it. 

So, let’s learn Zookeeper Benefits and Limitations individually.

Benefits and limitations of ZooKeeper

Zookeeper Benefits and Limitations | ZooKeeper Pros & Cons

Let’s explore Applications of ZooKeeper

2. Benefits of ZooKeeper

Here is the list of various Advantages of using Apache ZooKeeper:

Zookeeper Benefits and Limitations

Benefits and Limitations of ZooKeeper – Pros of ZooKeeper

a. The Simple Distributed Coordination Process

The coordination process between all nodes in Zookeeper is very simple.

b. Synchronization

Working of Zookeeper is highly synchronized, that means there is mutual exclusion as well as co-operation between server processes. Basically, this synchronization helps in Apache HBase for the purpose of configuration management.

c. Ordered Messages

Zookeeper track with a number, by denoting its order with the stamping of each update, through all the messages are ordered here.

d. Serialization

According to specific rules, Zookeeper encodes the data. Additionally, it ensures that our application is running consistently or not. Though,  in MapReduce, we use this method (Serialization) to coordinate queue to execute running threads.

e. Speed

In the cases where ‘Reads’ are more common, it runs with the ratio of 10:1, which is great speed.

f. Scalability

Furthermore, it is possible to intensify the performance of Zookeeper by deploying more machines.

g. How is the Order Beneficial?

As we know, Messages in Zookeeper is in perfect order. So, in order to implement higher-level abstractions that order is required. That’s how the order is beneficial for us.

h. ZooKeeper is Fast

In the cases of “read-dominant” workloads, Apache Zookeeper works very Fast.

i. Reliability

Also, we can say that Zookeeper is very reliable. It is because as soon as it applies the update until a client overwrites the update, that will persist from that time forward.

j. Atomicity

There are only two cases possible, either data transfer succeed or rather fail completely. Though there is no case of the partial transaction.

k. Timeliness

In simple words, up-to-date, that means in some definite time amount, system’s client’s view is up-to-date or on time.

3. Limitations of Zookeeper

Since, every coin have two sides, in the same way after so many advantages of Zookeeper there are few disadvantages also. So, here is the list of several Cons of Zookeeper:

Zookeeper Benefits and Limitations

Limitations of Zookeeper

a. Adding New ZooKeeper Servers Can Lead to Data Loss

In existing server, Data Loss occurs at the time when the number of new ZooKeeper servers exceeds the number which already exists in the ZooKeeper service. At the same time, the Start command is issued to the ZooKeeper service, and the new servers can form a quorum.

b. No Migration

Without user intervention, the ZooKeeper server cannot be migrated from version 3.4 to 3.3, then back to 3.4.

c. Node Count

Make sure that only 3 or 5 ZooKeeper nodes are allowed.

d. Rack-Aware Replication

Currently, it does not supports Rack placement and awareness.

e. Scaling In

The service does not support reducing the number of pods, to prevent accidental data loss.

f. Disk Changes

Also, the service does not support changing volume requirements after initial deployment, to prevent accidental data loss from reallocation.

g. Virtual Networks

One more loss is the service may not be switched to host networking without a full re-installation when the service is deployed on a virtual network. In addition, for attempting to switch from host to virtual networking their is the same case.

h. Kerberos

On virtual networks, it does not support enabling Kerberos, currently.

i. Limited Support

There is such limited support for cross-cluster scenarios. However, no CP system will support cross-cluster all the way. Though we can say consul seems to do better at this.

j. Complex

Moreover, we can say for the faint of heart, ZooKeeper is not right. Since it pretty heavy that’s why also it will require us to maintain a fairly large stack.

So, this was all in Apache ZooKeeper Pros and Cons. Hope you like our explanation.

4. Conclusion: Zookeeper Benefits and Limitations

Hence, we have seen all the Zookeeper Benefits and Limitations in detail. Hence, these pros and cons of ZooKeeper will definitely help while working on Zookeeper. Hope this helps.  

For reference