999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Lucene和PostGIS的地圖搜索研究

2014-06-27 05:47:30明,羅榮,胡
測繪通報 2014年11期
關鍵詞:語義數據庫文本

梁 明,羅 榮,胡 最

(1.南京師范大學虛擬地理環境教育部重點實驗室,江蘇 南京 210023;2.華中師范大學城市與環境科學學院,湖北 武漢 430079)

基于Lucene和PostGIS的地圖搜索研究

梁 明1,羅 榮2,胡 最1

(1.南京師范大學虛擬地理環境教育部重點實驗室,江蘇 南京 210023;2.華中師范大學城市與環境科學學院,湖北 武漢 430079)

基于網絡的地圖搜索是空間信息共享和互操作的基礎,隨著移動互聯網技術的快速發展,網絡地圖搜索更成為人們獲取空間信息的重要手段和網絡入口。本文分析了當前主流的客戶端/數據庫模式的WebGIS地圖搜索的不足與瓶頸,構建了客戶端/ Lucene/數據庫的三元模式的地圖搜索架構;探討實現了PostGIS中地理對象到Lucene索引的映射機制,并針對Web客戶端對檢索結果矢量要素傳輸和渲染能力的不足,提出基于拓撲操作的矢量要素動態加載機制。本文提高了用戶檢索的靈活性和檢索結果的針對性、有效性,為智慧城市建設和WebGIS的應用提供了更好的支持。

地圖搜索;WebGIS;全文檢索;PostGIS;Lucene

一、引 言

隨著萬維網和移動互聯技術的發展,網絡已經成為人們獲取信息的重要手段。面對浩如煙海的網絡信息,如何及時準確地獲取人們最為關心、最有價值的資訊,成為對“搜索引擎”這一網絡第一入口的核心要求。眾所周知,地球上80%左右的信息都與空間位置有關,自從Google Maps誕生以來,基于WebGIS和移動GIS的地圖搜索就成為人們獲取空間位置信息及日常出行交通咨詢的重要手段[1-2]。因此國內外學者對WebGIS的理論與方法進行了深入而廣泛的研究。從基于SVG/GML的客戶端表達與渲染到基于金字塔結構的服務端瓦片式WMS服務發布,從WFS-T的在線編輯到WPS的地理信息服務標準,一系列的研究與實踐極大地促進了Web-GIS的發展。然而,盡管WebGIS的發展取得了長足的進步,仍然不能夠滿足人們對地圖搜索的需求。究其原因主要在于WebGIS的地圖搜索主要集中在對地理對象幾何特征的研究與優化,如基于Markov模型的切片動態預加載[3]、POI的服務端優化等[4],卻較少對地圖搜索中地理對象的語義特征進行詳細深入的研究。目前的WebGIS地圖搜索仍然是基于關鍵字匹配的方式,即在不同字段間查找符合輸入關鍵字匹配要求的地理對象,無法支持復雜語義的查詢。盡管D.Mark與M.Egenhofer[5]、杜沖[6]、徐愛萍[6]等對地理對象及其空間關系的語義特征進行了相關研究,然而仍停留在理論探索階段,而針對基于WebGIS地圖搜索具體實現方法和手段的研究卻缺乏,難以支撐日益迫切的地圖搜索需求。

本文針對地圖搜索的需求,在分析傳統地圖搜索存在問題與不足的基礎上,基于開源框架搭建了WebGIS地圖搜索系統;并引入Lucene全文搜索引擎,探討了Lucene索引與PostGIS空間數據庫的映射機制,增強了地圖搜索引擎構建復雜、靈活查詢的能力,改善了用戶體驗,提高了人們獲取有效信息的效率。

二、理論與方法

1.當前地圖搜索的瓶頸與不足

傳統的地圖搜索基本遵循以下步驟:首先,提供UI界面,接收用戶輸入搜索關鍵詞;其次,將用戶輸入的關鍵詞構造為查詢字符串,如利用“like”“?”“?”等通配符對關鍵詞進行簡單的擴展;再次,基于Ajax發起檢索請求,由服務端到數據庫的特定字段去查詢與擴展后的關鍵詞相匹配的對象,并返回搜索結果[1,7]。這樣做有3個明顯的缺陷:一是由通配符簡單擴展的關鍵詞需要遍歷數據庫中的每個字段,并逐一比較,整個搜索結果非常耗時,特別是對于非結構化的長文本字段,耗時更為嚴重;二是由于缺乏必要的分詞方法,對于用戶復雜的查詢欠缺支持,如無法實現類似“航天橋的收費停車場”“酒店折扣”等的復雜語義查詢;三是由于搜索關鍵詞直接映射到特定的數據庫字段,系統耦合緊密,系統擴展、更新等缺乏靈活性。

2.基于Lucene的全文檢索

全文檢索是指計算機索引程序通過掃描文章中的每一個詞,對每一個詞建立一個索引,指明該詞在文章中出現的次數和位置,當用戶查詢時,檢索程序就根據事先建立的索引進行查找,并將查找的結果反饋給用戶的檢索方式[8-9]。Lucene是著名的全文檢索工具包,具有開源、高效、易擴展等諸多優異特性。不同于基于數據庫的關鍵字檢索方式,Lucene除了提供“通配符搜索”以外,還支持“布爾搜索”“范圍搜索”“前綴搜索”“短語搜索”和“模糊搜索”等豐富的搜索方式,不但顯著提高了用戶的搜索體驗,而且能夠為用戶提供個性化的搜索結果。此外,Lucene還提供多域搜索功能,克服了針對數據庫單一字段搜索或構造復雜的SQL表達式的局限,顯著提高了搜索效率。

圖1清晰地表達了傳統基于WebGIS的地圖搜索與基于Lucene的地圖搜索流程的不同。基于瀏覽器/數據庫兩層架構的傳統地圖搜索方式(如圖1(a)所示),直接將用戶查詢的搜索請求以Ajax方式發送到服務端,并經由服務組件解析直接映射為數據庫查詢的SQL語句。因此,其查詢可以抽象為“Select?from theme1_layer where field1 like關鍵詞”的模式,查詢的構造和查詢效率完全依賴于數據庫的SQL語句支持,難以構造復雜、靈活的查詢。而基于“瀏覽器/Lucene/數據庫”的3層架構的地圖搜索(如圖1(b)所示),則首先通過Hibernate、iBatis等ORM中間層或直接利用JDBC的方式,將數據庫中地理對象的語義文本映射為Lucene的Document,并在此基礎上構造基于倒排序方法的索引[9]。隨后,用戶發起的查詢請求經過Lucene的分詞、優化,再到索引中去進行匹配,并依據匹配度排序返回相應的結果。Lucene基于倒排序的反向索引機制不但保證了優異的檢索效率,同時提供了靈活多樣的查詢檢索方法,從而可以讓用戶輸入更加精確的語義描述文本,提供查詢結果的命中率和有效性。Lucene在提供以上高效靈活的搜索功能的同時,通過設計簡潔的API接口為用戶屏蔽了復雜的索引構造和技術實現細節,提高了將Lucene嵌入現有地圖搜索的便捷性。

3.PostGIS與地圖搜索

PostGIS是知名的開源“對象—關系”數據庫PostgreSQL的空間擴展,它采用面向對象的方式擴展存儲空間數據,全面支持OGC的Geometry空間數據模型。同時,除了對SQL89和SQL92的支持外,PostGIS還提供豐富的空間數據操作函數,以支持對空間數據的維護、檢索及空間運算。由于Post-GIS性能優異,在其基礎上衍生出了更多的擴展,如基于Dijkstra算法實現的pgrouting擴展模塊[10]、用于實現基于SQL的最短路徑查找功能。PostGIS支持WKT、GML、KML、GeoJSON等多種空間數據格式的存儲與輸出,為構建WebGIS提供了很好的支持。由于對GML和GeoJSON的完美支持,利用WFS向PostGIS存取空間數據變得異常方便。對于地理對象,可以將其屬性字段(描述了相應的語義信息)和幾何信息存儲在同一條記錄內,這種“屬性—幾何”的一體化存儲方式,為基于文本的全文檢索提供了遍歷;通過倒排序索引檢索到語義文本對應的記錄后,可以直接提取相應的幾何信息,并顯示在地圖上。

圖1 搜索流程對比

三、模型架構與關鍵問題

1.模型架構

基于Lucene的3層架構的WebGIS地圖搜索在傳統WebGIS的架構基礎上,增加了Lucene全文搜索引擎作為中間層,從而形成了客戶端(至少包括搜索結果列表和地圖兩部分)、Lucene(負責索引的構造與查詢的解析)、服務端(Tomcat支持下的一系列Servlet和JavaBean負責的WMS、WFS等地圖服務,以及PostGIS空間數據庫支持的空間數據管理) 3層架構體系,如圖2所示。首先,將PostGIS中存儲的地理對象的屬性字段映射為Lucene中Field的一條記錄的所有字段,共同構成一個Document;然后,利用Lucene自帶的索引創建功能,構造基于<關鍵字,文檔>的倒排序結構的索引,客戶端發起檢索時,先由Lucene.Analyzer進行分詞和分析優化,再用Query發起對Index索引的檢索和匹配;最后按照匹配度反饋檢索結果到用戶前端。用戶點擊相應的鏈接,發起WFS請求,從PostGIS中獲取GML和地理對象的詳細信息??梢?,基于Lucene的3層架構將用戶查詢的分詞、全文檢索都交由Lucene中間層來完成,既提高了查詢的靈活性,更將查詢和數據庫的二元模式進行了解耦,實現了系統的松耦合,易于維護和擴展。

圖2 基于Lucene和PostIGIS的地圖搜索系統架構

2.關鍵問題

Lucene是優秀的全文檢索引擎工具包,基于Lucene的文本搜索可以完成地圖搜索的絕大部分功能。然而其中有兩個關鍵問題是基于PostGIS的地圖搜索所需要特別關注的:一是空間數據庫向Lucene索引的映射;二是查詢結果的表達,特別是矢量要素的獲取與表達。

Hibernate與iBatis都是優秀的持久層框架,是實現數據庫向Lucene映射的重要手段。PostGIS提供了眾多實用的空間數據操作函數,因此充分利用PostGIS的空間操作函數對于WebGIS搜索引擎至關重要。由于Hibernate、Apache OJB等ORM框架對數據庫結構的封裝過于完備,因此雖然大大降低了常規數據庫開發的工作量,卻也損失了靈活性[11]。iBatis是“半自動”的持久層框架,其重要的特點就是能夠手動編輯SQL語句,這為充分利用PostGIS自定義的空間數據操作函數提供了可能,成為基于PostGIS的WebGIS持久層的可靠選擇。以下語句說明了SQL語句的自定義的方法:

Lucene實現了按詞頻和關鍵詞在文本中出現的位次對查詢與文本進行匹配和排序的機制,為用戶提供在語義上最接近用戶意愿的查詢結果。用戶根據輸出的結果,點擊相應的鏈接即可定位到對應的地理對象。在給出文本結果列表的同時,也可以給出基于SVG的地理對象的矢量表達(類似Google Maps上的POI點的展示)。而當地理對象比較復雜、矢量數據量較大時,一次性全部記載會增加網絡傳輸壓力和瀏覽器的渲染壓力,嚴重影響用戶體驗,因此需要研究優化機制。本文提出了基于視圖范圍的動態矢量加載機制,即根據當前視圖范圍外包矩形與所有檢索結果集進行拓撲“交”運算,獲取當前視圖范圍內的要素,以WFS的方式傳輸到前端,并以SVG的方式進行矢量渲染(如圖3所示)。這種動態加載機制保證了在當前視圖內只需要渲染有限少量的矢量要素,提高了要素傳輸和渲染效率。當用戶點擊文本鏈接時,用與該鏈接綁定的要素FID,構造WFS請求,單獨獲取該要素的GML數據定位到其Feature.Extent,加載顯示。

圖3 基于WFS的矢量要素動態加載

四、試驗驗證

本研究確立了通過引入Lucene全文搜索中間件,擴展基于PostGIS的地圖搜索功能的目標。首先,利用Tomcat和Geoserver搭建服務端,將基于iBatis的PostGIS作為持久化存儲層;再通過JavaBean連接服務端與Lucene的分詞、優化和索引服務;最后在前端基于JavaScript和Ajax機制實現地圖的全文搜索和圖形的瀏覽、定位與查詢。試驗以北京市某WebGIS管理系統為例,通過引入Lucene支持的全文檢索機制,有效提高了查詢的靈活性,可以構造類似“飯店收費停車”這種跨字段的查詢請求(如圖4所示)。通過Lucene可以有效解決關鍵詞次序不確定性和跨字段查詢(通過Lucene的多域查詢機制)的問題。系統以酒店、停車場、道路等多個圖層數據為檢索對象,在實現文本檢索的同時,優化了對大數據量的矢量顯示和動態加載,有效改善了用戶體驗。

五、結論與討論

本文分析了基于客戶端/數據庫二元結構的WebGIS地圖搜索的不足與原因,引入Lucene全文搜索引擎,通過構造PostGIS數據庫到Lucene索引的有效映射機制,實現了地圖信息的全文搜索。該方法能夠支持靈活、復雜的查詢語句構造,便于用戶快速檢索到更加符合自身需求的地理空間信息;同時,通過設計矢量要素的動態加載機制,有效改進了檢索要素的加載和渲染效率,改善了用戶體驗。隨著移動互聯網和LBS的發展,對地理信息搜索的要求會進一步提高,引入全文檢索機制后能夠促進WebGIS和地理信息技術的發展;特別是由于長文本字段的檢索,基于Lucene全文檢索機制的檢索效率提高尤為突出。同時,對于類似Google Earth上用戶自身添加和標注的半結構化、非結果化信息的檢索,以及地理事件監控、基于Web的空間信息挖掘等,本文提出的方法和實踐可以作為此類研究與應用的重要基礎。

圖4 基于Lucene的全文檢索WebGIS前端界面

本文的研究實現了地圖搜索功能的增強,但僅僅通過對空間數據庫中的地理對象屬性字段建立基于倒排序的全文索引,并未真正引入語義解析模塊。如搜索“車庫”與“停車場”,搜索引擎并不能理解二者在語義上的相似性[12],僅能從文本匹配的角度去匹配搜索。下一步的研究需要引入語義解析模塊[12],進一步提高搜索結果的查全率。此外,基于自然語言的空間關系推理越來越受到重視,類似“校園東邊的籃球場”等描述空間關系的語義搜索,也需要進一步深入探討。這樣才能真正回答T.S.Eliot的追問“知識中我們丟失的智慧該到哪里去找”,從而不斷提高地圖搜索的智能化水平。

[1] 白玉琪,楊崇俊,劉冬林,等.基于OpenGIS WMS的空間信息搜索引擎系統原型[J].中國圖象圖形學報,2004,9(1):105-111.

[2] 艾菊梅,周書民,彭健.基于MMS和WebGIS的移動搜索[J].計算機工程,2008,34(22):256-257.

[3] 李云錦,鐘耳順,王爾琪,等.馬爾可夫模型在空間數據預取中的應用[J].測繪通報,2010(7):1-4.

[4] 虞昌彬,胡喬,任福,等.利用B/S架構的POI信息組織方法及可視化策略研究[J].武漢大學學報:信息科學版,2012,37(2):233-236.

[5] MARK D M,EGENHOFER M J.Modeling Spatial Relations between Lines and Regions:Combining Formal Mathematical Models and Human Subjects Testing[J]. Cartography and Geographic Information Systems,1994,21(4):195-212.

[6] 杜沖,司望利,許珺.基于地理語義的空間關系查詢和推理[J].地球信息科學,2010,12(1):48-55.

[7] 周文生.基于SVG的WebGIS研究[J].中國圖象圖形學報,2002,7(7):693-698.

[8] 李永春,丁華福.Lucene的全文檢索的研究與應用[J].計算機技術與發展,2010,20(2):12-15.

[9] 鄭榕增,林世平.基于Lucene的中文倒排索引技術的研究[J].計算機技術與發展,2010,20(3):80-83.

[10] 張玢.基于PostGIS的海岸保護與利用規劃空間數據庫設計與實現[D].沈陽:遼寧師范大學,2009.

[11] 陽奇,林鎮燦,黃帆,等.基于Hibernate搜索的數據庫全文檢索系統[J].計算機工程,2010,36(4):74-76.

[12] LUACES M R,PARAMá J R,PEDREIRA O,et al. An Ontology-based Index to Retrieve Documents with Geographic Information[C]∥Scientific and Statistical Database Management.[S.l.]:Springer,2008:384-400.

Map Search Based on Lucene and PostGIS

LIANG Ming,LUO Rong,HU Zui

P289

B

0494-0911(2014)11-0042-04

2013-12-11

國家自然科學基金(41201398);教育部人文社科課題(12YJCZH073);湖南省“傳統聚落數字化保護技術”工程實驗室開放基金(CT14K09)

梁 明(1984—),男,安徽六安人,博士生,研究方向為空間數據庫與數據挖掘、3DGIS。

羅 榮

梁明,羅榮,胡最.基于Lucene和PostGIS的地圖搜索研究[J].測繪通報,2014(11):42-45.

10.13474/j.cnki.11-2246.2014.0359

猜你喜歡
語義數據庫文本
語言與語義
在808DA上文本顯示的改善
基于doc2vec和TF-IDF的相似文本識別
電子制作(2018年18期)2018-11-14 01:48:06
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
“上”與“下”語義的不對稱性及其認知闡釋
現代語文(2016年21期)2016-05-25 13:13:44
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
文本之中·文本之外·文本之上——童話故事《坐井觀天》的教學隱喻
認知范疇模糊與語義模糊
主站蜘蛛池模板: 日本免费a视频| 91精品最新国内在线播放| 亚洲男女天堂| AV无码无在线观看免费| 亚洲无码一区在线观看| 国产96在线 | 毛片免费在线视频| 97视频在线精品国自产拍| 欧美在线黄| 久久中文无码精品| 日本国产精品| 免费在线色| 又猛又黄又爽无遮挡的视频网站| 亚洲 欧美 中文 AⅤ在线视频| 国产男女免费视频| 日本高清有码人妻| 成人另类稀缺在线观看| 欧美精品在线免费| 四虎成人精品在永久免费| 色偷偷一区| 激情六月丁香婷婷| 久爱午夜精品免费视频| 永久免费精品视频| 国产成人av一区二区三区| 尤物午夜福利视频| 亚洲欧洲自拍拍偷午夜色无码| 亚洲娇小与黑人巨大交| 亚洲一区二区约美女探花| 久久人与动人物A级毛片| 国产精品美乳| 欧美不卡在线视频| 91九色最新地址| 欧美日韩资源| 免费毛片全部不收费的| 欧美精品成人| 亚洲永久免费网站| 网友自拍视频精品区| 四虎成人精品| 男女精品视频| 狠狠v日韩v欧美v| 国模视频一区二区| 999精品免费视频| 国产一区在线视频观看| 大陆精大陆国产国语精品1024| 热热久久狠狠偷偷色男同| 成人小视频在线观看免费| 成人毛片在线播放| 国产一级毛片高清完整视频版| 婷婷色婷婷| 一级黄色片网| 欧美精品啪啪| 亚卅精品无码久久毛片乌克兰| 亚洲三级片在线看| 亚洲美女一区| a天堂视频| 囯产av无码片毛片一级| 亚洲国产中文精品va在线播放| 国产精品3p视频| 精品综合久久久久久97超人该| 免费人成在线观看视频色| 天天综合网亚洲网站| 亚洲一区二区三区国产精华液| 国产成人免费高清AⅤ| 亚洲天堂日本| 久久6免费视频| 99色亚洲国产精品11p| 亚洲娇小与黑人巨大交| 亚洲国产精品无码久久一线| 欧美午夜小视频| 手机在线看片不卡中文字幕| 不卡无码网| 亚洲成人福利网站| 国产无码精品在线播放| 免费人成视频在线观看网站| 91福利一区二区三区| 亚洲精品片911| 日本亚洲欧美在线| 色综合激情网| 国产福利影院在线观看| 日韩在线2020专区| 欧美国产成人在线| 五月综合色婷婷|