本發明專利技術涉及一種針對多源實時行情數據實現高可用接收及處理的系統,包括數據接收適配模塊對接多路行情數據,將行情數據轉換為統一格式;數據中轉模塊將數據維護至多個主題中;業務服務模塊根據需要對各類業務數據進行計算處理及提供相應API;數據存儲模塊緩存和持久化數據;數據訪問模塊為客戶端提供數據訪問服務。采用了本發明專利技術的針對多源實時行情數據實現高可用接收及處理的系統,通過多個接收節點間的協作實現數據接收環節的熱備和故障自動切換,保障多路數據源的高可用接收;充分利用Pulsar作為數據中轉,將數據處理劃分為多個相對獨立的模塊,架構靈活,擴展方便;通過Pulsar可靠傳輸到遠端云機機房,支持輕量化部署,具有高可用、高性能、易擴展的特征。易擴展的特征。易擴展的特征。
【技術實現步驟摘要】
針對多源實時行情數據實現高可用接收及處理的系統
[0001]本專利技術涉及金融數據處理領域,尤其涉及多源實時行情數據處理領域,具體是指一種針對多源實時行情數據實現高可用接收及處理的系統。
技術介紹
[0002]目前在國內金融市場,證券公司行情系統一般通過網絡專線通道與交易所內部的行情網關服務對接。行情系統一般需要會與多路實時行情數據源建立連接,多路行情源互為熱備,這樣有諸多好處:當一路行情源數據出現故障時,系統能自動切換到備選路線,確保行情不中斷;多路行情源的延時不同,如果系統能識別并選用對應行情源,能獲取更實時的數據更新。
[0003]現有行情系統多是單體系統,集成了數據接收和處理等功能,雖然比較容易部署,但是可伸縮性和擴展性都比較差。此外,行情系統對數據完整性要求高,當系統運維升級或運行故障導致數據缺失時需要具備數據恢復功能。行情系統進行多機房部署時,通常需要再各機房單獨部署一套完整系統,包括數據接收、數據處理、數據訪問等,成本很高。
技術實現思路
[0004]本專利技術的目的是克服了上述現有技術的缺點,提供了一種滿足擴展性強、完整性好、成本低的針對多源實時行情數據實現高可用接收及處理的系統。
[0005]為了實現上述目的,本專利技術的針對多源實時行情數據實現高可用接收及處理的系統如下:
[0006]該針對多源實時行情數據實現高可用接收及處理的系統,其主要特點是,所述的系統包括:
[0007]數據接收適配模塊,用于對接多路行情數據,進行協議解析和數據格式轉換,將行情數據轉換為統一格式,并根據市場類型或合約類型分別發送至數據中轉模塊;
[0008]數據中轉模塊,與所述的數據接收適配模塊相連接,用于對多路數據進行自動去重和歸并,并將數據維護至多個主題中;
[0009]業務服務模塊,與所述的數據中轉模塊相連接,用于讀取統一格式的行情結構體數據,根據需要對各類業務數據進行計算處理及提供相應API,并封裝業務相關的API接口;
[0010]數據存儲模塊,與所述的業務服務模塊相連接,用于緩存和持久化中間數據、結果數據和行情快照數據;
[0011]數據訪問模塊,輸入端與所述的數據中轉模塊、業務服務模塊相連接,輸出端與客戶端相連接,用于為客戶端提供數據訪問服務,并接收客戶端的主題訂閱請求建立長連接,向客戶端實時推送相應數據。
[0012]較佳地,所述的數據接收適配模塊包括:
[0013]數據接收單元,用于對接多路實時行情數據源及其他行情數據源;
[0014]數據解析單元,與所述的數據接收單元相連接,用于解析行情數據源,并從每幀實
時行情數據中提取多條數據;
[0015]結構轉換單元,與所述的數據解析單元相連接,用于根據數據源的接入要求進行協議適配并數據轉換,提取數據所屬類型;
[0016]初始化單元,與所述的結構轉換單元相連接,用于提取毫秒級時間戳用作消息數據的序列ID屬性值;
[0017]轉發單元,與所述的初始化單元相連接,用于轉發給對應生產者單元。
[0018]較佳地,所述的數據中轉模塊包括:
[0019]數據去重單元,與所述的數據接收適配模塊相連接,用于根據序列ID對數據進行自動去重;
[0020]數據中轉單元,與所述的數據去重單元相連接,用于根據數據類型將行情數據維護在多個主題中。
[0021]較佳地,所述的業務服務模塊從數據中轉模塊獲取上游數據,進行數據計算及加工處理,將加工后的數據存儲到緩存或持久化到數據庫,或者將加工后的數據發送至對應主題。
[0022]較佳地,所述的數據訪問模塊接收客戶端的用戶請求,提供數據訂閱和數據查詢的服務;將用戶請求轉發至業務服務模塊提供的各種API,并將結果返回至客戶端;接收客戶端的主題訂閱請求,建立長連接并向客戶端實時推送相應數據。
[0023]較佳地,所述的系統還包括多個云機房子系統,每個所述的云機房子系統包括數據中轉模塊復制節點和云機房的數據訪問模塊,多個所述的數據中轉模塊復制節點的輸入端均與所述的數據中轉模塊相連接,云機房的數據訪問模塊與該云機房子系統的數據中轉模塊復制節點相連接,多個所述的云機房的數據訪問模塊的輸出端均與客戶端相連。
[0024]采用了本專利技術的針對多源實時行情數據實現高可用接收及處理的系統,通過多個接收節點間的協作實現數據接收環節的熱備和故障自動切換,保障多路數據源的高可用接收;充分利用Pulsar作為數據中轉,將數據處理劃分為多個相對獨立的模塊,架構靈活、擴展方便;將加工處理后的數據通過Pulsar可靠傳輸到遠端云機機房,支持輕量化部署;綜上,本專利技術具有高可用、高性能、易擴展等明顯特征。
附圖說明
[0025]圖1為本專利技術的針對多源實時行情數據實現高可用接收及處理的系統的整體架構示意圖。
[0026]圖2為本專利技術的針對多源實時行情數據實現高可用接收及處理的系統的多機房部署實例圖。
[0027]圖3為本專利技術的針對多源實時行情數據實現高可用接收及處理的系統的數據接收適配模塊和數據中轉模塊的詳情圖。
具體實施方式
[0028]為了能夠更清楚地描述本專利技術的
技術實現思路
,下面結合具體實施例來進行進一步的描述。
[0029]如圖1所示,本專利技術的該針對多源實時行情數據實現高可用接收及處理的系統,其
中包括:
[0030]數據接收適配模塊,用于對接多路行情數據,進行協議解析和數據格式轉換,將行情數據轉換為統一格式,并根據市場類型或合約類型分別發送至數據中轉模塊;
[0031]數據中轉模塊,與所述的數據接收適配模塊相連接,用于對多路數據進行自動去重和歸并,并將數據維護至多個主題中;
[0032]業務服務模塊,與所述的數據中轉模塊相連接,用于讀取統一格式的行情結構體數據,根據需要對各類業務數據進行計算處理及提供相應API,并封裝業務相關的API接口;
[0033]數據存儲模塊,與所述的業務服務模塊相連接,用于緩存和持久化中間數據、結果數據和行情快照數據;
[0034]數據訪問模塊,輸入端與所述的數據中轉模塊、業務服務模塊相連接,輸出端與客戶端相連接,用于為客戶端提供數據訪問服務,并接收客戶端的主題訂閱請求建立長連接,向客戶端實時推送相應數據。
[0035]作為本專利技術的優選實施方式,所述的數據接收適配模塊包括:
[0036]數據接收單元,用于對接多路實時行情數據源及其他行情數據源;
[0037]數據解析單元,與所述的數據接收單元相連接,用于解析行情數據源,并從每幀實時行情數據中提取多條數據;
[0038]結構轉換單元,與所述的數據解析單元相連接,用于根據數據源的接入要求進行協議適配并數據轉換,提取數據所屬類型;
[0039]初始化單元,與所述的結構轉換單元相連接,用于提取毫秒級時間戳用作消息數據的序列ID屬性值;
[0040]轉發單元,與所述的初始化單元相連接,用于轉發給對應生產者單元。
...
【技術保護點】
【技術特征摘要】
1.一種針對多源實時行情數據實現高可用接收及處理的系統,其特征在于,所述的系統包括:數據接收適配模塊,用于對接多路行情數據,進行協議解析和數據格式轉換,將行情數據轉換為統一格式,并根據市場類型或合約類型分別發送至數據中轉模塊;數據中轉模塊,與所述的數據接收適配模塊相連接,用于對多路數據進行自動去重和歸并,并將數據維護至多個主題中;業務服務模塊,與所述的數據中轉模塊相連接,用于讀取統一格式的行情結構體數據,根據需要對各類業務數據進行計算處理及提供相應API,并封裝業務相關的API接口;數據存儲模塊,與所述的業務服務模塊相連接,用于緩存和持久化中間數據、結果數據和行情快照數據;數據訪問模塊,輸入端與所述的數據中轉模塊、業務服務模塊相連接,輸出端與客戶端相連接,用于為客戶端提供數據訪問服務,并接收客戶端的主題訂閱請求建立長連接,向客戶端實時推送相應數據。2.根據權利要求1所述的針對多源實時行情數據實現高可用接收及處理的系統,其特征在于,所述的數據接收適配模塊包括:數據接收單元,用于對接多路實時行情數據源及其他行情數據源;數據解析單元,與所述的數據接收單元相連接,用于解析行情數據源,并從每幀實時行情數據中提取多條數據;結構轉換單元,與所述的數據解析單元相連接,用于根據數據源的接入要求進行協議適配并數據轉換,提取數據所屬類型;初始化單元,與所述的結構轉換單元相連接,用于提取毫秒級時間戳用作消息數據的序列ID屬性值;轉發單元,與所述...
【專利技術屬性】
技術研發人員:俞楓,葉振博,趙振江,龔恩照,胡爽,
申請(專利權)人:國泰君安證券股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。