Dezvoltat de | Apache Software Foundation |
---|---|
Prima versiune | 6 februarie 2011 |
Ultima versiune |
3.5.5 (3 mai 2019) 3.5.6 (16 octombrie 2019) |
Versiune avansată | 3.5.6-rc1 (20 septembrie 2019) |
Depozit | gitbox.apache.org/repos/asf?p=zookeeper.git , github.com/apache/zookeeper.git și gitbox.apache.org/repos/asf/zookeeper.git |
Scris in | Java |
Mediu inconjurator | Mașină virtuală Java |
Tip |
Apache Foundation Project ( d ) Cheie - bază de date cu valori ( en ) |
Licență | Licență Apache |
Site-ul web | zookeeper.apache.org |
Apache ZooKeeper este un software open source de la Apache Software Foundation . Este un software de gestionare a configurației pentru sisteme distribuite. ZooKeeper este un subproiect al Hadoop, dar este un proiect complet de nivel superior .
Arhitectura ZooKeeper acceptă disponibilitatea ridicată prin servicii redundante. Acest lucru permite clienților să interogheze un alt lider ZooKeeper dacă primul nu răspunde. Nodurile ZooKeeper își stochează datele într-un spațiu de nume ierarhic, la fel ca un sistem de fișiere sau o structură de date în arbore. Clienții pot citi și scrie pe noduri și astfel au un serviciu de configurare partajat. Actualizările sunt total ordonate.
ZooKeeper este utilizat de companii precum Rackspace, Yahoo! , Odnoklassniki și eBay, precum și sisteme de căutare open source precum Solr .
Iată câțiva termeni obișnuiți în arhitectura Zookeeper:
Serviciile cluster sunt replicate și stocate pe un set de servere (numite „seturi”), fiecare dintre acestea menținând o bază de date în memorie care conține arborele complet al stării de date, precum și un jurnal de tranzacții și instantanee stocate permanent. Mai multe aplicații client se pot conecta la un server și fiecare client menține o conexiune TCP prin care trimite cereri și TIC-uri și primește răspunsuri și monitorizează evenimente.
În plus față de bibliotecile client incluse în distribuția ZooKeeper, sunt disponibile o serie de biblioteci terțe, cum ar fi Apache Curator și Kazoo, care fac ZooKeeper mai ușor de utilizat, adăugând funcționalități suplimentare.
etc.