一種基于r語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選方法和系統(tǒng)的制作方法
【專(zhuān)利摘要】本發(fā)明涉及網(wǎng)絡(luò)技術(shù)領(lǐng)域,特別涉及一種基于R語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選方法和系統(tǒng)。方法包括以下步驟,搭建R語(yǔ)言服務(wù)器;將原關(guān)系型數(shù)據(jù)庫(kù)中的數(shù)據(jù)導(dǎo)入到R語(yǔ)言服務(wù)器內(nèi)存;用戶在業(yè)務(wù)系統(tǒng)的客戶端,自定義用于篩選的R語(yǔ)言腳本;根據(jù)用于篩選的R語(yǔ)言腳本,對(duì)導(dǎo)入到R語(yǔ)言服務(wù)器內(nèi)存中的數(shù)據(jù)進(jìn)行篩選,并返回篩選結(jié)果。本發(fā)明提供用于自定義R語(yǔ)言腳本的可視化界面,可以簡(jiǎn)單靈活地對(duì)R語(yǔ)言腳本進(jìn)行可視化編輯,并且封裝一套符合JDBC接口規(guī)范的客戶端JAR包,復(fù)用性高,可以方便地將對(duì)原關(guān)系型數(shù)據(jù)庫(kù)的訪問(wèn)遷移到R語(yǔ)言服務(wù)器;同時(shí)利用R語(yǔ)言的內(nèi)存計(jì)算特性,實(shí)現(xiàn)了對(duì)數(shù)據(jù)的快速篩選。
【專(zhuān)利說(shuō)明】
一種基于R語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選方法和系統(tǒng)
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及網(wǎng)絡(luò)技術(shù)領(lǐng)域,特別涉及一種基于R語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選方法和系統(tǒng)。
【背景技術(shù)】
[0002]傳統(tǒng)業(yè)務(wù)系統(tǒng)通常采用B/S架構(gòu),將數(shù)據(jù)存放在關(guān)系型數(shù)據(jù)庫(kù)中,整個(gè)業(yè)務(wù)系統(tǒng)的運(yùn)行效率很大程度上依賴于數(shù)據(jù)庫(kù)和服務(wù)器的性能,因此在進(jìn)行大數(shù)據(jù)量查詢時(shí),數(shù)據(jù)庫(kù)往往成為系統(tǒng)的性能瓶頸,尤其在查詢條件過(guò)多時(shí),很難通過(guò)給數(shù)據(jù)庫(kù)增加索引的方式來(lái)進(jìn)行優(yōu)化。而R語(yǔ)言是一套完整的數(shù)據(jù)處理、計(jì)算系統(tǒng),基于其強(qiáng)大的數(shù)據(jù)運(yùn)算能力,尤其是向量、矩陣方面的運(yùn)算能力,在數(shù)據(jù)存儲(chǔ)和處理領(lǐng)域,能夠提供相比傳統(tǒng)關(guān)系型數(shù)據(jù)庫(kù)更快捷的處理速度,從而提高數(shù)據(jù)處理的效率。
【發(fā)明內(nèi)容】
[0003]本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種基于R語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選方法和系統(tǒng),解決了現(xiàn)有技術(shù)進(jìn)行大數(shù)據(jù)量篩選時(shí),速度慢且難以對(duì)篩選過(guò)程進(jìn)行優(yōu)化的技術(shù)問(wèn)題。
[0004]本發(fā)明解決上述技術(shù)問(wèn)題的技術(shù)方案如下:一種基于R語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選方法,包括以下步驟,
[0005]步驟I,搭建R語(yǔ)言服務(wù)器;
[0006]步驟2,將原關(guān)系型數(shù)據(jù)庫(kù)中的數(shù)據(jù)導(dǎo)入到所述R語(yǔ)言服務(wù)器內(nèi)存;
[0007]步驟3,用戶在業(yè)務(wù)系統(tǒng)的客戶端,自定義用于篩選的R語(yǔ)言腳本;
[0008]步驟4,根據(jù)所述用于篩選的R語(yǔ)言腳本,對(duì)導(dǎo)入到R語(yǔ)言服務(wù)器內(nèi)存中的數(shù)據(jù)進(jìn)行篩選,并返回篩選結(jié)果。
[0009]本發(fā)明的有益效果是:本發(fā)明提供用于自定義R語(yǔ)言腳本的可視化界面,可以簡(jiǎn)單靈活地對(duì)R語(yǔ)言腳本進(jìn)行可視化編輯,并且封裝一套符合JDBC接口規(guī)范的客戶端JAR包,復(fù)用性高,可以方便地將對(duì)原關(guān)系型數(shù)據(jù)庫(kù)的訪問(wèn)迀移到R語(yǔ)言服務(wù)器;同時(shí)利用R語(yǔ)言的內(nèi)存計(jì)算特性,實(shí)現(xiàn)了對(duì)數(shù)據(jù)的快速篩選。
[0010]在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進(jìn)。
[0011]進(jìn)一步,步驟2具體為:編寫(xiě)用于讀取數(shù)據(jù)的R語(yǔ)言腳本,通過(guò)調(diào)用shell將指定的關(guān)系型數(shù)據(jù)庫(kù)表數(shù)據(jù)加載到所述R語(yǔ)言服務(wù)器內(nèi)存。
[0012]進(jìn)一步,步驟2還包括數(shù)據(jù)更新步驟,具體為:對(duì)實(shí)時(shí)性要求不高的數(shù)據(jù),設(shè)置定時(shí)任務(wù),在指定的時(shí)間間隔觸發(fā)數(shù)據(jù)更新操作,將關(guān)系型數(shù)據(jù)庫(kù)中更新的數(shù)據(jù)加載到所述R語(yǔ)言服務(wù)器內(nèi)存;對(duì)實(shí)時(shí)性高的數(shù)據(jù),編寫(xiě)守護(hù)進(jìn)程,實(shí)時(shí)監(jiān)控關(guān)系數(shù)據(jù)庫(kù)中指定表的數(shù)據(jù)更新情況,并將更新的數(shù)據(jù)同步加載到所述R語(yǔ)言服務(wù)器內(nèi)存。
[0013]采用上述進(jìn)一步方案的有益效果是:本進(jìn)一步的技術(shù)方案采用shell定時(shí)任務(wù),定時(shí)觸發(fā)數(shù)據(jù)庫(kù)中指定表數(shù)據(jù)加載到R語(yǔ)言服務(wù)器內(nèi)存,方法簡(jiǎn)單,加載數(shù)據(jù)快,而且可以及時(shí)對(duì)R語(yǔ)言服務(wù)器內(nèi)存中的數(shù)據(jù)進(jìn)行更新。
[0014]進(jìn)一步,步驟4具體為:
[0015]在業(yè)務(wù)系統(tǒng)的客戶端封裝符合JDBC規(guī)范的客戶端JAR包;
[0016]對(duì)業(yè)務(wù)系統(tǒng)的數(shù)據(jù)訪問(wèn)層代碼進(jìn)行改造,將對(duì)指定的關(guān)系型數(shù)據(jù)庫(kù)表數(shù)據(jù)的訪問(wèn)操作迀移到所述R語(yǔ)言服務(wù)器上;
[0017]根據(jù)所述用于篩選的R語(yǔ)言腳本,對(duì)R語(yǔ)言服務(wù)器內(nèi)存中的數(shù)據(jù)進(jìn)行篩選,并返回篩選結(jié)果。
[0018]采用上述進(jìn)一步方案的有益效果是:采用符合JDBC接口規(guī)范的客戶端JAR包,可以方便的對(duì)業(yè)務(wù)系統(tǒng)的數(shù)據(jù)訪問(wèn)層代碼進(jìn)行改造,將對(duì)指定的關(guān)系型數(shù)據(jù)庫(kù)表數(shù)據(jù)的訪問(wèn)操作迀移到所述R語(yǔ)言服務(wù)器上,復(fù)用性高,改造過(guò)程簡(jiǎn)單。
[0019]進(jìn)一步,所述步驟3中,配置可視化界面,用戶通過(guò)所述可視化界面自定義R語(yǔ)言腳本。
[0020]采用上述進(jìn)一步方案的有益效果是:本進(jìn)一步的技術(shù)方案采用可視化界面自定義R語(yǔ)言腳本,配置簡(jiǎn)單靈活,可維護(hù)性好。
[0021]—種基于R語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選系統(tǒng),包括服務(wù)器搭建模塊、數(shù)據(jù)迀移模塊、腳本編輯模塊和篩選模塊,
[0022]所述服務(wù)器搭建模塊用于搭建R語(yǔ)言服務(wù)器;
[0023]所述數(shù)據(jù)迀移模塊用于將原關(guān)系型數(shù)據(jù)庫(kù)中的數(shù)據(jù)導(dǎo)入到所述R語(yǔ)言服務(wù)器內(nèi)存;
[0024]所述腳本編輯模塊用于用戶在業(yè)務(wù)系統(tǒng)的客戶端,自定義用于篩選的R語(yǔ)言腳本;
[0025]所述篩選模塊用于根據(jù)所述用于篩選的R語(yǔ)言腳本,對(duì)導(dǎo)入到R語(yǔ)言服務(wù)器內(nèi)存中的數(shù)據(jù)進(jìn)行篩選,并返回篩選結(jié)果。
[0026]進(jìn)一步,還包括數(shù)據(jù)更新模塊,所述數(shù)據(jù)更新模塊用于對(duì)實(shí)時(shí)性要求不高的數(shù)據(jù),設(shè)置定時(shí)任務(wù),在指定的時(shí)間間隔觸發(fā)數(shù)據(jù)更新操作;對(duì)實(shí)時(shí)性高的數(shù)據(jù),編寫(xiě)守護(hù)進(jìn)程,實(shí)時(shí)監(jiān)控原關(guān)系數(shù)據(jù)庫(kù)中指定表的數(shù)據(jù)更新情況,并將更新的數(shù)據(jù)同步加載到所述R語(yǔ)言服務(wù)器內(nèi)存。
[0027]進(jìn)一步,還包括可視化界面,所述可視化界面用于對(duì)R語(yǔ)言腳本進(jìn)行可視化編輯。
【附圖說(shuō)明】
[0028]圖1為本發(fā)明一種基于R語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選方法的流程示意圖;
[0029]圖2為本發(fā)明一種基于R語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選系統(tǒng)的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0030]以下結(jié)合附圖對(duì)本發(fā)明的原理和特征進(jìn)行描述,所舉實(shí)例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。
[0031]如圖1所示,為本發(fā)明一種基于R語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選方法的流程示意圖,包括以下步驟:
[0032]步驟I,搭建R語(yǔ)言服務(wù)器。
[0033]步驟2,將原關(guān)系型數(shù)據(jù)庫(kù)中的數(shù)據(jù)導(dǎo)入到所述R語(yǔ)言服務(wù)器內(nèi)存;具體可以編寫(xiě)用于讀取數(shù)據(jù)的R語(yǔ)言腳本,通過(guò)調(diào)用shell將指定的關(guān)系型數(shù)據(jù)庫(kù)表數(shù)據(jù)加載到所述R語(yǔ)言服務(wù)器內(nèi)存。
[0034]步驟3,用戶在業(yè)務(wù)系統(tǒng)的客戶端,自定義用于篩選的R語(yǔ)言腳本。可以在客戶端配置可視化界面,用戶通過(guò)所述可視化界面自定義R語(yǔ)言腳本。
[0035]步驟4,根據(jù)所述用于篩選的R語(yǔ)言腳本,對(duì)導(dǎo)入到R語(yǔ)言服務(wù)器內(nèi)存中的數(shù)據(jù)進(jìn)行篩選,并返回篩選結(jié)果。
[0036]編寫(xiě)用于讀取數(shù)據(jù)的R語(yǔ)言腳本,通過(guò)調(diào)用shell將指定的關(guān)系型數(shù)據(jù)庫(kù)表數(shù)據(jù)加載到所述R語(yǔ)言服務(wù)器內(nèi)存。
[0037]優(yōu)選的實(shí)施例中,步驟2中還包括對(duì)R語(yǔ)言服務(wù)器內(nèi)存中的數(shù)據(jù)進(jìn)行更新的步驟,具體為:對(duì)實(shí)時(shí)性要求不高的數(shù)據(jù),設(shè)置定時(shí)任務(wù),在指定的時(shí)間間隔觸發(fā)數(shù)據(jù)更新操作,將關(guān)系型數(shù)據(jù)庫(kù)中更新的數(shù)據(jù)加載到所述R語(yǔ)言服務(wù)器內(nèi)存;對(duì)實(shí)時(shí)性高的數(shù)據(jù),編寫(xiě)守護(hù)進(jìn)程,實(shí)時(shí)監(jiān)控關(guān)系數(shù)據(jù)庫(kù)中指定表的數(shù)據(jù)更新情況,并將更新的數(shù)據(jù)同步加載到所述R語(yǔ)言服務(wù)器內(nèi)存。
[0038]在優(yōu)選的實(shí)施例中,步驟4具體為:
[0039]在業(yè)務(wù)系統(tǒng)的客戶端封裝符合JDBC規(guī)范的客戶端JAR包;
[0040]對(duì)業(yè)務(wù)系統(tǒng)的數(shù)據(jù)訪問(wèn)層代碼進(jìn)行改造,將對(duì)指定的關(guān)系型數(shù)據(jù)庫(kù)表數(shù)據(jù)的訪問(wèn)操作迀移到所述R語(yǔ)言服務(wù)器上;
[0041]根據(jù)所述用于篩選的R語(yǔ)言腳本,對(duì)R語(yǔ)言服務(wù)器內(nèi)存中的數(shù)據(jù)進(jìn)行篩選,并返回篩選結(jié)果。
[0042]如圖2所示,為本發(fā)明一種基于R語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選系統(tǒng)的結(jié)構(gòu)示意圖,包括服務(wù)器搭建模塊、數(shù)據(jù)迀移模塊、腳本編輯模塊和篩選模塊,
[0043]所述服務(wù)器搭建模塊用于搭建R語(yǔ)言服務(wù)器;所述數(shù)據(jù)迀移模塊用于將原關(guān)系型數(shù)據(jù)庫(kù)中的數(shù)據(jù)導(dǎo)入到所述R語(yǔ)言服務(wù)器內(nèi)存;所述腳本編輯模塊用于用戶在業(yè)務(wù)系統(tǒng)的客戶端,自定義用于篩選的R語(yǔ)言腳本;所述篩選模塊用于根據(jù)所述用于篩選的R語(yǔ)言腳本,對(duì)導(dǎo)入到R語(yǔ)言服務(wù)器內(nèi)存中的數(shù)據(jù)進(jìn)行篩選,并返回篩選結(jié)果。
[0044]本實(shí)施例中,還包括數(shù)據(jù)更新模塊,所述數(shù)據(jù)更新模塊用于對(duì)實(shí)時(shí)性要求不高的數(shù)據(jù),設(shè)置定時(shí)任務(wù),在指定的時(shí)間間隔觸發(fā)數(shù)據(jù)更新操作;對(duì)實(shí)時(shí)性高的數(shù)據(jù),編寫(xiě)守護(hù)進(jìn)程,實(shí)時(shí)監(jiān)控原關(guān)系數(shù)據(jù)庫(kù)中指定表的數(shù)據(jù)更新情況,并將更新的數(shù)據(jù)同步加載到所述R語(yǔ)言服務(wù)器內(nèi)存。本實(shí)施例中,還可以設(shè)置可視化界面,通過(guò)可視化界面對(duì)R語(yǔ)言腳本進(jìn)行可視化編輯。
[0045]本發(fā)明提供用于自定義R語(yǔ)言腳本的可視化界面,可以簡(jiǎn)單靈活地對(duì)R語(yǔ)言腳本進(jìn)行可視化編輯,并且封裝一套符合JDBC接口規(guī)范的客戶端JAR包,復(fù)用性高,可以方便地將對(duì)原關(guān)系型數(shù)據(jù)庫(kù)的訪問(wèn)迀移到R語(yǔ)言服務(wù)器;同時(shí)利用R語(yǔ)言的內(nèi)存計(jì)算特性,實(shí)現(xiàn)了對(duì)數(shù)據(jù)的快速篩選。
[0046]盡管上面已經(jīng)示出和描述了本發(fā)明的實(shí)施例,可以理解的是,上述實(shí)施例是示例性的,不能理解為對(duì)本發(fā)明的限制,本領(lǐng)域的普通技術(shù)人員在本發(fā)明的范圍內(nèi)可以對(duì)上述實(shí)施例進(jìn)行變化、修改、替換和變型。
【主權(quán)項(xiàng)】
1.一種基于R語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選方法,其特征在于,包括以下步驟, 步驟I,搭建R語(yǔ)言服務(wù)器; 步驟2,將原關(guān)系型數(shù)據(jù)庫(kù)中的數(shù)據(jù)導(dǎo)入到所述R語(yǔ)言服務(wù)器內(nèi)存; 步驟3,用戶在業(yè)務(wù)系統(tǒng)的客戶端自定義用于篩選的R語(yǔ)言腳本; 步驟4,根據(jù)所述用于篩選的R語(yǔ)言腳本對(duì)導(dǎo)入到R語(yǔ)言服務(wù)器內(nèi)存中的數(shù)據(jù)進(jìn)行篩選,并返回篩選結(jié)果。2.根據(jù)權(quán)利要求1所述的基于R語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選方法,其特征在于,步驟2具體為:編寫(xiě)用于讀取數(shù)據(jù)的R語(yǔ)言腳本,通過(guò)調(diào)用shell將指定的關(guān)系型數(shù)據(jù)庫(kù)表數(shù)據(jù)加載到所述R語(yǔ)言服務(wù)器內(nèi)存。3.根據(jù)權(quán)利要求2所述的基于R語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選方法,其特征在于,步驟2還包括數(shù)據(jù)更新步驟,具體為:對(duì)實(shí)時(shí)性要求不高的數(shù)據(jù),設(shè)置定時(shí)任務(wù),在指定的時(shí)間間隔觸發(fā)數(shù)據(jù)更新操作,將關(guān)系型數(shù)據(jù)庫(kù)中更新的數(shù)據(jù)加載到所述R語(yǔ)言服務(wù)器內(nèi)存;對(duì)實(shí)時(shí)性要求高的數(shù)據(jù),編寫(xiě)守護(hù)進(jìn)程,實(shí)時(shí)監(jiān)控關(guān)系數(shù)據(jù)庫(kù)中指定表的數(shù)據(jù)更新情況,并將更新的數(shù)據(jù)同步加載到所述R語(yǔ)言服務(wù)器內(nèi)存。4.根據(jù)權(quán)利要求1?3任一所述的基于R語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選方法,其特征在于,步驟4具體為: 在業(yè)務(wù)系統(tǒng)的客戶端封裝符合JDBC規(guī)范的客戶端JAR包; 對(duì)業(yè)務(wù)系統(tǒng)的數(shù)據(jù)訪問(wèn)層代碼進(jìn)行改造,將對(duì)指定的關(guān)系型數(shù)據(jù)庫(kù)表數(shù)據(jù)的訪問(wèn)操作迀移到所述R語(yǔ)言服務(wù)器上; 根據(jù)所述用于篩選的R語(yǔ)言腳本,對(duì)R語(yǔ)言服務(wù)器內(nèi)存中的數(shù)據(jù)進(jìn)行篩選,并返回篩選結(jié)果。5.根據(jù)權(quán)利要求4所述的基于R語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選方法,其特征在于,所述步驟3中,配置可視化界面,用戶通過(guò)所述可視化界面自定義R語(yǔ)言腳本。6.—種基于R語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選系統(tǒng),其特征在于,包括服務(wù)器搭建模塊、數(shù)據(jù)迀移模塊、腳本編輯模塊和篩選模塊, 所述服務(wù)器搭建模塊用于搭建R語(yǔ)言服務(wù)器; 所述數(shù)據(jù)迀移模塊用于將原關(guān)系型數(shù)據(jù)庫(kù)中的數(shù)據(jù)導(dǎo)入到所述R語(yǔ)言服務(wù)器內(nèi)存; 所述腳本編輯模塊用于用戶在業(yè)務(wù)系統(tǒng)的客戶端,自定義用于篩選的R語(yǔ)言腳本; 所述篩選模塊用于根據(jù)所述用于篩選的R語(yǔ)言腳本,對(duì)導(dǎo)入到R語(yǔ)言服務(wù)器內(nèi)存中的數(shù)據(jù)進(jìn)行篩選,并返回篩選結(jié)果。7.根據(jù)權(quán)利要求6所述的基于R語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選系統(tǒng),其特征在于,還包括數(shù)據(jù)更新模塊,所述數(shù)據(jù)更新模塊用于對(duì)實(shí)時(shí)性要求不高的數(shù)據(jù),設(shè)置定時(shí)任務(wù),在指定的時(shí)間間隔觸發(fā)數(shù)據(jù)更新操作;對(duì)實(shí)時(shí)性高的數(shù)據(jù),編寫(xiě)守護(hù)進(jìn)程,實(shí)時(shí)監(jiān)控原關(guān)系數(shù)據(jù)庫(kù)中指定表的數(shù)據(jù)更新情況,并將更新的數(shù)據(jù)同步加載到所述R語(yǔ)言服務(wù)器內(nèi)存。8.根據(jù)權(quán)利要求6所述的基于R語(yǔ)言的大數(shù)據(jù)量數(shù)據(jù)篩選系統(tǒng),其特征在于,還包括可視化界面,所述可視化界面用于對(duì)R語(yǔ)言腳本進(jìn)行可視化編輯。
【文檔編號(hào)】G06F17/30GK105975574SQ201610289054
【公開(kāi)日】2016年9月28日
【申請(qǐng)日】2016年5月4日
【發(fā)明人】陳蒙
【申請(qǐng)人】北京思特奇信息技術(shù)股份有限公司