大數(shù)據(jù)測(cè)試要點(diǎn)

一.功能性測(cè)試

大數(shù)據(jù)功能主要涉及系統(tǒng)實(shí)現(xiàn)面向大數(shù)據(jù)分析應(yīng)用的POSIXAPI,包括文件讀取與訪問(wèn)控制,元數(shù)據(jù)操作,鎖操作等功能; 大數(shù)據(jù)分析系統(tǒng)的POSIX語(yǔ)義不同,實(shí)現(xiàn)的文件系統(tǒng)API也不同,功能測(cè)試要覆蓋到大數(shù)據(jù)系統(tǒng)涉及實(shí)現(xiàn)的API和功能點(diǎn); 功能測(cè)試工作量大,應(yīng)該重點(diǎn)考慮應(yīng)用自動(dòng)化測(cè)試方法進(jìn)行,同時(shí)結(jié)合手動(dòng)測(cè)試補(bǔ)充,自動(dòng)化工具推薦ltp,fstest和locktests。 在多個(gè)節(jié)點(diǎn)上處理大數(shù)據(jù)的過(guò)程中,存在由于‘無(wú)用數(shù)據(jù)’和數(shù)據(jù)質(zhì)量問(wèn)題帶來(lái)的各種問(wèn)題。功能測(cè)試主要用以識(shí)別由于編碼錯(cuò)誤或節(jié)點(diǎn)配置錯(cuò)誤帶來(lái)的數(shù)據(jù)問(wèn)題。

其包括以下幾個(gè)階段:

a.數(shù)據(jù)導(dǎo)入/預(yù)處理驗(yàn)證階段

?根據(jù)具體的應(yīng)用背景和業(yè)務(wù)需求,各種數(shù)據(jù)源如網(wǎng)絡(luò)日志,物聯(lián)網(wǎng),社會(huì)網(wǎng)絡(luò)及互聯(lián)網(wǎng)文本和文件等被按需加載到HDFS中待處理。在這個(gè)過(guò)程可能會(huì)由于不正確或不復(fù)制,存儲(chǔ)而導(dǎo)致的錯(cuò)誤數(shù)據(jù),對(duì)于這種情況,可采用以下方式進(jìn)行測(cè)試: 1.輸入文件與源文件進(jìn)行比對(duì),保證數(shù)據(jù)的一致性; 2.根據(jù)數(shù)據(jù)需求來(lái)保證獲取數(shù)據(jù)的準(zhǔn)確性; 3.驗(yàn)證文件被正確的加載進(jìn)HDFS,且被分割,復(fù)制到不同的數(shù)據(jù)節(jié)點(diǎn)中。

b.MapReduce數(shù)據(jù)輸出驗(yàn)證階段

當(dāng)數(shù)據(jù)加載進(jìn)行HDFS后,mapreduce開始對(duì)來(lái)自不同數(shù)據(jù)源的數(shù)據(jù)進(jìn)行處理。在這個(gè)過(guò)程中可能會(huì)出現(xiàn)mapreduce處理過(guò)程中的編碼問(wèn)題,如在單一節(jié)點(diǎn)上運(yùn)行正確,在多個(gè)節(jié)點(diǎn)上運(yùn)行不正確的問(wèn)題,包括不正確的聚合,節(jié)點(diǎn)配置,輸出格式等。對(duì)于這個(gè)階段的問(wèn)題,可采用以下驗(yàn)證手段: 1.驗(yàn)證梳理數(shù)據(jù)處理正常完成,輸出文件正常得到; 2.在單個(gè)節(jié)點(diǎn)上驗(yàn)證大數(shù)據(jù)的業(yè)務(wù)邏輯,進(jìn) 而在多節(jié)點(diǎn)上進(jìn)行相同驗(yàn)證; 3.驗(yàn)證mapreduce處理過(guò)程的key/value對(duì)是否正確生產(chǎn); 4.在reduce過(guò)程結(jié)束后驗(yàn)證數(shù)據(jù)的聚集合并是否正確; 5.通過(guò)源文件驗(yàn)證輸出數(shù)據(jù)來(lái)保證數(shù)據(jù)處理正確完成; 6.按照大數(shù)據(jù)業(yè)務(wù)所需,驗(yàn)證輸出數(shù)據(jù)文件格式是否符合要求。

c.驗(yàn)證大數(shù)據(jù)ETL到數(shù)據(jù)倉(cāng)庫(kù)

當(dāng)mapreduce過(guò)程結(jié)束后,產(chǎn)生的數(shù)據(jù)輸出文件將被按需移至數(shù)據(jù)倉(cāng)庫(kù)或其它的事務(wù)型系統(tǒng).在此過(guò)程中,可能會(huì)由于不正確地應(yīng)用轉(zhuǎn)換規(guī)則,從HDFS中提取的數(shù)據(jù)不完全而帶來(lái)問(wèn)題。針對(duì)于這個(gè)階段的問(wèn)題可采用以下方法: 1.驗(yàn)證轉(zhuǎn)換規(guī)則是否正確應(yīng)用; 2.通過(guò)比較目標(biāo)表數(shù)據(jù)和HDFS文件數(shù)據(jù)來(lái)驗(yàn)證是否有數(shù)據(jù)損壞; 3.驗(yàn)證目標(biāo)系統(tǒng)數(shù)據(jù)加載是否成功; 4.驗(yàn)證目標(biāo)系統(tǒng)的數(shù)據(jù)完整性。

Java初高級(jí)一起學(xué)習(xí)分享,共同學(xué)習(xí)才是最明智的選擇,喜歡的話可以我的學(xué)習(xí)群64弍46衣3凌9,或加資料群69似64陸0吧3

d.驗(yàn)證分析報(bào)告 從數(shù)據(jù)倉(cāng)庫(kù)或者Hive中得到的數(shù)據(jù),可通過(guò)報(bào)表工具得到分析報(bào)告;這個(gè)過(guò)程可能會(huì)產(chǎn)生報(bào)表定義不能達(dá)到要求的報(bào)表數(shù)據(jù)問(wèn)題;在這個(gè)過(guò)程中可通過(guò)查詢來(lái)驗(yàn)證報(bào)表是否滿足業(yè)務(wù)要求。

二.非功能性測(cè)試

由于大數(shù)據(jù)面向具體行業(yè)的應(yīng)用,除了功能性測(cè)試,在整個(gè)大數(shù)據(jù)處理框架下需要進(jìn)行非功能性測(cè)試,以下幾種:

a.性能測(cè)試 性能是評(píng)估一個(gè)大數(shù)據(jù)分析系統(tǒng)的最為關(guān)鍵的維度,大數(shù)據(jù)系統(tǒng)性能主要包括吞吐量,任務(wù)完工時(shí)間,內(nèi)存利用率等多個(gè)指標(biāo),可反應(yīng)大數(shù)據(jù)分析平臺(tái)的處理能力,資源利用能力等性能??赏ㄟ^(guò)Hadoop性能監(jiān)控器來(lái)監(jiān)測(cè)運(yùn)行狀態(tài)性能指標(biāo)和瓶頸問(wèn)題,性能測(cè)試采用自動(dòng)化化方式進(jìn)行,測(cè)試系統(tǒng)在不同負(fù)載情況下的性能.

b.容錯(cuò)性測(cè)試 可從部分失效中自動(dòng)恢復(fù),而且不會(huì)驗(yàn)證的影響整體性能,特別地,當(dāng)故障發(fā)生時(shí),大數(shù)據(jù)分析系統(tǒng)應(yīng)該在進(jìn)行恢復(fù)的同時(shí)繼續(xù)以可接受的方式進(jìn)行操作,在發(fā)生錯(cuò)誤時(shí)某種程度上可以繼續(xù)操作,需根據(jù)應(yīng)用場(chǎng)景來(lái)設(shè)計(jì)解決方案和具體部署,然后手動(dòng)測(cè)試。

c.可用性測(cè)試 高可用性已是大數(shù)據(jù)分析不可或缺的特性之一,從而保證數(shù)據(jù)應(yīng)用業(yè)務(wù)的連續(xù)性.大數(shù)據(jù)高可用性對(duì)很多應(yīng)用非常關(guān)鍵,需要嚴(yán)格進(jìn)行測(cè)試和驗(yàn)證,以手動(dòng)測(cè)試為主。

d.擴(kuò)展性測(cè)試 彈性擴(kuò)展能力對(duì)于大數(shù)據(jù)時(shí)代的文件系統(tǒng)尤其重要,文件系統(tǒng)擴(kuò)展性測(cè)試主要包括測(cè)試系統(tǒng)彈性擴(kuò)展能力(擴(kuò)展/回縮)及擴(kuò)展系統(tǒng)帶來(lái)的性能影響,驗(yàn)證是否具有線性擴(kuò)展能力,以手動(dòng)測(cè)試為主。

e.穩(wěn)定性測(cè)試 大數(shù)據(jù)分析系統(tǒng)通常是不間斷長(zhǎng)期運(yùn)行,穩(wěn)定性的重要性不言而喻,穩(wěn)定測(cè)試主要驗(yàn)證系統(tǒng)在長(zhǎng)時(shí)間(7/30/180/365*24)允許下,系統(tǒng)是否仍然能夠正常運(yùn)行,功能是否正常.穩(wěn)定性測(cè)試通常采用自動(dòng)化方式進(jìn)行,LTP,10ZONE,POSTMARK,FIO等工具對(duì)測(cè)試系統(tǒng)產(chǎn)生負(fù)載,同時(shí)需要驗(yàn)證功能。

f.部署方式測(cè)試 大數(shù)據(jù)具備scale-out的特點(diǎn),能夠構(gòu)建大規(guī)模,高性能的文件系統(tǒng)集群。針對(duì)不同應(yīng)用和解決方案,文件系統(tǒng)部署方式會(huì)有顯著不同; 部署方式測(cè)試需要測(cè)試不同場(chǎng)景下的系統(tǒng)部署方式,包括自動(dòng)安裝配置,集群規(guī)模,硬件配置(服務(wù)器,存儲(chǔ),網(wǎng)絡(luò)),自動(dòng)負(fù)載均衡等,這部分測(cè)試不大可能進(jìn)行自動(dòng)化測(cè)試,需要根據(jù)應(yīng)用場(chǎng)景來(lái)設(shè)計(jì)解決方案和具體部署,再進(jìn)行手動(dòng)測(cè)試.

g.數(shù)據(jù)一致性測(cè)試 這里的數(shù)據(jù)一致性是指文件系統(tǒng)中的數(shù)據(jù)與從外部寫入前的數(shù)據(jù)保持一致,即寫入數(shù)據(jù)與讀出數(shù)據(jù)始終是一致的.數(shù)據(jù)一致性能夠表明文件系統(tǒng)可保證數(shù)據(jù)的完整性,不會(huì)導(dǎo)致數(shù)據(jù)丟失或數(shù)據(jù)錯(cuò)誤,這是文件系統(tǒng)最基本的功能,測(cè)試可用diff,md5sum編寫腳本自動(dòng)化測(cè)試,LTP也提供了數(shù)據(jù)一致性的測(cè)試工具。

h.壓力測(cè)試 大數(shù)據(jù)分析系統(tǒng)的負(fù)載能力是存在上限的,系統(tǒng)過(guò)載時(shí),系統(tǒng)就可能存在性能下降,功能異常,拒絕訪問(wèn)等問(wèn)題。壓力測(cè)試是驗(yàn)證系統(tǒng)造大壓力下,包括數(shù)據(jù)多客戶端,高OPS壓力,高IOPS/吞吐量壓力,系統(tǒng)是否仍然能夠正常運(yùn)行,功能是否正常,系統(tǒng)資源消耗情況,從而為大數(shù)據(jù)運(yùn)營(yíng)提供依據(jù)。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容