999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

航空公司電子客票航班查詢動態緩存系統設計

2017-08-16 13:22:45姚一周中雨李洋楊程屹
電子測試 2017年13期
關鍵詞:系統

姚一,周中雨,李洋,楊程屹

(中國民航信息網絡股份有限公司,北京,100105)

航空公司電子客票航班查詢動態緩存系統設計

姚一,周中雨,李洋,楊程屹

(中國民航信息網絡股份有限公司,北京,100105)

本文采用機器學習技術實現航空公司電子客票航班查詢的動態緩存。針對第三方大量抓取航空公司網站航班數據的問題,進行訪問行為分析,建立航班查詢緩存模型并進行系統改造,以達到降低查詢預訂比的效果。

航班查詢;機器學習;緩存

0 引言

隨著民航電子客票的廣泛使用,國內大多數航空公司已經實現了電子客票的線上銷售模式,打造出各具特色的官方網站。但就像其它電子商務平臺所面臨的問題一樣,也產生了航空公司網站航班數據被惡意采集的問題。互聯網爬蟲不正當抓取航空公司網站數據不僅使航空公司為超額流量支付大量額外費用,而且使其承受更大的訪問壓力,以至于需要投入更多的軟硬件成本。

針對這種日益嚴重的問題,需要在網站端與后臺航班查詢系統之間建立一套高效的緩存機制。目前一般采用的方式主要是固定或者僅僅是粗粒度的劃分不同航線的緩存有效期。這種做法過度依賴經驗值,航空公司需要一種能夠根據用戶查詢行為動態決策緩存策略的方式,利用緩存最大程度的節約后臺流量并且保證緩存數據的相對準確。以下我們采用目前較為流行的機器學習[1]方式實現緩存有效期的計算,并且將其應用于實際系統中。

1 學習系統設計

學習系統的關鍵在于如何對當前查詢的請求和結果設置合理的緩存時效,比如用戶今天9:00查詢了北京-上海某航空公司的航班數據,其查詢結果應當在緩存系統中保存多久才不會影響用戶的預訂。對此我們可以從歷史查詢日志中進行分析,通過查詢量與頻度預測當前的緩存時效。

參數名稱備注departure起飛機場arrival到達機場departuredate起飛日期querydate當前查詢日期airline航空公司direct是否直達

網站記錄的用戶每次航班查詢的日志將作為用戶行為分析的基礎數據。一次正常的查詢請求主要包括以下參數。其中起飛和到達機場對應的航線、起飛日期以及查詢日期都可能是影響查詢規律的因素。按照業務現狀,航空公司不同航線的查詢量分布差異很大,我們將其分為重點航線和普通航線。以下根據生產數據進行樣本分析,以便發現其中的規律。

1.1 分析樣本數據

選取某航空公司2014年11月-2015年1月查詢日志,日均訪問量在百萬級。從中抽取查詢量占60%以上的航線作為重點航線著重分析。以下是對其中訪問量較大的幾條重點航線查詢量數據的初步分析。

圖1 CAN-PEK航線查詢90天內航班查詢量

上面兩幅圖的縱坐標為查詢量(次數),橫坐標為起飛日期距離查詢日期。每張圖代表一個航線,圖中每條線代表在一個固定的日期查詢不同起飛日期的查詢量,起飛日期距離查詢日期的時間范圍分布在0-90天。

可以觀察到航班起飛日期距離查詢日期當間隔為約30天時查詢量有顯著變化,而30天之內的查詢,當查詢/起飛日期間隔在約10天時,查詢量又發生顯著波動。根據業務特點,航班起飛日期離查詢日期越近,查詢越頻繁。從以上兩條航線的查詢量分析得知頻繁的查詢主要集中在30天內。其次,某些航線(圖1)在查詢提前時間在30天之外保持平穩的較少查詢量,但是某些航線(圖2)會有劇烈的波動,經確認是該航線與春運購票有關。事實上重要假期或事件對航班查詢規律都會造成顯著的影響。

圖2 CAN-CTU航線查詢90天內航班查詢量

圖3 是分析一天內的查詢規律,縱坐標是查詢次數,橫坐標是一天24小時,分析結果呈現出在大約在7時是查詢量明顯變化的分界點,同時庫存變化的頻度也與查詢量變化規律基本一致。這也呼應了民航旅客普遍的作息規律。

圖3 一天內24小時查詢量的變化

根據以上分析結果,初步得出結論:

(1)對于航空公司特定航線影響查詢規律的因素主要與查詢日期(querydate),起飛日期(depaturedate)相關。

(2)緩存策略所影響的查詢時間范圍,每天集中在7時至24時,而航班起飛日期與查詢日期間隔集中在30天以內。

1.2 構造樣本數據

因查詢量與緩存時效有相關性:查詢量大,航班剩余可銷售狀態變化頻繁,緩存時效需較短,反之亦然。為了動態計算緩存時效,首先需要預測查詢量。根據對查詢量數據的初步分析,判斷影響航班查詢量的日期因素包括:

星期:查詢或起飛日期在每周一至周日會有差異,例如查詢日期在周五附近會增多,而起飛日期在周六附近會增多;

節日:查詢和起飛日期在各種節日附近的行為會有差異,節日可以分為長假的節日(7天及以上)、短假的節日(1至3天)和不放假的節日;

寒暑假:學生寒暑假也會是影響因素。可以分為假期開始和假期結束,假期開始附近(包括假期之前的若干天)和假期結束附近(包括假期之后的若干天);

查詢日期與起飛日期的間隔也是一個重要的影響因素。

根據以上日期因素,起飛和查詢日期可分別指定17個特征,再增加日期間隔一共35個特征。

表1 日期特征

對于多維特征的有限數據樣本,我們采用機器學習中的支持向量機(SVM)模型,并使用其中的支持向量回歸(SVR)[2]算法對未來查詢量進行預測。

在JAVA環境下使用libsvm[3]工具進行學習訓練。預先準備60天的歷史數據,篩選重點航線,對每條航線生成樣本特征文件,格式形如:

T1 T2 T3 ...... T35 querycount

querydate1 depdate1 0 1 0 0 100

querydate1 depdate2 0 1 0 0 200

querydate1 depdate3 0 0 1 1 300

querydate1 depdate4 1 0 0 0 150

......

querydate60 depdateN 0 1 0 0 100

其次構造預測結果文件,其中指定查詢日期,航班時間為未來30天的不同查詢條目

T1 T2 T3 ...... T35 querycount(待預測)

depdate1 0 1 0 0

depdate2 0 1 0 0

depdate3 0 0 1 0

depdate4 1 0 0 0

......

depdate30 0 1 0 0

接下來根據樣本特征文件構造預測模型。我們使用的是SVR算法默認的核函數RBF[4]構建SVM預測模型,其中核函數的相關參數暫時使用默認值(libsvm的使用在這里不再贅述)。

按照預測文件進行計算生成每個起飛日期的預測查詢量。圖4是預測查詢量與實際查詢量的對比,基本符合實際查詢量的變化規律。

圖4 算法預測查詢量與實際查詢量的對比

1.3 緩存時效的轉換與驗證

通過前文步驟預測查詢量后,需要轉換為最終的緩存有效期,如果查詢量為x,緩存時間為T,需要選定一個轉換函數T=f(x)。按照業務特點分析:

(1)對于查詢量越高的請求,應當給予越短的緩存時間以保證其及時更新,反之查詢量越低則緩存時間越長。

(2)因為航線分為重點和普通航線,普通航線訪問量較少,可以暫時固定其緩存時間。

(3)重點航線的緩存時間為最終需要計算的T,且有最低的緩存時間值。

根據以上可知的參數,我們使用多種函數進行試驗并使用生產數據進行驗證,以尋求最優的緩存效果。為此我們準備兩個月的歷史日志作為基礎數據,并且取最后若干天的數據作為預測結果的驗證比對數據。

我們試驗在不同的緩存時間下,命中率與準確率的效果(命中率=從緩存獲得結果總數/總請求數;準確率是通過緩存結果與真實結果是否一致來計算)。我們針對基礎數據最后若干天的查詢請求模擬在緩存的錄入和失效下的查詢行為,如果當前掃描到的請求在緩存中不存在時,會將其結果插入緩存;當下次相同請求被掃描到時比較兩次請求的時間差,如果在緩存時效內則命中,否則清除當前緩存數據并獲得最新結果;當緩存命中時與原有日志中的真實結果進行比對以驗證準確性。

以下在選定某個查詢量與緩存時間轉換函數以及指定各已知參數(普通航線和重點航線最低緩存時間)的驗證結果。經過多次實驗驗證得出結論:在業務許可的精度內,線性回歸方程[5]T=a-bx即可滿足表示查詢量與緩存有效期的關系,并且通過不同參數設置可以達到較優的命中率與準確率平衡,圖5所示,當橫坐標x查詢量越大時,對應縱坐標緩存時間T會越短。該函數中,參數a為重點航線最低緩存時間,參數b作為調控參數。

表2 驗證結果

700 700 0.893513974 0.849014295 800 800 0.925494537 0.82853509 900 900 0.900102582 0.842538137

圖5 查詢量與查詢時間的對應關系

至此總結獲得緩存時效主要分為兩大步驟:預測查詢量和計算緩存時間,這其中包含的若干可變參數需要經過實際數據驗證以選取最優組合。圖6體現了不同參數設置下,驗證的命中率與準確率的變化規律。為了保證生產環境下正常運行,我們按照準確率在95%以上的標準進行調優,當命中率能夠達到降低冗余查詢成本的要求時,該參數為最優調控組合。

圖6 驗證結果的命中率與準確率關系圖

2 系統架構改造

引入動態緩存系統后的系統架構如圖7所示,新增的緩存系統與原有系統各自獨立;緩存系統根據航班查詢日志進行夜間離線學習訓練,不會對實時系統造成影響,并將學習結果的緩存策略放到Cache中供實時系統調用。網站原有的航班查詢系統新增緩存查詢邏輯,可以決策查詢真實數據或查詢緩存數據。

圖7 航班查詢架構調整

緩存查詢邏輯如圖8所示。學習系統每天夜間執行一次,次日航班查詢時,如果當前請求在緩存中不存在時,會根據學習結果的緩存時效將當前的查詢結果錄入緩存。

圖8 緩存查詢邏輯流程圖

3 投產效果檢驗

緩存系統投產后效果顯著,以某航空公司實際投產前后數據對比為例,如圖9所示,該系統于2016年4月底投產,5月份緩存命中率已經達到了50%以上,且查詢量與訂座量比例(查訂比)的降幅也超過了50%。

圖9 投產前后查詢量效果對比

其次在這種命中率很高的情況下,用戶的預訂成功量并沒有因為緩存存在準確率的問題而受到影響,如圖10。

4 結語

動態緩存系統投產后有效的節省了直接查詢后臺的流量。同時這種高命中率的查詢對航班結果的準確性并沒有造成明顯影響,投產后為了進一步提高緩存的準確率,我們也采用了一些判斷邏輯,比如當發現有艙位預訂行為時會及時更新緩存中相應結果。在這些舉措下通過一段時間的檢驗,緩存的使用不僅增加了后臺承載能力,也促進了網站預訂量的增漲,提高了航空公司收益。

在投產之后緩存的算法仍然需要進一步調優,算法中各項預設參數還有待進一步驗證,以達到更優的命中率與準確率的平衡。

圖10 投產后預訂量變化

[1]楊樹仁,沈洪遠.基于相關向量機的機器學習算法研究與應用[J].計算技術與自動化,2010,29(1):43-47.

[2]楊玫,劉瑜,孔波.SVR模型參數選擇方法的研究[J].計算機時代,2009(11):53-55.

[3]Chang C C, Lin C J. LIBSVM: A library for support vector machines[M]. ACM, 2011.

[4]林升梁,劉志.基于RBF核函數的支持向量機參數選擇[J].浙江工業大學學報,2007,35(2):163-167.

[5]劉連福.一元線性回歸方程中回歸系數的幾種確定方法[J].沈陽師范大學學報(自然科學版),2008,26(4):406-408.

The design of dynamic caching system for airline flight inquiry

Yao Yi,Zhou Zhongyu,Li Yang,Yang chengyi
(TravelSky Technology Limited,beijing,100105)

This paper introduced a method that involved Macheine Learning to achieve dynamic caching system for airline flight inquiry. According to the problem of data crawlers of third-parties, the system analyzed visiting behaviors and established a caching model for flight inquiry. As a result, the system can help reducing the query and booking ratio.

Flight inquires; Machine Learning; Caching

姚一(1981-),男,中國民航信息網絡股份有限公司高級工程師,主要從事JAVA后臺高并發服務設計和研發。

周中雨(1978-),男,中國民航信息網絡股份有限公司資深工程師,主要從事J2EE平臺軟件設計研發,研究方向:高性能架構,規則引擎,機器學習等。

李洋(1977-),男,中國民航信息網絡股份有限公司資深工程師,主要從事航空公司電子商務智能化解決方案的研究和實現。

楊程屹(1986-),男,中國民航信息網絡股份有限公司工程師,主要從事數據分析、算法開發工作。

北京市科學技術委員會2017年度創新基地培育與發展專項(Z171100002217047)。

猜你喜歡
系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
基于UG的發射箱自動化虛擬裝配系統開發
半沸制皂系統(下)
FAO系統特有功能分析及互聯互通探討
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統 德行天下
PLC在多段調速系統中的應用
主站蜘蛛池模板: av性天堂网| 性网站在线观看| 中文字幕在线日韩91| 国内精品视频| 又粗又大又爽又紧免费视频| 成年人福利视频| 永久在线播放| 99伊人精品| 色婷婷成人| 99久久精品美女高潮喷水| 午夜福利视频一区| 伊在人亞洲香蕉精品區| 国产91小视频| 久久久久国产精品免费免费不卡| 欧美综合在线观看| 国产毛片不卡| 欧美激情福利| 精品国产免费观看| 国产aaaaa一级毛片| www.99在线观看| 中文精品久久久久国产网址 | 中文字幕 日韩 欧美| 另类专区亚洲| 萌白酱国产一区二区| 中文字幕伦视频| 天堂网亚洲综合在线| 国产主播在线一区| 成人免费午夜视频| 亚洲AV电影不卡在线观看| 亚洲一欧洲中文字幕在线| 国产性生大片免费观看性欧美| 伊人91视频| 91精品久久久久久无码人妻| 99精品免费在线| 国产成人亚洲毛片| 无码内射在线| 国产成人AV男人的天堂| 91啪在线| 亚洲人成高清| 国产成人调教在线视频| 成人日韩欧美| 中文天堂在线视频| 有专无码视频| 精品视频在线一区| 国产AV无码专区亚洲精品网站| 国产三级a| 青青青国产在线播放| 欧美精品啪啪| 久青草免费视频| 国产精品免费p区| 亚洲最新在线| 国内精品伊人久久久久7777人| 国产高清免费午夜在线视频| a级毛片免费在线观看| 亚洲视频一区| 久久国产亚洲偷自| 国产精选自拍| 亚洲av无码久久无遮挡| 婷婷综合色| 国产精品毛片在线直播完整版| 三上悠亚精品二区在线观看| 欧美国产综合视频| 无码免费的亚洲视频| 精品久久777| 亚洲精品高清视频| 亚洲日产2021三区在线| 国产成人精品男人的天堂下载| 日本不卡免费高清视频| 国产精品白浆在线播放| 成人在线综合| 国产99视频在线| 久久semm亚洲国产| 亚洲欧美成人综合| 成人毛片在线播放| 91丨九色丨首页在线播放| 一级一级特黄女人精品毛片| 午夜影院a级片| 国产成人精品无码一区二| 久久永久视频| 久久综合一个色综合网| 97av视频在线观看| 无码精品国产dvd在线观看9久|