Apache ZooKeeper

Apache ZooKeeper
Description de l'image Apache ZooKeeper logo.svg.

Informations
Développé par Apache Software FoundationVoir et modifier les données sur Wikidata
Première version [1]Voir et modifier les données sur Wikidata
Dernière version 3.9.2-0 ()[2]Voir et modifier les données sur Wikidata
Dépôt github.com/apache/zookeeperVoir et modifier les données sur Wikidata
Écrit en JavaVoir et modifier les données sur Wikidata
Environnement Machine virtuelle JavaVoir et modifier les données sur Wikidata
Type Projet de la fondation Apache (d)
Bases de données clé-valeurVoir et modifier les données sur Wikidata
Licence Licence ApacheVoir et modifier les données sur Wikidata
Site web zookeeper.apache.orgVoir et modifier les données sur Wikidata

modifier - modifier le code - voir Wikidata (aide) Consultez la documentation du modèle

Apache ZooKeeper est un logiciel open source de la Apache Software Foundation. Il s'agit d'un logiciel de gestion de configuration pour systèmes distribués. ZooKeeper était un sous projet de Hadoop mais il est désormais un projet top-level à part entière.

L'architecture de ZooKeeper supporte une haute disponibilité grâce à des services redondants. Les clients peuvent ainsi interroger un autre leader ZooKeeper si le premier ne répond pas. Les nœuds de ZooKeeper stockent leurs données dans un espace de noms hiérarchique, tout comme un système de fichiers ou une structure de données arborescente. Les clients peuvent lire et écrire dans les nœuds et ainsi avoir un service de configuration partagée. Les mises à jour sont totalement ordonnées[3].

ZooKeeper est utilisé par des sociétés comme Rackspace, Yahoo![4], Odnoklassniki[5] et eBay ainsi que des systèmes de recherche open source comme Solr[6].

Architecture Apache ZooKeeper

Voici quelques termes courant dans l'architecture Zookeeper:

  • Node: Les systèmes installés sur le cluster.
  • ZNode: les nœuds dont le statut est mis à jour par d'autres nœuds du cluster.
  • Client Applications: Les outils qui interagissent avec les applications distribuées
  • Server Applications: Permet aux applications clientes d'interagir à l'aide d'une interface commune.

Les services du cluster sont répliqués et stockés sur un ensemble de serveurs (appelés "ensemble"), chacun d'entre eux maintiennent une base de données en mémoire contenant l'arbre d'état complet des données ainsi qu'un journal des transactions et des snapshots stockés en permanence. Plusieurs applications client peuvent se connecter à un serveur, et chaque client maintient une connexion TCP par laquelle il envoie des requêtes et des TIC et reçoit des réponses et surveille les événements[7].

Cas d'utilisation classique

Bibliothèques cliente

En plus des bibliothèques clientes incluses dans la distribution ZooKeeper, un certain nombre de bibliothèques tierces telles qu'Apache Curator et Kazoo sont disponibles qui facilitent l'utilisation de ZooKeeper, ajoutent des fonctionnalités supplémentaires.

Projets Apache utilisant ZooKeeper

etc.

Articles connexes

  • Hadoop
  • Catégorie:Écosystème Hadoop

Références

  1. « https://projects.apache.org/json/projects/zookeeper.json » (consulté le )
  2. « Release 3.9.2-0 », (consulté le )
  3. « Zookeeper Overview »
  4. « ZooKeeper/Powered By »
  5. « Presentation by Senior Engineer »
  6. « SolrCloud »
  7. « Zookeeper »

Liens externes

  • Site officiel
  • Article in highscalability.com
  • Software Development Times article of ZooKeeper moving to Apache
  • Eclipse ECF Discovery based on Apache ZooKeeper


  • (en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Apache ZooKeeper » (voir la liste des auteurs).
v · m
Projets principaux ASF logo
Incubateur Apache
en cours d'incubation
incubation finie
Autres projets
Projets en fin de vie
Personnalités
Divers
v · m
Méthodes
Services
Exploration de données
Outils
Organismes
  • icône décorative Portail du logiciel
  • icône décorative Portail des données