TWI688907B - 基於區塊鏈的房間庫存管理系統 - Google Patents
基於區塊鏈的房間庫存管理系統 Download PDFInfo
- Publication number
- TWI688907B TWI688907B TW107141254A TW107141254A TWI688907B TW I688907 B TWI688907 B TW I688907B TW 107141254 A TW107141254 A TW 107141254A TW 107141254 A TW107141254 A TW 107141254A TW I688907 B TWI688907 B TW I688907B
- Authority
- TW
- Taiwan
- Prior art keywords
- room
- management system
- block
- node
- reservation
- Prior art date
Links
- 238000012545 processing Methods 0.000 claims abstract description 5
- 238000007726 management method Methods 0.000 claims description 171
- 230000015654 memory Effects 0.000 claims description 73
- 238000000034 method Methods 0.000 claims description 27
- 238000004891 communication Methods 0.000 claims description 26
- 230000001052 transient effect Effects 0.000 claims description 17
- 238000012546 transfer Methods 0.000 claims description 16
- 238000012550 audit Methods 0.000 claims description 13
- 238000004422 calculation algorithm Methods 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims description 2
- 230000000977 initiatory effect Effects 0.000 claims 2
- 101100462365 Aspergillus niger (strain CBS 513.88 / FGSC A1513) otaA gene Proteins 0.000 description 23
- 101100462367 Aspergillus niger (strain CBS 513.88 / FGSC A1513) otaB gene Proteins 0.000 description 18
- 238000005516 engineering process Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 13
- -1 ... Proteins 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 230000008901 benefit Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000006378 damage Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 235000013361 beverage Nutrition 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 208000001613 Gambling Diseases 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/12—Hotels or restaurants
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/02—Reservations, e.g. for tickets, services or events
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/087—Inventory or stock management, e.g. order filling, procurement or balancing against orders
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0637—Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3297—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Tourism & Hospitality (AREA)
- Economics (AREA)
- Marketing (AREA)
- Theoretical Computer Science (AREA)
- Human Resources & Organizations (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Development Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Operations Research (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Health & Medical Sciences (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
基於區塊鏈的房間庫存管理系統,包含物業管理系統模組及中間伺服系統。物業管理系統模組可直接在旅館方的直接控制下。中間伺服系統與至少一個線上旅遊代理模組及/或至少一個預訂引擎使用基於以太坊的智能合約溝通,以確認及處理房間預訂事件。若房間預訂事件被確認為成功交易,中間伺服系統亦更新該成功交易至物業管理系統模組及多個節點伺服器所形成之區塊鏈。區塊鏈包含多個依時間順序排序的區塊,以區別不同時間發生的成功交易。如此一來,每一成功交易可避免錯誤地被後行成功交易插隊。且房間庫存管理系統據此解決了房間超售事件。
Description
本發明係關於一種房間庫存管理系統,尤指一種基於區塊鏈技術的房間庫存管理系統。另,本發明主張於2017年11月20日提出申請之美國專利臨時申請案62/588,909(標題為「基於以太坊的物業管理」)的優先權。
對飯店或旅遊代理們來說,房間預訂是一個重要的服務。在傳統的房間預訂服務中,預訂引擎(Booking Engine)或線上旅遊代理(Online Travel Agency)會代表飯店方,並提供顧客一個遠端使用者介面,以使顧客可事先在計畫的時間,預訂飯店中的可用房間。
線上旅遊代理是指專門販賣旅遊商品給顧客的旅遊網站,且該些旅遊商品包含房間預訂服務。該線上旅遊代理與房間提供方(例如飯店)簽訂有線上代理合約,以代銷其房間預訂服務。在這樣的情況下,線上旅遊代理會接收到預定至少一間可用房間之顧客的付款,並將預訂房間的淨款項轉付給飯店方。
用於飯店房間預訂服務之預訂引擎是指使顧客可預訂可用房間之網站。該預訂引擎亦將客製化的價格及/或付款規則介紹給顧客,以使其在預訂房間服務時可較容易地作出決定。
然而,若在短時間內出現多於一位顧客登入該遠端使用者介面並預定一飯店中的同一可用房間時,可能會較容易發生房間超售事件(Overbooking)。房間超售事件會對顧客方及飯店方同時造成明顯的損害。舉例來說,為了因應房間超售事件,飯店方必須安排額外的房間、服務、及/或補償措施。同樣地,房間超售事件也會迫使顧客在有限的時間內改變其旅遊計畫,並破壞其旅遊體驗。這些不便之處在旅遊旺季時會越發頻繁且嚴重。然而,飯店方會受限於現行的線上旅遊代理及/或預訂引擎在處理房間超售事件時所面對的科技上限制。因此,飯店方需要透過科技上的解方來有效率地減緩房間超售事件。
本發明揭露一種基於區塊鏈的房間庫存管理系統。在一實施例中,該房間庫存管理系統包含一物業管理系統及一中間伺服系統。該物業管理系統包含一主收發器、一主非揮發式電腦可讀取記憶體、及一主電腦處理器。該主收發器用來接收一成功交易。該主非揮發式電腦可讀取記憶體用來儲存一房間庫存紀錄之一複本。該房間庫存紀錄係記錄該物業管理系統所管理之所有房間的可用性。該主電腦處理器用來以併入該成功交易的方式,更新該房間庫存紀錄之該複本。該中間伺服系統包含一交易代理伺服器及複數個節點伺服器。該交易代理伺服器包含一中間收發器、一中間非揮發式電腦可讀取記憶體、及一中間電腦處理器。該中間收發器用來接收一房間預訂事件、用來將該成功交易轉傳至該物業管理系統、並用來轉傳對應於該成功交易所產生之一新增區塊。該中間非揮發式電腦可讀取記憶體用來儲存基於乙太坊所產生之複數個智能合約、用來儲存該房間庫存紀錄、並用來儲存一區塊鏈。該房間庫存紀錄係使用該些智能合約中至少一個智能合約所實作。該區塊鏈係包含複數個區塊。且該區塊鏈之一最新近增加區塊係帶有該物業管理系統之所有最新成功交易。該中間電腦處理器用來確認該房間預訂事件是否會在該房間庫存紀錄中引起超售事件,並用來在該中間電腦處理器確認該房間預訂事件不會在本地端之該房間庫存紀錄中引起超售事件時,決定該房間預訂事件是成功的、並使用該房間預訂事件中的資訊來產生該成功交易。該中間電腦處理器包含一雜湊模組、一時間戳記模組、及一區塊產生模組。該雜湊模組用來對應該成功交易,產生該新增區塊之一雜湊值。該時間戳記模組用來對應該成功交易,產生該新增區塊之一獨特時間戳記。該區塊產生模組用來對應於該成功交易,使用至少該獨特雜湊值、該獨特時間戳記、及該最新近增加區塊之資訊,產生該新增區塊之一獨特區塊標頭(Header)。該區塊產生模組亦用來產生該新增區塊、以及用來將該新增區塊加入該區塊鏈。該新增區塊包含該獨特區塊標頭、該成功交易之該資訊、該些智能合約的至少其中之一、及該最新近增加區塊之該內容。每一節點伺服器包含一節點收發器、一節點非揮發式電腦可讀取記憶體、及一節點電腦處理器。該節點收發器用來由該中間收發器接收該新增區塊。該節點非揮發式電腦可讀取記憶體用來儲存該區塊鏈之一複本。該節點電腦處理器,用來將該新增區塊加入該區塊鏈之該複本,以更新該區塊鏈之該複本。
本發明之另一實施例亦揭露一種基於區塊鏈的房間庫存管理系統,其包含一物業管理系統及一中間伺服器系統。該物業管理系統包含一主收發器、一主非揮發式電腦可讀取記憶體、及一主電腦處理器。該主收發器用來接收一成功交易。該主非揮發式電腦可讀取記憶體用來儲存一房間庫存紀錄之一複本。該房間庫存紀錄記錄了該物業管理系統所管理之所有房間的可用性。該主電腦處理器用來以併入該成功交易的方式,更新該房間庫存紀錄之該複本。該中間伺服器系統包含複數個節點伺服器。每一節點伺服器包含一節點收發器、一節點非揮發式電腦可讀取記憶體、及一節點電腦處理器。該節點收發器用來接收該房間預訂事件、用來將該成功交易轉送至該物業管理系統、及用來轉傳對應於該成功交易所產生之一區塊。該節點非揮發式電腦可讀取記憶體用來儲存基於乙太坊所產生之複數個智能合約、及用來儲存一區塊鏈或該區塊鏈之一複本。該區塊鏈包含複數個區塊。該區塊鏈之一最新近增加區塊係帶有該物業管理系統之所有最新成功交易。且該房間庫存紀錄係使用該些智能合約之至少其中之一智能合約來實施。該節點電腦處理器用來將一新增區塊加入所儲存之該區塊鏈或該區塊鏈的複本以更新該區塊鏈或該區塊鏈的複本。該節點電腦處理器包含一雜湊模組、一時間戳記模組、及一區塊產生模組。該些節點伺服器使用一共識演算法,由該些節點伺服器中暫時選出一個主控(Master)節點伺服器。該主控節點伺服器所包含之節點電腦處理器進一步確認該房間預訂事件是否會在該房間庫存紀錄中引起超售事件。當該主控節點伺服器所包含之節點電腦處理器確認該房間預訂事件不會在該房間庫存紀錄中引起超售事件時,該處理器也會判定該房間預訂事件為成功事件、並使用該房間預訂事件之資訊來產生該成功交易。該主控節點伺服器之雜湊模組用來對應於該成功交易,為該新增區塊產生一雜湊值。該主控節點伺服器之時間戳記模組用來對應於該成功交易,為該新增區塊產生一獨特時間戳記。該主控節點伺服器之區塊產生模組用來對應於該成功交易,使用至少該獨特雜湊值、該獨特時間戳記、及該最新近增加區塊的內容,為該新增區塊產生一獨特區塊標頭,用來產生該新增區塊,並用來將該新增區塊加入至該主控節點伺服器之節點非揮發式電腦可讀取記憶體所儲存之該區塊鏈中。該新增區塊包含該獨特區塊標頭、該成功交易之資訊、該些智能合約之至少其中之一、及該最新近增加區塊的內容。該些節點伺服器中除了該主控節點伺服器以外的其他節點伺服器各自包含之區塊產生模組,係對應於該成功交易,將該新增區塊加入於各自對應之節點非揮發性電腦可讀取式記憶體所儲存該區塊鏈之複本中。
以下將詳細參考在圖式中所示之本發明的實例。只要可能,在整個圖式中將使用相同的標號來表示相同或相似的部分。
傳統房間庫存管理系統架構
圖1圖示傳統房間庫存管理系統100如何通過一個中間頻道管理器150,與各線上旅遊代理模組及/或預訂引擎合作來處理顧客預訂房間的服務,其中中間頻道管理器150連接於房間庫存管理系統100與該些線上旅遊代理模組及/或預訂引擎之間,並由飯店方來控制。舉例來說,房間庫存管理系統100與M個線上旅遊代理模組OTA1、OTA2、…、OTAM及/或N個預訂引擎BE1、BE2、…、BEN共同作業,其中M與N皆為正整數。請注意,在上述例子中,與房間庫存管理系統100共同運作之至少一個線上旅遊代理模組及/或至少一個預訂引擎可由至少一個全球分銷系統(Global Distribution System,GDS)及/或至少一個元搜尋引擎(Metasearch Engine)所替換。然而,飯店方使用上述全球分銷系統及/或元搜尋引擎的成本遠高於租用線上旅遊代理模組及/或預訂引擎的成本,且使用全球分銷系統及/或元搜尋引擎的成本可包含至少建置及維護一客製化應用程式介面(Application Programming Interface,API)及由大量顧客所索取的服務費。因此,一般的飯店方傾向尋求線上旅遊代理模組或預訂引擎的服務,而非全球分銷系統或元搜尋引擎。以下敘述將集中於使用線上旅遊代理模組及/或預訂引擎的情況,然而仍適用於使用全球分析系統及元搜尋引擎的狀況。
房間庫存管理系統100設置於飯店方管理的領域中。線上旅遊代理模組OTA1、OTA2、…、OTAM及/或預訂引擎BE1、BE2、…、BEN一般來說設置於遠離旅館方的位置且並不屬於旅館方的控制。頻道管理器150對每一線上旅遊代理模組OTA1、OTA2、…、OTAM及每一預訂引擎BE1、BE2、…、BEN個別維護了一個通訊頻道,以轉譯及轉傳其請求至房間庫存管理系統100,也就是飯店方。然而,在一般的情況下,每一線上旅遊代理模組OTA1、OTA2、…、OTAM及/或每一預訂引擎BE1、BE2、…、BEN會使用不同的應用程式介面及不同的通訊協定來轉達不同型態的變數及參數。因此,飯店方或中間頻道管理器150總是會需要耗費大量成本在設計客製化應用程式介面於中間頻道管理器150個別維護的多個通訊頻道,以期符合每一線上旅遊代理模組OTA1、OTA2、…、OTAM及/或每一預訂引擎BE1、BE2、…、BEN在應用程式介面及通訊協定上的不同需求。
房間庫存管理系統100包含一傳統的物業管理系統(Property Management System,PMS)模組120及一記憶體130。
用於飯店預訂房間服務的傳統物業管理系統模組包含一電腦化系統來促進飯店方的房間預訂服務。該傳統物業管理系統模組是一個全方位的軟體應用,其用來涵蓋如飯店方的前端管理、銷售業務、企劃、報告等功能之目標。該傳統物業管理系統模組使得飯店方的運作得以自動化,包含顧客房間預訂服務、顧客資訊細節、線上預訂服務、收費通知、銷售熱點、電話、應收帳款、銷售與營銷、事件、食物飲品花費、物資管理、人力資源與薪資管理、維護管理、品質管理及其他設施。飯店的物業管理系統模組可以被整合於或製作成介面於第三方解決方案,例如中央預訂系統及收益率管理系統、線上預訂引擎、後端系統、銷售熱點、門禁系統、房間服務優化、能源管理、支付卡授權及頻道管理系統。藉由雲端計算科技的幫助,飯店的物業管理系統模組可以擴展其功能至直接對顧客的服務,例如線上入住服務、房間服務、房間內控制、住客與櫃檯間的通訊、及虛擬門房(concierge)等。該些擴充功能主要是被顧客使用於其持有的手機或是由飯店方於其大廳及/或房間內提供。傳統的物業管理系統模組總是需要針對飯店方的營運基礎績效指標,提供正確且即時的資訊,例如每日平均費率或是住房率等。傳統物業管理系統模組亦在食物與飲品管理上控制儲藏空間中的存貨、並決定購買哪些存貨、及決定購買的量與頻率等。如此一來,傳統物業管理系統模組120使得顧客可以在飯店本地端透過物業管理系統模組120或遠端地透過上述的線上旅遊代理模組及/或預訂引擎,來完成其對於飯店所做的房間預訂。
記憶體130儲存一房間庫存紀錄140,其儲存房間庫存管理系統100(亦即飯店方)所管理之所有房間的可用度。根據所管理之所有房間的可用度,房間庫存管理系統100可將被管理的房間分類為可用房間、已預訂房間、及已住客房間。當顧客預定了可用房間,該可用房間即變成已預訂房間。當顧客入住已預訂房間,該已預訂房間即變成已住客房間。當顧客由飯店辦理退房時,該已住客房間變為可用房間。
同樣地,每一線上旅遊代理模組OTA1、OTA2、…、OTAM各自具有一個房間庫存紀錄。且每一預訂引擎BE1、BE2、…、BEN各自具有一個房間庫存紀錄。
然而,線上旅遊代理模組OTA1、OTA2、…、OTAM及預訂引擎BE1、BE2、…、BEN並沒有動機去將各自的房間庫存紀錄內容與房間庫存紀錄140的內容動態地進行同步。這是因為動態地與房間庫存紀錄140的內容進行同步會明顯地增加其等待傳統物業管理系統模組120之回應的負擔。再者,因為頻道管理器150僅負責轉譯及轉達要求,頻道管理器150無法對傳統物業管理系統模組120減輕上述負擔。更嚴重的是,如果越來越多的線上旅遊代理系統模組及預訂引擎持續詢問房間庫存紀錄140的內容,傳統物業管理系統模組120遲早會無法負荷這樣的詢問量、並引發其系統當機。為了避免這樣的系統當機情形,傳統物業管理系統模組120僅能給予較長的等待時間,來允許線上旅遊代理系統模組及預訂引擎提出較小程度的詢問量,其中該等待時間的長度可由至少數分鐘到數個小時,並根據飯店方請求服務的線上旅遊代理系統模組及/或預訂引擎數量來決定。舉例來說,在飯店方請求服務的線上旅遊代理系統模組及/或預訂引擎數量超過五組的情況下,線上旅遊代理或預訂引擎可被限制每半小時或每二小時才能夠詢問房間庫存紀錄140一次。在旅遊旺季中,在飯店方請求服務的線上旅遊代理系統模組及/或預訂引擎數量更多時,上述的等待時間會設定得更長。如此一來,會無可避免地迫使線上旅遊代理系統模組及/或預訂引擎數量具有之房間庫存紀錄的內容與房間庫存紀錄140之內容間出現不一致的現象,這是因為線上旅遊代理系統模組及/或預訂引擎在處理顧客發出的房間預訂請求時,其房間庫存紀錄的內容可能並不正確。即使在某些極端情況下,為了減輕雙方的無謂負擔並集中處理陸續到來的房間預訂請求,線上旅遊代理系統模組及/或預訂引擎也有可能會不定時地或更為頻繁地跳過對傳統物業管理系統模組120的詢問,以節省其確認房間庫存資訊的成本。更糟的是,如果飯店方實際上已用盡可用房間,而線上旅遊代理系統模組及/或預訂引擎並未及時詢問傳統物業管理系統模組120以獲知該資訊,接下來會發生的房間超售事件(Overbooking)是無可避免的。
傳統房間庫存管理系統中發生房間超售事件的起源
圖1圖示了傳統科技中房間超售事件是如何引起的細節。
假設一第一顧客透過線上旅遊代理模組OTA1存取物業管理系統模組120,以預訂房間庫存管理系統100所管理之可用房間R1。首先,線上旅遊代理模組OTA1先行查驗其持有的房間庫存紀錄,以確認飯店方是否有可用房間,其中線上旅遊代理模組OTA1持有的房間庫存紀錄不見得與房間庫存紀錄140的內容一致。若線上旅遊代理模組OTA1確認到飯店方有可用房間,線上旅遊代理模組OTA1會將該第一顧客的房間預訂請求轉傳至傳統物業管理系統模組120。傳統物業管理系統模組120接著查驗房間庫存紀錄140的內容,以確認其是否的確有可用房間來滿足該第一顧客的房間預訂請求。若傳統物業管理系統模組120的確在房間庫存紀錄140的內容確認到有可用房間,傳統物業管理系統模組120會將該第一顧客的房間預訂請求轉譯為一成功交易(Successful Transaction),並對應更新房間庫存紀錄140的內容以紀錄該成功交易。此次房間庫存紀錄140的內容更新包含改變房間R1的可用性至已預訂狀態、及減少飯店方的可用房間額度。
然而,若一第二顧客透過預訂引擎BE1存取傳統物業管理系統模組120,以在該第一顧客發出房間預訂請求的稍後預訂同一房間R1,而使得預訂引擎BE1來不及被告知該第一顧客已成功預訂房間R1的事實,並使得預訂引擎BE1誤確認房間R1仍為可用房間。接著,預訂引擎BE1將該第二顧客的房間預訂請求轉傳至傳統物業管理系統模組120。顯然地,傳統物業管理系統模組120將會在檢查房間預訂紀錄140的內容後,很快的決定該第二顧客並未成功預訂房間R1。然而,傳統物業管理系統模組120仍需等到預訂引擎BE1再次向房間預訂紀錄140進行查詢時,才能夠向預訂引擎BE1告知該第二顧客並未成功預訂房間的狀況。若不幸地,該第二顧客在預訂引擎BE1的再次查詢前,便已至飯店方辦理入住手續,該第二顧客與飯店方都勢必要面對房間超售的問題。
若該第二顧客運氣夠好,飯店方仍然可以準備替代用的可用房間給該第二顧客,並給予適當的補償。然而,若不巧飯店方在確認該第一顧客之房間預訂要求為成功交易且正好用盡所有可用的房間時,該第二顧客仍然需要面對房間超售的問題,並需要立即搜尋其他飯店的可用房間。在強烈的不確定性下,該第二顧客的旅遊體驗很可能因此被徹底破壞,且這也會反向損傷飯店方及預訂引擎BE1的商譽。更糟的是,如以上所述,若飯店方與更多的線上旅遊代理模組及/或預訂引擎合作,或若處於旅遊旺季,上述的房間超售問題其嚴重性會越來越大。
以科技觀點來說,傳統的房間庫存管理系統100具有以下缺點: (1) 線上旅遊代理模組與預訂引擎無法動態地詢問傳統物業管理系統模組120,來確定各自房間庫存紀錄之正確性。 (2) 若線上旅遊代理模組與預訂引擎各自增加詢問傳統物業管理系統模組120的頻率,傳統物業管理系統模組120自身的計算量及/或通訊頻寬將無法負荷,而因此更容易造成計算錯誤或通訊錯誤。 (3) 傳統房間庫存管理系統100與線上旅遊代理模組及/或預訂引擎之間的資料不一致,將會導致飯店方的房間超售事件。房間超售事件會在飯店方與更多線上旅遊代理模組及/或預訂引擎合作或旅遊旺季時更加惡化。 (4) 飯店方必須付出更大的成本在研發客製化應用程式介面及通訊協定上,以由線上旅遊代理模組及/或預訂引擎接收所需的變數與參數來處理各自的房間預訂請求,甚至處理房間退訂請求或退房請求。
本發明之房間庫存管理系統
為了有效率地減緩上述傳統房間庫存管理系統100所發生的房間超售事件,本發明根據一實施例揭露一種基於區塊鏈的房間庫存管理系統,亦即如圖2所示之基於區塊鏈的房間庫存管理系統200。房間庫存管理系統200引入一個中間伺服系統,該中間伺服系統可減緩傳統物業管理系統模組與線上旅遊代理及/或預訂引擎之間的資料不對稱,並可減輕傳統物業管理系統模組的負擔。再者,房間庫存管理系統200有效率地為各個飯店方降低了線上旅遊代理模組、預訂引擎、甚至是上述全球分銷系統及元搜尋引擎所帶來的通訊成本及維護成本。
區塊鏈包含了多個實體節點,每一實體節點理論上保存了相同的內容(例如多個區塊),例如每一節點各自保存了複數個區塊,且每一節點各自保存的複數個區塊具有相同的內容。為了對應特定事件的發生,例如發生成功交易時,會產生一個新區塊來記錄該特定事件。在越多的區塊產生後,可建立起一成功交易歷史,並可於該區塊鏈中追蹤該成功交易歷史。因此,採用區塊鏈技術的第一個好處即為可追朔性。再者,如果某一實體節點中某一特定區塊被成功竄改,由於所有的實體節點理論上包含一樣的內容,亦即包含一樣的區塊,因此這樣的成功竄改可以很容易地被偵測到、並藉由參考其他未被竄改之實體節點中的區塊來修復。換言之,應用區塊鏈的第二優點在於其抵禦竄改行動的能力。
當應用區塊鏈技術時,基於區塊鏈的房間庫存管理系統200可有效地確保每一成功交易的正確性,亦即確保每一房間預訂事件的正確性。因此,基於區塊鏈的房間庫存管理系統200可有效地解決使用傳統房間庫存管理系統所引起的房間超售問題。
再者,基於區塊鏈的房間庫存管理系統200使用基於以太坊(Ethereum)的智能合約(Smart Contract)來產生一個共同的應用程式介面(Application Programming Interface,API)及/或一共同的通訊協定來與該些線上旅遊代理及/或該些預訂引擎進行通訊。在某些例子中,該共用之應用程式介面是用於基於以太坊的多個線上旅遊代理及/或多個預訂引擎,且該共同的通訊協定是用於非基於以太坊的多個線上旅遊代理及/或多個預訂引擎。如此一來,該些線上旅遊代理及/或該些預訂引擎所產生的系統維護成本及通訊成本可大幅度的削減,其中該些系統維護及通訊包含向線上旅遊代理模組及/或預訂引擎傳輸房間預訂事件或更新房間庫存紀錄等。這是因為基於以太坊的智能合約在編程語言設計上的開放及易於上手等性質,其包含轉傳具有較少且較易於理解之變數及參數。上述有關降低成本方面的好處,基於同樣的理由,也成立於當基於區塊鏈之房間庫存管理系統200與全球分銷系統及/或元搜尋引擎共同合作的狀況。
智能合約是在以太坊下發展的技術,也是本發明所應用之區塊鏈科技中的重要輔助技術。以太坊是一種開源、基於區塊鏈的分散式計算系統及作業系統,特徵在於智能合約的功能性。以太坊提供一種去中心化且符合圖靈完備(Turing-Complete)的虛擬機器,也就是以太坊虛擬機器,其可使用節點網路來執行指令碼(Script)。
以太坊的智能合約基於不同的電腦語言,開發者使用這些電腦語言來編程各自的功能。智能合約是高階的編程抽象化,其被轉譯為以太坊虛擬機器字節碼(Bytecode)、並部署於以太坊區塊鏈中來執行。智能合約可開啟證明功能性的可能性,例如自含可證明公平性(Provably Fair)之賭場。以太坊區塊鏈應用通常是指去中心化的應用,這是因為它們基於去中心化以太坊虛擬機器與其智能合約的緣故。以太坊區塊鏈的應用實例包含:數位簽章演算法、證券化代幣(Securitized Token)、數位權利管理、集資(Crowdfunding)、預測市場、匯款、線上賭博、社群媒體平台、金融交易及身份系統等。因為以太坊的圖靈完備性質,智能合約得以提供功能設計及實施上的高度彈性。再者,因為基於以太坊的智能合約所具有的開源及易於實施等性質,基於區塊鏈的房間庫存管理系統200在與線上旅遊代理模組及/或預訂引擎進行通訊時,在基於以太坊的智能合約輔助下,具有上述提及之各種優點。
基於區塊鏈的房間庫存管理系統200包含一新穎之物業管理系統模組210及一中間伺服系統250。物業管理系統模組210可設置於一旅館內,使得旅館方可直接控制物業管理系統模組210。中間伺服系統250可設置於物業管理系統模組210的遠方。在一例子中,中間伺服系統250為物業管理系統模組210事先處理或處理房間預訂事件,使得中間伺服系統250可為物業管理系統模組210大幅減輕處理上的負擔。在一例子中,房間預訂事件包含至少由旅館方發出的內部房間預訂請求及內部房間取消/退房請求,以及由線上旅遊代理模組及/或預訂引擎所發出的外部房間預訂請求及外部房間取消請求。外部房間預訂請求及外部房間取消請求可透過線上旅遊代理模組及/或預訂引擎發出,以在該應用程式介面或該通訊協定的輔助下,預訂或取消飯店方至少一個房間,其中該應用程式介面及該通訊協定是使用基於以太坊的智能合約所開發。該內部房間預訂/內部房間退房請求發生在顧客直接在飯店內辦理房間預訂手續、或是當飯店內的顧客決定辦理退房手續之時。再者,中間伺服系統250使用基於以太坊的智能合約來就房間預訂事件進行通訊,以節省與線上旅遊代理模組及/或預訂引擎之通訊成本,此係因用來通訊的應用程式介面及/或通訊協定是使用基於以太坊的智能合約來實作,因而使得設計簡單之故。
在一例子中,物業管理系統模組210特別設計藉由與中間伺服系統250共用同一應用程式介面,亦即同一遠端程序呼叫(Remote Procedure Call,RPC)程序,而與中間伺服系統250共同運作。如此一來,物業管理系統模組210與中間伺服系統250之間的通訊可僅用去較少的處理時間,而達成更高的效率。在房間庫存管理系統200需要在短時間內處理大量房間預訂事件時,例如旅遊旺季時,這樣的高效率會更明顯。
物業管理系統模組210包含一主收發器212、一主處理器214、及一主記憶體216。在本發明之各個例子中,主處理器214是一個電腦處理器,且主記憶體216是一個非揮發式電腦可讀取記憶體。主收發器212可處理與中間伺服系統250之間的通訊,但並不直接與線上旅遊代理OTA1、OTA2、…、OTAM及/或預訂引擎BE1、BE2、…、BEN進行通訊。主記憶體216會為物業管理系統模組210維護一個房間庫存紀錄218(如圖3所示),以作為飯店方管理其房間之用。房間庫存紀錄218記錄了至少飯店中每一房間的可用度及飯店中可用的房間計數。主處理器214可對應於一房間預訂事件的發生,參照及/或更新房間庫存紀錄218。舉例來說,主處理器214接獲一房間預訂請求時,即減少飯店中可用的房間計數及/或關閉被預訂之房間的可用度。主處理器214接獲一房間預訂取消請求或一退房請求時,即增加飯店中可用的房間計數及/或開啟被預訂之房間的可用度。
中間伺服器系統250應用了區塊鏈技術。再者,中間伺服器系統250包含一交易代理伺服器260及複數個節點伺服器,例如圖2所示X個節點伺服器NS1、NS2、…、NSX,其中X是正整數。節點伺服器NS1、NS2、…、NSX會形成一個區塊鏈,每一節點伺服器會保存實質相同的資料,以確保彼此之間的資料一致性及資料可追朔性。
交易代理伺服器260如同中間伺服器系統250的核心,並包含一中間收發器262、一中間處理器264、及一中間記憶體266。在某些例子中,交易代理伺服器260會扮演被信任之節點的角色,用來被授權在中間伺服器系統250所形成的區塊鏈中產生新區塊。同樣地,在某些例子中,中間處理器264是一個電腦處理器,且中間記憶體266是一個非揮發式電腦可讀取記憶體。當線上旅遊代理模組OTA1、OTA2、…、OTAM、預訂引擎BE1、BE2、…、BEN、或物業管理系統模組210中任一者發出一房間預訂請求時,中間收發器262會接收該房間預訂請求、並轉傳至中間處理器264。在某些例子中,中間收發器262可被實施為一應用程式介面伺服器,且該應用程式介面伺服器會基於中間記憶體266所儲存基於以太坊的智能合約,將該房間預訂請求轉譯為物業管理系統模組210及中間伺服器系統250可輕易理解的形式,亦即取代了頻道管理器150的功能。中間記憶體266維護了一個如圖3所示的房間庫存紀錄268,其中房間庫存紀錄268是以至少一個基於以太坊的該智能合約所實施,使得中間處理器262可基於相容於該些基於以太坊之智能合約的指令來操作(例如存取、更新、或稽核)房間庫存紀錄268。中間伺服器系統250(特別是交易代理伺服器260)、線上旅遊代理模組OTA1、OTA2、…、OTAM、及/或預訂引擎BE1、BE2、…、BEN之間的通訊是由中間記憶體266中所儲存之智能合約所支援。中間處理器264使用該些智能合約中至少一個智能合約來存取及/或更新房間庫存紀錄268的內容。在某些例子中,中間收發器262可以設置於離中間處理器264及/或中間記憶體266有一段距離的遠處,以將應用程式介面伺服器的轉譯程序分離於房間庫存紀錄的管理程序之外,來避免交易代理伺服器260的系統負擔超載。
在某些例子中,中間處理器264決定一個房間預訂事件是否為一成功交易,其中該房間預訂事件可能是一個房間預訂請求、一個退房請求、或是一個房間取消請求,且發出該房間預訂事件的主體可為物業管理系統模組210、線上旅遊代理模組OTA1、OTA2、…、OTAM、及/或預訂引擎BE1、BE2、…、BEN其中之一。由線上旅遊代理模組OTA1、OTA2、…、OTAM、及/或預訂引擎BE1、BE2、…、BEN其中之一所發出的房間預訂事件,可為由顧客所發起的一個外部房間預訂請求或一個外部房間取消請求(在該顧客先前已成功預訂一個房間的情況下)。物業管理系統模組210所發出之房間預訂事件可為一個內部房間預訂請求、一個內部房間取消請求、或一個內部退房請求。在接收到一個房間預訂請求時,中間處理器264會檢查房間庫存紀錄268來確認該房間預訂請求是否可獲准,例如根據被請求預訂之房間的可用度或根據若准許該房間預訂請求後是否會引起該飯店之超售現象來決定是否准許該房間預訂請求。若該中間處理器264准許該房間預訂請求,中間處理器264會對應產生一個成功交易。同樣地,在接收到一內部退房請求、一內部房間取消請求、或一外部房間取消請求時,中間處理器264會檢查房間庫存紀錄268、釋放被取消或被退房之該房間、並對應產生一成功交易。
為了支援在區塊鏈技術下運行的各種複雜功能,中間伺服器系統250應用了至少一個儲存於中間記憶體266之基於以太坊的智能合約。如先前所述,藉由智能合約在設計及實施功能上的彈性,中間伺服器系統250可結合傳統房間預訂需求及大部分最新的區塊鏈科技來實現多種不同的功能。
在某些例子中,在中間處理器264決定該房間預訂事件是一個成功交易後,中間處理器264將該成功交易加入至房間庫存紀錄268中,以更新房間庫存紀錄268。再者,中間處理器264可以將已更新之房間庫存紀錄268的內容同步至每一節點伺服器NS1、NS2、…、NSX,亦即更新節點伺服器NS1、NS2、…、NSX所形成之該區塊鏈。因此,節點伺服器NS1、NS2、…、NSX可作為房間庫存紀錄268的備份紀錄。
在某些例子中,如廣為所知之區塊鏈科技所展現,上述節點伺服器NS1、NS2、…、NSX的區塊更新可包含同一區塊鏈中不同節點伺服器之間的區塊競爭,使得某些區塊被加入該區塊鏈之部分節點伺服器後被拋棄。然而,此處所述節點伺服器NS1、NS2、…、NSX的區塊更新亦假設包含此種加入區塊後又拋棄的情形,而不另行贅述。因此,每一節點伺服器NS1、NS2、…、NSX在此被假設包含實質相同的多個區塊,該些區塊最終包含實質相同的交易歷史。
如此一來,房間庫存紀錄268的內容可更佳地防止被竄改或破壞,此係因中間處理器264總是可以在節點伺服器NS1、NS2、…、NSX的任何一個節點伺服器中找到房間庫存紀錄268的正確備份。
每一節點伺服器NS1、NS2、…、NSX各自具有一個節點收發器、一個節點處理器、以及一個節點記憶體。該節點處理器係為一個電腦處理器。且該節點記憶體係為一個電腦可讀取式記憶體。該節點收發器可在發生對應於一房間預訂請求之一成功交易時,接收由中間處理器264傳出之指令、並傳輸資料至中間處理器264。該節點記憶體可儲存房間庫存紀錄268之內容備份,以作為未來更新及/或稽核之用。該節點處理器可處理由中間處理器264傳出之指令、並決定使用哪些資料來回應中間處理器264。如圖2所例示,舉例來說,節點伺服器NS1具有一節點收發器NT1、一節點處理器NP1、及一節點記憶體NM1;節點伺服器NS2具有一節點收發器NT2、一節點處理器NP2、及一節點記憶體NM2;且節點伺服器NSX具有一節點收發器NTX、一節點處理器NPX、及一節點記憶體NMX。
圖3圖示主記憶體216、中間記憶體266、及節點記憶體NM1、NM2、…、NMX各自的房間庫存紀錄間的關係之概念示意圖,亦即房間庫存紀錄218、房間庫存紀錄268、及房間庫存紀錄RI1、RI2、…、RIX之間的關係。每一節點記憶體NM1、NM2、…、NMX儲存了與房間庫存紀錄268所儲存相同的複數個智能合約。且房間庫存紀錄RI1、RI2、…、RIX亦各自使用節點記憶體NM1、NM2、…、NMX儲存之該些智能合約來實施。與中間處理器264及中間記憶體266相同,每一節點處理器NP1、NP2、…、NPX各自使用實施房間庫存紀錄RI1、RI2、…、RIX的該些智能合約,來存取及更新房間庫存紀錄RI1、RI2、…、RIX的內容。
在某些例子中,中間處理器264首先對應於一成功交易的產生,更新房間庫存紀錄268。再者,中間處理器264將房間庫存紀錄268的已更新內容透過主收發器212轉傳至物業管理系統模組210,使得主處理器214可據以更新房間庫存紀錄218,而使房間庫存紀錄218的內容與房間庫存紀錄268的已更新內容同步。中間處理器264亦對應房間庫存紀錄268的已更新內容來產生一個新區塊,該新區塊保存了物業管理系統模組210至少所有最新的成功交易。在某些例子中,中間處理器264需要至少一個儲存於中間記憶體266的智能合約來執行完整的指令(例如計算或更新變數),以產生該新區塊。舉例來說,碰到有Y個不同但依時間順序(Chronological Order)發生的成功交易時,中間處理器264可在時間t1產生區塊BL1、在時間t2產生區塊BL2、…、以及在時間tY產生一個最新近區塊BLY,其中Y是一個正整數。時間t1早於時間t2。時間t2早於時間t(Y-1),且時間t(Y-1)早於時間tY。時間tY代表發生成功交易的最新近時間點。區塊BL1包含了所有在時間t1時已發生的成功交易。區塊BL2比區塊BL1多包含了一個發生在時間t2的成功交易,亦即區塊BL2包含了所有在時間t2時已發生的成功交易。同樣地,區塊BLY包含所有在時間tY時已發生的成功交易。
在區塊鏈科技下,每一節點伺服器NS1、NS2、…、NSX有義務使各自包含的房間庫存紀錄RI1、RI2、…、RIX同步更新,以使其內容與房間庫存紀錄268的內容同步。因此,在透過各自的節點收發器NT1、NT2、…、NTX接收到最新近產出區塊BLY後,節點處理器NP1、NP2、…、NPX各自將最新近產出區塊BLY併入自己的房間庫存紀錄RI1、RI2、…、RIX。在某些例子中,節點處理器NP1、NP2、…、NPX需要至少一個智能合約的協助,來同步執行最新近之成功交易中所涉及的指令,以完成各自之房間庫存紀錄RI1、RI2、…、RIX的內容更新。這些更新可包含更新特定本地端(Local)變數或特定廣域(Global)變數。該些本地端變數可包含各個房間的可用度或價格。該些特定廣域變數可包含條件式的折扣或動態調整的房間價格。
圖4圖示中間處理器264如何產生一個新區塊的細節。中間處理器264包含一雜湊(Hashing)模組402、一時間戳記(Timestamp)模組404、及區塊產生模組406。如先前所述,中間處理器264對應於一成功交易來產生一個新區塊。在中間處理器264確認該成功交易後,雜湊模組402為該新區塊產生一個雜湊值,且時間戳記模組404為該新區塊產生一個獨特的時間戳記。舉例來說,雜湊模組402會為Y個區塊BL1、BL2、…、BLY各自產生一個實質獨特的對應雜湊值HS1、HS2、…、HSY,且時間戳記模組404會為Y個區塊BL1、BL2、…、BLY各自產生一個實質獨特的對應時間戳記TS1、TS2、…、TSY。
產生雜湊值的方法對熟知區塊鏈技術領域者已廣為所知,因此,此處不再特地贅述該些方法。然而,每個被產生的雜湊值具有其隨機性,使得每個被產生的雜湊值可為實質獨特。在某些例子中,被產生的時間戳記可對應於中間處理器264確認該成功交易的當下、或是對應於,例如,由物業管理系統模組210、線上旅遊代理模組OTA1、OTA2、…、OTAM、或預訂引擎BE1、BE2、…、BEN發出該房間預訂請求的當下。如此一來,每一區塊BL1、BL2、…、BLY會各自具有一個實質獨特的雜湊值及一個實質獨特的時間戳記。且最新近產生的區塊BLY會具有所有已產生區塊中最新的時間戳記。
對應於該成功交易,區塊產生模組406由雜湊模組402引入了一個實質獨特的雜湊值,並從時間戳記模組406引入了一個實質獨特的時間戳記,來產生一個區塊標頭(Block Header)。舉例來說,在發生一個最新近成功交易時,區塊產生模組406為了將被產生的區塊BLY,引入雜湊值HSY及時間戳記TSY來產生區塊標頭BHY。如此一來,區塊產生模組406可個別產生區塊標頭BH1、BH2、…、BHY。
再者,對應於該成功交易,區塊產生模組406產生了一個新區塊,其整併了一個對應的區塊標頭、該成功交易的內容、至少一個智能合約、以及前一個產生區塊的內容。舉例來說,對應於一個最新近的成功交易,區塊產生模組406所產生的區塊BLY會包含區塊標頭BHY、至少一個由中間記憶體266所載入的智能合約、以及前一個區塊BL(Y-1)的內容,其中區塊BL(Y-1)因圖示簡略的需求而未標示。如此一來,最新近產生之區塊BLY可包含先前所有區塊BL1、BL2、…、BL(Y-1)的內容。除此以外,所有先前產生之區塊BL1、BL2、…、BL(Y-1)所對應所有目前已存在的成功交易,也可透過僅參照最新近產生區塊BLY的方式來完成稽核(Audit)。
最後,區塊產生模組406將該新區塊加入節點伺服器NS1、NS2、…、NSX所形成之區塊鏈,以更新該區塊鏈。舉例來說,區塊產生模組406將最新近產生區塊BLY加入至已包含多個區塊BL1、BL2、…、BL(Y-1)的區塊鏈,以更新該區塊鏈。
在某些例子中,每一線上旅遊代理模組OTA1、OTA2、…、OTAM及/或預訂引擎BE1、BE2、…、BEN被允許以直接或透過交易代理伺服器260的方式,存取節點伺服器NS1、NS2、…、NSX所形成之區塊鏈。如此一來,藉由使用總是實質維持最新近交易的該區塊鏈,每一線上旅遊代理模組OTA1、OTA2、…、OTAM及/或預訂引擎BE1、BE2、…、BEN可總是透過及時參照一最新進產生之區塊的方式,主動地確認可用房間的數量及/或特定房間的可用性。如此便可實質解決房間超售事件的問題。
另外,由於物業管理系統模組210的大部分任務都轉移至中間伺服器系統250,先前技術中物業管理系統模組的過載問題也可被有效且實質的避免。
在某些例子中,存取節點伺服器NS1、NS2、…、NSX所形成之區塊鏈包含的多個區塊是透過各自的區塊標頭(更精確的說,是透過各自的雜湊值)來建立與稽核。在某些例子中,存取節點伺服器NS1、NS2、…、NSX所形成之區塊鏈是使用梅克爾樹(Merkle Tree)技術,使得該區塊鏈之每一區塊具有一個實質獨特的梅克爾根(Merkle Root)。若某一區塊(例如區塊BL1)在節點伺服器NS1、NS2、…、NSX其中之一遭到竄改,任何可存取該區塊鏈的個體可簡單地稽核該區塊鏈、並進而找到在該特定節點伺服器上被竄改的區塊BL1。該稽核程序包含:(1)在節點伺服器NS1、NS2、…、NSX上各自計算區塊BL1的梅克爾根之值;(2)比較節點伺服器NS1、NS2、…、NSX各自計算出來區塊BL1的梅克爾根之值,以找到至少一個節點伺服器上被竄改之區塊BL1的不一致。更精確的說,由於被竄改的區塊BL1一定會具有一個與其他節點伺服器上未被竄改之區塊BL1不同的梅克爾根值,因此上述的比較程序可以輕易地找出這樣的不同梅克爾根值。被竄改的區塊BL1亦可藉由參照其他節點伺服器上未被竄改的區塊BL1來獲得修正。如此一來,該區塊鏈上的區塊皆可被保證其正確性,使得每一節點伺服器上保存的房間庫存紀錄亦可被保全。在某些例子中,一個個體被授權可存取該區塊鏈,以稽核或甚至修正該區塊鏈,諸如物業管理系統模組210、交易代理伺服器260、或節點伺服器NS1、NS2、…、NSX之任一者的處理器。上述有關於稽核與修正區塊BL1的例子,亦適用於該區塊鏈中的其他區塊。
在某些例子中,每一個成功交易可經由參照任一節點伺服器NS1、NS2、…、NSX上任一區塊BL1、BL2、…、BLY的區塊標頭(更精確的說,經由區塊各自的時間戳記),而被正確的追蹤,其為上述稽核程序的一部份。該追蹤程序亦可使用中間記憶體266或每一節點記憶體NM1、NM2、…、NMX所儲存之至少一個稽核用智能合約來實施,其主導者可為上述被授權存取該區塊鏈的個體。這樣的個體可包含交易代理伺服器260包含的中間處理器264、或任一節點伺服器NS1、NS2、…、NSX的節點處理器。較佳地,這樣的稽核程序是由中間處理器264所主導,以進行即時且不致混淆的更新。該追蹤程序包含:(1)搜尋區塊BL1、BL2、…、BLY各自的區塊標頭BH1、BH2、…、BHY;(2)追蹤區塊BL1、BL2、…、BLY各自的時間戳記TS1、TS2、…、TSY,以成功辨識導致區塊BL1、BL2、…、BLY產生的各個成功交易。藉由時間戳記TS1、TS2、…、TSY的輔助,各個成功交易的發生先後順序可正確的依照時間排列來確認。如此一來,超售事件可以被更佳地確認及避免,其中該超售事件是起因於未能及時通知線上旅遊代理模組或預訂引擎一筆較早的成功交易,導致錯誤地接受另一筆較晚的成功交易。
在某些例子中,多個儲存於房間庫存紀錄268的智能合約包含至少一個動態定價智能合約,其可根據房間庫存紀錄268所儲存的一個暫態可用房間數量,來決定至少一個暫時且可變的房間價格。中間處理器264動態地調整該暫態房間價格、並將調整過的房間價格經由中間收發器262轉傳至物業管理系統模組210、線上旅遊代理模組OTA1、OTA2、…、OTAM及/或預訂引擎BE1、BE2、…、BEN。同樣地,在主收發器212接收調整過的房間價格之後,主處理器214亦動態地將調整過的房間價格更新至房間庫存紀錄218。
相較於傳統房間庫存管理系統100,房間庫存管理系統200具有下列優點:(1)藉由確保所有的成功交易都依照發生時間順序被記錄起來,克服了超售事件帶來的問題;(2)在中間伺服系統250的輔助下,在確認成功交易及/或更新房間庫存紀錄上,減輕了物業管理系統模組的負擔、處理時間及頻寬;及(3)增進了房間庫存紀錄的正確性及可追朔性。
在上述的實施例中,房間庫存管理系統200應用了一個中央模組(亦即交易代理伺服器260)來管理中間伺服系統250所包含節點伺服器NS1、NS2、…、NSX之間的主要任務。然而,本發明的另一實施例將管理上述任務的責任,更佳地平衡於節點伺服器NS1、NS2、…、NSX之間。更精確的說,任一節點伺服器NS1、NS2、…、NSX都可被暫時地指定為一個主控節點伺服器(Master Node Server),用來管理所有的節點伺服器NS1、NS2、…、NSX一段時間,且在該段時間結束後,可指定另一節點伺服器來作為新的主控節點伺服器,以繼續在另一段時間中管理所有的節點伺服器NS1、NS2、…、NSX。在某些例子中,在節點伺服器NS1、NS2、…、NSX之間轉換主控節點伺服器之責任可以時而進行(from time to time)、週期性地進行、或隨機地進行。再者,由節點伺服器NS1、NS2、…、NSX中指定主控節點伺服器的方式可包含選舉、照順序輪流(sequential rotation)、或根據一預定規則。該預訂規則可包含動態地指定一個具有較小負擔或最小負擔的節點伺服器作為主控節點伺服器,其中該負擔的計算可根據包含即時的系統負荷、即時資料儲存量、及/或即時傳輸頻寬等資訊來決定。因此,任一節點伺服器NS1、NS2、…、NSX可避免承擔無法負荷的負擔,甚至避免引起故障。
圖5根據本發明之另一實施例,圖示了房間庫存管理系統500。房間庫存管理系統500包含物業管理系統模組210及中間伺服系統520。物業管理系統模組210的性質與佈置與之前圖2所述相同,故不再另行贅述。中間伺服系統520如先前圖2所示,包含多個節點伺服器NS1、NS2、…、NSX。然而,房間庫存管理系統200與房間庫存管理系統500之間的主要差異在於,在共識(Consensus)演算法的輔助下,房間庫存管理系統500可選擇多個節點伺服器NS1、NS2、…、NSX中任一者作為主控節點伺服器,以取代交易代理伺服器260。主控節點伺服器以及其包含之各元件繼承了與交易代理伺服器260及其元件至少相同的結構與功能。因此,該主控節點伺服器與交易代理伺服器260相同的部分,以下不再另行贅述。
用來在多個節點伺服器NS1、NS2、…、NSX中選出主控節點伺服器的共識演算法,可包含依序決定、隨機決定、及/或經由引入所有節點伺服器的輪詢(Polling)共識來決定。被選出的主控節點伺服器會負擔管理工作一段時間,在該段時間結束後,會再另外舉行一次選舉來決定下一個主控節點伺服器,使得先前被選出的主控節點伺服器可被解除其責任,直到再次被選為主控節點伺服器為止。以下的敘述是基於節點伺服器NST暫時被選為主控節點伺服器並執行與先前交易代理伺服器260相似的功能來描述。
圖6圖示主記憶體216包含之多個房間庫存紀錄與其他節點記憶體NM1、NM2、…、NMX(包含暫態主控節點記憶體NMT在內)具有之多個房間庫存紀錄間的關係之概略示意圖,亦即房間庫存紀錄218與多個房間庫存紀錄RI1、RI2、…、RIX(包含暫態主控房間庫存紀錄RIT)之間的關係示意圖。同樣地,多個房間庫存紀錄RI1、RI2、…、RIX是以節點記憶體NM1、NM2、…、NMX各自儲存的多個智能合約所實施。且節點處理器NP1、NP2、…、NPT、…、NPX會使用該些智能合約來存取及/或更新各自的房間庫存紀錄RI1、RI2、…、RIX。在某些例子中,主控節點處理器NST首先會對應於成功交易的發生,更新暫態主控房間庫存紀錄RIT。再者,主控節點處理器NST將暫態主控房間庫存紀錄RIT的更新內容,透過主控節點收發器NTT及主收發器212,轉傳到物業管理系統模組210,使得主處理器214得以更新房間庫存紀錄218至實質同步於暫態主控房間庫存紀錄RIT之更新內容。主控節點處理器264亦對應於暫態主控房間庫存紀錄RIT之更新內容,產生一個保存了物業管理系統210之至少所有目前已成功交易的新區塊。需要說明的是,每一節點伺服器NS1、NS2、…、NSX各自的記憶體NM1、NM2、…、NMX中儲存的智能合約,皆近似於中間記憶體266所儲存的智能合約。因此,在某些例子中,主控節點處理器NPT可以載入主控節點記憶體NMT所儲存的至少一個智能合約,以執行完整的指令來產生新區塊,例如計算及更新變數。舉例來說,在發生Y次依時間順序發生的不同成功交易後,前一個主控節點處理器及/或暫態主控節點處理器NPT可以在時間點t1產生一區塊BL1、在時間點t2產生一區塊BL2、…、及在時間點tY產生一最新近區塊BLY,其中Y是一個正整數。時間點t1早於時間點t2、時間點t2早於時間點t(Y-1)、時間點t(Y-1)早於時間點tY。時間點tY代表最新近成功交易所發生的時間點。區塊BL1包含直到時間點t1為止的所有成功交易。區塊BL2相較於區塊BL1,多包含了一個發生在時間點t2的成功交易,也就是說,區塊BL2包含了直到時間點t2為止的所有成功交易。相似地,區塊BLY包含了直到時間點tY為止的所有成功交易。
如先前所述,依據區塊鏈技術,每一節點伺服器NS1、NS2、…、NSX需要使各自持有的房間庫存紀錄RI1、RI2、…、RIX同步更新於當時之主控房間庫存紀錄RIT的內容。因此,在透過各節點收發器NT1、NT2、…、NTX(除了當時的主控收發器外)接收到最新近產生區塊BLY之後,各節點處理器NP1、NP2、…、NPX(除了當時的主控節點處理器NPT以外)將最新近產生之區塊BLY整合至每一房間庫存紀錄RI1、RI2、…、RIX(除了當時的主控房間庫存紀錄RIT 之外)。在某些例子中,節點處理器NP1、NP2、…、NPX需要至少一個智能合約的輔助來同步執行該最新近成功交易所涉入的指令,以完成每一房間庫存紀錄RI1、RI2、…、RIX的更新。該些更新可包含諸如某些本地端變數的更新(例如房間可用性或各房間的價格)、或包含某些全域變數的更新(例如條件式的折扣或動態調整的房間價格)。
圖7圖示了暫態主控節點處理器NPT如何產生一個新區塊的細節。暫態主控節點處理器NPT包含一個雜湊模組NPT_H、一時間戳記模組NPT_TS、以及一區塊產生模組NPT_B。如先前所述,暫態主控節點處理器NPT會對應於一成功交易來產生一個新區塊。在暫態主控節點處理器NPT確認該成功交易時,雜湊模組NPT_H為該新區塊產生一個實質獨特(unique)的雜湊值,且時間戳記模組NPT_TS為該新區塊產生一個實質獨特的時間戳記。舉例來說,雜湊模組NPT_H為了Y個區塊BL1、BL2、…、BLY產生Y個實質獨特的雜湊值HS1、HS2、…、HSY,且時間戳記模組NPT_TS為了Y個區塊BL1、BL2、…、BLY產生Y個實質獨特的時間戳記TS1、TS2、…、TSY。
與先前的實施例相似,產生雜湊值的方法已被熟習區塊鏈技術領域者所廣為周知,因此,產生雜湊值的方法此處不再贅述。再者,在某些例子中,所產生的時間戳記可對應暫態主控節點處理器NPT確認該成功交易的時間點或該房間預訂事件發起的時間點,其中該房間預訂事件可由物業管理系統模組210、線上旅遊代理模組OTA1、OTA2、…、OTAM、及/或預訂引擎BE1、BE2、…、BEN其中之一所發起。如此一來,每一區塊BL1、BL2、…、BLY應具有其實質獨特的雜湊值及時間戳記。且最新近產生區塊BLY在當時所有的區塊中具有一最新近時間戳記。
區塊產生模組NPT_B對應於該成功交易,會由雜湊模組NPT_H引入該實質獨特雜湊值及由時間戳記模組NPT_TS引入該實質獨特時間戳記,以產生一新區塊標頭。舉例來說,為了對應於一最新近成功交易的發生來產生將被產生之最新近區塊BLY,區塊產生模組NPT_B引入雜湊值HSY及時間戳記TSY產生一區塊標頭BHY。如此一來,區塊產生模組NPT_B各自產生區塊標頭BH1、BH2、…、或BHY。
再者,對應於該成功交易,區塊產生模組NPT_B產生一個新區塊,其中該新區塊包含對應之一區塊標頭、該成功交易的內容、至少一個智能合約、及其前一個產生的區塊之內容。舉例來說,對應於一最新近成功交易,區塊產生模組NPT_B產生區塊BLY,其包含區塊標頭BHY、該最新近成功交易的內容、由暫態主控節點記憶體NTT所載入之至少一個智能合約、及其前一個產生的區塊BL(Y-1)的內容(為了簡化圖示而未繪出)。如此一來,最新近產生區塊BLY會包含先前所產生之所有區塊BL1、BL2、…、BL(Y-1)的內容。再者,先前所產生之所有區塊BL1、BL2、…、BL(Y-1)所對應先前發生過之所有成功交易可藉由僅參照最新近產生區塊BLY的方式來進行稽核。
最後,區塊產生模組NPT_B會將該最新近產生區塊加入至由節點伺服器NS1、NS2、…、NSX所形成之該區塊鏈中,以更新該區塊鏈。舉例來說,區塊產生模組NPT_B會將最新近產生區塊BLY加入至已包含區塊BL1、BL2、…、BL(Y-1)的區塊鏈,以更新該區塊鏈。
與房間庫存管理系統200類似,房間庫存管理系統500具有實質相同的變化實施例、性質、及優點,也就是如同先前房間庫存管理系統200被提及的敘述。另外,擔任主控節點伺服器的責任會以偶爾、隨機、週期性地、或根據一預定規則決定的方式來轉移於節點伺服器NS1、NS2、…、NSX之間,其中該預定規則用來平衡該主控節點伺服器的責任於節點伺服器NS1、NS2、…、NSX之間。如此一來,節點伺服器NS1、NS2、…、NSX可更佳地平衡各自的負擔、並避免不需要的故障事件。
以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。
100、200‧‧‧房間庫存管理系統
120、210‧‧‧物業管理系統模組
130‧‧‧記憶體
140、218、268、RI1、RI2、…、RIX、RIT‧‧‧房間庫存紀錄
150‧‧‧頻道管理器
212‧‧‧主收發器
214‧‧‧主處理器
216‧‧‧主記憶體
250‧‧‧中間伺服系統
260‧‧‧交易代理伺服器
262‧‧‧中間收發器
264‧‧‧中間處理器
266‧‧‧中間記憶體
402、NPT_H‧‧‧雜湊模組
404、NPT_TS‧‧‧時間戳記模組
406、NPT_B‧‧‧區塊產生模組
OTA1、OTA2、OTAM‧‧‧線上旅遊代理模組
BE1、BE2、BEN‧‧‧預訂引擎
NS1、NS2、NST、NSX‧‧‧節點伺服器
NT1、NT2、NTX、NTT‧‧‧節點收發器
NP1、NP2、NPX、NPT‧‧‧節點處理器
NM1、NM2、NMX、NMT‧‧‧節點記憶體
BL1、BL2、BLY‧‧‧區塊
當結合附圖閱讀時,將更好地理解前述發明內容以及本發明的以下詳細描述。為了說明本發明的目的,在附圖中圖示出了目前較佳的實例。然而,應該理解,本發明不僅限於所示的精確佈置和手段。
圖1圖示傳統房間庫存管理系統如何與各線上旅遊代理模組及/或預訂引擎合作來處理顧客預訂房間的服務。
圖2根據本發明之一實施例,圖示一種基於區塊鏈的房間庫存管理系統。
圖3圖示圖2之房間庫存管理系統中一主記憶體、一中間記憶體、及多個節點記憶體之間的資料交流之概略示意圖。
圖4圖示圖2之房間庫存管理系統中一中間處理器產生一新進區塊的示意圖。
圖5根據本發明之一實施例,圖示一種將主控節點伺服器之責任轉移於各個節點伺服器之間且基於區塊鏈的房間庫存管理系統。
圖6圖示圖5之房間庫存管理系統中一主記憶體、一暫態主控節點記憶體、及其餘多個節點記憶體之間的資料交流之概略示意圖。
圖7圖示圖5之房間庫存管理系統中一暫態主控處理器產生一新進區塊的示意圖。
無
218、268、RI1、RI2、…、RIX‧‧‧房間庫存紀錄
266‧‧‧中間記憶體
NM1、NM2、NMX‧‧‧節點記憶體
BL1、BL2、BLY‧‧‧區塊
Claims (22)
- 一種基於區塊鏈的房間庫存管理系統,包含: 一物業管理系統(Property Management System),包含: 一主收發器,用來接收一成功交易; 一主非揮發式電腦可讀取記憶體,用來儲存一房間庫存紀錄之一複本,該房間庫存紀錄係記錄該物業管理系統所管理之所有房間的可用性(Availability);及 一主電腦處理器,用來以併入該成功交易的方式,更新該房間庫存紀錄之該複本;及 一中間伺服系統,包含: 一交易代理伺服器,包含: 一中間收發器,用來接收一房間預訂事件、用來將該成功交易轉傳至該物業管理系統、並用來轉傳對應於該成功交易所產生之一新增區塊; 一中間非揮發式電腦可讀取記憶體,用來儲存基於乙太坊(Ethereum)所產生之複數個智能合約、用來儲存該房間庫存紀錄、並用來儲存一區塊鏈,其中該房間庫存紀錄係使用該些智能合約中至少一個智能合約所實作,該區塊鏈係包含複數個區塊,且該區塊鏈之一最新近增加區塊(Most recently added block)係帶有該物業管理系統之所有最新成功交易(All up-to-date successful transactions);及 一中間電腦處理器,用來確認該房間預訂事件是否會在該房間庫存紀錄中引起超售事件(Overbooking),並用來在該中間電腦處理器確認該房間預訂事件不會在本地端之該房間庫存紀錄中引起超售事件時,決定該房間預訂事件是成功的、並使用該房間預訂事件中的資訊來產生該成功交易,其中該中間電腦處理器包含: 一雜湊模組(Hashing module),用來對應該成功交易,產生該新增區塊之一雜湊值; 一時間戳記模組(Timestamp module),用來對應該成功交易,產生該新增區塊之一獨特(unique)時間戳記;及 一區塊產生模組,用來對應於該成功交易,使用至少該獨特雜湊值、該獨特時間戳記、及該最新近增加區塊之資訊,產生該新增區塊之一獨特區塊標頭(Header),用來產生該新增區塊,以及用來將該新增區塊加入該區塊鏈,其中該新增區塊包含該獨特區塊標頭、該成功交易之該資訊、該些智能合約的至少其中之一、及該最新近增加區塊之該內容;及 複數個節點伺服器,其中每一節點伺服器包含: 一節點收發器,用來由該中間收發器接收該新增區塊; 一節點非揮發式電腦可讀取記憶體,用來儲存該區塊鏈之一複本;及 一節點電腦處理器,用來將該新增區塊加入該區塊鏈之該複本,以更新該區塊鏈之該複本。
- 如請求項1所述之房間庫存管理系統,其中該時間戳記模組另用來基於該房間預訂事件的發起時間,產生該獨特時間戳記。
- 如請求項1所述之房間庫存管理系統,其中該時間戳記模組另用來基於該中間收發器接收到該房間預訂事件之接收時間,產生該獨特時間戳記。
- 如請求項1所述之房間庫存管理系統, 其中該中間電腦處理器另用來對應於該成功交易,在該房間預訂事件包含一房間預訂請求時,降低一暫態可用房間數量及/或關閉一將被指定(to-be-assigned)房間的可用性,其中該將被指定房間係被記錄於該房間庫存紀錄中,且該房間預訂請求係指示預訂該將被指定房間;及 其中該中間電腦處理器另用來對應於該成功交易,在該房間預訂事件包含一房間預訂取消請求或一退房請求(Room checkout request)時,增加該暫態可用房間數量及/或開啟一將被釋放(to-be-released)房間的可用性,其中該房間預訂取消請求係指示取消該將被釋放房間之預訂,該退房請求係指示由該將被釋放房間進行退房,該將被釋放房間係被記錄於該房間庫存紀錄中。
- 如請求項4所述之房間庫存管理系統,其中該主電腦處理器另用來對應於該成功交易,當該房間預訂事件包含該房間預訂請求時,在該房間庫存紀錄之該複本中,減少一本地端可用房間數量及/或關閉該將被指定房間的可用性;及 其中該主電腦處理器另用來對應於該成功交易,當該房間預訂事件包含該房間預訂取消請求或該退房請求時,在該房間庫存紀錄之該複本中,增加該本地端可用房間數量及/或開啟該將被指定房間的可用性。
- 如請求項1所述之房間庫存管理系統,其中該些智能合約包含至少一個動態定價智能合約; 其中該中間電腦處理器另用來根據該房間庫存紀錄所記載之一暫態可用房間數量,動態地調整該房間庫存紀錄所儲存之一暫態房間價格,並動態地通過該中間收發器,將該暫態房間價格傳送至該物業管理系統、一線上旅遊平台(Online Travel Agency,OTA)模組、一預訂引擎(Booking engine)、一全球分銷系統(Global Distribution System,GDS)、或一元搜尋引擎(Metasearch engine)。
- 如請求項6所述之房間庫存管理系統,其中該主電腦處理器另用來在該主收發器接收到該暫態房間價格時,使用該暫態房間價格,動態地更新儲存於該主非揮發式電腦可讀取記憶體中所紀錄之一本地端房間價格。
- 如請求項1所述之房間庫存管理系統,其中該些智能合約包含至少一個稽核用(Auditing)智能合約; 其中該中間電腦處理器或該些節點處理器中的任一個節點處理器另用來使用該至少一個稽核用智能合約,以按照時間順序的方式(Chronological)追蹤該區塊鏈中至少一個區塊的區塊標頭,來稽核該至少一個區塊所紀錄之至少一個成功交易。
- 如請求項1所述之房間庫存管理系統,其中該物業管理系統及該中間伺服器系統共用一個同樣的遠端程序呼叫(Remote Procedure Call)程序,以用來相互溝通。
- 如請求項1所述之房間庫存管理系統,其中該中間電腦處理器另用來使用該些智能合約之至少一個智能合約來產生一共用應用程式編程介面(Application Programming Interface,API)及/或一共用通訊協定,使得一預訂引擎、一線上旅遊平台模組、一全球分銷系統、或一元搜尋系統的任何一者可使用該共用應用程式編程介面及/或該共用通訊協定,來發起該房間預訂事件及/或檢查該些節點伺服器中任何一者的房間庫存紀錄。
- 一種基於區塊鏈的房間庫存管理系統,包含: 一物業管理系統,包含: 一主收發器,用來接收一成功交易; 一主非揮發式電腦可讀取記憶體,用來儲存一房間庫存紀錄之一複本,該房間庫存紀錄記錄了該物業管理系統所管理之所有房間的可用性;及 一主電腦處理器,用來以併入該成功交易的方式,更新該房間庫存紀錄之該複本;及 一中間伺服器系統,包含: 複數個節點伺服器,每一節點伺服器包含: 一節點收發器,用來接收該房間預訂事件、用來將該成功交易轉送至該物業管理系統、及用來轉傳對應於該成功交易所產生之一區塊; 一節點非揮發式電腦可讀取記憶體,用來儲存基於乙太坊所產生之複數個智能合約、及用來儲存一區塊鏈或該區塊鏈之一複本,該區塊鏈包含複數個區塊,其中該區塊鏈之一最新近增加區塊係帶有該物業管理系統之所有最新成功交易,且該房間庫存紀錄係使用該些智能合約之至少其中之一智能合約來實施;及 一節點電腦處理器,用來將一新增區塊加入所儲存之該區塊鏈或該區塊鏈的複本以更新該區塊鏈或該區塊鏈的複本,該節點電腦處理器包含一雜湊模組、一時間戳記模組、及一區塊產生模組; 其中該些節點伺服器用來使用一共識演算法,由該些節點伺服器中暫時選出一個主控(Master)節點伺服器; 其中該主控節點伺服器所包含之節點電腦處理器另用來確認該房間預訂事件是否會在該房間庫存紀錄中引起超售事件,並用來在該主控節點伺服器所包含之節點電腦處理器確認該房間預訂事件不會在該房間庫存紀錄中引起超售事件時,判定該房間預訂事件為成功事件、並使用該房間預訂事件之資訊來產生該成功交易; 其中該主控節點伺服器之雜湊模組用來對應於該成功交易,為該新增區塊產生一雜湊值; 其中該主控節點伺服器之時間戳記模組用來對應於該成功交易,為該新增區塊產生一獨特時間戳記; 其中該主控節點伺服器之區塊產生模組用來對應於該成功交易,使用至少該獨特雜湊值、該獨特時間戳記、及該最新近增加區塊的內容,為該新增區塊產生一獨特區塊標頭,用來產生該新增區塊,並用來將該新增區塊加入至該主控節點伺服器之節點非揮發式電腦可讀取記憶體所儲存之該區塊鏈中,其中該新增區塊包含該獨特區塊標頭、該成功交易之資訊、該些智能合約之至少其中之一、及該最新近增加區塊的內容; 其中該些節點伺服器中除了該主控節點伺服器以外的其他節點伺服器各自包含之區塊產生模組,係對應於該成功交易,將該新增區塊加入於各自對應之節點非揮發性電腦可讀取式記憶體所儲存該區塊鏈之複本中。
- 如請求項11所述之房間庫存管理系統,其中該時間戳記模組另用來基於該房間預訂事件之發起時間來產生該獨特時間戳記.
- 如請求項11所述之房間庫存管理系統,其中該時間戳記模組另用來基於該主控節點伺服器之節點收發器收到該房間預訂事件的時間來產生該獨特時間戳記。
- 如請求項11所述之房間庫存管理系統,其中該些智能合約包含至少一個房間庫存管理智能合約,其用來儲存該房間庫存紀錄; 其中該主控節點伺服器之節點電腦處理器另用來對應於該成功交易,在該房間預訂事件包含一房間預訂請求時,減少一暫態可用房間數量或關閉一將被指定房間的可用性,其中該將被指定房間係被記錄於該房間庫存紀錄中,且該房間預訂請求係指示預訂該將被指定房間;及 其中該主控節點伺服器包含之節點電腦處理器另用來對應於該成功交易或一內部退房請求,在該房間預訂事件包含一房間預訂取消請求或一退房請求時,增加該暫態可用房間數量及/或開啟一將被釋放房間的可用性,其中該房間預訂取消請求係指示取消該將被釋放房間之預訂,該退房請求係指示由該將被釋放房間進行退房,該將被釋放房間係被記錄於該房間庫存紀錄中。
- 如請求項14所述之房間庫存管理系統,其中該主電腦處理器另用來對應於該成功交易,在該房間預訂事件包含該房間預訂請求時,在該房間庫存紀錄之該複本中,減少一本地端可用房間數量及/或關閉該將被指定房間的可用性;及 其中該主電腦處理器另用來對應於該成功交易,當該房間預訂事件包含該房間預訂取消請求或該退房請求時,在該房間庫存紀錄之該複本中,增加該本地端可用房間數量及/或開啟該將被指定房間的可用性。
- 如請求項11所述之房間庫存管理系統,其中該些智能合約包含儲存有該房間庫存紀錄之至少一個動態定價智能合約; 其中該主控節點伺服器之節點電腦處理器另用來根據該房間庫存紀錄中所紀錄之一暫態可用房間數量,動態地調整該房間庫存紀錄中所記錄之一暫態房間價格,及動態地將該暫態房間價格透過一節點收發器轉傳至該物業管理系統、一線上旅遊代理(Online Travel Agency,OTA)模組、一預訂引擎(Booking Engine)、一全球分銷系統(Global Distribution System)、或一元搜尋引擎(Metasearch Engine)。
- 如請求項16所述之房間庫存管理系統,其中該主電腦處理器另用來使用該暫態房間價格,動態地更新該主非揮發式電腦可讀取記憶體所儲存該房間庫存紀錄之複本內的一本地端房間價格。
- 如請求項11所述之房間庫存管理系統,其中該些智能合約包含至少一個稽核(Auditing)智能合約; 其中該些節點伺服器之節點電腦處理器另用來使用該至少一個稽核智能合約,以遵照時間順序(Chronological)的方式,追蹤該區塊鏈中至少一個區塊的區塊標頭,以稽核該區塊鏈中該至少一個區塊所記錄的至少一個成功交易。
- 如請求項11所述之房間庫存管理系統,其中該物業管理系統及該中間伺服器系統共享同一遠端程序呼叫(Remote Procedure Call),以作為相互溝通之用。
- 如請求項11所述之房間庫存管理系統,其中該房間預訂事件是由一預訂引擎、一線上旅遊代理模組、一全球分銷系統、或一元搜尋引擎所傳送而來;及 其中該主控電腦處理器另用來應用該些智能合約中至少之一智能合約來產生一共有應用程式介面及/或一共有通訊協定,使得該預訂引擎、該線上旅遊代理模組、該全球分銷系統、或該元搜尋引擎中任一者可使用該共有應用程式介面及/或該共有通訊協定來起始該房間預訂事件及/或檢查該些節點伺服器中任一者的房間庫存紀錄。
- 如請求項11所述之房間庫存管理系統,其中該些節點伺服器另用來使用該共識演算法,由該些節點伺服器中,以選舉、依序輪流、或一預訂規則等方式,決定該主控節點伺服器。
- 如請求項21所述之房間庫存管理系統,其中在該預訂規則之下,該些節點伺服器另用來動態地指定具有較小或最小負擔的節點伺服器,作為該主控節點伺服器;及 其中該負擔是根據該些節點伺服器的即時系統負擔、即時儲存空間大小、及/或即時傳輸頻寬來決定。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762588909P | 2017-11-20 | 2017-11-20 | |
US62/588,909 | 2017-11-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201937419A TW201937419A (zh) | 2019-09-16 |
TWI688907B true TWI688907B (zh) | 2020-03-21 |
Family
ID=66533105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107141254A TWI688907B (zh) | 2017-11-20 | 2018-11-20 | 基於區塊鏈的房間庫存管理系統 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20190156440A1 (zh) |
EP (1) | EP3714381A4 (zh) |
JP (1) | JP6864330B2 (zh) |
CN (1) | CN111727428B (zh) |
TW (1) | TWI688907B (zh) |
WO (1) | WO2019096326A1 (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220222590A1 (en) * | 2017-11-20 | 2022-07-14 | Obook Holdings Inc. | Blockchain-based room inventory management system and method |
US11271717B2 (en) * | 2018-02-21 | 2022-03-08 | Thunder Token Inc. | Blockchain consensus methods and systems |
US10754989B2 (en) * | 2018-03-27 | 2020-08-25 | International Business Machines Corporation | Runtime self-correction for blockchain ledgers |
US10938573B2 (en) * | 2018-11-06 | 2021-03-02 | Accenture Global Solutions Limited | Distributed transaction processing |
CN110189234B (zh) * | 2019-05-29 | 2021-08-03 | 北京创鑫旅程网络技术有限公司 | Ota平台酒店信息调整方法及装置 |
CN110266686B (zh) * | 2019-06-20 | 2021-06-15 | 深圳前海微众银行股份有限公司 | 数据共享方法、装置、设备与计算机可读存储介质 |
SG11202003808PA (en) * | 2019-06-28 | 2020-05-28 | Advanced New Technologies Co Ltd | System and method for data processing |
US11734616B2 (en) * | 2019-07-12 | 2023-08-22 | Mastercard International Incorporated | Method and system for access control of shared spaces through blockchain |
CN110889657A (zh) * | 2019-10-12 | 2020-03-17 | 北京海益同展信息科技有限公司 | 获取库存数据的方法、装置、终端设备及存储介质 |
US11514374B2 (en) * | 2019-10-21 | 2022-11-29 | Oracle International Corporation | Method, system, and non-transitory computer readable medium for an artificial intelligence based room assignment optimization system |
CN111107431A (zh) * | 2019-12-31 | 2020-05-05 | 深圳创维-Rgb电子有限公司 | 一种电视机播放控制方法、系统、控制终端及存储介质 |
CN111275441A (zh) * | 2020-01-20 | 2020-06-12 | 昊居科技有限公司 | 一种房屋交易方法及系统 |
CN111666287A (zh) * | 2020-06-01 | 2020-09-15 | 北京思特奇信息技术股份有限公司 | 一种基于区块链的数据稽核方法 |
CN111680290B (zh) * | 2020-06-02 | 2023-04-11 | 浙江大学 | 一种基于以太坊虚拟机的代码插桩框架系统 |
CN113673897A (zh) * | 2021-08-27 | 2021-11-19 | 广州辰亿信息科技有限公司 | 酒店互联网电商代销系统 |
JP7368531B2 (ja) * | 2022-04-01 | 2023-10-24 | オーブック・インコーポレイテッド | ブロックチェーンに基づく部屋在庫管理システム |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030061145A1 (en) * | 2001-09-26 | 2003-03-27 | International Business Machines Corpoation | Online registration and block tracking for travel wholesalers, agencies and hotels |
CN102930485A (zh) * | 2012-09-12 | 2013-02-13 | 上海研庆电子有限公司 | 五星级酒店管理系统 |
TWM462413U (zh) * | 2013-04-12 | 2013-09-21 | Comfort Travel Service Co Ltd | 旅遊行程之即時整合銷售系統 |
CN104933465A (zh) * | 2015-05-12 | 2015-09-23 | 携程计算机技术(上海)有限公司 | 酒店管理平台的数据对接方法和系统 |
KR20170009453A (ko) * | 2015-07-17 | 2017-01-25 | 김지은 | 비딩을 이용한 호텔 예약 방법 |
CN106780173A (zh) * | 2016-12-01 | 2017-05-31 | 携程计算机技术(上海)有限公司 | Ota酒店库存管理方法及系统 |
CN106845742A (zh) * | 2015-12-03 | 2017-06-13 | 北京航天金盾科技有限公司 | 旅馆一体化管理系统 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013021392A1 (en) * | 2011-08-09 | 2013-02-14 | Kamat Hotels India Ltd. | Hotel inventory management system and method. |
US20170017936A1 (en) * | 2015-07-14 | 2017-01-19 | Fmr Llc | Point-to-Point Transaction Guidance Apparatuses, Methods and Systems |
US10079682B2 (en) * | 2015-12-22 | 2018-09-18 | Gemalto Sa | Method for managing a trusted identity |
KR20170078533A (ko) * | 2015-12-29 | 2017-07-07 | 주식회사 스타트나우 | 스마트 호텔 예약 관리 시스템 |
US10713654B2 (en) * | 2016-01-21 | 2020-07-14 | International Business Machines Corporation | Enterprise blockchains and transactional systems |
JP6648555B2 (ja) * | 2016-02-29 | 2020-02-14 | 富士ゼロックス株式会社 | 情報処理装置及びプログラム |
CN113111388A (zh) * | 2017-03-31 | 2021-07-13 | 唐晓领 | 基于区块链的投融资多方共享交易元数据信息的方法、装置及系统 |
CN107169826B (zh) * | 2017-05-09 | 2021-02-12 | 武汉凤链科技有限公司 | 一种基于区块链的旅游景区售票方法和系统 |
-
2018
- 2018-11-20 WO PCT/CN2018/116389 patent/WO2019096326A1/en unknown
- 2018-11-20 CN CN201880074052.XA patent/CN111727428B/zh active Active
- 2018-11-20 US US16/197,150 patent/US20190156440A1/en not_active Abandoned
- 2018-11-20 JP JP2020540322A patent/JP6864330B2/ja active Active
- 2018-11-20 EP EP18878460.7A patent/EP3714381A4/en not_active Withdrawn
- 2018-11-20 TW TW107141254A patent/TWI688907B/zh active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030061145A1 (en) * | 2001-09-26 | 2003-03-27 | International Business Machines Corpoation | Online registration and block tracking for travel wholesalers, agencies and hotels |
CN102930485A (zh) * | 2012-09-12 | 2013-02-13 | 上海研庆电子有限公司 | 五星级酒店管理系统 |
TWM462413U (zh) * | 2013-04-12 | 2013-09-21 | Comfort Travel Service Co Ltd | 旅遊行程之即時整合銷售系統 |
CN104933465A (zh) * | 2015-05-12 | 2015-09-23 | 携程计算机技术(上海)有限公司 | 酒店管理平台的数据对接方法和系统 |
KR20170009453A (ko) * | 2015-07-17 | 2017-01-25 | 김지은 | 비딩을 이용한 호텔 예약 방법 |
CN106845742A (zh) * | 2015-12-03 | 2017-06-13 | 北京航天金盾科技有限公司 | 旅馆一体化管理系统 |
CN106780173A (zh) * | 2016-12-01 | 2017-05-31 | 携程计算机技术(上海)有限公司 | Ota酒店库存管理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
EP3714381A4 (en) | 2021-08-11 |
CN111727428B (zh) | 2024-03-08 |
US20190156440A1 (en) | 2019-05-23 |
EP3714381A1 (en) | 2020-09-30 |
CN111727428A (zh) | 2020-09-29 |
TW201937419A (zh) | 2019-09-16 |
WO2019096326A1 (en) | 2019-05-23 |
JP2021503676A (ja) | 2021-02-12 |
JP6864330B2 (ja) | 2021-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI688907B (zh) | 基於區塊鏈的房間庫存管理系統 | |
US20220222590A1 (en) | Blockchain-based room inventory management system and method | |
CA3041188C (en) | Blockchain smart contract updates using decentralized decision | |
CN100558038C (zh) | 服务注册器以及相关系统和方法 | |
KR102254809B1 (ko) | 블록체인에 기반한, 자원 공유에 따른 보상 제공하는 분산형 컴퓨팅 자원 공유 시스템 및 컴퓨팅 장치 | |
TW202001608A (zh) | 基於區塊鏈的智慧合約調用方法及裝置、電子設備 | |
CN109493223B (zh) | 一种记账方法及装置 | |
US20120239620A1 (en) | Method and system for synchronization mechanism on multi-server reservation system | |
US11631064B2 (en) | Crowdfunding method based on block chain for creating game and crowdfunding system for implementing crowdfunding service environment | |
US20100318658A1 (en) | Datacenter execution templates | |
CN104011701A (zh) | 内容传送网络 | |
CN106462471A (zh) | 将私有计算资源机会性地连接到外部服务 | |
CN104160381A (zh) | 多租户环境中租户特定数据集的管理 | |
RU2606058C2 (ru) | Усовершенствованная система управления запасами и способ для ее осуществления | |
CN112200567B (zh) | 基于区块链的资源管理方法、装置及电子设备 | |
US11961056B2 (en) | Mixed deployment architecture for distributed services | |
CN107194810B (zh) | 资产配置系统和操作方法 | |
US20070136278A1 (en) | Computer network | |
CN109564658A (zh) | 高可用性云支持的销售点系统的系统和方法 | |
US20220269670A1 (en) | Data processing method and apparatus, computer device, and storage medium | |
KR101690288B1 (ko) | 데이터를 저장하고 검색하는 방법 및 시스템 | |
KR20140063512A (ko) | 다중-서버 예약 시스템 상에서 집중화된 예약 컨텍스트 관리를 위한 방법 및 시스템 | |
CN104780221A (zh) | 中小企业知识产权综合服务平台系统 | |
WO2021252872A1 (en) | Digital service management in edge computing elements of content delivery networks | |
CN106294611A (zh) | 银行核心系统及新老核心系统数据切换方法 |