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