本發明專利技術提供一種基于眾包地圖更新的海量數據接入處理方法及系統,該方法包括:接收車端眾包地圖更新數據后,通過基于lvs中的NAT機制將數據轉發至后臺服務器;基于Keepalived和Nginx代理進行服務轉發后,由服務集群NIO創建多線程數據處理任務,并通過Kafka生成多任務消息隊列;獲取消息隊列中數據處理任務進行微服務處理,將處理后的更新數據存儲至HDFS文件系統,并在非結構化數據庫HBase中進行管理。通過該方案解決現有海量數據接入處理時服務器端負載過大,難以滿足實時性要求的問題,有效提升數據處理速度,實現服務端負載均衡,保障眾包地圖更新的實時性。
A massive data access processing method and system based on crowdsourcing map update
【技術實現步驟摘要】
一種基于眾包地圖更新的海量數據接入處理方法及系統
本專利技術涉及大數據領域,尤其涉及一種基于眾包地圖更新的海量數據接入處理方法及系統。
技術介紹
眾包地圖數據為眾包采集的高精度地圖數據,基于車端眾包采集的地圖數據對于高精度地圖制作,以及高精度地圖更新具有重要作用。然而隨著接入的眾包地圖數據增多,對服務端的海量數據處理提出了更高要求。目前,對于海量接入數據處理方案有將接入數據傳至kafka隊列,然后通過流處理引擎,將數據實時寫入HBase數據庫,可以基本滿足數據存儲及分析處理要求,然而,隨著數據量的進一步增加,服務器端負載過大,難以保證數據的實時處理要求。
技術實現思路
有鑒于此,本專利技術實施例提供了一種基于眾包地圖更新的海量數據接入處理方法及系統,以解決現有海量數據接入處理時服務器端負載過大,難以滿足數據實時處理要求的問題。在本專利技術實施例的第一方面,提供了一種基于眾包地圖更新的海量數據接入處理方法,包括:接收車端眾包地圖更新數據后,通過基于lvs中的NAT機制將數據轉發至后臺服務器;基于Keepalived和Nginx代理進行服務轉發后,由服務集群NIO創建多線程數據處理任務,并通過Kafka生成多任務消息隊列;獲取消息隊列中數據處理任務進行微服務處理,將處理后的更新數據存儲至HDFS文件系統,并在非結構化數據庫HBase中進行管理。在本專利技術實施例的第二方面,提供了一種基于眾包地圖更新的海量數據接入處理系統,包括:數據接入模塊,用于接收車端眾包地圖更新數據后,通過基于lvs中的NAT機制將數據轉發至后臺服務器;數據處理模塊,用于基于Keepalived和Nginx代理進行服務轉發后,由服務集群NIO創建多線程數據處理任務,并通過Kafka生成多任務消息隊列;數據存儲模塊,用于獲取消息隊列中數據處理任務進行微服務處理,將處理后的更新數據存儲至HDFS文件系統,并在非結構化數據庫HBase中進行管理。本專利技術實施例中,接收車端眾包地圖更新數據后,通過基于lvs中的NAT機制將數據轉發至后臺服務器;基于Keepalived和Nginx代理進行服務轉發后,由服務集群NIO創建多線程數據處理任務,并通過Kafka生成多任務消息隊列;獲取消息隊列中數據處理任務進行微服務處理,將處理后的更新數據存儲至HDFS文件系統,并在非結構化數據庫HBase中進行管理。可以對接入的海量數據進行實時快速的處理及存儲,實現服務器端負載均衡,解決了現有海量眾包地圖更新數據接入處理時服務器端負載過大,難以滿足實時性的問題,有效提升服務器的數據處理速度,保障服務端的實時性、可靠性及兼容性。附圖說明為了更清楚地說明本專利技術實施例中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單介紹,顯而易見地,下面描述的附圖僅僅是本專利技術的一些實施例,對本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲取其他附圖。圖1為本專利技術的一個實施例提供的基于眾包地圖更新的海量數據接入處理方法的流程示意圖;圖2為本專利技術的一個實施例提供的基于眾包地圖更新的海量數據接入處理方法的框架結構示意圖;圖3為本專利技術的一個實施例提供的基于眾包地圖更新的海量數據接入處理系統結構示意圖。具體實施方式為使得本專利技術的專利技術目的、特征、優點能夠更加的明顯和易懂,下面將結合本專利技術實施例中的附圖,對本專利技術實施例中的技術方案進行清楚、完整地描述,顯然,下面所描述的實施例僅僅是本專利技術一部分實施例,而非全部的實施例。基于本專利技術中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其它實施例,都屬于本專利技術保護的范圍。本專利技術的說明書或權利要求書及上述附圖中的術語“包括”以及其他相近意思表述,意指覆蓋不排他的包含,如包含一系列步驟或單元的過程、方法或系統、設備沒有限定于已列出的步驟或單元。請參閱圖1,圖1為本專利技術實施例提供的一種基于眾包地圖更新的海量數據接入處理方法的流程示意圖,包括:S101、接收車端眾包地圖更新數據后,通過基于lvs中的NAT機制將數據轉發至后臺服務器;所述車端眾包地圖更新數據為基于車端采集的眾包地圖數據,服務端生成更新地圖后,可以根據用戶請求返回更新的地圖數據,在所述車端眾包地圖更新數據中可以包括用戶上傳的眾包地圖數據、地圖更新請求數據。所述lvs(LinuxVirtualServer)即Linux虛擬服務器,用于將用戶請求調度發送至后臺web服務器,所述NAT(NetworkAddressTranslation)即網絡地址轉換,通過數據報頭可以使得外部請求訪問內部私有IP主機。基于lvs中的NAT機制可以決定對哪些流量數據進行負載均衡。可選的,對預定眾包地圖更新數據進行NAT地址轉換處理,記錄處理所述預定眾包地圖更新數據的服務器地址,并將后續接收的所述預定眾包地圖更新數據轉發至對應的服務器地址。S102、基于Keepalived和Nginx代理進行服務轉發后,由服務集群NIO創建多線程數據處理任務,并通過Kafka生成多任務消息隊列;所述Keepalived用于實現服務器的高可用,通過檢測服務器狀態防止單點故障導致業務無法訪問的問題。所述Nginx為一個高性能的HTTP和反向代理服務器,基于Keepalived和Nginx代理可以根據網絡請求類型,進行服務分流,具體的,基于Nginx對HTTP應用的請求進行分流,如根據http域名、目錄結構進行服務分流。所述NI即及newIO,基于NIO可以為數據提供緩存支持的數據容器。由服務集群NIO根據用戶請求創建多線程的數據處理任務,基于kafka消息訂閱發布系統,方便數據的實時處理。優選的,在用戶請求高并發情況下,將車端眾包更新數據存儲至redis中,根據業務邏輯,定期將所述車端眾包更新數據同步至關系型數據庫PostgreSQL中。S103、獲取消息隊列中數據處理任務進行微服務處理,將處理后的更新數據存儲至HDFS文件系統,并在非結構化數據庫HBase中進行管理。每個任務經微服務化處理后,對應的處理結果可以存儲至至HDFS文件系統,或根據處理結果訪問HBase中存儲的數據。所述HBase為基于HDFS(HadoopDistributedFileSystem)、分布式的非關系型數據庫,基于HBase管理海量眾包地圖更新數據。優選的,在用戶請求高并發情況下,將車端眾包更新數據存儲至redis中,根據業務邏輯,定期將所述車端眾包更新數據同步至關系型數據庫PostgreSQL中。優選的,配置主從數據庫,設定在從庫中進行數據讀取,在主庫進行增加、刪除、修改操作。可選的,在HBase中數據存儲于HDFS文件系統,并通過Zookeeper進行Master和RegionServer的協調管理。在本專利技術另一個實施例中,提供了基于眾包地圖更新的海量數據接入處理方法對應的框架結本文檔來自技高網...
【技術保護點】
1.一種基于眾包地圖更新的海量數據接入處理方法,其特征在于,包括:/n接收車端眾包地圖更新數據后,通過基于lvs中的NAT機制將數據轉發至后臺服務器;/n基于Keepalived和Nginx代理進行服務轉發后,由服務集群NIO創建多線程數據處理任務,并通過Kafka生成多任務消息隊列;/n獲取消息隊列中數據處理任務進行微服務處理,將處理后的更新數據存儲至HDFS文件系統,并在非結構化數據庫HBase中進行管理。/n
【技術特征摘要】
1.一種基于眾包地圖更新的海量數據接入處理方法,其特征在于,包括:
接收車端眾包地圖更新數據后,通過基于lvs中的NAT機制將數據轉發至后臺服務器;
基于Keepalived和Nginx代理進行服務轉發后,由服務集群NIO創建多線程數據處理任務,并通過Kafka生成多任務消息隊列;
獲取消息隊列中數據處理任務進行微服務處理,將處理后的更新數據存儲至HDFS文件系統,并在非結構化數據庫HBase中進行管理。
2.根據權利要求1所述的方法,其特征在于,所述通過基于lvs中的NAT機制將數據轉發至后臺服務器包括:
對預定眾包地圖更新數據進行NAT地址轉換處理,記錄處理所述預定眾包地圖更新數據的服務器地址,并將后續接收的所述預定眾包地圖更新數據轉發至對應地址的服務器。
3.根據權利要求1所述的方法,其特征在于,所述基于Keepalived和Nginx代理進行服務轉發包括:
基于Nginx對HTTP應用的請求進行分流,并通過端口檢測對應服務器內部故障。
4.根據權利要求1所述的方法,其特征在于,所述由服務集群NIO創建多線程數據處理任務,并通過Kafka生成多任務消息隊列還包括:
在用戶請求高并發情況下,將車端眾包更新數據存儲至redis中,根據業務邏輯,定期將所述車端眾包更新數據同步至關系型數據庫PostgreSQL中。
5.根據權利要求1所述的方法,其特征在于,所述將處理后的更新數據存儲至HDFS文件系統,并在非結構化數據庫HBase中進行管理包括:
配置主從數據庫,設定在從庫中進行數據讀取,在主庫進行增加、刪除、修改操作。
6...
【專利技術屬性】
技術研發人員:王駿,樊迪,陳明宇,羅躍軍,
申請(專利權)人:武漢中海庭數據技術有限公司,
類型:發明
國別省市:湖北;42
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。