一種旅客行為數(shù)據(jù)分布式處理方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及航空數(shù)據(jù)處理領(lǐng)域,具體涉及一種旅客行為數(shù)據(jù)分布式處理方法及系統(tǒng)。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)的蓬勃發(fā)展,航空公司對(duì)旅客的深度認(rèn)知變得越來(lái)越重要。在航空公司進(jìn)行精細(xì)化營(yíng)銷(xiāo)的過(guò)程中,也提出對(duì)旅客分為分析更高的要求,不僅僅是分析旅客的乘機(jī)次數(shù),平均購(gòu)票提前時(shí)間等。而且,需要深度了解旅客,需要通過(guò)旅客的乘機(jī)行為分析出來(lái),旅客的核心價(jià)值,旅客的常住地址,旅客之間的出行關(guān)系等。
[0003]目前比較大的航空集團(tuán),每年運(yùn)送的旅客量在6000-7000萬(wàn)左右,2年的數(shù)據(jù)將會(huì)有1.4億條數(shù)據(jù)。由于數(shù)據(jù)量龐大,傳統(tǒng)的數(shù)據(jù)庫(kù)分析手段僅僅能夠?qū)β每托袨閿?shù)據(jù)做簡(jiǎn)單的行為匯總分析,例如:乘機(jī)次數(shù),平均購(gòu)票提前時(shí)間,而且隨著數(shù)據(jù)量的增大每次預(yù)算時(shí)間會(huì)越來(lái)越長(zhǎng),由于現(xiàn)有分析系統(tǒng)多為集中式分析系統(tǒng),不能隨意擴(kuò)充系統(tǒng)內(nèi)的機(jī)器數(shù)量,只能夠不斷的增強(qiáng)已有機(jī)器的配置,然而,即使不斷增強(qiáng)機(jī)器的配置,由于機(jī)器配置提高空間是有限制的,每次相關(guān)運(yùn)算的時(shí)間都達(dá)到幾十個(gè)小時(shí)乃至更長(zhǎng)的時(shí)間;其次對(duì)于分析例如:旅客的核心價(jià)值(涉及到乘機(jī)的艙位,乘機(jī)的里程運(yùn)算),旅客的常住地(涉及到2年內(nèi)的出行記錄,身份證信息,手機(jī)號(hào)信息等),旅客之間的出行關(guān)系(涉及到2年內(nèi)的出行記錄,經(jīng)常與那些人出行),對(duì)于這類(lèi)龐大數(shù)據(jù)量的分析對(duì)于航空集團(tuán)來(lái)說(shuō)越來(lái)越重要。
[0004]然而,采用現(xiàn)有技術(shù)增強(qiáng)機(jī)器配置是無(wú)法及時(shí)更新用戶(hù)的相關(guān)數(shù)據(jù)。并且,利用傳統(tǒng)的數(shù)據(jù)庫(kù)分析手段對(duì)旅客的核心價(jià)值、旅客的常住地和旅客之間的出行關(guān)系這類(lèi)龐大數(shù)據(jù)量的分析,其分析時(shí)間過(guò)長(zhǎng),無(wú)法及時(shí)獲得所需信息。
【發(fā)明內(nèi)容】
[0005]本發(fā)明實(shí)施例提供了一種旅客行為數(shù)據(jù)分布式處理方法及系統(tǒng),能夠能準(zhǔn)確的分析旅客的行為數(shù)據(jù),大大提高旅客行為分析的效率。
[0006]有鑒于此,本發(fā)明實(shí)施例第一方面提供一種旅客行為數(shù)據(jù)分布式處理方法,可包括:分布式控制中心接收客戶(hù)端發(fā)出的計(jì)算任務(wù);所述計(jì)算任務(wù)基于第一旅客行為數(shù)據(jù);
[0007]所述客戶(hù)端將所述計(jì)算任務(wù)對(duì)應(yīng)的計(jì)算資源包存入分布式集群;
[0008]所述分布式控制中心根據(jù)所述計(jì)算任務(wù)從所述分布式集群中獲取所述計(jì)算資源包的輸入分割信息,所述輸入分割信息用于指示所述計(jì)算資源包被分割后的子資源包;
[0009]所述分布式控制中心根據(jù)所述輸入分割信息向第一計(jì)算節(jié)點(diǎn)下發(fā)map計(jì)算任務(wù),并向第二計(jì)算節(jié)點(diǎn)下發(fā)reduce計(jì)算任務(wù);
[0010]所述第一計(jì)算節(jié)點(diǎn)從所述分布式集群中獲取所述map計(jì)算任務(wù)對(duì)應(yīng)的第一子資源包和對(duì)應(yīng)的第一旅客行為數(shù)據(jù);
[0011]所述第一計(jì)算節(jié)點(diǎn)根據(jù)所述第一子資源包和所述第一旅客行為數(shù)據(jù)執(zhí)行map計(jì)算任務(wù)生成第二旅客行為數(shù)據(jù);
[0012]所述第二計(jì)算節(jié)點(diǎn)從所述分布式集群中獲取所述reduce計(jì)算任務(wù)對(duì)應(yīng)的第二子資源包;
[0013]所述第二計(jì)算節(jié)點(diǎn)根據(jù)所述第二子資源包和所述第二旅客行為數(shù)據(jù)執(zhí)行reduce計(jì)算任務(wù)生成目標(biāo)旅客行為數(shù)據(jù);
[0014]所述第二計(jì)算節(jié)點(diǎn)將所述目標(biāo)旅客行為數(shù)據(jù)存入所述分布式集群。
[0015]結(jié)合第一方面,在第一方面的第一種可能的實(shí)現(xiàn)方式中,所述客戶(hù)端將對(duì)應(yīng)所述計(jì)算任務(wù)的計(jì)算資源包存入分布式集群之后還包括:
[0016]所述客戶(hù)端向分布式控制中心發(fā)送確認(rèn)信息;
[0017]所述分布式控中心根據(jù)所述確認(rèn)信息對(duì)所述計(jì)算任務(wù)進(jìn)行初始化。
[0018]結(jié)合第一方面,在第一方面的第二種可能的實(shí)現(xiàn)方式中,所述方法還可包括:
[0019]所述分布式集群內(nèi)的文件系統(tǒng)客戶(hù)端節(jié)點(diǎn)從所述分布式集群內(nèi)的分布式文件控制中心節(jié)點(diǎn)獲取所述分布式集群內(nèi)的第一數(shù)據(jù)節(jié)點(diǎn)的寫(xiě)入位置信息;
[0020]所述文件系統(tǒng)客戶(hù)端節(jié)點(diǎn)向第一數(shù)據(jù)節(jié)點(diǎn)發(fā)出第一寫(xiě)入請(qǐng)求;所述第一寫(xiě)入請(qǐng)求指示待寫(xiě)入的數(shù)據(jù),所述待寫(xiě)入的數(shù)據(jù)包括計(jì)算資源包或目標(biāo)旅客行為數(shù)據(jù);
[0021]所述第一數(shù)據(jù)節(jié)點(diǎn)根據(jù)所述第一寫(xiě)入請(qǐng)求寫(xiě)入所述待寫(xiě)入的數(shù)據(jù)之中部分?jǐn)?shù)據(jù);
[0022]所述第一數(shù)據(jù)節(jié)點(diǎn)向所述分布式集群內(nèi)的第二數(shù)據(jù)節(jié)點(diǎn)發(fā)出第二寫(xiě)入請(qǐng)求;所述第二數(shù)據(jù)節(jié)點(diǎn)與第一數(shù)據(jù)節(jié)點(diǎn)為相鄰數(shù)據(jù)節(jié)點(diǎn);
[0023]所述第二數(shù)據(jù)節(jié)點(diǎn)根據(jù)所述第二寫(xiě)入請(qǐng)求寫(xiě)入所述待寫(xiě)入的數(shù)據(jù)之中余下部分?jǐn)?shù)據(jù)。
[0024]結(jié)合第一方面的第二種可能的實(shí)現(xiàn)方式,在第一方面的第三種可能的實(shí)現(xiàn)方式中,所述第二數(shù)據(jù)節(jié)點(diǎn)根據(jù)所述第二寫(xiě)入請(qǐng)求寫(xiě)入余下部分?jǐn)?shù)據(jù)之后還包括:
[0025]所述第一數(shù)據(jù)節(jié)點(diǎn)接收第二數(shù)據(jù)節(jié)點(diǎn)返回的成功寫(xiě)入信息;
[0026]所述第一數(shù)據(jù)節(jié)點(diǎn)向所述文件系統(tǒng)客戶(hù)端節(jié)點(diǎn)反饋數(shù)據(jù)寫(xiě)入完成信息。
[0027]結(jié)合第一方面的第三種可能的實(shí)現(xiàn)方式,在第一方面的第四種可能的實(shí)現(xiàn)方式中,所述方法還包括:
[0028]所述第一數(shù)據(jù)節(jié)點(diǎn)或第二數(shù)據(jù)節(jié)點(diǎn)中還根據(jù)所述第一數(shù)據(jù)節(jié)點(diǎn)或第二數(shù)據(jù)節(jié)點(diǎn)中寫(xiě)入的所述數(shù)據(jù)建立與所述數(shù)據(jù)對(duì)應(yīng)的副本;
[0029]所述第一數(shù)據(jù)節(jié)點(diǎn)或第二數(shù)據(jù)節(jié)點(diǎn)存儲(chǔ)所述副本。
[0030]結(jié)合第一方面的第種二可能的實(shí)現(xiàn)方式,在第一方面的第五種可能的實(shí)現(xiàn)方式中,所述文件系統(tǒng)客戶(hù)端節(jié)點(diǎn)從所述分布式文件控制中心節(jié)點(diǎn)獲取文件位置信息;
[0031]所述文件系統(tǒng)客戶(hù)端節(jié)點(diǎn)根據(jù)所述位置信息從對(duì)應(yīng)的所述第一數(shù)據(jù)節(jié)點(diǎn)和所述第二數(shù)據(jù)節(jié)點(diǎn)中讀取數(shù)據(jù);
[0032]所述文件系統(tǒng)客戶(hù)端節(jié)點(diǎn)將讀取的數(shù)據(jù)匯總并進(jìn)行本地存儲(chǔ)。
[0033]結(jié)合第一方面、第一方面的第一種可能的實(shí)現(xiàn)方式、第一方面的第二種可能的實(shí)現(xiàn)方式、第一方面的第三種可能的實(shí)現(xiàn)方式、第一方面的第四種可能的實(shí)現(xiàn)方式和第一方面的第五種可能的實(shí)現(xiàn)方式之中任意一種,在第一方面的第六種可能的實(shí)現(xiàn)方式中,所述第一旅客行為數(shù)據(jù)包括離崗信息,所述離崗信息包括身份證ID,起飛城市和到達(dá)城市。
[0034]結(jié)合第一方面的第六種可能的實(shí)現(xiàn)方式,在第一方面的第七種可能的實(shí)現(xiàn)方式中,所述第一計(jì)算節(jié)點(diǎn)根據(jù)所述第一子資源包和所述第一旅客行為數(shù)據(jù)執(zhí)行map計(jì)算任務(wù)生成第二旅客行為數(shù)據(jù)包括:
[0035]所述第一計(jì)算節(jié)點(diǎn)根據(jù)身份證ID、起飛城市和到達(dá)城市獲取身份證ID、城市和總數(shù),所述總數(shù)包含相同的起飛城市和到達(dá)城市出現(xiàn)的數(shù)量之和;
[0036]所述第一計(jì)算節(jié)點(diǎn)生成包含身份證ID以及與身份證ID對(duì)應(yīng)的所有城市和總數(shù)的第二旅客行為數(shù)據(jù)。
[0037]結(jié)合第一方面的第七種可能的實(shí)現(xiàn)方式,在第一方面的第八種可能的實(shí)現(xiàn)方式中,所述第二旅客行為數(shù)據(jù)還包括常旅客信息和手機(jī)歸屬地信息;
[0038]所述常旅客信息包括身份證ID、手機(jī)號(hào)碼和郵件地址;
[0039]所述手機(jī)歸屬地信息包括手機(jī)號(hào)碼和歸屬地。
[0040]結(jié)合第一方面的第八種可能的實(shí)現(xiàn)方式,在第一方面的第九種可能的實(shí)現(xiàn)方式中,所述第二計(jì)算節(jié)點(diǎn)根據(jù)所述第二子資源包和所述第二旅客行為數(shù)據(jù)執(zhí)行reduce計(jì)算任務(wù)生成目標(biāo)旅客行為數(shù)據(jù)包括:
[0041]所述第二計(jì)算節(jié)點(diǎn)根據(jù)第二旅客行為數(shù)據(jù)獲取常旅地信息;所述常旅地信息包括身份證ID以及與身份證ID對(duì)應(yīng)的總數(shù)前兩名的城市和對(duì)應(yīng)所述城市的總數(shù);
[0042]所述第二計(jì)算節(jié)點(diǎn)根據(jù)常旅客數(shù)據(jù)、手機(jī)歸屬地?cái)?shù)據(jù)和常旅地信息獲取目標(biāo)旅客行為數(shù)據(jù),所述目標(biāo)旅客行為數(shù)據(jù)包括身份證ID和常住地。
[0043]本發(fā)明第二方面還提供一種旅客行為數(shù)據(jù)分布式處理系統(tǒng),可包括:
[0044]分布式控制中心,用于接收客戶(hù)端發(fā)出的計(jì)算任務(wù),
[0045]還用于根據(jù)所述計(jì)算任務(wù)從所述分布式集群中獲取所述計(jì)算資源包的輸入分割信息,
[0046]還用于根據(jù)所述輸入分割信息向第一計(jì)算節(jié)點(diǎn)下發(fā)map計(jì)算任務(wù),并向第二計(jì)算節(jié)點(diǎn)下發(fā)reduce計(jì)算任務(wù);
[0047]客戶(hù)端,用于向所述分布式控制中心發(fā)出的計(jì)算任務(wù),
[0048]還用于將所述計(jì)算任務(wù)對(duì)應(yīng)的計(jì)算資源包存入分布式集群;
[0049]分布式集群,用于為分布式控制中心、客戶(hù)端、第一計(jì)算節(jié)點(diǎn)和第二計(jì)算節(jié)點(diǎn)提供數(shù)據(jù)存??;
[0050]第一計(jì)算節(jié)點(diǎn),用于從所述分布式集群中獲取所述map計(jì)算任務(wù)對(duì)應(yīng)的第一子資源包和對(duì)應(yīng)的第一旅客行為數(shù)據(jù),
[0051]還用于根據(jù)所述第一子資源包和所述第一旅客行為數(shù)據(jù)執(zhí)行map計(jì)算任務(wù)生成第二旅客行為數(shù)據(jù);
[0052]第二計(jì)算節(jié)點(diǎn),用于從所述分布式集群中獲取所述reduce計(jì)算任務(wù)對(duì)應(yīng)的第二子資源包,
[0053]還用于根據(jù)所述第二子資源包和所述第二旅客行為數(shù)據(jù)執(zhí)行reduce計(jì)算任務(wù)生成目標(biāo)旅客行為數(shù)據(jù),
[0054]還用于將所述目標(biāo)旅客行為數(shù)據(jù)存入所述分布式集群。
[0055]結(jié)合第二方面,在第二方面的第一種可能的實(shí)現(xiàn)方式中,所述客戶(hù)端還
[0056]用于向分布式控制中心發(fā)送確認(rèn)信息;
[0057]所述分布式控中心還用于根據(jù)所述確認(rèn)信息對(duì)所述計(jì)算任務(wù)進(jìn)行初始化。
[0