[發(fā)明專利]一種Kafka的分區(qū)擴(kuò)充方法、裝置、存儲(chǔ)介質(zhì)和計(jì)算機(jī)設(shè)備在審
| 申請?zhí)枺?/td> | 202011570100.X | 申請日: | 2020-12-26 |
| 公開(公告)號(hào): | CN112631776A | 公開(公告)日: | 2021-04-09 |
| 發(fā)明(設(shè)計(jì))人: | 王歡;張萌;穆小亮;曹斌;滿運(yùn)峰;田程 | 申請(專利權(quán))人: | 中國農(nóng)業(yè)銀行股份有限公司 |
| 主分類號(hào): | G06F9/50 | 分類號(hào): | G06F9/50 |
| 代理公司: | 北京集佳知識(shí)產(chǎn)權(quán)代理有限公司 11227 | 代理人: | 張建 |
| 地址: | 100005 北*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 kafka 分區(qū) 擴(kuò)充 方法 裝置 存儲(chǔ) 介質(zhì) 計(jì)算機(jī) 設(shè)備 | ||
本發(fā)明公開了一種Kafka的分區(qū)擴(kuò)充方法、裝置、存儲(chǔ)介質(zhì)和計(jì)算機(jī)設(shè)備,可以確定Kafka中的待進(jìn)行分區(qū)擴(kuò)充的主題,獲得主題的當(dāng)前分區(qū)在Kafka的節(jié)點(diǎn)中的副本分布信息,獲得Kafka的節(jié)點(diǎn)的當(dāng)前負(fù)載信息,根據(jù)獲得的副本分布信息和當(dāng)前負(fù)載信息,確定主題的待擴(kuò)充分區(qū)的副本部署方案,按照副本部署方案,在Kafka的節(jié)點(diǎn)中部署待擴(kuò)充分區(qū)的副本,以對主題進(jìn)行待擴(kuò)充分區(qū)的擴(kuò)充。本發(fā)明可以將副本部署至當(dāng)前負(fù)載值較低且副本分布合理的節(jié)點(diǎn)中,可以避免將副本部署至負(fù)載過高或副本分布不合理的節(jié)點(diǎn)中,可以有效降低各節(jié)點(diǎn)中的負(fù)載分布不均衡程度和數(shù)據(jù)不平衡程度,從而可以降低各節(jié)點(diǎn)間的資源消耗不均衡程度,提高對節(jié)點(diǎn)的資源利用率。
技術(shù)領(lǐng)域
本發(fā)明涉及Kafka技術(shù)領(lǐng)域,尤其涉及一種Kafka的分區(qū)擴(kuò)充方法、裝置、存儲(chǔ)介質(zhì)和計(jì)算機(jī)設(shè)備。
背景技術(shù)
Kafka是一種高吞吐量的分布式發(fā)布訂閱消息系統(tǒng),通常可以應(yīng)用在大數(shù)據(jù)領(lǐng)域。Kafka可以設(shè)置有多個(gè)主題,每個(gè)主題下可以設(shè)置有多個(gè)分區(qū),一個(gè)分區(qū)可以設(shè)置有一個(gè)主副本和多個(gè)從副本。其中,一個(gè)主題的各個(gè)副本可以分布在Kafka集群的各個(gè)節(jié)點(diǎn)中。
隨著數(shù)據(jù)量的增多,現(xiàn)有技術(shù)可以通過對Kafka的主題進(jìn)行分區(qū)的擴(kuò)充,以滿足消費(fèi)者對于數(shù)據(jù)的消費(fèi)需求,提高消費(fèi)對于數(shù)據(jù)消費(fèi)的并發(fā)數(shù)。其中,在對待進(jìn)行分區(qū)擴(kuò)充的主題進(jìn)行分區(qū)擴(kuò)充時(shí),可以先行確定待擴(kuò)充分區(qū)的副本數(shù)量,之后再將擴(kuò)充的分區(qū)的各副本分別部署到Kafka集群的節(jié)點(diǎn)中。
但是,現(xiàn)有技術(shù)在將擴(kuò)充的分區(qū)的各副本分別部署到Kafka集群的節(jié)點(diǎn)時(shí),通常是將各副本隨機(jī)部署到Kafka集群的一個(gè)或多個(gè)節(jié)點(diǎn)中,可能導(dǎo)致待進(jìn)行分區(qū)擴(kuò)充的主題的所有副本在相關(guān)節(jié)點(diǎn)中的分布不均衡,從而導(dǎo)致相關(guān)節(jié)點(diǎn)中的負(fù)載不均衡,使得相關(guān)節(jié)點(diǎn)間的資源消耗不平衡,影響Kafka集群的服務(wù)性能。
發(fā)明內(nèi)容
鑒于上述問題,本發(fā)明提供一種克服上述問題或者至少部分地解決上述問題的Kafka的分區(qū)擴(kuò)充方法、裝置、存儲(chǔ)介質(zhì)和計(jì)算機(jī)設(shè)備,技術(shù)方案如下:
一種Kafka的分區(qū)擴(kuò)充方法,包括:
確定所述Kafka中的待進(jìn)行分區(qū)擴(kuò)充的主題;
獲得所述主題的當(dāng)前分區(qū)在所述Kafka的節(jié)點(diǎn)中的副本分布信息;
獲得所述Kafka的節(jié)點(diǎn)的當(dāng)前負(fù)載信息;
根據(jù)獲得的所述副本分布信息和所述當(dāng)前負(fù)載信息,確定所述主題的待擴(kuò)充分區(qū)的副本部署方案;
按照所述副本部署方案,在所述Kafka的節(jié)點(diǎn)中部署所述待擴(kuò)充分區(qū)的副本,以對所述主題進(jìn)行所述待擴(kuò)充分區(qū)的擴(kuò)充。
可選的,所述副本分布信息包括主副本分布信息,所述副本部署方案包括主副本部署方案。
可選的,所述根據(jù)獲得的所述副本分布信息和所述當(dāng)前負(fù)載信息,確定所述主題的待擴(kuò)充分區(qū)的副本部署方案,包括:
從所述當(dāng)前負(fù)載信息中確定所述Kafka的節(jié)點(diǎn)中是否存在有負(fù)載不大于預(yù)設(shè)負(fù)載限值的節(jié)點(diǎn),如果是,則根據(jù)所述主副本分布信息,確定所述負(fù)載不大于預(yù)設(shè)負(fù)載限值的節(jié)點(diǎn)中是否存在有未部署所述主題的主副本的節(jié)點(diǎn),如果是,則將所述未部署所述主題的主副本的節(jié)點(diǎn)確定為所述待擴(kuò)充分區(qū)的主副本的目標(biāo)部署節(jié)點(diǎn);
所述按照所述副本部署方案,在所述Kafka的節(jié)點(diǎn)中部署所述待擴(kuò)充分區(qū)的副本,包括:
在所述主副本的目標(biāo)部署節(jié)點(diǎn)中部署所述待擴(kuò)充分區(qū)的主副本。
可選的,所述根據(jù)獲得的所述副本分布信息和所述當(dāng)前負(fù)載信息,確定所述主題的待擴(kuò)充分區(qū)的副本部署方案,還包括:
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國農(nóng)業(yè)銀行股份有限公司,未經(jīng)中國農(nóng)業(yè)銀行股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011570100.X/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- Kafka集群的數(shù)據(jù)傳送方法和裝置
- KAFKA消息隊(duì)列數(shù)監(jiān)控方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- KAFKA主題監(jiān)控方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 基于容器的集群遷移方法及裝置
- kafka消息的測試方法、裝置、計(jì)算機(jī)設(shè)備及存儲(chǔ)介質(zhì)
- 基于kafka集群的數(shù)據(jù)寫入方法、裝置、電子設(shè)備、存儲(chǔ)介質(zhì)
- 一種可視化部署并管理kafka集群的方法
- kafka消息存儲(chǔ)系統(tǒng)、方法、裝置及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 一種基于kafka-connect的數(shù)據(jù)傳遞方法
- 一種將Kafka長連接消費(fèi)轉(zhuǎn)換成服務(wù)的方法
- 一種數(shù)據(jù)庫讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測試終端的測試方法
- 一種服裝用人體測量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





