Definition

Apache ZooKeeper

ZooKeeper est une API open source qui permet la synchronisation de processus distribués sur de grands systèmes, afin que tous les clients émettant des demandes reçoivent des données homogènes.

Sous-projet d'Hadoop, le service ZooKeeper est mis à disposition par un cluster de serveurs afin d'éviter tout point de défaillance. ZooKeeper utilise un protocole de consensus distribué pour identifier le noeud de son service qui sera dominant à un moment donné.

Ce noeud dominant – ou leader – affecte un horodatage à chacune des mises à jour afin de les classer. Une fois qu'une majorité de noeuds a accusé réception d'une mise à jour horodatée, le leader peut déclarer un quorum, signifiant ainsi que toute donnée incluse dans la mise à jour peut être coordonnée avec les éléments du Data Store. Le principe du quorum garantit que le service renvoie systématiquement des réponses homogènes.

Selon le wiki des développeurs Hadoop, le service tire son nom de ZooKeeper (gardien de zoo) du fait que « coordonner des services de distribution s'apparente à la gestion d'un zoo ».

Cette définition a été mise à jour en mars 2016

Pour approfondir sur Big Data et Data lake