新聞中心
這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)Kafka的資源隔離是什么,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
Kafka的資源隔離是什么
之前由于業(yè)務(wù)的復(fù)雜性和規(guī)模不大,大數(shù)據(jù)平臺(tái)對(duì)于Kafka集群的劃分比較簡(jiǎn)單。于是,一段時(shí)間以后導(dǎo)致公司業(yè)務(wù)數(shù)據(jù)混雜在一起,某一個(gè)業(yè)務(wù)主題存在的不合理使用都有可能導(dǎo)致某些Broker負(fù)載過(guò)重,影響到其他正常的業(yè)務(wù),甚至某些Broker的故障會(huì)出現(xiàn)影響整個(gè)集群,導(dǎo)致全公司業(yè)務(wù)不可用的風(fēng)險(xiǎn)。
針對(duì)以上的問題,在集群改造上做了兩方面實(shí)踐:
按功能屬性拆分獨(dú)立的集群
集群內(nèi)部Topic粒度的資源隔離
集群拆分
按照功能維度拆分多個(gè)Kafka物理集群,進(jìn)行業(yè)務(wù)隔離,降低運(yùn)維復(fù)雜度。
以目前最重要的埋點(diǎn)數(shù)據(jù)使用來(lái)說(shuō),目前拆分為三類集群,各類集群的功能定義如下:
Log集群:各端的埋點(diǎn)數(shù)據(jù)采集后會(huì)優(yōu)先落地到該集群,所以這個(gè)過(guò)程不能出現(xiàn)由于Kafka問題導(dǎo)致采集中斷,這對(duì)Kafka可用性要求很高。因此該集群不會(huì)對(duì)外提供訂閱,保證消費(fèi)方可控;同時(shí)該集群業(yè)務(wù)也作為離線采集的源頭,數(shù)據(jù)會(huì)通過(guò)Camus組件按小時(shí)時(shí)間粒度dump到HDFS中,這部分?jǐn)?shù)據(jù)參與后續(xù)的離線計(jì)算。
全量訂閱集群:該集群Topic中的絕大部分?jǐn)?shù)據(jù)是從Log集群實(shí)時(shí)同步過(guò)來(lái)的。上面我們提到了Log集群的數(shù)據(jù)是不對(duì)外的,因此全量集群就承擔(dān)了消費(fèi)訂閱的職責(zé)。目前主要是用于平臺(tái)內(nèi)部的實(shí)時(shí)任務(wù)中,來(lái)對(duì)多個(gè)業(yè)務(wù)線的數(shù)據(jù)分析并提供分析服務(wù)。
個(gè)性定制集群:之前提到過(guò),我們可以根據(jù)業(yè)務(wù)方需求來(lái)拆分、合并數(shù)據(jù)日志源,同時(shí)我們還支持定制化Topic,該集群只需要提供分流后Topic的落地存儲(chǔ)。
資源隔離
Topic的流量大小是集群內(nèi)部進(jìn)行資源隔離的重要依據(jù)。例如,我們?cè)跇I(yè)務(wù)中埋點(diǎn)日志量較大的兩個(gè)數(shù)據(jù)源分別是后端埋點(diǎn)數(shù)據(jù)源server-event和端上的埋點(diǎn)mobile-event數(shù)據(jù)源,我們要避免存儲(chǔ)兩個(gè)數(shù)據(jù)的主題分區(qū)分配到集群中同一個(gè)Broker上的節(jié)點(diǎn)。通過(guò)在不同Topic進(jìn)行物理隔離,就可以避免Broker上的流量發(fā)生傾斜。
上述就是小編為大家分享的Kafka的資源隔離是什么了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
分享文章:Kafka的資源隔離是什么-創(chuàng)新互聯(lián)
地址分享:http://www.dlmjj.cn/article/dsdcii.html