鄭迎春,王 騰,袁永衛,杜 凱,張曉旭
(1.衛星導航系統與裝備技術國家重點實驗室,河北 石家莊 050081;2.中國電子科技集團公司第五十四研究所,河北 石家莊 050081)
北斗智慧景區位置服務系統的位置數據管理
鄭迎春1,2,王 騰1,2,袁永衛1,2,杜 凱1,2,張曉旭1,2
(1.衛星導航系統與裝備技術國家重點實驗室,河北 石家莊 050081;2.中國電子科技集團公司第五十四研究所,河北 石家莊 050081)
位置數據管理是北斗智慧景區位置服務系統的核心組成部分,支撐著整個系統的順利運行。結合九寨溝智慧景區建設的業務需求,就智慧景區位置服務系統中高效數據插入、高效的位置查詢等關鍵技術給出相應的解決方案,最終將關鍵技術解決方案集成到九寨溝北斗智慧景區位置服務系統中。通過九寨溝北斗智慧景區位置服務系統的測試和運行,證明了所提出解決方案的有效性。
北斗衛星導航系統;智慧景區;位置服務;景區管理
隨著經濟的發展,旅游已成為人們休閑娛樂的主要方式。為此,國家提出了發展智慧旅游的發展戰略[1-2],希望借助大數據[3]、云計算[4]、物聯網[5]和移動互聯網[6]等新興技術完成智慧旅游相關系統[7]的建設,提高景區綜合管理能力和游客服務水平。
基于上述背景,以九寨溝需求為基礎,設計和研發了北斗智慧景區位置服務系統。該系統以典型位置服務架構[8]為基礎,結合移動位置服務[9]、分布式位置服務[10]思想,實現了景區日常管理和應急處理需求,同時提高景區游客服務水平。
由于景區具有業務邏輯復雜、游客量大的特點,為了滿足游客位置服務的客觀需求,使系統具有可用性,該系統必須具備高效的數據管理。在該系統中,高效的數據管理主要涵蓋以下幾個方面:數據交換、高效數據檢索和高效的數據存儲。其中,高效的數據交換是整個系統高效率運行的基礎,通過高效的數據交換能實現終端與后臺服務之間的實時信息通信、實時的位置信息接收;高效數據檢索是實現高效位置查詢的基礎,是提高游客位置服務體驗的重要保障;高效的數據存儲是系統容量的保證,確保系統具備接入大量北斗終端的能力。
在系統中,數據管理模塊包括3個子模塊,如圖1所示。通信與信息格式轉換模塊負責信息格式的轉換以及系統之間的信息交互;實時數據管理模塊實現最新位置數據的管理,該模塊同時完成實時位置數據相關的數據查詢;數據存儲模塊負責數據的永久存儲,同時支持歷史位置數據查詢,該模塊也是未來數據分析的基礎。

圖1 數據管理模塊組成
通信與數據交換模塊實現系統與終端的信息交互,主要完成信息的接收和發送。通信與數據交換模塊需要滿足高效的信息交互,關系到系統性能是否能滿足實際使用需求。因此,在通信與數據交換模塊設計實現中,需要完成數據交換協議的設計。
數據交換協議的設計需要考慮如下主要因素:開發是否方便、接口是否容易發布、是否需要考慮帶寬占用成本、序列化和反序列化的性能、接口協議的擴展性等等。本系統以XML標記語言[11]為基礎實現數據交換協議設計。
XML是一種允許用戶對自己的標記語言進行定義的源語言。該語言具備7項優點:開放性、簡單性、自我描述性、互操作性、結構、分開結構和內容以及可擴展性。本系統分別從協議結構、觸發更新和節點屬性3個方面對協議進行描述。
以實時位置信息為例,對應實時位置信息協議。
(1) 協議結構
(2) 觸發更新
M08M09M10M11M12->M05
(3) 節點屬性
① Message頭部屬性,如表1所示。

表1 Message頭部屬性
② CoordinateStation節點屬性,如表2所示。

表2 Coordinate Station節點屬性
系統中服務端軟件為終端提供相關位置查詢服務是服務端軟件的主要功能之一。需提供的位置查詢服務包括兩類:基于實時位置查詢服務和基于歷史位置的查詢服務。基于實時位置的查詢服務包括指定終端位置查詢、附近終端查詢、分類終端實時位置查詢以及游客分布查詢等;基于歷史位置查詢服務主要為歷史軌跡查詢等。系統采用實時數據緩存策略提高系統實時位置查詢服務效率。
在系統使用過程中,對實時位置信息的查詢、統計操作相當頻繁,同時查詢、統計操作之后的其他操作響應時間相對較長(例如arcgis上大量位置信息顯示)。為了確保操作響應的及時性,需要縮短實時位置信息查詢時間,同時在進行實時信息查詢時不能影響實時位置信息更新。
基于上述分析,通過在實時位置信息上建立索引來實現位置信息的高速查詢、統計及更新。在景區管理平臺中,實時位置信息查詢操作包括兩類:指定終端id的終端實時位置信息查詢和指定區域的終端位置信息查詢。針對這幾類典型操作,通過建立集合區域和終端id號的索引方式來實現實時位置信息的管理。
3.1 基于區域的索引
由于九寨溝景區為Y字型分布,可以對其進行連續網格化分,保證網格不相交。每個網格構成一個區域,包括上下左右4個頂點的經緯度信息,劃分示意圖如圖2所示。在獲取終端實時位置信息后,可以根據終端實時位置信息的經緯度來判斷該終端屬于哪一個區域。在進行指定網格內終端數目統計時,可以根據區域內終端來進行統計。
根據由于區域是自上向下連續劃分,且九寨溝景區為Y字型,因此可以根據每個區域的最大精度、緯度建立索引。對于一個新的位置信息,根據其經緯度,可以通過二分查找法獲取其所在區域。查找復雜度為logN1,N1為縱向劃分區域數。

圖2 景區網格化分示意
當確定實時位置信息所在區域后,在內存中將區域與區域內終端進行關聯如圖3所示。

圖3 區域與區域所含終端關聯
當進行指定區域內終端數量查詢時,可以直接根據區域與區域內終端關聯關系獲取。在實際使用中,用戶可以通過勾畫地圖區域進行查詢,用戶勾畫的區域可能覆蓋多個區域網格,同樣可以根據勾畫區域的最大最小經緯度,獲取其所覆蓋的網格區域,從而獲取勾畫區域內終端信息。
3.2 基于終端id的索引
在景區管理平臺中,各類型id的命名方式為MXXYYYYYYY,XX表示終端類型,YYYYYYY表示該終端編號。例如第1號手持管理終編號為M090000001,“09”為手持管理終端類別號,“0000001”為該手持管理終端的序號。根據終端編號命名特點,以終端類型號索引。如圖4所示。
圖4中,每個終端類別號對應的內存區域連續、有序存放該類別終端的信息,信息包括終端id號、經緯度以及所屬區域。當進行指定終端位置查詢時,根據終端類別可找到該類別終端實時位置存儲內存物理區域,同類型終端在存儲區域內按順序排列。在查找特定終端時,只需進行1+logn次尋址即可找到,n為指定類型終端數。

圖4 基于終端id索引
基于終端id索引能較快地對指定終端位置進行查詢,同時也支持某一類終端的實時位置信息的查詢。
當新的終端位置信息到來時,通過基于終端id的索引獲取該終端所屬的歷史區域,查找該歷史區域經緯度,如果該終端還屬于該區域,則直接修改終端的位置信息,如該終端不屬于該區域,判斷該終端是否屬于該區域的臨近區域,通常情況下根據終端位置信息上報頻率,終端所處的新區域一般為其最近所處區域的臨近區域。
通過利用九寨溝旅游風景區的特點以及終端id號的特點,景區管理平臺建立了兩種有效的索引機制,實現終端實時位置信息查詢與統計分析的快速處理,為景區管理平臺其他應用打下較好的基礎。
系統中的數據存儲服務器一方面需要完成位置數據以及業務數據的存儲,另一方面需要向終端、PC客戶端提供相應的查詢服務。系統順利運行需要數據存儲服務器在效率上能支撐上述功能的完成。由數據存儲服務器所需提供的功能可知,大部分查詢和插入工作集中在同一數據表上完成,因此當數據插入頻繁發生時,會導致數據庫表產生鎖操作,從而降低服務質量,特別是在客戶端存在數據分析相關需求時。特別是,當系統持久運行時,數據庫中數據增加,將極大地降低數據服務效率。因此,系統如何高效地實現數據存儲是系統能否順利運行的關鍵。
4.1 數據庫表結構設計
本系統數據庫表結構設計原則如下:
① 確保數據服務效率,對數據表進行水平劃分;
② 由外部程序來確保數據一致性;
③ 根據數據特點,設計表字段存儲格式,避免不必要的存儲開銷。
結合上述設計原則,將數據庫表分為兩類:基礎業務信息表和位置數據表。對位置數據表按照時間字段進行水平數據劃分,本系統結合數據庫管理系統的實際能力,將歷史位置信息表水平劃分,每5天創建一個歷史位置信息表,更好地避免了查詢過程中表數據被鎖的情形,提高查詢效率。
4.2 位置數據高效插入
隨著終端使用量增加,單位時間內上報的位置信息會不斷增加。結合業務需求:歷史數據統計分析并不需要較高的響應時間,位置數據實現高效插入應遵循如下原則:
① 節省系統資源,避免濫用數據庫連接;
② 降低數據庫查詢操作失敗帶來的資源消耗。
根據上述原則,利用數據庫新特性[12],采用批量數據插入的方式完成了數據的高效存儲。
目前,上述解決方案已經順利地集成到九寨溝北斗智慧景區位置服務系統中,系統已經正常運行。在系統容量方面,當前系統已具備順利接入大于50 000終端的能力;在位置查詢方面,系統每秒能完成12 000左右實時位置查詢能力,且查詢響應時間小于2 s。通過上述解決方案的實施,九寨溝北斗智慧景區位置服務系統已經達到景區位置服務的需要。
位置數據管理是位置服務系統的關鍵內容。位置數據管理的有效性直接影響位置服務系統的系統可用性,也直接影響位置服務質量。在“北斗智慧景區位置服務系統”中,通過有效的信息協議設計、實時數據管理和位置數據高效存儲等關鍵問題的解決,該系統實現了有效的位置數據管理,通過有效的數據管理,實現了景區內車輛、人員、基礎設施的無縫連接和協調,提升了景區的管理效率和游客服務質量,為景區的信息化發展、智慧景區建設打下了堅實的基礎。
[1] 陶 云,朱 芳.基于游客體驗的智慧景區建設探討一以自然景區為例[J].當代旅游,2013,3(10):34-39.
[2] 裴盈盈,袁國宏.智慧旅游淺析[J].當代經濟,2012,8(5):356-371.
[3] 孟小峰,慈 祥.大數據管理:概念、技術與挑戰[J].計算機研究與發展,2013,50(1):146-169.
[4] 陳 康,鄭緯民.云計算:系統實例與研究現狀[J].軟件學報,2009,20(5):1 337-1 348.
[5] 陳海明,崔 莉,謝開斌.物聯網體系結構與實現方法的比較研究[J].計算機學報,2013,36(1):168-188.
[6] 羅軍舟,吳文甲,楊 明.移動互聯網:終端、網絡與服務[J].計算機學報.2011.11,34(11),2 029-2 051.
[7] 金 波.淺談智慧景區標準化建設[J].中國標準化,2014(3):96-99.
[8] 周傲英,楊 彬,金澈清,等.基于位置的服務:架構與進展[J].計算機學報,2011,34(7):1 165-1 171.
[9] Rao B,MIINAKAKI L.Evolution of Mobile Location-based Services[J].Commmunications of The ACM,2003,46(12):61-65.
[10]RANKIN P J,GRIFFITHS J C.Distributed Location Based Service System:US,US6879838 B2[P],2005.
[11]DUI D,EMMERICH W.Compatibility of XML Language Versions[J].Lecture Notes in Computer Science,2003,2649:148-162.
[12]NIELSEN P,PARUI U.Microsoft SQL Server 2008 Bible[M].John Wiley & Sons,2011.
鄭迎春 女,(1987—),碩士,工程師。主要研究方向:位置服務。
王 騰 男,(1980—),博士,高級工程師。主要研究方向:數據管理、位置服務。
Location Data Management in Beidou Smart Scenic Spot Location-based Service System
ZHENG Ying-chun1,2,WANG Teng1,2,YUAN Yong-wei1,2,DU Kai1,2,ZHANG Xiao-xu1,2
(1.StateKeyLaboratoryofSatelliteNavigationSystemandEquipmentTechnology,ShijiazhuangHebei050081,China;2.The54thResearchInstituteofCETC,ShijiazhuangHebei050081,China)
The location data management is a key componet in Beidou scenic spot location based service system and supports the whole system operating.In view of service requirements in developing Jiuzhai Valley Beidou smart scenic location service system,this paper proposes the corresponding solutions for such key technologies as high-speed data insertion and high-efficency location query,and integrates these solutions into Jiuzhai Valley Beidou smart scenic location-based service system.The test and running results prove the availability of the proposed solutions.
Beidou satellite navigation system;smart scenic spot;LBS;scenic spot management
10.3969/j.issn.1003-3106.2016.11.04
鄭迎春,王 騰,袁永衛,等.北斗智慧景區位置服務系統的位置數據管理[J].無線電工程,2016,46(11):13-16.
2016-08-15
國家高技術研究發展計劃(“863”計劃)基金資助項目(2015AA124001)。
F426.5
A
1003-3106(2016)11-0013-04