本發(fā)明涉及分布式存儲系統(tǒng),具體涉及一種分布式存儲數(shù)據(jù)自適應(yīng)負(fù)載均衡的方法和系統(tǒng)。
背景技術(shù):
1、在信息技術(shù)日新月異的今天,大數(shù)據(jù)的存儲與管理已成為企業(yè)發(fā)展的重要基石。隨著數(shù)據(jù)量的爆炸性增長,傳統(tǒng)的集中存儲方式逐漸暴露出性能瓶頸和擴(kuò)展性問題。分布式存儲系統(tǒng)憑借其高可用性、可擴(kuò)展性和容錯性,成為處理大規(guī)模數(shù)據(jù)集的優(yōu)選方案。然而,在分布式環(huán)境中,如何有效地實(shí)現(xiàn)數(shù)據(jù)負(fù)載均衡,確保系統(tǒng)資源的高效利用,是當(dāng)前研究與應(yīng)用中的一大挑戰(zhàn)。
2、當(dāng)前,分布式存儲系統(tǒng)中的負(fù)載均衡策略大多依賴于簡單的輪詢、隨機(jī)或基于固定權(quán)重的分配方式,這些方法在應(yīng)對復(fù)雜多變的負(fù)載情況時顯得力不從心,無法準(zhǔn)確反映節(jié)點(diǎn)的實(shí)際性能狀態(tài),導(dǎo)致數(shù)據(jù)分布不均,部分節(jié)點(diǎn)負(fù)載過高而另一部分節(jié)點(diǎn)資源閑置,影響系統(tǒng)整體性能和響應(yīng)時效,不僅影響了用戶體驗(yàn),還可能對企業(yè)的運(yùn)營造成影響。
技術(shù)實(shí)現(xiàn)思路
1、針對上述問題,本發(fā)明的一個目的是提供一種分布式存儲數(shù)據(jù)自適應(yīng)負(fù)載均衡的方法,該方法通過綜合考慮多個維度的性能指標(biāo),對存儲節(jié)點(diǎn)進(jìn)行全面、準(zhǔn)確的評價;同時,結(jié)合節(jié)點(diǎn)性能數(shù)據(jù)的實(shí)時監(jiān)測,實(shí)現(xiàn)數(shù)據(jù)向低負(fù)載節(jié)點(diǎn)的智能遷移,從而有效改善數(shù)據(jù)分布不均的問題,提高系統(tǒng)的整體性能和可靠性。
2、本發(fā)明的第二個目的是提供一種分布式存儲數(shù)據(jù)自適應(yīng)負(fù)載均衡的系統(tǒng)。
3、本發(fā)明所采用的第一個技術(shù)方案是:一種分布式存儲數(shù)據(jù)自適應(yīng)負(fù)載均衡的方法,包括以下步驟:
4、s100:基于一致性哈希算法將數(shù)據(jù)分配至分布式存儲系統(tǒng)中各節(jié)點(diǎn);
5、s200:實(shí)時采集各節(jié)點(diǎn)的關(guān)鍵指標(biāo)值,判斷各節(jié)點(diǎn)的關(guān)鍵指標(biāo)值是否超過第一設(shè)定閾值,若任一節(jié)點(diǎn)的關(guān)鍵指標(biāo)值超過第一設(shè)定閾值,則執(zhí)行步驟s300;或者,采集獲取關(guān)鍵數(shù)據(jù)的響應(yīng)時效,判斷獲取關(guān)鍵數(shù)據(jù)的響應(yīng)時效是否超過第二設(shè)定閾值,若超過第二設(shè)定閾值,則執(zhí)行步驟s300;
6、s300:基于熵權(quán)法和topsis對分布式存儲系統(tǒng)中各節(jié)點(diǎn)的性能進(jìn)行評估并排序,獲得排序結(jié)果;
7、s400:基于所述排序結(jié)果定位到性能較好的節(jié)點(diǎn);以及將關(guān)鍵指標(biāo)值超過第一設(shè)定閾值的節(jié)點(diǎn)下的數(shù)據(jù)遷移到所述性能較好的節(jié)點(diǎn),或?qū)@取關(guān)鍵數(shù)據(jù)的響應(yīng)時效超過第二設(shè)定閾值的節(jié)點(diǎn)下的關(guān)鍵數(shù)據(jù)遷移到所述性能較好的節(jié)點(diǎn)。
8、優(yōu)選地,所述步驟s100包括以下子步驟:
9、s110:利用哈希函數(shù)計(jì)算分布式存儲中各節(jié)點(diǎn)的哈希值,以及計(jì)算各數(shù)據(jù)的哈希值;
10、s120:將各節(jié)點(diǎn)映射為虛擬節(jié)點(diǎn),基于各節(jié)點(diǎn)的哈希值將各虛擬節(jié)點(diǎn)分布在虛擬的哈希環(huán)上;以及基于各數(shù)據(jù)和各節(jié)點(diǎn)的哈希值將各數(shù)據(jù)映射在各虛擬節(jié)點(diǎn)上;
11、s130:將映射在各虛擬節(jié)點(diǎn)上的數(shù)據(jù)存儲至各虛擬節(jié)點(diǎn)所對應(yīng)的分布式節(jié)點(diǎn)。
12、優(yōu)選地,所述步驟s300包括以下子步驟:
13、s310:確定各節(jié)點(diǎn)的評價指標(biāo),并采集節(jié)點(diǎn)指標(biāo)值;以及對所述節(jié)點(diǎn)指標(biāo)值進(jìn)行預(yù)處理;
14、s320:基于預(yù)處理后的節(jié)點(diǎn)指標(biāo)值,采用熵權(quán)法計(jì)算各評價指標(biāo)的熵值;
15、s330:對所述各評價指標(biāo)的熵值進(jìn)行差異系數(shù)計(jì)算和歸一化計(jì)算,得到各評價指標(biāo)的權(quán)重;
16、s340:基于所述各評價指標(biāo)的權(quán)重和節(jié)點(diǎn)指標(biāo)值,采用topsis對各分布式節(jié)點(diǎn)的性能進(jìn)行綜合評價,獲得各分布式節(jié)點(diǎn)的相對接近度;以及基于所述各分布式節(jié)點(diǎn)的相對接近度對所有的分布式節(jié)點(diǎn)進(jìn)行排序,獲得排序結(jié)果。
17、優(yōu)選地,所述步驟s310還包括:將所述節(jié)點(diǎn)指標(biāo)值保存至?xí)r序數(shù)據(jù)庫中。
18、優(yōu)選地,所述各節(jié)點(diǎn)的評價指標(biāo)包括節(jié)點(diǎn)的硬件資源指標(biāo)、處理能力指標(biāo)、網(wǎng)絡(luò)性能指標(biāo)和運(yùn)行穩(wěn)定性指標(biāo);
19、所述節(jié)點(diǎn)指標(biāo)值包括核心數(shù)量、線程數(shù)量、主頻、cpu使用率、總內(nèi)存容量、內(nèi)存使用率、存儲類型、存儲總?cè)萘?、吞吐量、存儲使用率、?shù)據(jù)讀取/寫入速度、請求響應(yīng)時間、網(wǎng)絡(luò)接口類型、網(wǎng)絡(luò)帶寬、網(wǎng)絡(luò)延遲、丟包率、網(wǎng)絡(luò)吞吐量、系統(tǒng)健康狀態(tài)、關(guān)鍵錯誤信息、重啟次數(shù)、節(jié)點(diǎn)的正常運(yùn)行時間和節(jié)點(diǎn)故障恢復(fù)時長中的一種或多種。
20、優(yōu)選地,對所述節(jié)點(diǎn)指標(biāo)值進(jìn)行預(yù)處理包括:對所述節(jié)點(diǎn)指標(biāo)值進(jìn)行數(shù)據(jù)清洗、指標(biāo)正向化、數(shù)據(jù)無量綱化處理操作。
21、優(yōu)選地,所述各評價指標(biāo)的熵值通過以下公式計(jì)算得到:
22、;
23、式中, e j為評價指標(biāo)的熵值; p ij為第i個節(jié)點(diǎn)的第j個指標(biāo)所占的比重值;n為節(jié)點(diǎn)數(shù)量;m為評價指標(biāo)的數(shù)量;i為從1到n的所有取值;j為從1到m的所有取值。
24、優(yōu)選地,所述各評價指標(biāo)的權(quán)重通過以下公式計(jì)算得到:
25、;
26、式中, w j為第j項(xiàng)評價指標(biāo)的權(quán)重系數(shù); g j為第j項(xiàng)評價指標(biāo)的差異系數(shù); g k為每個評價對象的各項(xiàng)指標(biāo)的差異系數(shù);m為評價指標(biāo)的數(shù)量;k為從1到m的所有取值。
27、優(yōu)選地,所述各分布式節(jié)點(diǎn)的相對接近度通過以下公式表示:
28、;
29、式中, f i為分布式節(jié)點(diǎn)的相對接近度數(shù)值;為分布式節(jié)點(diǎn)相對于正理想解的具體距離;為分布式節(jié)點(diǎn)相對于負(fù)理想解的具體距離。
30、本發(fā)明所采用的第二個技術(shù)方案是:一種分布式存儲數(shù)據(jù)自適應(yīng)負(fù)載均衡的系統(tǒng),包括數(shù)據(jù)分配模塊、監(jiān)控模塊、評估模塊和數(shù)據(jù)遷移模塊;
31、所述數(shù)據(jù)分配模塊用于基于一致性哈希算法將數(shù)據(jù)分配至分布式存儲系統(tǒng)中各節(jié)點(diǎn);
32、所述監(jiān)控模塊用于實(shí)時采集各節(jié)點(diǎn)的關(guān)鍵指標(biāo)值,判斷各節(jié)點(diǎn)的關(guān)鍵指標(biāo)值是否超過第一設(shè)定閾值,若任一節(jié)點(diǎn)的關(guān)鍵指標(biāo)值超過第一設(shè)定閾值,則調(diào)用所述評估模塊;或者,采集獲取關(guān)鍵數(shù)據(jù)的響應(yīng)時效,判斷獲取關(guān)鍵數(shù)據(jù)的響應(yīng)時效是否超過第二設(shè)定閾值,若超過第二設(shè)定閾值,則調(diào)用所述評估模塊;
33、所述評估模塊用于基于熵權(quán)法和topsis,對分布式存儲系統(tǒng)中各節(jié)點(diǎn)的性能進(jìn)行評估并排序,獲得排序結(jié)果;
34、所述數(shù)據(jù)遷移模塊用于基于所述排序結(jié)果定位到性能較好的節(jié)點(diǎn);以及將關(guān)鍵指標(biāo)值超過第一設(shè)定閾值的節(jié)點(diǎn)下的數(shù)據(jù)遷移到所述性能較好的節(jié)點(diǎn),或?qū)@取關(guān)鍵數(shù)據(jù)的響應(yīng)時效超過第二設(shè)定閾值的節(jié)點(diǎn)下的關(guān)鍵數(shù)據(jù)遷移到性能較好的節(jié)點(diǎn)。
35、上述技術(shù)方案的有益效果:
36、(1)本發(fā)明提供的一種分布式存儲數(shù)據(jù)自適應(yīng)負(fù)載均衡的方法旨在通過智能的算法與策略,實(shí)現(xiàn)存儲節(jié)點(diǎn)間數(shù)據(jù)分布的優(yōu)化,提高系統(tǒng)整體的性能與穩(wěn)定性。該方法廣泛適用于需要高效數(shù)據(jù)處理的場景,對于提升企業(yè)數(shù)據(jù)處理能力、降低運(yùn)營成本具有重要意義。
37、(2)本發(fā)明提出了一種基于熵權(quán)法和topsis的分布式存儲數(shù)據(jù)自適應(yīng)負(fù)載均衡方法,該方法通過綜合考慮多個維度的性能指標(biāo),對存儲節(jié)點(diǎn)進(jìn)行全面、準(zhǔn)確的評價;同時,結(jié)合節(jié)點(diǎn)性能數(shù)據(jù)的實(shí)時監(jiān)測,實(shí)現(xiàn)數(shù)據(jù)向低負(fù)載節(jié)點(diǎn)的智能遷移,從而有效改善數(shù)據(jù)分布不均的問題,提高系統(tǒng)的整體性能和可靠性。
38、(3)本發(fā)明提高了系統(tǒng)性能:通過自適應(yīng)負(fù)載均衡,熱點(diǎn)數(shù)據(jù)被有效分散到低負(fù)載節(jié)點(diǎn),從而減少單點(diǎn)過載現(xiàn)象,提高數(shù)據(jù)訪問速度和系統(tǒng)響應(yīng)時間。
39、(4)本發(fā)明增強(qiáng)了系統(tǒng)穩(wěn)定性:負(fù)載均衡策略減少了節(jié)點(diǎn)故障的概率,提高了系統(tǒng)的穩(wěn)定性和可靠性。
40、(5)本發(fā)明優(yōu)化資源利用:本發(fā)明能夠根據(jù)節(jié)點(diǎn)的實(shí)際性能和負(fù)載情況動態(tài)調(diào)整數(shù)據(jù)分布,使得系統(tǒng)資源得到更加合理的利用。
41、(6)本發(fā)明簡化管理維護(hù):自適應(yīng)負(fù)載均衡減少了人工干預(yù)的需要,簡化了系統(tǒng)管理維護(hù)工作。
42、(7)本發(fā)明的分布式存儲數(shù)據(jù)自適應(yīng)負(fù)載均衡方法是一種高效、智能、可靠的解決方案,對于提升分布式存儲系統(tǒng)的性能與穩(wěn)定性具有重要意義。