真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

zookeeper的操作與應(yīng)用場景是什么

本篇文章為大家展示了zookeeper的操作與應(yīng)用場景是什么,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

專注于為中小企業(yè)提供網(wǎng)站設(shè)計制作、成都做網(wǎng)站服務(wù),電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)祁東免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。

zookeeper的操作與應(yīng)用場景是什么Zookeeper作為一個分布式協(xié)調(diào)系統(tǒng)提供了一項基本服務(wù):分布式鎖服務(wù),分布式鎖是分布式協(xié)調(diào)技術(shù)實現(xiàn)的核心內(nèi)容。像配置管理、任務(wù)分發(fā)、組服務(wù)、分布式消息隊列、分布式通知/協(xié)調(diào)等,這些應(yīng)用實際上都是基于這項基礎(chǔ)服務(wù)由用戶自己摸索出來的。

1.Zookeeper在大數(shù)據(jù)系統(tǒng)中的常見應(yīng)用

zookeeper作為分布式協(xié)調(diào)系統(tǒng)在大數(shù)據(jù)領(lǐng)域非常常用,它是一個很好的中心化管理工具。下面舉幾個常見的應(yīng)用場景。

1.1.HDFS/YARN

  • HA機制(分布式鎖的應(yīng)用):Master掛掉之后迅速切換到slave節(jié)點。

1.2.hbase

  • HA機制 :類似HDFS/YARN。

  • 配置管理 :client需要讀寫hbase的數(shù)據(jù)首先都是連到ZK讀取root表,獲得meta表所在的region,最后找到數(shù)據(jù)所在位置。

  • 任務(wù)發(fā)布:regionserver掛了一臺,master需要重新分配region,會把任務(wù)放在zookeeper等regionserver來獲取

1.3.kafka

  • 配置管理:broker會在zookeeper注冊并保持相關(guān)的元數(shù)據(jù)(topic,partition信息等)更新

  • 任務(wù)分配:給topic分配partitions和replication

2.Zookeeper有哪些操作特性

2.1.數(shù)據(jù)結(jié)構(gòu)

zookeeper的操作與應(yīng)用場景是什么

ZooKeeper命名空間中的Znode,兼具文件和目錄兩種特點。既像文件一樣維護著數(shù)據(jù)、元信息、ACL、時間戳等數(shù)據(jù)結(jié)構(gòu),又像目錄一樣可以作為路徑標(biāo)識的一部分。 每個Znode由3部分組成:

  • stat狀態(tài)信息:描述該Znode的版本, 權(quán)限等信息

  • data:與該Znode關(guān)聯(lián)的數(shù)據(jù)(配置文件信息、狀態(tài)信息、匯集位置),數(shù)據(jù)大小至多1M

  • children:該Znode下的子節(jié)點

ZooKeeper中的每個節(jié)點存儲的數(shù)據(jù)要被原子性的操作。也就是說讀操作將獲取與節(jié)點相關(guān)的所有數(shù)據(jù),寫操作也將替換掉節(jié)點的所有數(shù)據(jù)。另外,每一個節(jié)點都擁有自己的ACL(訪問控制列表),這個列表規(guī)定了用戶的權(quán)限,即限定了特定用戶對目標(biāo)節(jié)點可以執(zhí)行的操作。

2.2.watch機制

ZooKeeper可以為所有的讀操作設(shè)置watch,包括:exists()、getChildren()及getData()。當(dāng)節(jié)點狀態(tài)發(fā)生改變時(Znode的增、刪、改)將會觸發(fā)watch所對應(yīng)的操作。當(dāng)watch被觸發(fā)時,ZooKeeper將會向客戶端發(fā)送且僅發(fā)送一條通知,因為watch只能被觸發(fā)一次,這樣可以減少網(wǎng)絡(luò)流量。

  • 數(shù)據(jù)watch(data watches):getData和exists負責(zé)設(shè)置數(shù)據(jù)watch

  • 孩子watch(child watches):getChildren負責(zé)設(shè)置孩子watch

2.3.節(jié)點類型

ZooKeeper中的節(jié)點有兩種,分別為臨時節(jié)點和永久節(jié)點(還可再分為有序無序)。節(jié)點的類型在創(chuàng)建時即被確定,并且不能改變。

  • 臨時節(jié)點:該節(jié)點的生命周期依賴于創(chuàng)建它們的會話。一旦會話(Session)結(jié)束,臨時節(jié)點將被自動刪除,當(dāng)然可以也可以手動刪除。雖然每個臨時的Znode都會綁定到一個客戶端會話,但他們對所有的客戶端還是可見的。另外,ZooKeeper的臨時節(jié)點不允許擁有子節(jié)點。(分布式隊列)

  • 永久節(jié)點:該節(jié)點的生命周期不依賴于會話,并且只有在客戶端顯示執(zhí)行刪除操作的時候,他們才能被刪除。

3.這些應(yīng)用是如何通過這些特性實現(xiàn)的

3.1.HA機制:

兩種方式:

  • 創(chuàng)建兩個或多個有序臨時節(jié)點,永遠把最小值當(dāng)做master

  • 創(chuàng)建臨時節(jié)點的為master,多個slave會watch這個節(jié)點

3.2.配置管理:

存儲集群元數(shù)據(jù)提供給client使用,體現(xiàn)在比如需要對HBase和Kafka操作時,都會直接連到zookeeper,zookeeper記錄了數(shù)據(jù)存儲的位置,存活的節(jié)點等元數(shù)據(jù)信息。

3.3.任務(wù)發(fā)布:

Master要監(jiān)視/works和/tasks兩個永久節(jié)點,以便能感知到由哪些slave當(dāng)前可用,當(dāng)前有新任務(wù)需要分配。 分配過程:在/assign下創(chuàng)建當(dāng)前可用的workA,找到需要分配的taskA,創(chuàng)建/assign/workA/taskA

zookeeper還有很多類似的應(yīng)用大多都是基于上面的特性??偟膩碚f,zk只是一個提供了一些特性的系統(tǒng),用戶根據(jù)這些特性自己定義了它的用法。

上述內(nèi)容就是zookeeper的操作與應(yīng)用場景是什么,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


文章名稱:zookeeper的操作與應(yīng)用場景是什么
本文URL:http://weahome.cn/article/jsidjo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部