一種解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存資源激烈競爭的系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存資源激烈競爭的系統(tǒng),內(nèi)存信息反饋模塊用于對運行中的線程任務(wù)進(jìn)行內(nèi)存使用情況的監(jiān)測,并將收集的內(nèi)存信息轉(zhuǎn)化后反饋給信息采樣與分析模塊;信息采樣與分析模塊用于動態(tài)調(diào)控各個工作節(jié)點信息的采樣次數(shù),并且達(dá)到指定的采樣次數(shù)后對數(shù)據(jù)進(jìn)行分析,計算出當(dāng)前工作節(jié)點的最佳CPU與內(nèi)存比例;決策與任務(wù)分發(fā)模塊根據(jù)分析得到的信息和當(dāng)前工作節(jié)點的任務(wù)運行信息,決策控制是否分發(fā)新的任務(wù)到工作節(jié)點進(jìn)行計算操作,實現(xiàn)對CPU與內(nèi)存使用關(guān)系的有效限制。本發(fā)明能夠在通用的大數(shù)據(jù)平臺上實現(xiàn)內(nèi)存感知的任務(wù)分發(fā)機(jī)制,降低內(nèi)存資源激烈競爭所導(dǎo)致的數(shù)據(jù)溢出到磁盤的I/O開銷,并且有效提高系統(tǒng)的整體性能。
【專利說明】
一種解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存資源激烈競爭的系統(tǒng)
技術(shù)領(lǐng)域
[0001] 本發(fā)明屬于計算機(jī)系統(tǒng)結(jié)構(gòu)下I/O性能優(yōu)化領(lǐng)域,更具體地,涉及一種解決大數(shù)據(jù) 處理系統(tǒng)中內(nèi)存資源激烈競爭的系統(tǒng)。
【背景技術(shù)】
[0002] 隨著大數(shù)據(jù)時代的到來,數(shù)據(jù)處理多采用集群編程模型MapReduce和Dryad來處理 日益增長的數(shù)據(jù)集,這些模型能提供自動的任務(wù)調(diào)度機(jī)制、容錯機(jī)制和負(fù)載均衡機(jī)制,實現(xiàn) 細(xì)節(jié)對用戶實現(xiàn)透明,其中MapReduce模型應(yīng)用非常廣泛。
[0003] 開源的分布式處理系統(tǒng)Hadoop作為MapReduce模型最典型的代表,已經(jīng)被工業(yè)界 用來處理多種多樣的離線批處理應(yīng)用。但是Hadoop基于磁盤設(shè)計了一整套執(zhí)行流程,中間 數(shù)據(jù)需要存放在磁盤上,不適合迭代計算這種復(fù)雜的應(yīng)用,磁盤I/O成為性能的主要瓶頸。 同時Hadoop采用多進(jìn)程執(zhí)行引擎,任務(wù)以進(jìn)程的形式被執(zhí)行與調(diào)度。由于進(jìn)程啟動非常慢, 導(dǎo)致Hadoop只適合離線批處理類型的作業(yè),這無法滿足當(dāng)下對應(yīng)用高時效性的需求。
[0004] 但作為MapReduce模型當(dāng)前最火的代表,Spark基于內(nèi)存設(shè)計了一整套執(zhí)行流程, 數(shù)據(jù)結(jié)構(gòu)多采用消耗內(nèi)存的哈希表,并且提供了中間數(shù)據(jù)緩存在內(nèi)存中的機(jī)制和接口,極 大的減少了磁盤1/0操作。同時Spark采用多線程執(zhí)行引擎,任務(wù)以線程的形式被調(diào)度,線程 啟動快,而且線程之間共享和復(fù)用內(nèi)存空間,資源利用率高,導(dǎo)致Spark非常適合低延遲高 響應(yīng)類型的作業(yè)。同時多線程執(zhí)行引擎也成為了當(dāng)下流行的分布式處理系統(tǒng)的標(biāo)準(zhǔn)實現(xiàn)。
[0005] 但是,當(dāng)前的大數(shù)據(jù)處理應(yīng)用大多都是數(shù)據(jù)密集性應(yīng)用,大量的中間數(shù)據(jù)需要緩 存在內(nèi)存空間,而且大量的計算是消耗內(nèi)存空間的,容易出現(xiàn)內(nèi)存不充足的情況,此時線程 任務(wù)對內(nèi)存資源的競爭更加競爭?,F(xiàn)有的線程任務(wù)調(diào)度機(jī)制直接根據(jù)工作節(jié)點是否含有空 核來分發(fā)任務(wù),未考慮工作節(jié)點當(dāng)前的內(nèi)存資源使用情況,會繼續(xù)加劇內(nèi)存的競爭。另一方 面,多線程執(zhí)行引擎為了保證每個線程任務(wù)在計算中都能分到足夠的內(nèi)存空間,根據(jù)工作 節(jié)點中任務(wù)的數(shù)量均分內(nèi)存空間。但工作節(jié)點的CPU核數(shù)(線程任務(wù)最大的并發(fā)度)是提前 就申請好的,當(dāng)每個線程任務(wù)消耗的內(nèi)存增多,內(nèi)存不足時,大量的數(shù)據(jù)溢出到磁盤,導(dǎo)致 大量的磁盤1/0操作。同時大數(shù)據(jù)作業(yè)都是分階段執(zhí)行的,每個階段的任務(wù)消耗的內(nèi)存不一 致,非常容易出現(xiàn)某些階段中CPU和內(nèi)存容量的比例不協(xié)調(diào),影響大數(shù)據(jù)處理系統(tǒng)的整體性 能。
【發(fā)明內(nèi)容】
[0006] 針對現(xiàn)有技術(shù)的缺陷,本發(fā)明的目的在于提供一種解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存資 源激烈競爭的系統(tǒng),旨在解決現(xiàn)有方法中存在的內(nèi)存資源激烈競爭過大、不必要的數(shù)據(jù)溢 出到磁盤的1/0操作、無法動態(tài)調(diào)整CPU和內(nèi)存資源比例的技術(shù)問題。
[0007] 為實現(xiàn)上述目的,按照本發(fā)明的一方面,提供了一種解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存 資源激烈競爭的系統(tǒng),包括內(nèi)存信息反饋模塊、信息采樣與分析模塊、決策與任務(wù)分發(fā)模 塊。
[0008] 內(nèi)存信息反饋模塊用于對運行中的線程任務(wù)進(jìn)行內(nèi)存使用情況的監(jiān)測,并將收集 的內(nèi)存信息轉(zhuǎn)化后反饋給信息采樣與分析模塊;
[0009] 信息采樣與分析模塊用于動態(tài)調(diào)控各個工作節(jié)點信息的采樣次數(shù),并且達(dá)到指定 的采樣次數(shù)后對數(shù)據(jù)進(jìn)行分析,計算出當(dāng)前工作節(jié)點的最佳CHJ與內(nèi)存比例,并將結(jié)果數(shù)據(jù) 提交給決策與任務(wù)分發(fā)模塊;
[0010] 決策與任務(wù)分發(fā)模塊根據(jù)分析得到的信息和當(dāng)前工作節(jié)點的任務(wù)運行信息,決策 控制是否分發(fā)新的任務(wù)到工作節(jié)點進(jìn)行計算操作,實現(xiàn)對CHJ與內(nèi)存使用關(guān)系的有效限制。
[0011] 所述內(nèi)存信息反饋模塊,用于對運行中的線程任務(wù)進(jìn)行內(nèi)存使用情況的監(jiān)測,統(tǒng) 計線程任務(wù)執(zhí)行過程中消耗的內(nèi)存量,同時也統(tǒng)計當(dāng)內(nèi)存不足時,從內(nèi)存中溢出到磁盤的 數(shù)據(jù)量,根據(jù)內(nèi)存實際消耗的總量和當(dāng)前的工作節(jié)點所分配的最大CHJ核數(shù),計算最佳并發(fā) 度信息反饋給信息采樣與分析模塊。
[0012] 所述收集的信息,包括線程任務(wù)所使用的容器占用的內(nèi)存大小,工作節(jié)點用于計 算的最大內(nèi)存值,內(nèi)存空間不足時數(shù)據(jù)溢出到磁盤的大小,工作節(jié)點所擁有的CHJ資源數(shù)。
[0013] 所述監(jiān)測功能的實現(xiàn),主要是通過在工作節(jié)點調(diào)用大數(shù)據(jù)處理系統(tǒng)中與內(nèi)存相關(guān) 的關(guān)鍵函數(shù),關(guān)鍵函數(shù)包括有內(nèi)存分配函數(shù)、內(nèi)存釋放函數(shù)、獲取內(nèi)存配置信息與CPU核數(shù) 函數(shù)、獲取任務(wù)運行信息函數(shù)。
[0014] 所述信息采樣與分析模塊,通過在主節(jié)點動態(tài)調(diào)控各個工作節(jié)點信息的采樣次 數(shù),在收集信息的過程中選擇性地調(diào)整工作節(jié)點CHJ與內(nèi)存資源比例,并且在達(dá)到指定的采 樣次數(shù)后對收集到的數(shù)據(jù)進(jìn)行處理分析,來判斷工作節(jié)點整體的內(nèi)存資源競爭激烈情況, 并確定工作節(jié)點當(dāng)前最佳的CHJ與內(nèi)存資源比例。
[0015] 所述決策與任務(wù)分發(fā)模塊,通過在主節(jié)點對原有的任務(wù)調(diào)度機(jī)制進(jìn)行擴(kuò)展,加入 對內(nèi)存資源和CPU資源的綜合考慮,根據(jù)采樣結(jié)果和當(dāng)前工作節(jié)點已經(jīng)分配的任務(wù)情況,綜 合考慮后決定是否繼續(xù)分發(fā)任務(wù)到工作節(jié)點,來協(xié)調(diào)工作節(jié)點CHJ和內(nèi)存資源的合理使用。
[0016] 所述內(nèi)存信息反饋模塊,部署在每個工作節(jié)點上,追蹤每一個線程任務(wù)運行過程 中消耗的內(nèi)存量S??,并且記錄內(nèi)存不足時,內(nèi)存數(shù)據(jù)溢出到磁盤的數(shù)據(jù)量S spm,接著當(dāng)線 程任務(wù)運行完后,根據(jù)線程任務(wù)消耗的內(nèi)存總量Smem+Sspill,以及工作節(jié)點分配給計算所需 的最大內(nèi)存空間S max和線程任務(wù)所允許的最大并發(fā)度CLmax(申請的CPU核數(shù)),計算出適合當(dāng) 前資源環(huán)境的最佳并發(fā)度〇^反饋給主節(jié)點的信息采樣與分析模塊。當(dāng)S spm = 0時,說明當(dāng) 如的內(nèi)存比車父充足,CL〇p = CLmax。否則,內(nèi)存資源不足,克爭激烈,- J。
[0017] 所述信息采樣與分析模塊,通過哈希表來管理采樣數(shù)據(jù),將各個工作節(jié)點收集的 采樣數(shù)據(jù)快速地分配到各個對應(yīng)的處理模塊進(jìn)行分析處理,收到采樣數(shù)據(jù)后,更新用來記 錄對應(yīng)工作節(jié)正在運行的線程任務(wù)數(shù)量T num=Tnum-l。每個模塊在指定的采樣次數(shù)SN達(dá)到之 后,將累加收集到的所有采樣數(shù)據(jù)CUP
最后計算出適合工作節(jié)點當(dāng) 前最佳的并發(fā)度提交給決策與任務(wù)分發(fā)模塊。
[0018] 所述決策與任務(wù)分發(fā)模塊,根據(jù)當(dāng)前工作節(jié)點的并發(fā)度信息CUurrent,以及信息采 樣與分析模塊提交的CL be3St,用CLbe3St直接賦值來更新當(dāng)前的并發(fā)度信息CUurre3nt和采樣次數(shù) SN。最后任務(wù)分發(fā)模塊根據(jù)更新后的CUurrent值和工作節(jié)點當(dāng)前正在運行的線程任務(wù)數(shù)量 T_決策剩余線程任務(wù)是否分發(fā)到工作節(jié)點,當(dāng)CU^nt〉!?時,繼續(xù)分發(fā)任務(wù)到該工作子 節(jié)點,并且更新TnUm = TnUm+l 〇
[0019] 所述信息采樣與分析模塊,在收集采樣數(shù)據(jù)的次數(shù)未達(dá)到SN的過程中,如果收集 到CUP<CU urre3nt時,說明當(dāng)前內(nèi)存資源競爭非常激烈,按照原來的CL?nt值分發(fā)任務(wù),不 能快速的緩解競爭壓力,需要實時做出調(diào)整CU umnt = CUP。
[0020] 通過本發(fā)明所構(gòu)思的以上技術(shù)方案,與現(xiàn)有技術(shù)相比,本發(fā)明的系統(tǒng)具有以下的 優(yōu)點和技術(shù)效果:
[0021] 1、由于采用了內(nèi)存信息反饋模塊,通過收集線程任務(wù)運行過程中實際消耗的內(nèi)存 空間,能夠有效地預(yù)估當(dāng)前工作節(jié)點的內(nèi)存壓力情況,提前將內(nèi)存信息反饋給主節(jié)點進(jìn)行 決策,及時緩解工作節(jié)點的內(nèi)存壓力;
[0022] 2、由于采用了信息采樣與分析模塊,通過動態(tài)的調(diào)整采樣的次數(shù),保證了收集到 的數(shù)據(jù)能夠從整體上反應(yīng)工作節(jié)點的內(nèi)存使用情況,確保了工作節(jié)點能夠平穩(wěn)高效的運 行;
[0023] 3、由于采用了決策與任務(wù)分發(fā)模塊,在任務(wù)調(diào)度的過程中,能同時考慮工作節(jié)點 CPU和內(nèi)存的使用情況,確保了工作節(jié)點能高效的使用內(nèi)存空間,有效減少了內(nèi)存資源競爭 緊張而導(dǎo)致的溢出磁盤I/O操作,切實緩解了內(nèi)存資源激烈競爭的情況;
[0024] 4、由于本發(fā)明本著方便用戶使用的目標(biāo),實現(xiàn)在系統(tǒng)中內(nèi)部,不涉及用戶層程序 的具體代碼或額外操作,因此對用戶層程序是完全透明的。同時解決的問題比較通用,實現(xiàn) 方法具有很強(qiáng)的通用性和可移植性。
【附圖說明】
[0025] 圖1為解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存資源激烈競爭機(jī)制的模塊框圖。
[0026] 圖2為解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存資源激烈競爭機(jī)制的流程圖。
【具體實施方式】
[0027] 為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對 本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅用以解釋本發(fā)明,并不 用于限定本發(fā)明。
[0028] 如圖1所示,本發(fā)明提供了一種解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存資源激烈競爭的系統(tǒng), 包括內(nèi)存信息反饋模塊、信息采樣與分析模塊、決策與任務(wù)分發(fā)模塊。
[0029] 內(nèi)存信息反饋模塊用于對運行中的線程任務(wù)進(jìn)行內(nèi)存使用情況的監(jiān)測,統(tǒng)計線程 任務(wù)執(zhí)行過程中消耗的內(nèi)存量,同時也統(tǒng)計當(dāng)內(nèi)存不足時,從內(nèi)存中溢出到磁盤的數(shù)據(jù)量, 根據(jù)內(nèi)存實際消耗的總量和當(dāng)前的工作節(jié)點所分配的最大CPU核數(shù),計算最佳并發(fā)度信息 反饋給信息采樣與分析模塊。
[0030] 內(nèi)存信息反饋模塊收集的信息包括線程任務(wù)所使用的容器占用的內(nèi)存大小,工作 節(jié)點用于計算的最大內(nèi)存值,內(nèi)存空間不足時數(shù)據(jù)溢出到磁盤的大小,工作節(jié)點所擁有的 CPU資源數(shù)。
[0031] 監(jiān)測功能的實現(xiàn)主要是通過在工作節(jié)點調(diào)用大數(shù)據(jù)處理系統(tǒng)中與內(nèi)存相關(guān)的關(guān) 鍵函數(shù),關(guān)鍵函數(shù)包括有內(nèi)存分配函數(shù)、內(nèi)存釋放函數(shù)、獲取內(nèi)存配置信息與CPU核數(shù)函數(shù)、 獲取任務(wù)運行信息函數(shù)。
[0032] 信息采樣與分析模塊通過在主節(jié)點動態(tài)調(diào)控各個工作節(jié)點信息的采樣次數(shù),在收 集信息的過程中選擇性地調(diào)整工作節(jié)點CPU與內(nèi)存資源比例,并且在達(dá)到指定的采樣次數(shù) 后對收集到的數(shù)據(jù)進(jìn)行處理分析,來判斷工作節(jié)點整體的內(nèi)存資源競爭激烈情況,并確定 工作節(jié)點當(dāng)前最佳的CHJ與內(nèi)存資源比例。
[0033] 決策與任務(wù)分發(fā)模塊通過在主節(jié)點對原有的任務(wù)調(diào)度機(jī)制進(jìn)行擴(kuò)展,加入對內(nèi)存 資源和CPU資源的綜合考慮,根據(jù)采樣結(jié)果和當(dāng)前工作節(jié)點已經(jīng)分配的任務(wù)情況,綜合考慮 后決定是否繼續(xù)分發(fā)任務(wù)到工作節(jié)點,來協(xié)調(diào)工作節(jié)點CHJ和內(nèi)存資源的合理使用。
[0034] 如圖2所示,解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存資源激烈競爭機(jī)制的整體流程,包括以下 步驟:
[0035] (1)內(nèi)存信息反饋模塊部署在每個工作節(jié)點上,追蹤每一個線程任務(wù)運行過程中 消耗的內(nèi)存量Smem,并且記錄內(nèi)存不足時,內(nèi)存數(shù)據(jù)溢出到磁盤的數(shù)據(jù)量Sspm,接著當(dāng)線程 任務(wù)運行完后,根據(jù)線程任務(wù)消耗的內(nèi)存總量Smem+Sspill,以及工作節(jié)點分配給計算所需的 最大內(nèi)存空間S max和線程任務(wù)所允許的最大并發(fā)度CLmax(申請的CPU核數(shù)),計算出適合當(dāng)前 資源環(huán)境的最佳并發(fā)度CU Pi饋給主節(jié)點的信息采樣與分析模塊。當(dāng)Sspm = 0時,說明當(dāng)前 的內(nèi)存比較充足,cuP=amax。否則,內(nèi)存資源不足,競爭激烈,=^ niax/(5;_+5^7/)」。
[0036] (2)信息采樣與分析模塊通過哈希表來管理采樣數(shù)據(jù),將各個工作節(jié)點收集的采 樣數(shù)據(jù)快速地分配到各個對應(yīng)的處理模塊進(jìn)行分析處理,收到采樣數(shù)據(jù)后,更新用來記錄 對應(yīng)工作節(jié)正在運行的線程任務(wù)數(shù)量Tnum = Tnum-l。每個模塊在指定的采樣次數(shù)SN達(dá)到之 后,將累加收集到的所有采樣數(shù)據(jù)CUP,
'最后計算出適合工作節(jié)點當(dāng) 前最佳的并發(fā)度€%_=[^£_/5/1提交給決策與任務(wù)分發(fā)模塊。
[0037] (3)決策與任務(wù)分發(fā)模塊根據(jù)當(dāng)前工作節(jié)點的并發(fā)度信息CUurrent,以及信息采樣 與分析模塊提交的CL be3St,用CLbe3St直接賦值來更新當(dāng)前的并發(fā)度信息CUurre3nt和采樣次數(shù) SN。最后任務(wù)分發(fā)模塊根據(jù)更新后的CUurrent值和工作節(jié)點當(dāng)前正在運行的線程任務(wù)數(shù)量 T_決策剩余線程任務(wù)是否分發(fā)到工作節(jié)點,當(dāng)時,繼續(xù)分發(fā)任務(wù)到該工作子 節(jié)點,并且更新TnUm = TnUm+l 〇
[0038] (4)信息采樣與分析模塊在收集采樣數(shù)據(jù)的次數(shù)未達(dá)到SN的過程中,如果收集到 CUP <CUurre3nt時,說明當(dāng)前內(nèi)存資源競爭非常激烈,按照原來的CUurmt值分發(fā)任務(wù),不能 快速的緩解競爭壓力,需要實時做出調(diào)整CU umnt=CUP。
[0039] 本領(lǐng)域的技術(shù)人員容易理解,以上所述僅為本發(fā)明的較佳實施例而已,并不用以 限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含 在本發(fā)明的保護(hù)范圍之內(nèi)。
【主權(quán)項】
1. 一種解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存資源激烈競爭的系統(tǒng),其特征在于,包括內(nèi)存信息 反饋模塊、信息采樣與分析模塊、決策與任務(wù)分發(fā)模塊,其中: 內(nèi)存信息反饋模塊用于對運行中的線程任務(wù)進(jìn)行內(nèi)存使用情況的監(jiān)測,并將收集的內(nèi) 存信息轉(zhuǎn)化后反饋給信息采樣與分析模塊; 信息采樣與分析模塊用于動態(tài)調(diào)控各個工作節(jié)點信息的采樣次數(shù),并且達(dá)到指定的采 樣次數(shù)后對數(shù)據(jù)進(jìn)行分析,計算出當(dāng)前工作節(jié)點的最佳CPU與內(nèi)存比例,并將結(jié)果數(shù)據(jù)提交 給決策與任務(wù)分發(fā)模塊; 決策與任務(wù)分發(fā)模塊根據(jù)分析得到的信息和當(dāng)前工作節(jié)點的任務(wù)運行信息,決策控制 是否分發(fā)新的任務(wù)到工作節(jié)點進(jìn)行計算操作,實現(xiàn)對CHJ與內(nèi)存使用關(guān)系的有效限制。2. 根據(jù)權(quán)利要求1所述的解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存資源激烈競爭的系統(tǒng),其特征在 于,內(nèi)存信息反饋模塊用于對運行中的線程任務(wù)進(jìn)行內(nèi)存使用情況的監(jiān)測,統(tǒng)計線程任務(wù) 執(zhí)行過程中消耗的內(nèi)存量,同時也統(tǒng)計當(dāng)內(nèi)存不足時,從內(nèi)存中溢出到磁盤的數(shù)據(jù)量,根據(jù) 內(nèi)存實際消耗的總量和當(dāng)前的工作節(jié)點所分配的最大CPU核數(shù),計算最佳并發(fā)度信息反饋 給信息采樣與分析模塊。3. 根據(jù)權(quán)利要求1或2所述的解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存資源激烈競爭的系統(tǒng),其特征 在于,內(nèi)存信息反饋模塊收集的內(nèi)存信息包括線程任務(wù)所使用的容器占用的內(nèi)存大小,工 作節(jié)點用于計算的最大內(nèi)存值,內(nèi)存空間不足時數(shù)據(jù)溢出到磁盤的大小,工作節(jié)點所擁有 的CPU資源數(shù)。4. 根據(jù)權(quán)利要求1或2所述的解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存資源激烈競爭的系統(tǒng),其特征 在于,內(nèi)存信息反饋模塊的監(jiān)測功能的實現(xiàn)是通過在工作節(jié)點調(diào)用大數(shù)據(jù)處理系統(tǒng)中與內(nèi) 存相關(guān)的關(guān)鍵函數(shù),關(guān)鍵函數(shù)包括有內(nèi)存分配函數(shù)、內(nèi)存釋放函數(shù)、獲取內(nèi)存配置信息與 CHJ核數(shù)函數(shù)、獲取任務(wù)運行信息函數(shù)。5. 根據(jù)權(quán)利要求1或2所述的解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存資源激烈競爭的系統(tǒng),其特征 在于,信息采樣與分析模塊通過在主節(jié)點動態(tài)調(diào)控各個工作節(jié)點信息的采樣次數(shù),在收集 信息的過程中選擇性地調(diào)整工作節(jié)點CPU與內(nèi)存資源比例,并且在達(dá)到指定的采樣次數(shù)后 對收集到的數(shù)據(jù)進(jìn)行處理分析,來判斷工作節(jié)點整體的內(nèi)存資源競爭激烈情況,并確定工 作節(jié)點當(dāng)前最佳的CHJ與內(nèi)存資源比例。6. 根據(jù)權(quán)利要求1或2所述的解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存資源激烈競爭的系統(tǒng),其特征 在于,決策與任務(wù)分發(fā)模塊通過在主節(jié)點對原有的任務(wù)調(diào)度機(jī)制進(jìn)行擴(kuò)展,加入對內(nèi)存資 源和CPU資源的綜合考慮,根據(jù)采樣結(jié)果和當(dāng)前工作節(jié)點已經(jīng)分配的任務(wù)情況,綜合考慮后 決定是否繼續(xù)分發(fā)任務(wù)到工作節(jié)點,來協(xié)調(diào)工作節(jié)點CHJ和內(nèi)存資源的合理使用。7. 根據(jù)權(quán)利要求1或2所述的解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存資源激烈競爭的系統(tǒng),其特征 在于,內(nèi)存信息反饋模塊部署在每個工作節(jié)點上,追蹤每一個線程任務(wù)運行過程中消耗的 內(nèi)存量S mem,并且記錄內(nèi)存不足時,內(nèi)存數(shù)據(jù)溢出到磁盤的數(shù)據(jù)量Sspm,接著當(dāng)線程任務(wù)運 行完后,根據(jù)線程任務(wù)消耗的內(nèi)存總量S_+S spm,以及工作節(jié)點分配給計算所需的最大內(nèi) 存空間Smax和線程任務(wù)所允許的最大并發(fā)度CL max(申請的CPU核數(shù)),計算出適合當(dāng)前資源環(huán) 境的最佳并發(fā)度CUP反饋給主節(jié)點的信息采樣與分析模塊;當(dāng)S spm = 0時,說明當(dāng)前的內(nèi)存 比較充足,CUP = CLmax;否則,內(nèi)存資源不足,競爭激烈,8. 根據(jù)權(quán)利要求5所述的解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存資源激烈競爭的系統(tǒng),其特征在 于,信息采樣與分析模塊通過哈希表來管理采樣數(shù)據(jù),將各個工作節(jié)點收集的采樣數(shù)據(jù)快 速地分配到各個對應(yīng)的處理模塊進(jìn)行分析處理,收到采樣數(shù)據(jù)后,更新用來記錄對應(yīng)工作 節(jié)正在運行的線程任務(wù)數(shù)量T num = Tnum-l;每個模塊在指定的采樣次數(shù)SN達(dá)到之后,將累加 收集到的所有采樣數(shù)據(jù)CUP,得到Σ ,最后計算出適合工作節(jié)點當(dāng)前最佳的并 iG-SN- 發(fā)度交給決策與任務(wù)分發(fā)模塊。9. 根據(jù)權(quán)利要求6所述的解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存資源激烈競爭的系統(tǒng),其特征在 于,決策與任務(wù)分發(fā)模塊根據(jù)當(dāng)前工作節(jié)點的并發(fā)度信息CU ur_t,以及信息采樣與分析模 塊提交的CLbe3St,用CL be3St直接賦值來更新當(dāng)前的并發(fā)度信息CUurre3nt和采樣次數(shù)SN;最后任 務(wù)分發(fā)模塊根據(jù)更新后的CU urrent值和工作節(jié)點當(dāng)前正在運行的線程任務(wù)數(shù)量Tnum決策剩 余線程任務(wù)是否分發(fā)到工作節(jié)點,當(dāng)CU urre3nt>Tnum時,繼續(xù)分發(fā)任務(wù)到該工作子節(jié)點,并且 更新 Tnum = Tnum+1。10. 根據(jù)權(quán)利要求5所述的解決大數(shù)據(jù)處理系統(tǒng)中內(nèi)存資源激烈競爭的系統(tǒng),其特征在 于,在信息采樣與分析模塊收集采樣數(shù)據(jù)的次數(shù)未達(dá)到SN的過程中,如果收集到CU P< CUurre3I^t,說明當(dāng)前內(nèi)存資源競爭非常激烈,按照原來的CUurre3nt值分發(fā)任務(wù),不能快速的 緩解競爭壓力,需要實時做出調(diào)整CU urre3nt=CUP。
【文檔編號】G06F9/50GK105868025SQ201610189095
【公開日】2016年8月17日
【申請日】2016年3月30日
【發(fā)明人】石宣化, 金海 , 裴成, 張 雄
【申請人】華中科技大學(xué)