鄧世軍 周澤兵 熊鑫 李平虎
摘 ?要:該文針對企業(yè)信息服務平臺數(shù)據(jù)特點,分析建設多源異構(gòu)地理信息檢索的應用需求,設計開發(fā)一種通用的多源異構(gòu)多維地理空間搜索引擎,研究了存儲結(jié)構(gòu)與存儲方式,開發(fā)插件式的索引引擎,實現(xiàn)可擴展、可定制的多應用查詢引擎。研究成果已應用于天津市勘察院數(shù)據(jù)資源平臺,滿足企業(yè)的數(shù)據(jù)資源檢索應用。
關(guān)鍵詞:多源異構(gòu) ?地理信息檢索 ?數(shù)據(jù)資源
中圖分類號:TP3 ? 文獻標識碼:A ? ? ? ? ? ? 文章編號:1672-3791(2019)07(a)-0016-03
智慧城市、大數(shù)據(jù)、物聯(lián)網(wǎng)等技術(shù)的迅猛發(fā)展,對社會方方面面帶來了巨大的影響和變革。數(shù)據(jù)正以一種前所未有的速度產(chǎn)生與積累。為提高管理水平,促進信息的充分利用,政府、企業(yè)都在積極構(gòu)建面向應用的數(shù)據(jù)服務平臺。這些數(shù)據(jù)服務平臺中所管理的數(shù)據(jù)有企業(yè)、政府自身積累的,也有來源于其他單位、部門的數(shù)據(jù),還有來源于互聯(lián)網(wǎng)的數(shù)據(jù)。這些數(shù)據(jù)具有來源復雜、坐標系統(tǒng)不統(tǒng)一、存儲方式格式不易轉(zhuǎn)換統(tǒng)一存儲、業(yè)務類別不同、數(shù)據(jù)量大、動態(tài)變化的特征。為提高數(shù)據(jù)的價值,這些數(shù)據(jù)往往與地理空間位置進行了綁定。在這些海量、復雜且基于地理空間位置的數(shù)據(jù)中,如何快速定位、查找感興趣、所需的內(nèi)容,是企業(yè)級數(shù)據(jù)服務應用平臺需要解決的關(guān)鍵問題。
1 ?信息檢索引擎應用需求分析
實現(xiàn)多源信息快速定位,精準查詢,核心要對海量數(shù)據(jù)進行有效的梳理,形成核心信息提取,就是信息的索引。對一個數(shù)據(jù)集做“索引”,是為了提高對這個數(shù)據(jù)集檢索的效率。書的“目錄”就是這本書內(nèi)容的“索引”,當我們拿到一本新書,想查看感興趣內(nèi)容的時候,我們會先查看目錄,確定感興趣的內(nèi)容會在哪些頁里,直接翻到那些頁。單純的空間數(shù)據(jù)現(xiàn)在在各大數(shù)據(jù)庫有較成熟的空間索引機制,單純的文字、屬性信息也可采用分詞進行索引,但缺少同時對數(shù)據(jù)資源進行空間、屬性和附屬資源的關(guān)聯(lián)索引,造成信息檢索出太多干擾內(nèi)容,需要大量人力進行不斷篩選才能找到有用信息。
現(xiàn)有數(shù)據(jù)庫系統(tǒng)、空間搜索引擎、文本搜索引擎無法滿足應用需求:數(shù)據(jù)資源共享時,用戶檢索快速精準查詢需求;綜合分析利用平臺的構(gòu)建時,如出具編制咨詢報告時,需要利用各種數(shù)據(jù)資源,對信息高效組織申請的需求。
2 ?多源異構(gòu)可擴展、插件式地理空間搜索引擎設計
構(gòu)建一種通用的可擴展、插件式地理空間搜索引擎,開發(fā)滿足不同數(shù)據(jù)來源、數(shù)據(jù)格式與數(shù)據(jù)存儲方式的數(shù)據(jù)解析引擎插件庫,建立空間位置與文本、時間等多維信息的統(tǒng)一索引結(jié)構(gòu),構(gòu)建多維、地理空間信息統(tǒng)一查詢服務接口,實現(xiàn)基于地理空間位置的復雜多源數(shù)據(jù)的統(tǒng)一搜索與查詢,為企業(yè)級數(shù)據(jù)服務應用平臺提供標準化、統(tǒng)一化的服務。
2.1 總體結(jié)構(gòu)圖設計
該研究設計了一種通用的多源異構(gòu)多維地理空間搜索引擎(邏輯結(jié)構(gòu)圖見圖1),可以對來源多樣(如Oracle數(shù)據(jù)庫數(shù)據(jù)、ArcGIS SDE空間數(shù)據(jù)、ShapeFile數(shù)據(jù)、Word文檔數(shù)據(jù)、PDF文檔數(shù)據(jù)等)的結(jié)構(gòu)化與非結(jié)構(gòu)化數(shù)據(jù)進行索引,并對帶有地理位置信息的數(shù)據(jù)基于WGS-84地理坐標系統(tǒng)存儲了經(jīng)緯度信息,實現(xiàn)了基于地理空間位置的復雜多源數(shù)據(jù)的統(tǒng)一搜索與查詢,通過WebAPI提供統(tǒng)一的Web接口服務。可定制的查詢模板接口:按用戶類別,按應用需求類別,按數(shù)據(jù)類別;統(tǒng)一查詢接口,實現(xiàn)各種跨資源跨數(shù)據(jù)庫統(tǒng)一檢索的同時,可以實現(xiàn)各種按需求的定制,滿足不同用戶的需求。
2.2 索引結(jié)構(gòu)基于R-tree的混合索引模型
全文檢索信息包括地名、項目、報告成果、圖件、點位、文檔,不同的應用場景,單一的文檔目錄結(jié)構(gòu)模型無法滿足應用的需求。
(1)建立R-tree多級混合索引:索引庫相當于所有數(shù)據(jù)的一個字典表,將多源異構(gòu)數(shù)據(jù)中的部分信息提取出來進行重新組織,使其變得具有一定的結(jié)構(gòu),然后對這些有一定結(jié)構(gòu)的數(shù)據(jù)進行搜索,達到快速搜索的目的。根據(jù)檢索需求,將數(shù)據(jù)名稱、唯一標識、空間位置信息、索引內(nèi)容這4個字段作為索引庫的必要結(jié)構(gòu)字段。建立R-tree包含報告、圖件、地圖多級結(jié)構(gòu)模型,提升索引的效率、精確度。滿足不同的應用需求。
(2)空間坐標統(tǒng)一處理:在進行空間范圍查詢時,由于實際使用中各類空間數(shù)據(jù)采用的坐標系統(tǒng)不一致,有地方坐標、WGS-84、局部坐標系等,為滿足跨坐標系的空間范圍數(shù)據(jù)查詢,對于空間位置信息的索引存儲,采用WGS-84地理坐標系統(tǒng)作為全球化的空間索引坐標系統(tǒng),自動映射,為方便手機等終端定位的應用要求。
2.3 動態(tài)掃描數(shù)據(jù)更新機制:生產(chǎn)軟件平臺、互聯(lián)網(wǎng)動態(tài)更新機制
由于源數(shù)據(jù)內(nèi)容會發(fā)生變化,為保證數(shù)據(jù)的及時有效性,索引引擎還需實現(xiàn)對已有索引庫的更新操作。通過定期掃描源數(shù)據(jù),對發(fā)生變化的數(shù)據(jù)項進行索引更新,對已經(jīng)刪除的數(shù)據(jù)進行索引刪除,對新增的數(shù)據(jù)重新加到索引庫。
2.4 插件式的索引引擎
索引引擎的功能是從多源異構(gòu)源數(shù)據(jù)中,提取數(shù)據(jù)唯一標識、數(shù)據(jù)名稱、關(guān)鍵詞、空間位置、摘要等信息,根據(jù)一定的相關(guān)度算法進行大量復雜計算,得到每項數(shù)據(jù)中每一個關(guān)鍵詞的相關(guān)度,然后根據(jù)這些相關(guān)信息建立索引數(shù)據(jù)庫。內(nèi)置支持采用可擴展的索引引擎結(jié)構(gòu)接口方式設計,采用XML配置,動態(tài)加載反射,擴展點包括數(shù)據(jù)驅(qū)動類型、數(shù)據(jù)結(jié)構(gòu)類型、數(shù)據(jù)。
(1)由于源數(shù)據(jù)是多源異構(gòu)的,需要設計統(tǒng)一的接口標準,用于從不同的數(shù)據(jù)中提取有用信息,通過反射機制構(gòu)建插件式的索引引擎,實現(xiàn)索引庫的構(gòu)建。該研究中將內(nèi)置包括Oracle數(shù)據(jù)、ArcSDE數(shù)據(jù)、Shapefile數(shù)據(jù)、Word數(shù)據(jù)、文件系統(tǒng)數(shù)據(jù)在內(nèi)的索引引擎。
(2)對于包含空間范圍的源數(shù)據(jù),其空間位置信息按照WGS84坐標的經(jīng)緯度信息進行存儲,對于數(shù)據(jù)量少的查詢,可以采用簡單的數(shù)字范圍存儲即可,但是對于達到100萬級別的數(shù)據(jù)應該建立空間索引金字塔,使得空間查詢效率得到提升。
2.5 分布式索引
由于數(shù)據(jù)保密管理需要,不能進行集中存儲的訪問,對于多個主機的數(shù)據(jù)采用主從結(jié)構(gòu)的模式進行。
3 ?實現(xiàn)可擴展、可定制的多應用查詢引擎
應用查詢引擎的功能是針對用戶的查詢請求在索引庫中快速檢出數(shù)據(jù),采用一定的信息檢索模型進行數(shù)據(jù)與查詢關(guān)鍵字的相關(guān)度分析,對將要輸出的結(jié)果進行排序。信息檢索模型有以下幾種:布爾邏輯模型、模糊邏輯模型及混合模型等。
查詢引擎的工作過程如下:
(1)對用戶接口提出的查詢請求進行遞歸分析,接口語法采用Json字符串進行傳遞,json串中包含contains、shoulds、exclusive、sort這4個數(shù)組進行查詢請求。
(2)查詢引擎將傳遞的查詢請求解析成邏輯操作符AND、OR、NOT,使用“+、-”連接號和通配符,使用逗號、括號或引號進行詞組查找。
(3)對于每個索引項,匹配索引文件,并對所有查找出的文檔進行集合運算,將結(jié)果集按照基于內(nèi)容和基于鏈接分析的方法進行相關(guān)度評價并排序,最大限度地保證檢索出的結(jié)果與用戶查詢串有很高的相關(guān)性,將最終形成的有序的文檔結(jié)果集合返回給用戶。
4 ?成果應用
該研究成果已經(jīng)應用于天津市勘察院數(shù)據(jù)資源平臺中,平臺數(shù)據(jù)包括天津市電子地圖、勘察院歷年工程項目、天津市工程地質(zhì)、天津市潛水觀測、天津市地形圖、天津市影像圖、天津市基礎地質(zhì)圖件等內(nèi)容,并為全院職工提供在線的數(shù)據(jù)資源檢索、瀏覽服務,大大方便了技術(shù)人員查詢各類技術(shù)成果、文檔的速度,提升了工作效率(見圖2)。
5 ?性能分析
該系統(tǒng)采用C#,Windows Server 2012,在2臺配置的服務器上進行部署,數(shù)據(jù)內(nèi)容包括工程項目信息,以及建設用地數(shù)據(jù)、地名地址數(shù)據(jù)、圖件等各類數(shù)據(jù)資源,要素級對象達千萬條,經(jīng)測試,結(jié)果如圖3所示。
6 ?結(jié)語
該文以構(gòu)建企業(yè)數(shù)據(jù)共享與服務平臺為應用目標,研究了地理信息為核心的多源異構(gòu)統(tǒng)一框架、可擴展、可定制檢索引擎的設計與開發(fā),很好地解決了各種異構(gòu)數(shù)據(jù)的統(tǒng)一共享服務的問題,能夠滿足大型企業(yè)數(shù)據(jù)生產(chǎn)管理的需要,具有很好的推廣應用價值。
參考文獻
[1] 何榮杰.基于Lucene的全文搜索引擎的研究與實現(xiàn)[D].江蘇科技大學,2015.
[2] 張曉勇.基于多源異構(gòu)數(shù)據(jù)融合的概念層次體系構(gòu)建及其應用研究[D].南京理工大學,2016.
[3] 張書瑜,張定祥,王榮彬,等.多源異構(gòu)土地基礎數(shù)據(jù)一體化管理檢索方法研究[J].浙江大學學報:理學版,2018(5):11.
[4] 王志寶,夏昊,王成波.地理信息檢索關(guān)鍵技術(shù)研究綜述[J].計算機工程與科學,2018(3):533-543.