基于RIA的Web網(wǎng)管客戶端的大數(shù)據(jù)快速導(dǎo)出方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及網(wǎng)管系統(tǒng)中的數(shù)據(jù)導(dǎo)出領(lǐng)域,具體是涉及一種基于RIA (RichInternet Applicat1n,富互聯(lián)網(wǎng)應(yīng)用)的Web網(wǎng)管客戶端的大數(shù)據(jù)快速導(dǎo)出方法及系統(tǒng)。
【背景技術(shù)】
[0002]網(wǎng)絡(luò)管理系統(tǒng)是一種軟硬件結(jié)合、并以軟件為主的分布式網(wǎng)絡(luò)應(yīng)用系統(tǒng),其目的在于管理網(wǎng)絡(luò),保證網(wǎng)絡(luò)高效、正常的運(yùn)行。網(wǎng)絡(luò)管理系統(tǒng)具有數(shù)據(jù)量大、性能要求高等特點(diǎn)。
[0003]隨著信息社會(huì)的發(fā)展,用戶越來(lái)越重視類型為Web的網(wǎng)絡(luò)管理系統(tǒng)(以下簡(jiǎn)稱Web網(wǎng)管系統(tǒng)),Web網(wǎng)管系統(tǒng)包括Web網(wǎng)管客戶端和服務(wù)器端。為了實(shí)現(xiàn)高效的管理Web網(wǎng)管系統(tǒng),Web網(wǎng)管客戶端需要導(dǎo)出各種統(tǒng)計(jì)報(bào)表,以便分析網(wǎng)管運(yùn)行狀態(tài),由于網(wǎng)管系統(tǒng)中有大量的數(shù)據(jù)計(jì)算和數(shù)據(jù)轉(zhuǎn)換,受制于平臺(tái)的限制,這些數(shù)據(jù)及轉(zhuǎn)換不能完全由Web網(wǎng)管客戶端去獨(dú)立完成,所以需要Web網(wǎng)管系統(tǒng)的服務(wù)端支持,來(lái)導(dǎo)出大數(shù)據(jù)。
[0004]現(xiàn)有Web網(wǎng)管系統(tǒng)的架構(gòu),應(yīng)用的是基于頁(yè)面和服務(wù)器端數(shù)據(jù)傳遞的開(kāi)發(fā)模式,Web網(wǎng)管系統(tǒng)的架構(gòu)將應(yīng)用程序的表現(xiàn)層建立于HTML (Hypertext Markup Language,超文本標(biāo)記語(yǔ)言)頁(yè)面之上。
[0005]基于現(xiàn)有的Web網(wǎng)管系統(tǒng),Web網(wǎng)管客戶端的緩存數(shù)據(jù)一般為200MB左右,現(xiàn)有的Web網(wǎng)管系統(tǒng)需要統(tǒng)計(jì)的數(shù)據(jù)量,遠(yuǎn)遠(yuǎn)超過(guò)Web網(wǎng)管客戶端所能緩存的數(shù)據(jù)量,并且,經(jīng)過(guò)一段時(shí)間之后,統(tǒng)計(jì)數(shù)據(jù)會(huì)變成無(wú)效數(shù)據(jù),因此,每次導(dǎo)出Web網(wǎng)管客戶端的數(shù)據(jù)時(shí),需要從服務(wù)器端讀取轉(zhuǎn)換后的數(shù)據(jù),這樣就保證導(dǎo)出的數(shù)據(jù)具有時(shí)效性及完整性,方便用戶分析網(wǎng)管的運(yùn)行狀態(tài)。
[0006]隨著RIA(Rich Internet Applicat1n,富互聯(lián)網(wǎng)應(yīng)用)技術(shù)的不斷發(fā)展,提供了對(duì)Web網(wǎng)管客戶端的獨(dú)立存儲(chǔ)區(qū)(Isolated Storage)的訪問(wèn)API (Applicat1nProgramming Interface,應(yīng)用程序編程接口),使得大量數(shù)據(jù)可以緩存到獨(dú)立存儲(chǔ)區(qū)中,基于RIA的網(wǎng)管系統(tǒng)在用戶授權(quán)的條件下,對(duì)獨(dú)立存儲(chǔ)區(qū)進(jìn)行任意訪問(wèn)。
[0007]現(xiàn)有Web網(wǎng)管客戶端無(wú)法緩存Web網(wǎng)管系統(tǒng)里的所有數(shù)據(jù),并且,經(jīng)過(guò)一段時(shí)間之后,統(tǒng)計(jì)數(shù)據(jù)會(huì)變成無(wú)效數(shù)據(jù)。因此,用戶需要手工多次調(diào)用服務(wù)器端獲取數(shù)據(jù),只能分批導(dǎo)出當(dāng)前用戶所統(tǒng)計(jì)的數(shù)據(jù),導(dǎo)致Web網(wǎng)管客戶端的數(shù)據(jù)導(dǎo)出效率低下,影響用戶的體驗(yàn)。
【發(fā)明內(nèi)容】
[0008]本發(fā)明的目的是為了克服上述【背景技術(shù)】的不足,提供一種基于RIA的Web網(wǎng)管客戶端的大數(shù)據(jù)快速導(dǎo)出方法及系統(tǒng),能減少Web網(wǎng)管客戶端的物理內(nèi)存的占用率,快速導(dǎo)出網(wǎng)管系統(tǒng)中的數(shù)據(jù),提高Web網(wǎng)管客戶端的性能,有效提升用戶體驗(yàn)。
[0009]本發(fā)明提供一種基于RIA的Web網(wǎng)管客戶端的大數(shù)據(jù)快速導(dǎo)出方法,包括以下步驟:
[0010]A、Web網(wǎng)管客戶端初始化后,在用戶的指示下,根據(jù)Web網(wǎng)管客戶端從服務(wù)器端統(tǒng)計(jì)的數(shù)據(jù)量,評(píng)估待導(dǎo)出數(shù)據(jù)的規(guī)模,在Web網(wǎng)管客戶端的硬盤中創(chuàng)建用于存儲(chǔ)數(shù)據(jù)的獨(dú)立存儲(chǔ)區(qū);
[0011]B、檢測(cè)獨(dú)立存儲(chǔ)區(qū)是否已啟用,若未啟用,則啟用獨(dú)立存儲(chǔ)區(qū),并重新檢測(cè)獨(dú)立存儲(chǔ)區(qū)是否已啟用,以確認(rèn)獨(dú)立存儲(chǔ)區(qū)已經(jīng)開(kāi)啟;若已啟用,則判斷獨(dú)立存儲(chǔ)區(qū)中是否有舊的數(shù)據(jù)文件,若是,則刪除獨(dú)立存儲(chǔ)區(qū)中舊的數(shù)據(jù)文件,并重新判斷獨(dú)立存儲(chǔ)區(qū)中是否有舊的數(shù)據(jù)文件,以確認(rèn)獨(dú)立存儲(chǔ)區(qū)中沒(méi)有舊的數(shù)據(jù)文件;否則,根據(jù)待導(dǎo)出數(shù)據(jù)的規(guī)模,判斷獨(dú)立存儲(chǔ)區(qū)的空間配額大小是否足夠,若大小足夠,則結(jié)束檢測(cè);否則,計(jì)算獨(dú)立存儲(chǔ)區(qū)需增加的空間;根據(jù)獨(dú)立存儲(chǔ)區(qū)需增加的空間,在用戶操作界面顯示擴(kuò)容信息;待用戶確認(rèn)擴(kuò)容信息后,對(duì)獨(dú)立存儲(chǔ)區(qū)進(jìn)行擴(kuò)容;
[0012]C、根據(jù)待導(dǎo)出數(shù)據(jù)的規(guī)模,確定Web網(wǎng)管客戶端從服務(wù)器端每次獲取數(shù)據(jù)量的大小,計(jì)算獲取的次數(shù);按照獲取的次數(shù),分批從服務(wù)器端獲取數(shù)據(jù);對(duì)獲取的數(shù)據(jù)按照設(shè)置的條數(shù)進(jìn)行分組,并對(duì)組進(jìn)行編號(hào),將獲取的數(shù)據(jù)按編號(hào)分批緩存在獨(dú)立存儲(chǔ)區(qū)中,以保證獨(dú)立存儲(chǔ)區(qū)中的數(shù)據(jù)存放有序;
[0013]D、按編號(hào)從獨(dú)立存儲(chǔ)區(qū)中分批讀取緩存的數(shù)據(jù),直到讀取數(shù)據(jù)完畢;按照導(dǎo)出數(shù)據(jù)的格式要求,對(duì)讀取的數(shù)據(jù)進(jìn)行格式轉(zhuǎn)化;
[0014]E、按照導(dǎo)出數(shù)據(jù)的格式要求,在Web網(wǎng)管客戶端的內(nèi)存中建立統(tǒng)計(jì)報(bào)表,并確定統(tǒng)計(jì)報(bào)表的最大容納量;將格式轉(zhuǎn)化后的數(shù)據(jù)按編號(hào)分批導(dǎo)出,保存在統(tǒng)計(jì)報(bào)表中,直至當(dāng)前統(tǒng)計(jì)報(bào)表中的數(shù)據(jù)量達(dá)到統(tǒng)計(jì)報(bào)表的最大容納量,在Web網(wǎng)管客戶端的內(nèi)存中新建統(tǒng)計(jì)報(bào)表,并按順序給新建的統(tǒng)計(jì)報(bào)表命名,將格式轉(zhuǎn)化后的數(shù)據(jù)繼續(xù)分批導(dǎo)出,保存在新建的統(tǒng)計(jì)報(bào)表中,直至導(dǎo)出完畢;刪除獨(dú)立存儲(chǔ)區(qū)中緩存的數(shù)據(jù)。
[0015]在上述技術(shù)方案的基礎(chǔ)上,步驟A中還包括以下步驟:用戶僅在首次使用時(shí)指示創(chuàng)建獨(dú)立存儲(chǔ)區(qū);用戶再次使用時(shí),不再指示創(chuàng)建獨(dú)立存儲(chǔ)區(qū),Web網(wǎng)管客戶端初始化后,直接轉(zhuǎn)到步驟B。
[0016]在上述技術(shù)方案的基礎(chǔ)上,步驟C中所述獲取的次數(shù)=待導(dǎo)出數(shù)據(jù)的規(guī)模+Web網(wǎng)管客戶端從服務(wù)器端每次獲取數(shù)據(jù)量的大小。
[0017]在上述技術(shù)方案的基礎(chǔ)上,步驟C中所述Web網(wǎng)管客戶端從服務(wù)器端每次獲取數(shù)據(jù)量的大小為1000條;步驟C中對(duì)獲取的數(shù)據(jù)按照每組200條進(jìn)行分組。
[0018]在上述技術(shù)方案的基礎(chǔ)上,步驟E中所述統(tǒng)計(jì)報(bào)表的最大容納量為10000條。
[0019]本發(fā)明還提供一種基于RIA的Web網(wǎng)管客戶端的大數(shù)據(jù)快速導(dǎo)出系統(tǒng),包括Web網(wǎng)管客戶端和服務(wù)器端,所述Web網(wǎng)管客戶端包括創(chuàng)建單元、檢測(cè)單元、擴(kuò)容單元、獲取單元、緩存單元、讀取單元、格式轉(zhuǎn)換單元、建表單元、導(dǎo)出單元、清理單元,其中:
[0020]所述創(chuàng)建單元用于:Web網(wǎng)管客戶端初始化后,在用戶的指示下,根據(jù)Web網(wǎng)管客戶端從服務(wù)器端統(tǒng)計(jì)的數(shù)據(jù)量,評(píng)估待導(dǎo)出數(shù)據(jù)的規(guī)模,在Web網(wǎng)管客戶端中創(chuàng)建用于存儲(chǔ)數(shù)據(jù)的獨(dú)立存儲(chǔ)區(qū);
[0021]所述檢測(cè)單元用于:檢測(cè)獨(dú)立存儲(chǔ)區(qū)是否已啟用,若未啟用,則啟用獨(dú)立存儲(chǔ)區(qū),并重新檢測(cè)獨(dú)立存儲(chǔ)區(qū)是否已啟用,以確認(rèn)獨(dú)立存儲(chǔ)區(qū)已經(jīng)開(kāi)啟;若已啟用,則檢測(cè)獨(dú)立存儲(chǔ)區(qū)中是否有舊的數(shù)據(jù)文件,若是,則刪除獨(dú)立存儲(chǔ)區(qū)中舊的數(shù)據(jù)文件,并重新檢測(cè)獨(dú)立存儲(chǔ)區(qū)中是否有舊的數(shù)據(jù)文件,以確認(rèn)獨(dú)立存儲(chǔ)區(qū)中無(wú)舊的數(shù)據(jù)文件;否則,根據(jù)待導(dǎo)出數(shù)據(jù)的規(guī)模,檢測(cè)獨(dú)立存儲(chǔ)區(qū)的空間配額大小是否足夠,若大小足夠,則結(jié)束檢測(cè);否則,計(jì)算獨(dú)立存儲(chǔ)區(qū)需增加的空間;
[0022]所述擴(kuò)容單元用于:根據(jù)獨(dú)立存儲(chǔ)區(qū)需增加的空間,在用戶操作界面顯示擴(kuò)容信息;待用戶確認(rèn)擴(kuò)容信息后,對(duì)獨(dú)立存儲(chǔ)區(qū)進(jìn)行擴(kuò)容;
[0023]所述獲取單元用于:根據(jù)待導(dǎo)出數(shù)據(jù)的規(guī)模,確定Web網(wǎng)管客戶端從服務(wù)器端每次獲取數(shù)據(jù)量的大小,計(jì)算獲取的次數(shù);按照獲取的次數(shù),分批從服務(wù)器端獲取數(shù)據(jù);
[0024]所述緩存單元用于:對(duì)獲取的數(shù)據(jù)按照設(shè)置的條數(shù)進(jìn)行分組,并對(duì)組進(jìn)行編號(hào),將獲取的數(shù)據(jù)按編號(hào)分批緩存在獨(dú)立存儲(chǔ)區(qū)中,以保證獨(dú)立存儲(chǔ)區(qū)中的數(shù)據(jù)存放有序;
[0025]所述讀取單元用于:按編號(hào)從獨(dú)立存儲(chǔ)區(qū)中分批讀取緩存的數(shù)據(jù),直到讀取數(shù)據(jù)完畢;
[0026]所述格式轉(zhuǎn)換單元,用于:按照導(dǎo)出數(shù)據(jù)的格式要求,對(duì)讀取的數(shù)據(jù)進(jìn)行格式轉(zhuǎn)化;
[0027]所述建表單元用于:按照導(dǎo)出數(shù)據(jù)的格式要求,在Web網(wǎng)管客戶端的內(nèi)存中建立統(tǒng)計(jì)報(bào)表,并確定統(tǒng)計(jì)報(bào)表的最大容納量;
[0028]所述導(dǎo)出單元用于:將格式轉(zhuǎn)化后的數(shù)據(jù)按編號(hào)分批導(dǎo)出,保存在統(tǒng)計(jì)報(bào)表中,直至當(dāng)前統(tǒng)計(jì)報(bào)表中的數(shù)據(jù)量達(dá)到統(tǒng)計(jì)報(bào)表的最大容納量,導(dǎo)出單元指示建表單元在Web網(wǎng)管客戶端的內(nèi)存中新建統(tǒng)計(jì)報(bào)表,并按順序