Apache ZooKeeper


Apache_ZooKeeper

Apache ZooKeeperは、クラウドアプリケーションの信頼性の高い分散調整のためのオープンソースサーバーです。これはApacheSoftwareFoundationのプロジェクトです。 Apache ZooKeeper 開発者
Apache Software Foundation
安定リリース
3.6.3 / 2021年4月13日 ; 5か月前  (2021-04-13)
リポジトリ
ZooKeeperリポジトリ
で書かれている Java オペレーティング・システム
クロスプラットフォーム
タイプ
分散コンピューティング
ライセンス
Apacheライセンス2.0
Webサイト
飼育係.apache .ORG
ZooKeeperのは、本質的に、サービスのための分散システム提供階層 キー値ストアを分散提供するために使用される、構成サービス、同期サービス、およびネーミングレジストリを(参照大規模な分散システムのためのユースケース)。 ZooKeeperはHadoopのサブプロジェクトでしたが、現在はそれ自体がトップレベルのApacheプロジェクトです。

コンテンツ
1 概要
2 建築
3 ユースケース
4 クライアントライブラリ
5 ZooKeeperを使用したApacheプロジェクト
6 も参照してください
7 参考文献
8 外部リンク

概要
ZooKeeperのアーキテクチャは、冗長サービスを通じて高可用性をサポートします。したがって、クライアントは、最初のリーダーが応答しなかったかどうかを別のZooKeeperリーダーに尋ねることができます。ZooKeeperノードは、ファイルシステムやツリーデータ構造のように、データを階層的な名前空間に格納します。クライアントはノードからの読み取りとノードへの書き込みが可能であり、このようにして共有構成サービスを利用できます。ZooKeeperは、更新が完全に順序付けられるアトミックブロードキャストシステムと見なすことができます。ZooKeeper Atomic Broadcast(ZAB)プロトコルは、システムの中核です。
ZooKeeperは、Yelp、Rackspace、Yahoo!などの企業で使用されています。、 Odnoklassniki、Reddit、 NetApp SolidFire、 Facebook、 Twitter 、eBay、およびSolrなどのオープンソース エンタープライズ検索システム。
ZooKeeperは、GoogleのChubbyロックサービス をモデルにしており、もともとはYahoo!で開発されました。ZooKeeperサーバーのローカルログファイルにステータスを保存することにより、ビッグデータクラスターで実行されているプロセスを合理化するため。これらのサーバーはクライアントマシンと通信して情報を提供します。ZooKeeperは、分散ビッグデータアプリケーションのデプロイ中に発生したバグを修正するために開発されました。
ApacheZooKeeperの主な機能のいくつかは次のとおりです。
信頼性の高いシステム:このシステムは、ノードに障害が発生しても機能し続けるため、非常に信頼性が
シンプルなアーキテクチャ:ZooKeeperのアーキテクチャは、プロセスの調整に役立つ共有階層名前空間があるため、非常にシンプルです。
高速処理:ZooKeeperは、「読み取りが支配的な」ワークロード(つまり、読み取りが書き込みよりもはるかに一般的であるワークロード)で特に高速です。
スケーラブル:ノードを追加することで、ZooKeeperのパフォーマンスを向上させることができます。

建築
ZooKeeperアーキテクチャに関するいくつかの一般的な用語:
ノード:クラスターにインストールされているシステム
ZNode:クラスター内の他のノードによってステータスが更新されるノード
クライアントアプリケーション:分散アプリケーションと対話するツール
サーバーアプリケーション:クライアントアプリケーションが共通のインターフェイスを使用して対話できるようにします
クラスター内のサービスは複製され、一連のサーバー(「アンサンブル」と呼ばれます)に格納されます。各サーバーは、状態のデータツリー全体と、永続的に格納されたトランザクションログとスナップショットを含むメモリ内データベースを維持します。複数のクライアントアプリケーションがサーバーに接続でき、各クライアントはTCP接続を維持して、要求とハートビートを送信し、応答を受信して​​、監視のためにイベントを監視します。

ユースケース
ZooKeeperの一般的な使用例は次のとおりです。
ネーミングサービス
構成管理
データ同期
リーダー選出
メッセージキュー
通知システム

クライアントライブラリ
ZooKeeperディストリビューションに含まれているクライアントライブラリに加えて、Apache CuratorやKazooなど、ZooKeeperの使用を容易にし、機能を追加したり、プログラミング言語を追加したりするサードパーティライブラリが多数用意されています。

ZooKeeperを使用したApacheプロジェクトApache Hadoop Apache Accumulo Apache HBase Apache Hive Apache Kafka Apache SolrApache Spark Apache NiFi Apache Druid
Apache Helix

も参照してください
icon"
 コンピュータプログラミングポータル
image
 無料のオープンソースソフトウェアポータル
Hadoop

参考文献
^ 「ApacheZooKeeper-リリース」。
^ 「ApacheZookeeper4」。
^ 「インデックス-ApacheZooKeeper-Apache SoftwareFoundation」。cwiki.apache.org 。
^ 「Zookeeperの概要」。
^ 「ZooKeeper / PoweredBy」。
^ 「なぜRedditは8月11日にダウンしたのか」。
^ 「5つの大きなDaaSの課題とそれらを克服する方法| NetAppニュースルーム」。NetAppNewsroom。2016-06-20 。
^ 「ロケーション認識配布:大規模なサーバーの構成」。Facebookコード。2018-07-19 。
^ 「TwitterのZooKeeper」。Twitterエンジニアリングブログ。2018-10-11 。
^ 「SolrCloud」。
^ バロウズ、マイク(2006)。「疎結合分散システムのためのぽっちゃりロックサービス」。オペレーティングシステムの設計と実装に関する第7回USENIXシンポジウム(OSDI)。
^ Chandra、Tushar Deepak; グリーゼマー、ロバート; レッドストーン、ジョシュア(2007)。「PaxosMadeLive-エンジニアリングの展望(2006年招待講演)」。GoogleResearch 。
^ 「Zookeeper」。

外部リンク
公式サイト