基于大數(shù)據(jù)平臺和算法模型的計算方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種基于大數(shù)據(jù)平臺和算法模型的計算方法及系統(tǒng),其中所述計算方法包括:將數(shù)據(jù)保存在大數(shù)據(jù)平臺的Hive數(shù)據(jù)倉庫;將算法模型的腳本文件放到服務(wù)器上,所述算法模型的腳本文件用R語言編寫;在服務(wù)器上啟動Rserve并開啟遠(yuǎn)程訪問;連接Hive數(shù)據(jù)倉庫和Rserve,將Hive數(shù)據(jù)倉庫中保存的數(shù)據(jù)在Rserve上運行,并將計算結(jié)果導(dǎo)入到Hive數(shù)據(jù)倉庫中。本發(fā)明彌補了現(xiàn)有技術(shù)中大數(shù)據(jù)平臺處理后的數(shù)據(jù)不能直接用于算法模型計算的不足,利用java語言建立Hive數(shù)據(jù)倉庫和Rserve之間的通信渠道,將數(shù)據(jù)的處理與算法模型相結(jié)合,使得數(shù)據(jù)的處理和模型計算能自由銜接,提高數(shù)據(jù)處理的速度。
【專利說明】
基于大數(shù)據(jù)平臺和算法模型的計算方法及系統(tǒng)
技術(shù)領(lǐng)域
[0001] 本發(fā)明屬于計算機領(lǐng)域,尤其涉及一種基于大數(shù)據(jù)平臺和算法模型的計算方法。
【背景技術(shù)】
[0002] 隨著互聯(lián)網(wǎng)的發(fā)展,用戶數(shù)據(jù)量越來越大,并且具有多樣性和實時性,如何對這些 用戶數(shù)據(jù)進(jìn)行統(tǒng)計和分析變得非常有意義。如今廣泛采用的Hadoop技術(shù)對于存儲和處理大 數(shù)據(jù)有非常好的效果,但在不同的應(yīng)用場景下,數(shù)據(jù)的分析需要采用更專業(yè)的算法和模型 進(jìn)行計算,只有將兩者相結(jié)合,才能滿足現(xiàn)實需求。
[0003] 在現(xiàn)在的互聯(lián)網(wǎng)公司里,大數(shù)據(jù)處理和算法模型往往是獨立處理的。因為兩者的 專業(yè)背景不同,使用的軟件工具不同:數(shù)據(jù)處理常使用Hive(基于Hadoop的一個數(shù)據(jù)倉庫工 具)、Hbase(-個分布式的、面向列的開源數(shù)據(jù)庫)、Hdfs(分布式文件系統(tǒng))等技術(shù),用來處 理海量數(shù)據(jù);統(tǒng)計模型則使用R(-種用于統(tǒng)計計算的編程語言)、spss(-種軟件,用于統(tǒng)計 產(chǎn)品與服務(wù)解決方案)等技術(shù),對抽樣數(shù)據(jù)進(jìn)行統(tǒng)計分析。
[0004] 但分別處理數(shù)據(jù)有一定的局限性,Hadoop(-種分布式系統(tǒng)基礎(chǔ)架構(gòu))和R的設(shè)計 原理不同,數(shù)據(jù)范圍也不同,兩者之間沒有通信渠道,數(shù)據(jù)無法傳遞。數(shù)據(jù)的處理和專業(yè)的 統(tǒng)計屬于不同學(xué)科,技術(shù)背景和開發(fā)環(huán)境均不同,無法直接銜接,不能發(fā)揮大數(shù)據(jù)處理和專 業(yè)統(tǒng)計合作的優(yōu)勢。現(xiàn)有技術(shù)中將數(shù)據(jù)處理和專業(yè)統(tǒng)計相結(jié)合的一種方式是在統(tǒng)計過程中 調(diào)用大數(shù)據(jù),并且在統(tǒng)計的過程中進(jìn)行任務(wù)拆分和并發(fā)執(zhí)行,這種方式需要重新編寫統(tǒng)計 程序的底層邏輯,難度很大。還有一種方式是通過數(shù)據(jù)庫建立數(shù)據(jù)緩存,再用編程算法進(jìn)行 計算,這種方法處理速度慢,難以應(yīng)對大數(shù)據(jù)量的需求,無法適應(yīng)時代的發(fā)展。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明要解決的技術(shù)問題是為了克服現(xiàn)有技術(shù)中大數(shù)據(jù)平臺處理后的數(shù)據(jù)不能 直接用于算法模型計算的缺陷,提供一種基于大數(shù)據(jù)平臺和算法模型的計算方法。
[0006] 本發(fā)明是通過以下技術(shù)方案解決上述技術(shù)問題的:
[0007] 本發(fā)明提供一種基于大數(shù)據(jù)平臺和算法模型的計算方法,其特點是,所述計算方 法包括:
[0008] Si、將數(shù)據(jù)保存在大數(shù)據(jù)平臺的Hive數(shù)據(jù)倉庫;
[0009] S2、將算法模型的腳本文件放到服務(wù)器上,所述算法模型的腳本文件用R語言編 與;
[0010] S3、在服務(wù)器上啟動Rserve(-個基于TCP/IP協(xié)議的,允許R語言與其他語言通信 的C/S結(jié)構(gòu)的程序)并開啟遠(yuǎn)程訪問;
[0011] S4、連接Hive數(shù)據(jù)倉庫和Rserve,將Hive數(shù)據(jù)倉庫中保存的數(shù)據(jù)在Rserve上運行, 并將計算結(jié)果導(dǎo)入到Hive數(shù)據(jù)倉庫中。
[0012]本技術(shù)方案利用大數(shù)據(jù)平臺對數(shù)據(jù)進(jìn)行處理,利用Rserve存放用于數(shù)據(jù)分析的算 法模型,將數(shù)據(jù)的處理與算法模型相結(jié)合,使得數(shù)據(jù)的處理和模型計算能自由銜接。
[0013] 較佳地,所述計算方法還包括:
[0014] S5、將Hive數(shù)據(jù)倉庫中的計算結(jié)果導(dǎo)出到數(shù)據(jù)庫中。
[0015] 較佳地,S4包括:
[0016] 使用java(-種計算機編程語言)開發(fā)工具利用java語言訪問Hive數(shù)據(jù)倉庫;
[0017] 將Hive數(shù)據(jù)倉庫的數(shù)據(jù)以文件流的形式讀入并進(jìn)行分列,轉(zhuǎn)化為所述算法模型的 腳本文件可接受的數(shù)據(jù)格式;
[0018]遠(yuǎn)程調(diào)用所述算法模型的腳本文件進(jìn)行計算,并將計算結(jié)果以文件流的形式返 回,導(dǎo)入到Hive數(shù)據(jù)倉庫中。
[0019] 本技術(shù)方案利用java語言建立Hive數(shù)據(jù)倉庫和Rserve之間的通信渠道,使得在大 數(shù)據(jù)整理完成后直接進(jìn)行算法模型的計算,不需要中間緩存,提高數(shù)據(jù)處理的速度。在通信 渠道打通的情況下,數(shù)據(jù)的處理和模型可以根據(jù)現(xiàn)實需求單獨進(jìn)行改變,具有很強的靈活 性。
[0020] 較佳地,Si包括:從目標(biāo)數(shù)據(jù)庫中導(dǎo)入源數(shù)據(jù),處理源數(shù)據(jù),將處理后的源數(shù)據(jù)記 為第一數(shù)據(jù),并將所述第一數(shù)據(jù)存儲在Hdfs文件系統(tǒng)中,并組成任務(wù)隊列。
[0021 ]較佳地,所述算法模型為評分卡模型,&還包括:
[0022] 訓(xùn)練評分卡模型,將所述評分卡模型的腳本文件放到服務(wù)器上;
[0023] 將所述第一數(shù)據(jù)根據(jù)邏輯回歸模型進(jìn)行權(quán)重賦值,將賦值了權(quán)重的第一數(shù)據(jù)記為 第二數(shù)據(jù),并將所述第二數(shù)據(jù)保存在Hive數(shù)據(jù)倉庫中,所述第二數(shù)據(jù)用于參與所述評分卡 模型的計算。
[0024] 本發(fā)明還提供一種基于大數(shù)據(jù)平臺和算法模型的計算系統(tǒng),其特點是,所述計算 系統(tǒng)包括:
[0025]第一保存單元,用于將數(shù)據(jù)保存在大數(shù)據(jù)平臺的Hive數(shù)據(jù)倉庫;
[0026]第二保存單元,用于將算法模型的腳本文件放到服務(wù)器上,所述算法模型的腳本 文件用R語言編寫;
[0027]啟動單元,用于在服務(wù)器上啟動Rserve并開啟遠(yuǎn)程訪問;
[0028]連接單元,用于連接Hive數(shù)據(jù)倉庫和Rserve,將Hive數(shù)據(jù)倉庫中保存的數(shù)據(jù)在 Rserve上運行,并將計算結(jié)果導(dǎo)入到Hive數(shù)據(jù)倉庫中。
[0029]較佳地,所述計算系統(tǒng)還包括:
[0030]導(dǎo)出單元,用于將Hive數(shù)據(jù)倉庫中的計算結(jié)果導(dǎo)出到數(shù)據(jù)庫中。
[0031 ]較佳地,所述連接單元包括:
[0032]訪問模塊,用于使用java開發(fā)工具利用java語言訪問Hi ve數(shù)據(jù)倉庫;
[0033] 轉(zhuǎn)化模塊,用于將Hive數(shù)據(jù)倉庫的數(shù)據(jù)以文件流的形式讀入并進(jìn)行分列,轉(zhuǎn)化為 所述算法模型的腳本文件可接受的數(shù)據(jù)格式;
[0034] 計算模塊,用于遠(yuǎn)程調(diào)用所述算法模型的腳本文件進(jìn)行計算,并將計算結(jié)果以文 件流的形式返回,導(dǎo)入到Hive數(shù)據(jù)倉庫中。
[0035]較佳地,所述第一保存單元用于:從目標(biāo)數(shù)據(jù)庫中導(dǎo)入源數(shù)據(jù),處理源數(shù)據(jù),將處 理后的源數(shù)據(jù)記為第一數(shù)據(jù),并將所述第一數(shù)據(jù)存儲在Hdfs文件系統(tǒng)中,并組成任務(wù)隊列。
[0036]較佳地,所述算法模型為評分卡模型,所述第二保存單元還用于訓(xùn)練評分卡模型, 將所述評分卡模型的腳本文件放到服務(wù)器上;
[0037] 所述第二保存單元還用于將所述第一數(shù)據(jù)根據(jù)邏輯回歸模型進(jìn)行權(quán)重賦值,將賦 值了權(quán)重的第一數(shù)據(jù)記為第二數(shù)據(jù),并將所述第二數(shù)據(jù)保存在Hive數(shù)據(jù)倉庫中,所述第二 數(shù)據(jù)用于參與所述評分卡模型的計算。
[0038] 在符合本領(lǐng)域常識的基礎(chǔ)上,上述各優(yōu)選條件,可任意組合,即得本發(fā)明各較佳實 例。
[0039]本發(fā)明的積極進(jìn)步效果在于:本發(fā)明利用大數(shù)據(jù)平臺對數(shù)據(jù)進(jìn)行處理,利用 Rserve存放用于數(shù)據(jù)分析的算法模型,利用java語言建立Hive數(shù)據(jù)倉庫和Rserve之間的通 信渠道,將數(shù)據(jù)的處理與算法模型相結(jié)合,使得數(shù)據(jù)的處理和模型計算能自由銜接,在大數(shù) 據(jù)整理完成后直接進(jìn)行算法模型的計算,不需要中間緩存,提高數(shù)據(jù)處理的速度。
【附圖說明】
[0040] 圖1為本發(fā)明較佳實施例的一種基于大數(shù)據(jù)平臺和算法模型的計算方法的流程 圖。
[0041] 圖2為本發(fā)明較佳實施例的一種基于大數(shù)據(jù)平臺和算法模型的計算方法的原理示 意圖。
[0042] 圖3為本發(fā)明較佳實施例的一種基于大數(shù)據(jù)平臺和算法模型的計算系統(tǒng)的框圖。
【具體實施方式】
[0043] 下面通過實施例的方式進(jìn)一步說明本發(fā)明,但并不因此將本發(fā)明限制在所述的實 施例范圍之中。
[0044] 實施例
[0045] -種基于大數(shù)據(jù)平臺和算法模型的計算方法,如圖1和2所示,所述計算方法包括:
[0046] 步驟101、將數(shù)據(jù)保存在大數(shù)據(jù)平臺的Hive數(shù)據(jù)倉庫。具體包括:從目標(biāo)數(shù)據(jù)庫中 導(dǎo)入源數(shù)據(jù),所述目標(biāo)數(shù)據(jù)庫可以為多維度的真實交易數(shù)據(jù)庫,由于源數(shù)據(jù)的量非常大,且 分區(qū)格式不同,所以在導(dǎo)入的過程中還包括處理源數(shù)據(jù)的步驟,具體可以包括使用HQL語言 對源數(shù)據(jù)進(jìn)行提取,清洗,分割,重新分區(qū),聚合,統(tǒng)計和計算。將處理后的源數(shù)據(jù)記為第一 數(shù)據(jù),并將所述第一數(shù)據(jù)存儲在Hdfs文件系統(tǒng)01中,并組成任務(wù)隊列,所述任務(wù)隊列為有序 的任務(wù)隊列,Hdf s文件系統(tǒng)01與hadoop集群03連接。
[0047]步驟102、將算法模型的腳本文件放到服務(wù)器02上,所述算法模型的腳本文件用R 語言編寫。其中,所述算法模型可以為評分卡模型,步驟102具體包括以下步驟:
[0048]訓(xùn)練評分卡模型,將所述評分卡模型的腳本文件放到服務(wù)器上。具體訓(xùn)練評分卡 模型的過程為:利用R語言對采樣數(shù)據(jù)進(jìn)行特征提取和分類形成訓(xùn)練集數(shù)據(jù),采用評分卡模 型(一種預(yù)測模型)對變量進(jìn)行分箱并計算權(quán)重值,降低變量屬性的個數(shù)。然后計算信息價 值,選取在預(yù)測范圍內(nèi)的變量進(jìn)入模型,對不同的群體變量進(jìn)行拆分,分別開發(fā)評分卡。評 分卡模型的計算公式如下:
[0052] 其中,woe表示權(quán)重,IV表示信息價值,score表示評分;
[0053] Pgcxxi表示好數(shù)據(jù)的數(shù)量分布,Pbad表示壞數(shù)據(jù)的數(shù)量分布;
[0054] Pi為回歸系數(shù),α為截距,η為變量個數(shù),of f set為偏移量,factor為比例因子。
[0055]采用邏輯回歸模型對評分卡模型進(jìn)行訓(xùn)練,用L-BFGS算法作為模型的迭代算法, 加快函數(shù)的收斂速度,條件概率P(;Y=;L|)g為根據(jù)觀測量X相對于某事件Y發(fā)生的概率。
[0057]使用貝葉斯公式迭代完成后,就能獲得關(guān)鍵屬性的權(quán)重。在此過程中不斷進(jìn)行校 驗和修正,訓(xùn)練出一個成熟穩(wěn)健的評分卡模型,所述評分卡模型以R腳本的形式存放在服務(wù) 器02上。
[0058]將所述第一數(shù)據(jù)根據(jù)邏輯回歸模型進(jìn)行權(quán)重賦值,將賦值了權(quán)重的第一數(shù)據(jù)記為 第二數(shù)據(jù),并將所述第二數(shù)據(jù)保存在Hive數(shù)據(jù)倉庫中,所述第二數(shù)據(jù)用于參與所述評分卡 模型的計算。具體可以通過在任務(wù)隊列中增加一個hadoop任務(wù)實現(xiàn)。此時,保存在Hive數(shù)據(jù) 倉庫的數(shù)據(jù)包括所述第一數(shù)據(jù)和所述第二數(shù)據(jù)。
[0059] 步驟103、在服務(wù)器02上啟動Rserve并開啟遠(yuǎn)程訪問。本實施例的步驟103還可以 包括將訓(xùn)練出的評分卡模型的腳本文件放到服務(wù)器02的文件目錄下,服務(wù)器02上預(yù)先安裝 有Rserve運行時所依賴的程序。
[0060] 步驟104、連接Hive數(shù)據(jù)倉庫和Rserve,將Hive數(shù)據(jù)倉庫中保存的數(shù)據(jù)在Rserve上 運行,并將計算結(jié)果導(dǎo)入到Hive數(shù)據(jù)倉庫中。具體包括以下步驟:
[0061 ]使用java開發(fā)工具利用java語言訪問Hive數(shù)據(jù)倉庫;
[0062] 將Hive數(shù)據(jù)倉庫的數(shù)據(jù)以文件流的形式讀入并進(jìn)行分列,轉(zhuǎn)化為所述算法模型的 腳本文件可接受的數(shù)據(jù)格式;
[0063] 遠(yuǎn)程調(diào)用所述算法模型的腳本文件進(jìn)行計算,并將計算結(jié)果以文件流的形式返 回,導(dǎo)入到Hive數(shù)據(jù)倉庫中。
[0064]在具體實現(xiàn)時,可以先將上述步驟編寫為一個jar包,所述jar包用于使用java開 發(fā)工具利用java語言訪問Hive數(shù)據(jù)倉庫,將Hive數(shù)據(jù)倉庫的數(shù)據(jù)以文件流的形式讀入并進(jìn) 行分列,轉(zhuǎn)化為所述算法模型的腳本文件可接受的數(shù)據(jù)格式,遠(yuǎn)程調(diào)用所述算法模型的腳 本文件進(jìn)行計算,并將計算結(jié)果以文件流的形式返回,導(dǎo)入到Hive數(shù)據(jù)倉庫中。然后在任務(wù) 隊列中增加一個had loop任務(wù),調(diào)用所述jar,以實現(xiàn)將Hive數(shù)據(jù)倉庫中保存的數(shù)據(jù)在 Rserve上運行,并將計算結(jié)果從文件流導(dǎo)入到Hive數(shù)據(jù)倉庫中。
[0065]步驟105、將Hive數(shù)據(jù)倉庫中的計算結(jié)果導(dǎo)出到數(shù)據(jù)庫04中。此步驟還可以包括將 Hive數(shù)據(jù)倉庫中的計算結(jié)果和數(shù)據(jù)進(jìn)行最后的整合和梳理,將數(shù)據(jù)通過shell腳本導(dǎo)出到 Mysql或SQLServer數(shù)據(jù)庫中,以供其他程序或應(yīng)用使用。
[0066] -種基于大數(shù)據(jù)平臺和算法模型的計算系統(tǒng),如圖3所示,所述計算系統(tǒng)包括:
[0067]第一保存單元201,用于將數(shù)據(jù)保存在大數(shù)據(jù)平臺的Hive數(shù)據(jù)倉庫。具體用于:從 目標(biāo)數(shù)據(jù)庫中導(dǎo)入源數(shù)據(jù),處理源數(shù)據(jù),將處理后的源數(shù)據(jù)記為第一數(shù)據(jù),并將所述第一數(shù) 據(jù)存儲在Hdfs文件系統(tǒng)中,并組成任務(wù)隊列。其中處理源數(shù)據(jù)可以包括使用HQL語言對源數(shù) 據(jù)進(jìn)行提取,清洗,分割,重新分區(qū),聚合,統(tǒng)計和計算。
[0068]第二保存單元202,用于將算法模型的腳本文件放到服務(wù)器上,所述算法模型的腳 本文件用R語言編寫。其中,所述算法模型可以為評分卡模型,第二保存單元,還用于訓(xùn)練評 分卡模型,將所述評分卡模型的腳本文件放到服務(wù)器上。具體訓(xùn)練評分卡模型的過程為:利 用R語言對采樣數(shù)據(jù)進(jìn)行特征提取和分類形成訓(xùn)練集數(shù)據(jù),采用評分卡模型(一種預(yù)測模 型)對變量進(jìn)行分箱并計算權(quán)重值,降低變量屬性的個數(shù)。然后計算信息價值,選取在預(yù)測 范圍內(nèi)的變量進(jìn)入模型,對不同的群體變量進(jìn)行拆分,分別開發(fā)評分卡。評分卡模型的計算 公式如下:
[0072] 其中,woe表示權(quán)重,IV表示信息價值,score表示評分;
[0073] Pgood表不好數(shù)據(jù)的數(shù)量分布,Pbad表不壞數(shù)據(jù)的數(shù)量分布;
[0074] Pi為回歸系數(shù),α為截距,η為變量個數(shù),of f set為偏移量,factor為比例因子。
[0075]采用邏輯回歸模型對評分卡模型進(jìn)行訓(xùn)練,用L-BFGS算法作為模型的迭代算法, 加快函數(shù)的收斂速度,條件概率蘿(Υ=1 |X>為根據(jù)觀測量x相對于某事件γ發(fā)生的概率。
[0077] 使用貝葉斯公式迭代完成后,就能獲得關(guān)鍵屬性的權(quán)重。在此過程中不斷進(jìn)行校 驗和修正,訓(xùn)練出一個成熟穩(wěn)健的評分卡模型,所述評分卡模型以R腳本的形式存放在服務(wù) 器上。
[0078] 所述第二保存單元還用于將所述第一數(shù)據(jù)根據(jù)邏輯回歸模型進(jìn)行權(quán)重賦值,將賦 值了權(quán)重的第一數(shù)據(jù)記為第二數(shù)據(jù),并將所述第二數(shù)據(jù)保存在Hive數(shù)據(jù)倉庫中,所述第二 數(shù)據(jù)用于參與所述評分卡模型的計算。具體可以通過在任務(wù)隊列中增加一個hadoop任務(wù)實 現(xiàn)。此時,保存在Hi ve數(shù)據(jù)倉庫的數(shù)據(jù)包括所述第一數(shù)據(jù)和所述第二數(shù)據(jù)。
[0079]啟動單元203,用于在服務(wù)器上啟動Rserve并開啟遠(yuǎn)程訪問。還可以用于將訓(xùn)練出 的評分卡模型的腳本文件放到服務(wù)器的文件目錄下,服務(wù)器上預(yù)先安裝有Rserve運行時所 依賴的程序。
[0080] 連接單元204,用于連接Hive數(shù)據(jù)倉庫和Rserve,將Hive數(shù)據(jù)倉庫中保存的數(shù)據(jù)在 Rserve上運行,并將計算結(jié)果導(dǎo)入到Hi ve數(shù)據(jù)倉庫中。具體地,所述連接單元包括:
[0081 ]訪問模塊2041,用于使用java開發(fā)工具利用java語言訪問Hive數(shù)據(jù)倉庫;
[0082]轉(zhuǎn)化模塊2042,用于將Hive數(shù)據(jù)倉庫的數(shù)據(jù)以文件流的形式讀入并進(jìn)行分列,轉(zhuǎn) 化為所述算法模型的腳本文件可接受的數(shù)據(jù)格式;
[0083]計算模塊2043,用于遠(yuǎn)程調(diào)用所述算法模型的腳本文件進(jìn)行計算,并將計算結(jié)果 以文件流的形式返回,導(dǎo)入到Hive數(shù)據(jù)倉庫中。
[0084]在具體實現(xiàn)時,可以先將所述連接單元編寫為一個jar包,所述jar包用于使用 java開發(fā)工具利用java語言訪問Hive數(shù)據(jù)倉庫,將Hive數(shù)據(jù)倉庫的數(shù)據(jù)以文件流的形式讀 入并進(jìn)行分列,轉(zhuǎn)化為所述算法模型的腳本文件可接受的數(shù)據(jù)格式,遠(yuǎn)程調(diào)用所述算法模 型的腳本文件進(jìn)行計算,并將計算結(jié)果以文件流的形式返回,導(dǎo)入到Hive數(shù)據(jù)倉庫中。然后 在任務(wù)隊列中增加一個hadloop任務(wù),調(diào)用所述jar,以實現(xiàn)將Hive數(shù)據(jù)倉庫中保存的數(shù)據(jù) 在Rserve上運行,并將計算結(jié)果從文件流導(dǎo)入到Hive數(shù)據(jù)倉庫中。
[0085]導(dǎo)出單元205,用于將Hive數(shù)據(jù)倉庫中的計算結(jié)果導(dǎo)出到數(shù)據(jù)庫中。所述導(dǎo)出單元 還可以用于將Hive數(shù)據(jù)倉庫中的計算結(jié)果和數(shù)據(jù)進(jìn)行最后的整合和梳理,將數(shù)據(jù)通過 shell腳本導(dǎo)出到Mysql或SQLServer數(shù)據(jù)庫中,以供其他程序或應(yīng)用使用。
[0086]雖然以上描述了本發(fā)明的【具體實施方式】,但是本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,這些 僅是舉例說明,本發(fā)明的保護(hù)范圍是由所附權(quán)利要求書限定的。本領(lǐng)域的技術(shù)人員在不背 離本發(fā)明的原理和實質(zhì)的前提下,可以對這些實施方式做出多種變更或修改,但這些變更 和修改均落入本發(fā)明的保護(hù)范圍。
【主權(quán)項】
1. 一種基于大數(shù)據(jù)平臺和算法模型的計算方法,其特征在于,所述計算方法包括: &、將數(shù)據(jù)保存在大數(shù)據(jù)平臺的Hive數(shù)據(jù)倉庫; &、將算法模型的腳本文件放到服務(wù)器上,所述算法模型的腳本文件用R語言編寫; 53、 在服務(wù)器上啟動Rserve并開啟遠(yuǎn)程訪問; 54、 連接Hive數(shù)據(jù)倉庫和Rserve,將Hive數(shù)據(jù)倉庫中保存的數(shù)據(jù)在Rserve上運行,并將 計算結(jié)果導(dǎo)入到Hive數(shù)據(jù)倉庫中。2. 如權(quán)利要求1所述的計算方法,其特征在于,所述計算方法還包括: &、將Hive數(shù)據(jù)倉庫中的計算結(jié)果導(dǎo)出到數(shù)據(jù)庫中。3. 如權(quán)利要求1所述的計算方法,其特征在于,S4包括: 使用java開發(fā)工具利用java語言訪問Hi ve數(shù)據(jù)倉庫; 將Hive數(shù)據(jù)倉庫的數(shù)據(jù)以文件流的形式讀入并進(jìn)行分列,轉(zhuǎn)化為所述算法模型的腳本 文件可接受的數(shù)據(jù)格式; 遠(yuǎn)程調(diào)用所述算法模型的腳本文件進(jìn)行計算,并將計算結(jié)果以文件流的形式返回,導(dǎo) 入到Hive數(shù)據(jù)倉庫中。4. 如權(quán)利要求1所述的計算方法,其特征在于,Si包括:從目標(biāo)數(shù)據(jù)庫中導(dǎo)入源數(shù)據(jù),處 理源數(shù)據(jù),將處理后的源數(shù)據(jù)記為第一數(shù)據(jù),并將所述第一數(shù)據(jù)存儲在Hdfs文件系統(tǒng)中,并 組成任務(wù)隊列。5. 如權(quán)利要求4所述的計算方法,其特征在于,所述算法模型為評分卡模型,&還包括: 訓(xùn)練評分卡模型,將所述評分卡模型的腳本文件放到服務(wù)器上; 將所述第一數(shù)據(jù)根據(jù)邏輯回歸模型進(jìn)行權(quán)重賦值,將賦值了權(quán)重的第一數(shù)據(jù)記為第二 數(shù)據(jù),并將所述第二數(shù)據(jù)保存在Hive數(shù)據(jù)倉庫中,所述第二數(shù)據(jù)用于參與所述評分卡模型 的計算。6. -種基于大數(shù)據(jù)平臺和算法模型的計算系統(tǒng),其特征在于,所述計算系統(tǒng)包括: 第一保存單元,用于將數(shù)據(jù)保存在大數(shù)據(jù)平臺的Hi ve數(shù)據(jù)倉庫; 第二保存單元,用于將算法模型的腳本文件放到服務(wù)器上,所述算法模型的腳本文件 用R語言編寫; 啟動單元,用于在服務(wù)器上啟動Rserve并開啟遠(yuǎn)程訪問; 連接單元,用于連接Hive數(shù)據(jù)倉庫和Rserve,將Hive數(shù)據(jù)倉庫中保存的數(shù)據(jù)在Rserve 上運行,并將計算結(jié)果導(dǎo)入到Hive數(shù)據(jù)倉庫中。7. 如權(quán)利要求6所述的計算系統(tǒng),其特征在于,所述計算系統(tǒng)還包括: 導(dǎo)出單元,用于將Hi ve數(shù)據(jù)倉庫中的計算結(jié)果導(dǎo)出到數(shù)據(jù)庫中。8. 如權(quán)利要求6所述的計算系統(tǒng),其特征在于,所述連接單元包括: 訪問模塊,用于使用java開發(fā)工具利用java語言訪問Hi ve數(shù)據(jù)倉庫; 轉(zhuǎn)化模塊,用于將Hive數(shù)據(jù)倉庫的數(shù)據(jù)以文件流的形式讀入并進(jìn)行分列,轉(zhuǎn)化為所述 算法模型的腳本文件可接受的數(shù)據(jù)格式; 計算模塊,用于遠(yuǎn)程調(diào)用所述算法模型的腳本文件進(jìn)行計算,并將計算結(jié)果以文件流 的形式返回,導(dǎo)入到Hive數(shù)據(jù)倉庫中。9. 如權(quán)利要求6所述的計算系統(tǒng),其特征在于,所述第一保存單元用于:從目標(biāo)數(shù)據(jù)庫 中導(dǎo)入源數(shù)據(jù),處理源數(shù)據(jù),將處理后的源數(shù)據(jù)記為第一數(shù)據(jù),并將所述第一數(shù)據(jù)存儲在 Hdfs文件系統(tǒng)中,并組成任務(wù)隊列。10.如權(quán)利要求9所述的計算系統(tǒng),其特征在于,所述算法模型為評分卡模型,所述第二 保存單元還用于訓(xùn)練評分卡模型,將所述評分卡模型的腳本文件放到服務(wù)器上; 所述第二保存單元還用于將所述第一數(shù)據(jù)根據(jù)邏輯回歸模型進(jìn)行權(quán)重賦值,將賦值了 權(quán)重的第一數(shù)據(jù)記為第二數(shù)據(jù),并將所述第二數(shù)據(jù)保存在Hive數(shù)據(jù)倉庫中,所述第二數(shù)據(jù) 用于參與所述評分卡模型的計算。
【文檔編號】G06F9/30GK106095391SQ201610377885
【公開日】2016年11月9日
【申請日】2016年5月31日
【發(fā)明人】張露瑤, 陳榕, 李騰龍
【申請人】攜程計算機技術(shù)(上海)有限公司