Apache Helix is a generic cluster management framework used for the automatic management of partitioned, replicated and distributed resources hosted on a cluster of nodes. Helix automates reassignment of resources in the face of node failure and recovery, cluster expansion, and reconfiguration. To understand Helix, you first need to understand cluster management. A distributed system typically runs on multiple nodes for the following reasons: scalability, fault tolerance, load balancing. Each...