專利名稱::一種準確查詢gds航班緩存數據的方法和系統(tǒng)的制作方法
技術領域:
:本發(fā)明涉及全球分銷系統(tǒng)GDS的通信
技術領域:
,特別是涉及一種準確查詢GDS航班緩存數據的方法和系統(tǒng)。
背景技術:
:GDS(GlobalDistributionSystem)即"全球分銷系統(tǒng)",是應用于民用航空運輸及整個旅游業(yè)的基于大型計算機信息服務系統(tǒng)支持下的大規(guī)模銷售網絡系統(tǒng)。GDS提供了一個全球產品數據平臺,通過采用自愿協(xié)調一致的標準,使貿易伙伴彼此間在供應鏈中連續(xù)不斷的協(xié)調產品數據屬性,共享主數據,即共享GDS服務器的數據,保證各數據庫的數據同步及各數據庫之間協(xié)調一致。通過GDS,遍及全球的旅游銷售機構可以及時地從航空公司、旅館、租車公司、旅游公司獲取大量的與旅游相關的信息,從而為顧客提供快捷、便利、可靠的服務。其中,服務器的信息數據與客戶端的信息數據是否協(xié)調一致是影響GDS為顧客提供快捷、便利、可靠的服務的關鍵因素。以航班信息查詢?yōu)槔?,現有技術中保持客戶端數據與服務器存儲數據協(xié)調一致的方法為客戶端把從GDS服務器中取得的航班數據緩存到客戶端本地,當客戶要查詢航班信息的時候從本地獲取數據進行查詢,直到緩存數據過期,判斷緩存數據是否過期是以基準時間為標準來衡量的。比如,將基準時間設置為3分鐘,3分鐘后上述緩存數據過期。當再有客戶查詢航班信息需求時,客戶端再從GDS的服務器獲取新的航班數據,再次緩存到客戶端本地,重復上述步驟不斷更新緩存數據,使得客戶端緩存數據與GDS數據協(xié)調一致。但是,現有技術采用基準時間來判斷航班數據是否過期的方法存在以下缺陷由于GDS的航班數據的變化不是按照時間呈規(guī)律和線性變化的,單從時間上來區(qū)分航班數據與服務器數據是否保持協(xié)調一致的辦法,不足以使緩存航班數據與GDS數據保持高度的一致,因為緩存數據有時會嚴重失真。另外,因為每單位基準時間就需要從服務器重新獲得航班數據,訪問服務器的次數比較多,那么,服務器與客戶端的數據傳輸次數就比較多,造成GDS系統(tǒng)運算量《艮大??傊?,需要本領域技術人員迫切解決的一個問題就是如何能夠保持客戶端緩存的航班數據與GDS存儲的航班數據高度一致,提高客戶查詢航班信息的準確率。
發(fā)明內容本發(fā)明所要解決的技術問題是提供一種準確查詢GDS航班緩存數據的方法,能夠非常方便、快捷地從客戶端獲得準確的航班信息數據。為了解決上述問題,本發(fā)明公開了一種準確查詢GDS航班信息的方法,包括接收航班查詢條件;判斷本地緩存中是否有相匹配的查詢條件,如果有,則執(zhí)行下一步;否則,查詢GDS服務器;才艮據所述查詢條件,判斷本次查詢與上次查詢的時間間隔是否小于預置的基準時間,如果是,則執(zhí)行下一步;如果否,則查詢所述GDS服務器;判斷可訂座位數量的當前變化率是否小于基準變化率,如果是,則查詢所述本地緩存;如果否,則查詢所述GDS服務器;依據GDS服務器的查詢結果,增加或更新本地的航班緩存數據。優(yōu)選的,所述查詢條件包括航線編號、航空公司、出發(fā)日期以及出發(fā)時間。優(yōu)選的,本發(fā)明通過以下方式獲取當前變化率從GDS服務器獲取當前時刻下,符合所述查詢條件的航班的各種倉位的可預訂座位的數量總和,與前一時刻的數量總和進行比較而獲得當前變化率。優(yōu)選的,本發(fā)明還包括依據當前變化率和基準變化率的關系線性調整基準時間。優(yōu)選的,所述基準時間與變化率的關系為-.所述調整后的基準時間與當前基準時間的比值等于基準變化率與當前變化率的比值。優(yōu)選的,本發(fā)明還包括更新MJ'j記錄。優(yōu)選的,所述MJ'J記錄包括本次4元班的查詢條件和查詢創(chuàng)建時間、狀態(tài)、變化率以及基準時間。優(yōu)選的,所述狀態(tài)包括從GDS服務器讀取和從本地緩存讀取。優(yōu)選的,所述預置的基準時間是季節(jié)性調整的或根據單獨航線的忙碌程度調整的。優(yōu)選的,所述基準變化率為整體的基準變化率或者某一單獨航線的基準變化率。相應的,本發(fā)明還提供了一種準確查詢GDS航班信息的系統(tǒng),包括客戶端和GDS服務器,所述客戶端包括查詢信息接收模塊,用于接收航班查詢信息;查詢條件判斷模塊,用于判斷本地緩存中是否有相匹配的查詢條件;時間比較模塊,判斷本次查詢與上次查詢的時間間隔是否小于預知的基準時間;變化率比較模塊,用于判斷可訂座位數量的當前變化率是否小于基準變化率;緩存信息查詢模塊,用于讀取本地緩存航班數據;GDS信息查詢模塊,用于從GDS服務器讀取新的航班數據;存儲模塊,用于增加或更新本地的航班緩存數據。優(yōu)選的,本發(fā)明還包括基準時間調整模塊,用于依據當前變化率和基準變化率的關系,線性調整基準時間。優(yōu)選的,本發(fā)明還包括規(guī)則記錄模塊,用于更新規(guī)則記錄。優(yōu)選的,所述變化率等于本次查詢GDS服務器返回的結果與上次查詢結果之差與所述上次查詢結果的比較,其中,所述結果為符合所述查詢條件航班的各種倉位的可預訂座位的總和。優(yōu)選的,所述調整后的基準時間與當前基準時間的比值等于基準變化率與當前變化率的比值。優(yōu)選的,所述預置的基準時間是季節(jié)性調整的或根據單獨航線的忙碌程度調整的。優(yōu)選的,所述基準變化率為整體的基準變化率或者某一單獨航線的基準變化率。與現有技術相比,本發(fā)明具有以下優(yōu)點本發(fā)明針對本地航班信息查詢,提出了一種準確查詢GDS航班緩存數據的方法和系統(tǒng),采用在原有的查詢基準時間的基礎上,增加查詢基準變化率的步驟,如果可訂座位數量的當前變化率小于基準變化率,則查詢本地緩存的航班數據信息得到航班的可訂座位信息;如果可訂座位數量的當前變化率大于或等于所述基準變化率,則查詢GDS服務器,然后將從GDS服務器查詢得到的航班信息緩存到本地,用戶再從本地緩存數據得到本次查詢航班的可訂座位信息。采用本發(fā)明提供的方法使得用戶從本地緩存查詢的^:班信息更加接近于GDS服務器的航班信息,提高了本地緩存查詢航班信息的準確率。此外,當可訂座位數量的當前變化率大于基準變化率時,不僅從GDS直接查詢航班查詢的信息,而且根據當前變化率線性調整下次查詢的基準時間,減少本地緩存從GDS獲得數據的時間間隔,保證本地與GDS之間數據傳輸的合理傳輸次數,進一步提高本地緩存查詢航班信息的準確率。圖1是本發(fā)明一種準確查詢GDS航班信息的方法流程圖2是本發(fā)明一種準確查詢GDS航班信息的系統(tǒng)的實施例結構示意圖。具體實施例方式為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結合附圖和具體實施方式對本發(fā)明作進一步詳細的說明。參照圖1,示出了本發(fā)明一種準確查詢GDS航班信息的方法流程圖,包括步驟IOI、接收航班查詢條件;接收用戶在本地查詢航班信息時輸入的航班查詢條件,其中所述查詢條件包括航線編號、航空公司、出發(fā)日期以及出發(fā)時間。步驟102、判斷本地緩存中是否有相匹配的查詢條件,如果有相匹配的查詢條件,則執(zhí)行步驟103;如果沒有相匹配的查詢條件,則執(zhí)行步驟105即查詢GDS服務器;其中,所述有相匹配的查詢條件的情況是指本次查詢輸入的查詢條件是上一次查詢輸入的查詢條件的子集。步驟103、根據所述查詢條件,判斷本次查詢與上次查詢的時間間隔是否小于預置的基準時間,如果所述時間間隔小于所述預置的基準時間,則執(zhí)行步驟104;如果所述時間間隔大于或等于所述預置的基準時間,則執(zhí)行步驟105即查詢所述GDS服務器;其中,所述預置的基準時間是系統(tǒng)啟動時根據經驗設置的。步驟104、判斷可訂座位數量的當前變化率是否小于基準變化率,如果所述當前變化率小于所述基準變化率,則執(zhí)行步驟107;如果所述當前變化率大于或等于所述基準變化率,則執(zhí)行所述步驟105即查詢所述GDS服務器。步驟105、查詢GDS服務器的獲得查詢結果。步驟106、將所述查詢結果緩存到本地,增加或更新本地的航班緩存數據。其中,本步驟包括兩種情況一種情況為,本地緩存中原來沒有符合查詢條件的航班信息,則在本地緩存中增加本次從GDS服務器輸出查詢結果。另一種情況為本地緩存中原來存儲有符合查詢條件的航班信息,但是由于查詢時間間隔超出了所述基準時間或者是可訂座位的當前變化率大于或等于了所述基準變化率,本地緩存的航班信息已經無效了,則用從GDS服務器獲得的航班信息將所述信息替換掉,進而更新本地緩存中的航班信息。步驟107、從本地緩存中查詢:l元班信息。其中,在本發(fā)明實施例中,上述步驟104中的可訂座位數量的當前變化率是,通過以下方式獲取的從GDS服務器獲取當前時刻下,符合所述查詢條件航班的各種倉位的可預訂座位的數量總和,與前一時刻的數量總和進行比較而獲得當前變化率??梢杂?>式表示為變化率=l(Z本次查詢-Z上次查詢)|/Z上次查詢其中,"Z本次查詢,,表示本次查詢信息發(fā)送給GDS服務器后,該GDS服務器反饋的滿足所述查詢條件的可訂座位的總的數量;"Z上次查詢"表示上次查詢GDS服務器反饋的滿足上次查詢條件的可訂座位的總的數量。在上述步驟104中,所述基準變化率是根據經驗值預先設定好的。在上述步驟中,系統(tǒng)剛啟動時的基準時間也是根據經驗值預先設定好的。在以后的查詢中,基準時間的長短是根據變化率和基準變化率的關系得到的。即依據當前變化率和基準變化率的關系,線性調整基準時間。它們之間的關系為當前基準時間/基準時間=基準變化率/當前變化率即當前基準時間=基準時間/(當前變化率/基準變化率)從上式可以看出,基準時間和變化率成反比關系,變化率越大,代表航班的信息變化越頻繁,本地緩存數據的更新所需時間就越短,則基準時間就要越短;變化率越大,代表航班的信息變化越緩慢,本地緩存數據的更新所需時間就越長,則基準時間就要越長。其中,所述基準時間是本次查詢的基準時間,所述當前基準時間作為下一次查詢的基準時間。在本發(fā)明實施例中,優(yōu)選的是,所述預置的基準時間是季節(jié)性調整的或根據單獨航線的忙碌程度調整的。所述基準變化率為整體的基準變化率或者某一單獨航線的基準變化率。例如,在春節(jié)或五一、十一假期期間,各航線都比較忙碌,各航線的航班信息變化都比較快,則會將所述基準時間調短,將所述基準變化率調低。而在平時,乘坐航班的乘客變少,航班信息變化相對降低,則根據經驗值調高預置的基準時間或基準變化率。根據單獨航線的忙碌程度調整的情況,例如在2008年09月01日一2008年09月15日期間,有重要世界會議在上海召開,則這段時間北京到上海的航線就會比較忙碌,航班信息變化比較頻繁,則在這段時間內調高預置的基準時間或基準變化率。過了這段有效期,再將所述高預置的基準時間或基準變化率調整回原來的數值。采樣這種辦法,有效提高了本地查詢航班信息的準確率。在本發(fā)明提供的另外一實施例中,還包括步驟S:更新規(guī)則記錄,該步驟可以與上述步驟106同時執(zhí)行,無先后順序之分。所述規(guī)則記錄包括查詢條件航線編號、航空公司、出發(fā)日期或查詢出發(fā)時間;創(chuàng)建時間本次查詢后產生該記錄的時間;狀態(tài)包括從GDS服務器讀取和從本地緩存讀取,可以將所述從GDS服務器讀取的狀態(tài)記為1,將所述從本地緩存讀取的狀態(tài)記為0;變化率和基準時間。在本發(fā)明實施例中可以將上述規(guī)則記錄建立以下數據模型:<table>tableseeoriginaldocumentpage10</column></row><table>在上述表格中顯示了6條規(guī)則記錄,其中系統(tǒng)開啟時預置的基準時間為300s,基準變化率為0.02。當變化率小于0.02時,當前基準時間不發(fā)生變化,如第一行記錄、第二行記錄、第三行記錄、第四行記錄和第六行記錄。當變化率大于0.02,如第五行的記錄,變化率為0.04,則基準時間依據上述當前基準時間的計算公式,所述當前基準時間縮短為150s?;诒景l(fā)明提供的準確查詢GDS航班信息的方法,本發(fā)明還提供了一種準確查詢GDS航班信息的系統(tǒng),參照圖2,示出了本發(fā)明一種準確查詢GDS航班信息的系統(tǒng)的實施例結構示意圖,包括客戶端21和GDS服務器22,所述客戶端21包括查詢信息接收模塊201,用于接收航班查詢信息;查詢條件判斷模塊202,用于判斷本地緩存中是否有相匹配的查詢條件;時間比較模塊203,判斷本次查詢與上次查詢的時間間隔是否小于預置的基準時間;變化率比較模塊204,用于判斷可訂座位數量的當前變化率是否小于基準變化率;緩存信息查詢模塊207,用于讀取本地緩存航班數據;GDS信息查詢模塊205,用于從GDS服務器22讀取新的航班數據;存儲模塊206,用于增加或更新本地的航班緩存數據。其中,所述變化率等于本次查詢GDS服務器返回的結果與上次查詢結果之差與所述上次查詢結果的比較,其中,所述結果為符合所述查詢條件航班的各種倉位的可預訂座位的數量總和。所述預置的基準時間是季節(jié)性調整的或根據單獨航線的忙碌程度調整的。所述基準變化率為整體的基準變化率或者某一單獨航線的基準變化率。在本發(fā)明一種準確查詢GDS航班信息的系統(tǒng)的另外一優(yōu)選實施例中,還包括基準時間調整模塊209,用于依據當前變化率和基準變化率的關系線性調整基準時間。所述調整后的基準時間與當前基準時間的比值等于基準變化率與當前變化率的比值。在本發(fā)明一種準確查詢GDS航班信息的系統(tǒng)的另外一優(yōu)選實施例中,還包括規(guī)則記錄模塊208,用于更新規(guī)則記錄。本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。對于系統(tǒng)實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。以上對本發(fā)明所提供的一種準確查詢GDS航班緩存數據的方法和系統(tǒng),闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領域的一般技術人員,依據本發(fā)明的思想,在具體實施方式及應用范圍上均會有改變之處,綜上所述,本說明書內容不應理解為對本發(fā)明的限制。權利要求1、一種準確查詢GDS航班信息的方法,其特征在于,包括接收航班查詢條件;判斷本地緩存中是否有相匹配的查詢條件,如果有,則執(zhí)行下一步;否則,查詢GDS服務器;根據所述查詢條件,判斷本次查詢與上次查詢的時間間隔是否小于預置的基準時間,如果是,則執(zhí)行下一步;如果否,則查詢所述GDS服務器;判斷可訂座位數量的當前變化率是否小于基準變化率,如果是,則查詢所述本地緩存;如果否,則查詢所述GDS服務器;依據GDS服務器的查詢結果,增加或更新本地的航班緩存數據。2、根據權利要求1所述的方法,其特征在于,所述查詢條件包括航線編號、4元空/>司、出發(fā)日期以及出發(fā)時間。3、根據權利要求1所述的方法,其特征在于,通過以下方式獲取當前變化率從GDS服務器獲取當前時刻下,符合所述查詢條件的航班的各種倉位的可預訂座位的數量總和,與前一時刻的數量總和進行比較而獲得當前變化率。4、根據權利要求1所述的方法,其特征在于,還包括依據當前變化率和基準變化率的關系線性調整基準時間。5、根據權利要求2所述的方法,其特征在于,所述基準時間與變化率的關系為所述調整后的基準時間與當前基準時間的比值等于基準變化率與當前變化率的比值。6、根據權利要求1所述的方法,其特征在于,還包括更新規(guī)則記錄。7、根據權利要求2和6所述的方法,其特征在于,所述規(guī)則記錄包括本次航班的查詢條件和查詢創(chuàng)建時間、狀態(tài)、變化率以及基準時間。8、根據權利要求7所述的方法,其特征在于,所述狀態(tài)包括從GDS服務器讀取和從本地緩存讀取。9、根據權利要求1所述的方法,其特征在于,所述預置的基準時間是季節(jié)性調整的或根據單獨航線的忙碌程度調整的。10、根據權利要求1所述的方法,其特征在于,所述基準變化率為整體的基準變化率或者某一單獨航線的基準變化率。11、一種準確查詢GDS航班信息的系統(tǒng),包括客戶端和GDS服務器,其特征在于,所述客戶端包括查詢信息接收模塊,用于接收航班查詢信息;查詢條件判斷模塊,用于判斷本地緩存中是否有相匹配的查詢條件;時間比較模塊,判斷本次查詢與上次查詢的時間間隔是否小于預知的基準時間;變化率比較模塊,用于判斷可訂座位數量的當前變化率是否小于基準變化率;緩存信息查詢模塊,用于讀取本地緩存航班數據;GDS信息查詢模塊,用于從GDS服務器讀取新的航班數據;存儲模塊,用于增加或更新本地的航班緩存數據。12、根據權利要求11所述的系統(tǒng),其特征在于,還包括基準時間調整模塊,用于依據當前變化率和基準變化率的關系線性調整基準時間。13、根據權利要求11所述的系統(tǒng),其特征在于,還包括規(guī)則記錄模塊,用于更新規(guī)則記錄。14、根據權利要求11所述的系統(tǒng),其特征在于,所述變化率等于本次查詢GDS服務器返回的結果與上次查詢結果之差與所述上次查詢結果的比較,其中,所述結果為符合所述查詢條件航班的各種倉位的可預訂座位的總和。15、根據權利要求12所述的系統(tǒng),其特征在于,所述調整后的基準時間與當前基準時間的比值等于基準變化率與當前變化率的比值。16、根據權利要求12所述的系統(tǒng),其特征在于,所述預置的基準時間是季節(jié)性調整的或根據單獨航線的忙碌程度調整的。17、根據權利要求11所述的系統(tǒng),其特征在于,所述基準變化率為整體的基準變化率或者某一單獨航線的基準變化率。全文摘要本發(fā)明提供了一種準確查詢GDS航班信息的方法和系統(tǒng),其中所述方法包括接收航班查詢條件;判斷本地緩存中是否有相匹配的查詢條件,如果有,則執(zhí)行下一步;否則,查詢GDS服務器;根據所述查詢條件,判斷本次查詢與上次查詢的時間間隔是否小于預置的基準時間,如果是,則執(zhí)行下一步;如果否,則查詢所述GDS服務器;判斷可訂座位數量的當前變化率是否小于基準變化率,如果是,則查詢所述本地緩存;如果否,則查詢所述GDS服務器;依據GDS服務器的查詢結果,增加或更新本地的航班緩存數據。采用本發(fā)明提供的方法使得用戶從本地緩存查詢的航班信息更加接近于GDS服務器的航班信息,提高了本地緩存查詢航班信息的準確率。文檔編號G06F17/30GK101458706SQ20081022575公開日2009年6月17日申請日期2008年11月11日優(yōu)先權日2008年11月11日發(fā)明者盧東哲,周瑞壯,熊枝峰申請人:航旅信通(北京)信息技術有限公司