華為云計算 云知識 考鯤鵬BoostKit微認證,贏???,兌華為P40 pro!
考鯤鵬BoostKit微認證,贏???,兌華為P40 pro!

“新基建”下,大數(shù)據(jù)等關鍵技術高速發(fā)展,隨著數(shù)據(jù)呈現(xiàn)爆炸式的增長,數(shù)據(jù)處理的場景對計算和存儲的要求越來越高。大數(shù)據(jù)就是一門未處理海量數(shù)據(jù)而誕生的技術,包括數(shù)據(jù)的收集,處理和存儲。

今天我將為您揭秘如何通過對關鍵參數(shù)及相關組件的調整,使作業(yè)運行效率達到最優(yōu)。

首先我將為大家介紹大數(shù)據(jù)場景為什么需要調優(yōu),并結合大數(shù)據(jù)組件特點和業(yè)務場景,告知大家基本調優(yōu)思路和常用的性能監(jiān)控工具;然后,以HBase的調優(yōu)案例為例,介紹大數(shù)據(jù)組件調優(yōu)過程中可能會遇到的問題及調優(yōu)思想,最后,在實踐部分簡要介紹Hadoop組件的調優(yōu)流程。

通過本文,您將了解到大數(shù)據(jù)調優(yōu)過程中的常見問題,初步學習大數(shù)據(jù)調優(yōu)的基本思路,并采用調優(yōu)手段解決問題。

大數(shù)據(jù)并行計算特點天然匹配鯤鵬多核架構

大數(shù)據(jù)介紹及組件關系分布

大數(shù)據(jù)是集收集,處理,存儲為一體的技術總稱。在海量數(shù)據(jù)處理的場景,大數(shù)據(jù)對計算及存儲的要求較高,普遍以集群形式存在。不同的組件有不同的功能體現(xiàn)。如圖,這些就是一些大數(shù)據(jù)生態(tài)中常用的組件以及對應的功能的體現(xiàn)。

大數(shù)據(jù)是集收集,處理,存儲為一體的技術總稱

大數(shù)據(jù)普遍是以集群的形式存在的,但有任務需要處理海量的數(shù)據(jù)時,一般會把任務先分解成更小規(guī)模的任務,通過增加并發(fā)的方式來提高性能。而鯤鵬多核計算的特點能進一步的提高大數(shù)據(jù)任務的并發(fā)度與大數(shù)據(jù)多任務并行執(zhí)行的需求天然匹配。

此處以圖中MapReduce模型為例。

MapReduce模型

我們假設數(shù)據(jù)量比較大,比如說是1TB,首先我們將原數(shù)據(jù)進行分割。比如說128MB一份,分成若干份,再分配給MapReduce進行映射、排序、合并,最后再將結果進行匯總,整個任務就是統(tǒng)計每個單詞出現(xiàn)的頻率。MapReduce就是將任務分成多個子任務進行統(tǒng)計,再合并結果,在結果上其實是一樣的,但并發(fā)度和資源利用率上就有所提升。

但是,為了獲得更好的性能,仍需根據(jù)硬件配置和應用程序特點,對軟硬件系統(tǒng)做進一步的優(yōu)化。調優(yōu)原因如下:

-組件參數(shù)默認值保守: 應用程序和操作系統(tǒng)為了兼容不同環(huán)境,涉及性能的參數(shù)默認值較小,不能發(fā)揮集群資源的最大性能

-合理配置上下游組件的資源分配: 同一套大 數(shù)據(jù)集 群環(huán)境中會安裝不同的組件,而不同組件對CPU、磁盤、網(wǎng)絡等資源需求不同,需合理配置

-性能瓶頸因硬件配置而異: 因硬件環(huán)境常無法統(tǒng)一,當某個硬件資源提前到達瓶頸,需根據(jù)實際硬件配置進行針對性的調優(yōu)

那么常見的調優(yōu)思路有哪些呢?

第一部分是基礎調優(yōu)操作,確保集群擁有較優(yōu)的性能:

-常用調優(yōu)思路:當客戶端壓力不足以發(fā)揮大數(shù)據(jù)集群的性能時,需優(yōu)先提高客戶端壓力

-保障測試壓力:根據(jù)組件特點,盡可能多地分配該組件依賴的物理資源(CPU、磁盤、內存、網(wǎng)絡等)

第二部分為重復資源監(jiān)控、確定瓶頸、優(yōu)化動作,可以針對性解決問題,提升性能

-分配物理資源:使用性能監(jiān)控工具觀察系統(tǒng)狀態(tài)并進行記錄,如CPU、磁盤、內存、網(wǎng)絡、應用程序GC狀況、熱點函數(shù)等

-監(jiān)控資源使用情況:基于組件、應用程序特點和監(jiān)控數(shù)據(jù)識別性能瓶頸,瓶頸可能是物理資源、組件參數(shù)、測試工具、測試組網(wǎng)、JVM、鎖等

-確定性能瓶頸:根據(jù)識別的瓶頸針對性地進行優(yōu)化,其中,優(yōu)化手段有時并不會生效,需進一步確定是否鎖定瓶頸及優(yōu)化手段是否正確

那么常見的調優(yōu)問題有哪些呢?

-應用層面:CPU占用率低、內存消耗盡但CPU等資源還有富余、GC頻繁、CPU占用率高

-硬件層面:磁盤IO占用率高,CPU iowait高、網(wǎng)絡IO占用率高、內存占用多

-客戶端:組件參數(shù)已確保較優(yōu),但性能不好

以上,我們介紹了大數(shù)據(jù)場景,為何需要調優(yōu)?通過調優(yōu)能解決哪些類型的問題,然后結合并結合大數(shù)據(jù)組件特點和業(yè)務場景,列舉了基本調優(yōu)思路和常用的性能監(jiān)控工具,列舉一些常用的調優(yōu)思路。那么性能監(jiān)控的工具有哪些,我們又如何進行實際的調優(yōu)操作呢?

歡迎學習華為云學院微認證《基于BoostKit的大數(shù)據(jù)性能調優(yōu)實踐》,了解詳細實踐內容。該課程非常適合對大數(shù)據(jù)組件調優(yōu)感興趣的開發(fā)者,或大數(shù)據(jù)各個組件的初學者,該課程介紹了介紹大數(shù)據(jù)主要組件性能調優(yōu)的經(jīng)驗,以Hbase為例介紹調優(yōu)過程,并通過實踐鞏固調優(yōu)理論,學習本課程后,你能夠對大數(shù)據(jù)組件調優(yōu)有基本的理解和思路,能根據(jù)特定場景對特定組件進行調優(yōu)

快來跟我一起學習吧,限時0元考Kunpeng BoostKit全新上線微認證,一站式在線學習、實驗與考試,還可贏百萬碼豆和“牛轉乾坤”福卡,兌換華為P40pro、華為MatePad、華為WATCH GT等精美禮品!

→點擊直達華為云學院,get更多新技能