亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于本體推理的終端用戶數(shù)據(jù)查詢構(gòu)造方法?

        2019-06-11 07:40:12王亞沙趙俊峰王江濤
        軟件學(xué)報(bào) 2019年5期
        關(guān)鍵詞:數(shù)據(jù)庫用戶模型

        唐 爽,王亞沙,趙俊峰,4,王江濤,4,夏 丁

        1(高可信軟件技術(shù)教育部重點(diǎn)實(shí)驗(yàn)室(北京大學(xué)),北京 100871)

        2(北京大學(xué) 信息科學(xué)技術(shù)學(xué)院,北京 100871)

        3(軟件工程國(guó)家工程中心(北京大學(xué)),北京 100871)

        4(北京大學(xué)(天津?yàn)I海)新一代信息技術(shù)研究院,天津 300450)

        企業(yè)信息系統(tǒng)中積累了大量與業(yè)務(wù)相關(guān)的數(shù)據(jù),有效利用這些數(shù)據(jù)并從中分析獲取業(yè)務(wù)決策的知識(shí),對(duì)于企業(yè)競(jìng)爭(zhēng)力的提升十分重要[1].企業(yè)數(shù)據(jù)分析的一般流程大致包括3個(gè)步驟:(1) 根據(jù)決策需求確定數(shù)據(jù)分析所需回答的問題(如:在不同地區(qū)分別有哪些產(chǎn)品最受歡迎,什么樣的顧客有可能再次購(gòu)買公司的產(chǎn)品等);(2) 根據(jù)問題,從企業(yè)內(nèi)部信息系統(tǒng)及外部數(shù)據(jù)源中獲得相關(guān)數(shù)據(jù);(3) 對(duì)數(shù)據(jù)進(jìn)行分析,獲得與決策相關(guān)的知識(shí),從而回答前面提出的問題[2].這個(gè)過程中,步驟 1與業(yè)務(wù)密切相關(guān),且一般由對(duì)業(yè)務(wù)熟悉、具有分析經(jīng)驗(yàn)的人員人工完成,本文統(tǒng)稱此類人員為業(yè)務(wù)分析者.步驟 3雖然存在一些需要應(yīng)用復(fù)雜機(jī)器學(xué)習(xí)算法的場(chǎng)景,但是企業(yè)日常分析中基于統(tǒng)計(jì)的描述性分析(descriptive analysis)仍占絕大多數(shù)[3-5].目前,研究者和產(chǎn)業(yè)界提出了大量的通用數(shù)據(jù)統(tǒng)計(jì)和可視化的工具,為描述性分析提供了較好的支持[6].而步驟 2是得到有價(jià)值分析結(jié)論的基礎(chǔ),至關(guān)重要.然而,這個(gè)環(huán)節(jié)也是企業(yè)數(shù)據(jù)分析過程中主要瓶頸[7,8].

        導(dǎo)致上述瓶頸的主要原因在于業(yè)務(wù)分析者與 IT人員在知識(shí)和技能上的鴻溝[7,8].通常,企業(yè)數(shù)據(jù)分析最主要的數(shù)據(jù)來源是企業(yè)內(nèi)部的信息系統(tǒng).這些信息系統(tǒng)大都采用關(guān)系數(shù)據(jù)庫系統(tǒng)存儲(chǔ)、管理數(shù)據(jù),需要通過編寫并執(zhí)行SQL語言程序查詢與獲取數(shù)據(jù).業(yè)務(wù)分析者熟悉業(yè)務(wù),了解問題與哪些方面的數(shù)據(jù)相關(guān),但因?yàn)樗麄兇蠖贾皇怯?jì)算機(jī)終端用戶,而非計(jì)算機(jī)專業(yè)人員,也無法編程直接從數(shù)據(jù)庫中查詢并獲取數(shù)據(jù);另一方面,運(yùn)維企業(yè)信息系統(tǒng)的 IT人員雖然熟悉數(shù)據(jù)庫,但是卻無法根據(jù)問題確定數(shù)據(jù)查詢的需求.實(shí)踐中,一般業(yè)務(wù)分析者需在IT人員輔助下完成數(shù)據(jù)查詢?nèi)蝿?wù).但是由于雙方知識(shí)結(jié)構(gòu)差異較大,溝通效率較低.而且數(shù)據(jù)分析是一個(gè)需多次交互迭代的過程,需要雙發(fā)頻繁交互,由此因溝通不暢,對(duì)數(shù)據(jù)分析過程的效率造成較大負(fù)面影響.

        針對(duì)上述問題,眾多學(xué)者對(duì)可視化查詢系統(tǒng)(visual query system,簡(jiǎn)稱VQS)開展了研究[5-11].VQS系統(tǒng)將領(lǐng)域概念或查詢語句表達(dá)為可視化元素,讓非計(jì)算機(jī)專業(yè)的終端用戶(如業(yè)務(wù)分析者)通過交互界面操縱可視化元素,從而無需IT人員輔助即可完成查詢語句的構(gòu)造.傳統(tǒng)的VQS系統(tǒng)直接基于數(shù)據(jù)模式向用戶提供可視化查詢界面,圖形化元素與關(guān)系數(shù)據(jù)庫中的表和字段一一對(duì)應(yīng)[8,9].這類工作無法使用戶從數(shù)據(jù)模式的底層細(xì)節(jié)(例如數(shù)據(jù)庫中表和字段的含義、表連接條件等)中解脫出來,對(duì)于不了解數(shù)據(jù)庫結(jié)構(gòu)細(xì)節(jié)的用戶幫助十分有限.

        近年來,隨著語義網(wǎng)絡(luò)(sematic Web)和基于本體的數(shù)據(jù)訪問技術(shù)(ontology-based data access,簡(jiǎn)稱OBDA)的發(fā)展[12-19],研究者們開始考慮利用本體(ontology)作為終端用戶和數(shù)據(jù)庫系統(tǒng)之間的媒介,讓用戶使用基于本體的VQS系統(tǒng)來構(gòu)造本體查詢語句SPARQL.相對(duì)于傳統(tǒng)VQS系統(tǒng)(如圖1所示),基于本體的VQS系統(tǒng)(如圖2所示)的優(yōu)勢(shì)在于:(1) 本體模型的圖結(jié)構(gòu)和語義表達(dá)能力使其對(duì)于終端用戶的可用性更強(qiáng);(2) 本體模型的規(guī)范性使其適合于作為多個(gè)系統(tǒng)中異構(gòu)數(shù)據(jù)模式的統(tǒng)一視圖,從而屏蔽異構(gòu)性.例如,某餐飲集團(tuán)有多個(gè)門店,而不同門店使用了不同的前臺(tái)信息管理系統(tǒng).雖然這些系統(tǒng)的數(shù)據(jù)庫的數(shù)據(jù)模式不同,但是因?yàn)橥瑢俨惋嬊芭_(tái)管理領(lǐng)域,數(shù)據(jù)在語義層所表達(dá)的概念、關(guān)系、規(guī)則等領(lǐng)域知識(shí)卻十分相似,可以通過一套統(tǒng)一的本體模型進(jìn)行表示.終端用戶利用VQS構(gòu)造與具體信息系統(tǒng)數(shù)據(jù)模式無關(guān)的SPARQL本體查詢語句,而VQS系統(tǒng)則基于本體模型與各信息系統(tǒng)中關(guān)系模型的映射,將SPARQL語句轉(zhuǎn)換為SQL語句,進(jìn)而實(shí)現(xiàn)對(duì)數(shù)據(jù)的查詢與獲取.較之傳統(tǒng)的VQS,基于本體的VQS系統(tǒng)需要額外增加本體模型構(gòu)造、關(guān)系模型與本體模型映射以及從SPARQL查詢到SQL查詢的轉(zhuǎn)換等技術(shù)內(nèi)容.目前,在OBDA領(lǐng)域中,基于關(guān)系數(shù)據(jù)模式的本體模型自動(dòng)生成及關(guān)系模型與本體模型映射關(guān)系建立等技術(shù)已經(jīng)十分成熟,并被制定成為了W3C標(biāo)準(zhǔn)[20,21].而SPARQL到SQL的轉(zhuǎn)換已經(jīng)提出了高效的轉(zhuǎn)換算法并研發(fā)了實(shí)用的轉(zhuǎn)換工具[22-27].因此,本文方法將直接應(yīng)用已有技術(shù),而將關(guān)注點(diǎn)聚焦于如何從業(yè)務(wù)邏輯,而非數(shù)據(jù)庫設(shè)計(jì)的視角,幫助終端用戶高效構(gòu)造基于SPARQL的本體查詢語句.

        Fig.1 Traditional VQS diagram圖1 傳統(tǒng)VQS系統(tǒng)示意

        Fig.2 Ontology-based VQS diagram圖2 基于本體的VQS系統(tǒng)示意

        現(xiàn)有的基于本體VQS系統(tǒng)的相關(guān)工作在幫助用戶構(gòu)造SPARQL查詢語句的過程中,存在的主要問題是采用的本體模型不能很好地屏蔽數(shù)據(jù)庫存儲(chǔ)的底層細(xì)節(jié),其主要原因是數(shù)據(jù)庫模式到本體的映射規(guī)則不完整、不準(zhǔn)確.相關(guān)工作中,系統(tǒng)自動(dòng)生成的本體模型基本和數(shù)據(jù)庫同構(gòu),沒有對(duì)存儲(chǔ)細(xì)節(jié)進(jìn)行屏蔽.屏蔽數(shù)據(jù)庫細(xì)節(jié)的映射規(guī)則需要用戶手動(dòng)編寫,且不能在多個(gè)數(shù)據(jù)庫之間通用.

        針對(duì)基于本體的VQS現(xiàn)有工作的問題,本文提出了一種“基于推理的終端用戶本體查詢構(gòu)造方法”,并實(shí)現(xiàn)了原型系統(tǒng).該方法通過本體推理的方式輔助用戶對(duì)數(shù)據(jù)庫存儲(chǔ)的細(xì)節(jié)進(jìn)行屏蔽,免去了繁瑣的規(guī)則編寫操作.此方法首先基于對(duì)終端用戶理解與數(shù)據(jù)庫存儲(chǔ)之間差異的分析,設(shè)計(jì)了與特定領(lǐng)域無關(guān)的抽象層本體模型——查詢?cè)P?然后,基于該元模型設(shè)計(jì)了用于屏蔽數(shù)據(jù)庫數(shù)據(jù)模式、支持和簡(jiǎn)化屬性分組聚合操作的面向查詢的本體推理規(guī)則;最后,在元模型和推理規(guī)則的基礎(chǔ)上設(shè)計(jì)了可視化查詢系統(tǒng)以及本體查詢構(gòu)造算法.同時(shí),為了實(shí)現(xiàn)屬性分組聚合操作,系統(tǒng)對(duì)新版SPARQL語言中引入的GROUPBY關(guān)鍵字專門進(jìn)行了支持.

        本文第1節(jié)介紹傳統(tǒng)VQS及基于本體的VQS相關(guān)研究工作.第2節(jié)介紹本文方法的總體框架.第3節(jié)則針對(duì)查詢?cè)P汀⒚嫦虿樵兊谋倔w推理規(guī)則、VQS用戶可視交互設(shè)計(jì)、本體查詢 SPARQL語句構(gòu)造算法等方法的核心環(huán)節(jié)進(jìn)行介紹.第 4節(jié)基于國(guó)內(nèi)一款主流的餐飲前臺(tái)信息管理系統(tǒng)的數(shù)據(jù)庫模式以及一個(gè)真實(shí)的數(shù)據(jù)獲取需求,對(duì)本文方法和原型系統(tǒng)進(jìn)行了案例展示.

        1 相關(guān)研究工作

        1.1 基于數(shù)據(jù)源的VQS系統(tǒng)

        基于數(shù)據(jù)源的 VQS系統(tǒng)幫助用戶構(gòu)造數(shù)據(jù)源查詢語句,如 SQL,其相關(guān)工作有如下典型代表:QBE[11]面向關(guān)系型數(shù)據(jù)庫,提出一種高級(jí)數(shù)據(jù)庫管理語言,并基于此語言向用戶提供了數(shù)據(jù)查詢、更新等操作的統(tǒng)一接口;Xing[12]面向半結(jié)構(gòu)化的XML數(shù)據(jù),基于XML文檔模式提出一種可視化語言和界面,幫助用戶查詢和轉(zhuǎn)換XML數(shù)據(jù);Tableau[15]是目前市面上流行的可視化數(shù)據(jù)分析軟件代表,其支持多種數(shù)據(jù)源的接入,提供可視化的交互界面供用戶完成數(shù)據(jù)連接、篩選和調(diào)整等底層操作,并提供完善的數(shù)據(jù)可視化支持.

        基于數(shù)據(jù)源的VQS系統(tǒng)不能屏蔽底層數(shù)據(jù)模式的細(xì)節(jié).以Tableau軟件為例,使用者在操作關(guān)系型數(shù)據(jù)庫構(gòu)建數(shù)據(jù)查詢時(shí),需要理解每張數(shù)據(jù)庫表和每個(gè)數(shù)據(jù)字段的含義以及表連接的連接字段和不同連接類型的具體語義,故 Tableau軟件的表達(dá)能力和可視化能力雖然強(qiáng)大,但要求使用者具備一定的專業(yè)知識(shí),對(duì)于沒有計(jì)算機(jī)基礎(chǔ)知識(shí)的終端用戶不具有可用性.除此之外,直接基于數(shù)據(jù)源的 VQS系統(tǒng)通常只能面向單個(gè)數(shù)據(jù)源,在存在多個(gè)異構(gòu)數(shù)據(jù)源系統(tǒng)的應(yīng)用場(chǎng)景中難以運(yùn)作.

        1.2 基于本體的VQS系統(tǒng)

        基于本體的VQS系統(tǒng)幫助用戶構(gòu)造本體查詢語句SPARQL,本體模型的圖結(jié)構(gòu)、語義表達(dá)能力和規(guī)范性使得基于本體的VQS系統(tǒng)相對(duì)于傳統(tǒng)的基于數(shù)據(jù)源的VQS系統(tǒng)更適合終端用戶使用,其典型代表工作如下.

        · SEWASIE[16]使用集成的本體作為多個(gè)異構(gòu)數(shù)據(jù)源的全局視圖并提供統(tǒng)一的數(shù)據(jù)訪問功能,其查詢界面通過本體中更豐富的詞匯庫幫助用戶理解數(shù)據(jù)源,并以迭代式的查詢構(gòu)造和查詢確認(rèn)過程幫助用戶更好地完成概念和屬性的組裝.

        · DEMO[17]是面向 OWL和 SPARQL的圖形化查詢界面,其使用流程是:首先,用戶選擇查詢中所涉及的概念;然后,系統(tǒng)搜尋并列舉概念之間的備選關(guān)系,由用戶從中選擇;最后,用戶設(shè)置屬性的篩選條件.

        · OptiqueVQS[7]是最新的基于本體的VQS系統(tǒng),該系統(tǒng)面向終端用戶,建立在OBDA系統(tǒng) Optique[6]上,結(jié)合了分面搜索和導(dǎo)航查詢2項(xiàng)網(wǎng)頁界面特性,分3個(gè)窗口分別展示概念列表、屬性列表和查詢構(gòu)造圖示.OptiqueVQS的使用流程是:首先,用戶選擇核心概念;然后,從核心概念出發(fā),順概念之間的關(guān)系擴(kuò)展其他所需概念,對(duì)于每個(gè)概念,可在屬性列表中對(duì)屬性進(jìn)行輸出選擇或條件設(shè)置.如圖3是OptiqueVQS的查詢構(gòu)造界面.

        Fig.3 Query construction interface of OptiqueVQS圖3 OptiqueVQS查詢構(gòu)造界面

        現(xiàn)有的基于本體的VQS系統(tǒng)的共性問題在于,數(shù)據(jù)庫到本體映射不能很好地屏蔽數(shù)據(jù)庫的底層細(xì)節(jié).現(xiàn)有工作數(shù)據(jù)庫模式到本體模型的映射主要分為兩種方法.

        1.根據(jù)數(shù)據(jù)庫模式進(jìn)行直接映射(direct mapping).

        將數(shù)據(jù)庫中表、字段、外鍵關(guān)系等元素映射為本體中的概念、屬性和關(guān)系,該過程稱為本體模型的bootstrapping過程.這種方式因本體模型與數(shù)據(jù)庫模式基本同構(gòu),向終端用戶暴露了過多數(shù)據(jù)庫設(shè)計(jì)的技術(shù)細(xì)節(jié),增加了用戶理解的難度,降低了系統(tǒng)的可用性.如圖4所示,以“餐飲前臺(tái)信息管理”領(lǐng)域?yàn)槔?按終端用戶的習(xí)慣,從業(yè)務(wù)知識(shí)的角度來理解,“店鋪品牌”“營(yíng)業(yè)額”和“客容量”都是描述概念“店鋪”的屬性,但在實(shí)際的數(shù)據(jù)庫系統(tǒng)中,“品牌名稱”存儲(chǔ)于概念“品牌”“營(yíng)業(yè)額”來源于對(duì)概念“訂單”的屬性“實(shí)收金額”的統(tǒng)計(jì),“客容量”來源于對(duì)概念“桌臺(tái)”的屬性“座位數(shù)”的統(tǒng)計(jì),三者均不直接從屬于概念“店鋪”中.這是由于數(shù)據(jù)庫設(shè)計(jì)需要考慮數(shù)據(jù)存儲(chǔ)和操作的性能,例如,為了避免冗余存儲(chǔ)和操作異常而需要使數(shù)據(jù)庫模式滿足一些規(guī)范約束(如 3NF),而一旦施加了這些約束,往往導(dǎo)致概念上緊密相關(guān)的字段分屬不同表,一方面,表的數(shù)量增加加大了理解的難度;另一方面,也使終端用戶很難從業(yè)務(wù)知識(shí)的角度出發(fā)找到自己關(guān)心的字段,進(jìn)而造成查詢構(gòu)造難度增加.

        Fig.4 Example of the difference between the data conceptual model of the business perspective and the actual data schema of the database圖4 業(yè)務(wù)視角的數(shù)據(jù)概念模型與數(shù)據(jù)庫實(shí)際數(shù)據(jù)模式的差異示例

        2.基于R2RML[21]語言進(jìn)行映射.

        該方法利用R2RML語言對(duì)數(shù)據(jù)庫模式到本體的映射方式進(jìn)行描述,能夠?qū)崿F(xiàn)自定義映射.R2RML是W3C提出的關(guān)系型數(shù)據(jù)庫到本體模型的映射語言,它除了支持簡(jiǎn)單的字段元素映射外,還支持將SQL查詢的結(jié)果映射到本體模型.該方法往往作為 bootstrapping過程的補(bǔ)充,系統(tǒng)利用直接映射方法生成基本的映射,然后利用R2RML語言進(jìn)行人工優(yōu)化.利用該語言對(duì)映射進(jìn)行定義,雖然能夠?qū)?shù)據(jù)庫設(shè)計(jì)細(xì)節(jié)進(jìn)行屏蔽,但實(shí)際上是將問題拋給用戶處理,系統(tǒng)本身沒有解決映射的問題.一方面,該方法的映射規(guī)則需要預(yù)先編寫,特別是復(fù)雜的SQL查詢映射,必須由專業(yè)的IT人員編寫;另一方面,R2RML語言編寫的映射規(guī)則只針對(duì)特定關(guān)系數(shù)據(jù)庫有效,不能在不同的數(shù)據(jù)庫之間通用.采用 R2RML語言并不能自動(dòng)地解決數(shù)據(jù)庫到本體模式映射,并屏蔽數(shù)據(jù)庫存儲(chǔ)細(xì)節(jié)的問題,它仍然需要大量人工參與.

        因此,在構(gòu)造本體模型映射的過程中,自動(dòng)地屏蔽數(shù)據(jù)庫設(shè)計(jì)的技術(shù)細(xì)節(jié)、還原終端用戶自然理解的模型視圖是十分必要的,解決該問題需要深入分析用戶理解與數(shù)據(jù)存儲(chǔ)之間的差異本質(zhì).

        2 本文方法框架

        2.1 方法思路

        熟悉業(yè)務(wù)的終端用戶通常從業(yè)務(wù)邏輯的視角理解數(shù)據(jù).圖4給出了一個(gè)業(yè)務(wù)邏輯視角看待數(shù)據(jù)的概念模型與與數(shù)據(jù)庫實(shí)際存儲(chǔ)的數(shù)據(jù)模式之間存在差異的例子.其本質(zhì)在于,概念模型中,從屬于某個(gè)概念的另一個(gè)概念(或?qū)傩?在數(shù)據(jù)庫的實(shí)際存儲(chǔ)中并不一定被直接存儲(chǔ),相關(guān)信息分散存儲(chǔ)在多個(gè)表或字段中.而這些被分散在多個(gè)表中屬于同一概念的信息,可以通過表之間直接或間接的外鍵關(guān)系來連接.如圖5所示,表A和表B的主鍵分別為屬性a,d,表A中屬性c是表B的外鍵,此處以直接的外鍵關(guān)系為例,間接的外鍵關(guān)系可同理推導(dǎo).在此關(guān)系中,存在逆外鍵方向和順外鍵方向的邏輯從屬關(guān)系,本文中分別稱為屬性的“向內(nèi)共享”和“向外共享”關(guān)系.

        (1) 向內(nèi)共享:若將數(shù)據(jù)庫范式要求由第三范式降為第二范式,則表B中屬性可以置于表A,這意味著表B中的屬性e可以在邏輯上對(duì)表A所對(duì)應(yīng)的概念進(jìn)行描述.“向內(nèi)共享”所描述的就是屬性e逆外鍵方向邏輯從屬于表A的這種關(guān)系,如圖4中“品牌名稱”與“店鋪”.

        (2) 向外共享:表A與表B因?yàn)橥怄I關(guān)系形成多對(duì)一關(guān)聯(lián),前者可按后者(即外鍵c)進(jìn)行分組,若表A的屬性b的數(shù)據(jù)類型為數(shù)值型,則表A按外鍵c分組并對(duì)屬性b施加聚合函數(shù)(總計(jì)、平均值、最大值、最小值等)后屬性b可以在邏輯上對(duì)表B所對(duì)應(yīng)的概念進(jìn)行描述.“向外共享”所描述的就是聚合后的屬性b順外鍵方向邏輯從屬于表B的這種關(guān)系,這也是分組統(tǒng)計(jì)需求的基本結(jié)構(gòu),如圖4中“實(shí)收金額”與“店鋪”.

        為了更好地幫助用戶構(gòu)造查詢,我們應(yīng)該盡量屏蔽屬性與概念之間的物理從屬關(guān)系,還原符合用戶自然理解的邏輯從屬關(guān)系,同時(shí)對(duì)屬性的聚合和分組提供支持.利用本體的推理能力,我們可以完成此項(xiàng)任務(wù):設(shè)置相應(yīng)的本體推理規(guī)則,根據(jù)實(shí)際存在的物理從屬關(guān)系和概念之間的外鍵關(guān)系推導(dǎo)出屬性與概念之間的“向外共享”和“向內(nèi)共享”關(guān)系.而這樣的推理規(guī)則必須脫離具體實(shí)例,建立在與特定領(lǐng)域無關(guān)的抽象本體模型之上,從而具備通用性,故本文方法充分利用了本體的層次抽象能力,首先設(shè)計(jì)了與特定領(lǐng)域無關(guān)的抽象層本體模型——查詢?cè)P?然后,基于該元模型設(shè)置用于表達(dá)“向外共享”和“向內(nèi)共享”關(guān)系的面向查詢的本體推理規(guī)則.本文首先對(duì)數(shù)據(jù)庫直接映射生成的本體模型進(jìn)行分析,通過繼承關(guān)系將本體模型抽象到查詢?cè)P蛯哟?抽象方式是,讓本體模型中的類繼承查詢?cè)P椭械摹安樵儗?duì)象”、本體模型中的屬性繼承查詢?cè)P椭械摹安樵儗傩浴?通過這樣的過程,當(dāng)用戶在本體模型上進(jìn)行查詢操作的時(shí)候,用戶查詢的本體模型中的屬性將會(huì)被算法看作為“查詢屬性”,用戶查詢的本體模型中的類會(huì)被看作為“查詢對(duì)象”,從而將用戶查詢也抽象到查詢?cè)P蛯哟?抽象到查詢?cè)P秃?定義在查詢?cè)P蜕系耐评硪?guī)則就能應(yīng)用到本體模型中.本文系統(tǒng)基于查詢?cè)P秃屯评硪?guī)則實(shí)現(xiàn)可視化查詢算法,在提升可用性和表達(dá)能力的同時(shí),還有以下幾點(diǎn)主要優(yōu)勢(shì).

        (1) 避免數(shù)據(jù)轉(zhuǎn)換帶來的信息損失.在查詢?cè)P蛯哟沃皇沁M(jìn)行本體推理和查詢語句構(gòu)造,不會(huì)進(jìn)行數(shù)據(jù)轉(zhuǎn)換,最終的查詢還是在本體模型對(duì)應(yīng)的底層數(shù)據(jù)庫中進(jìn)行.

        (2) 本體模型直接接入,提高靈活性.系統(tǒng)通過將本體模型抽象到查詢?cè)P蛠磉M(jìn)一步屏蔽數(shù)據(jù)庫細(xì)節(jié),該過程不需要對(duì)映射算法進(jìn)行修改.因此,系統(tǒng)的數(shù)據(jù)通過本體模型直接接入,數(shù)據(jù)庫到本體模型的映射可以使用任意算法工具實(shí)現(xiàn),可以支持多個(gè)數(shù)據(jù)庫到同一本體模型的映射.

        (3) 本體模型只需一次接入,查詢操作無額外成本.本體模型接入到系統(tǒng)后,系統(tǒng)會(huì)將其抽象到查詢?cè)P?并利用推理規(guī)則進(jìn)行查詢指標(biāo)推理,接入完成后,用戶的查詢操作不會(huì)再次進(jìn)行抽象和推理,不會(huì)帶來額外操作成本和計(jì)算成本.

        Fig.5 Foreign key relationship example圖5 外鍵關(guān)聯(lián)示例

        2.2 方法框架

        本文方法的框架如圖6所示,基于本體的VQS系統(tǒng)以及查詢構(gòu)造算法建立在查詢?cè)P秃兔嫦虿樵兊耐评硪?guī)則之上,其中,VQS利用推理規(guī)則所推導(dǎo)的導(dǎo)出關(guān)聯(lián)關(guān)系可幫助用戶屏蔽數(shù)據(jù)存儲(chǔ)細(xì)節(jié)、方便用戶完成查詢構(gòu)造,并生成用戶輸入,然后由查詢構(gòu)造算法根據(jù)用戶輸入還原原始的查詢結(jié)構(gòu)并生成相應(yīng)的 SPARQL查詢語句.對(duì)于任意的領(lǐng)域相關(guān)的本體模型,只要以繼承查詢?cè)P偷姆绞浇尤胂到y(tǒng),即可支持面向查詢的本體推理規(guī)則的運(yùn)行、VQS系統(tǒng)的操作和本體查詢構(gòu)造算法的執(zhí)行.

        Fig.6 Method framework of this paper圖6 本文方法框架

        3 詳細(xì)實(shí)現(xiàn)

        3.1 查詢?cè)P?/h3>

        為了脫離特定領(lǐng)域和具體實(shí)例來設(shè)置通用的推理規(guī)則,并對(duì)屬性的聚合提供模型上的支持,本文方法首先設(shè)計(jì)了僅與查詢行為相關(guān)、與特定領(lǐng)域無關(guān)的查詢?cè)P?該元模型仍用OWL進(jìn)行表達(dá),如圖7所示.其中,“查詢屬性”概念用于描述用戶所關(guān)心的數(shù)據(jù)庫表項(xiàng),如“品牌名稱”;“查詢屬性”所屬的數(shù)據(jù)庫表則抽象為“查詢對(duì)象”概念,如“品牌”.“查詢屬性”與“查詢對(duì)象”之間除了物理的“從屬”關(guān)聯(lián),也有通過推理規(guī)則表達(dá)的邏輯上的“向內(nèi)共享”關(guān)聯(lián);對(duì)于可聚合的一類“查詢屬性”,模型中使用“查詢指標(biāo)”概念對(duì)其統(tǒng)計(jì)值進(jìn)行表達(dá),如“營(yíng)業(yè)額”(“實(shí)收金額”的統(tǒng)計(jì)值).“查詢指標(biāo)”與“查詢對(duì)象”之間也有通過推理規(guī)則表達(dá)的邏輯上的“向外共享”關(guān)聯(lián).

        Fig.7 Query meta model diagram圖7 查詢?cè)P褪疽鈭D

        關(guān)于查詢?cè)P椭?“向內(nèi)共享”“向外共享”關(guān)系在數(shù)據(jù)庫中的表達(dá),主要通過兩個(gè)途徑獲取:第 1種途徑是通過面向查詢的本體推理規(guī)則計(jì)算所有可能的“向內(nèi)共享”“向外共享”關(guān)系,由用戶選擇所需的關(guān)系進(jìn)行標(biāo)注和命名,這種方式優(yōu)點(diǎn)是無需額外信息,只需要提供原始數(shù)據(jù)庫模式就能通過人工輔助的方式建立映射,缺點(diǎn)是用戶需要對(duì)數(shù)據(jù)庫模式和查詢需求有一定的了解;第 2種途徑是在已經(jīng)擁有一些已知的映射關(guān)系后,對(duì)于同一領(lǐng)域的新數(shù)據(jù)庫,使用模式匹配方法自動(dòng)生成映射關(guān)系,這種方式的優(yōu)點(diǎn)是高效、無需用戶操作、對(duì)用戶無要求,缺點(diǎn)是自動(dòng)生成的映射關(guān)系可能會(huì)有誤,需要手動(dòng)校正.

        3.2 面向查詢的本體推理規(guī)則

        基于查詢?cè)P偷谋倔w推理規(guī)則以查詢?cè)P椭械某橄蟾拍?、抽象關(guān)系和抽象屬性作為基本元素來進(jìn)行構(gòu)建,運(yùn)行在查詢?cè)P椭?主要用于表達(dá)“向外共享”和“向內(nèi)共享”所描述的并不直接存在于原始本體模型中的導(dǎo)出關(guān)系.這些本體推理規(guī)則可以幫助VQS系統(tǒng)向終端用戶適當(dāng)屏蔽數(shù)據(jù)庫實(shí)際存儲(chǔ)模式,還原終端用戶自然理解的模型視圖,并優(yōu)化終端用戶的查詢構(gòu)造流程.

        以“向外共享”關(guān)系的運(yùn)用為例,其對(duì)應(yīng)的面向查詢的本體推理規(guī)則的內(nèi)容見表1,通過該推理規(guī)則可以在“查詢指標(biāo)”和“查詢對(duì)象”之間建立“向外共享”關(guān)聯(lián).

        Table 1 Example of query-oriented ontology reasoning rules:Out share表1 面向查詢的本體推理規(guī)則示例:向外共享

        如圖8所示,對(duì)于用戶需求“查詢各品牌的總營(yíng)業(yè)額”,按照現(xiàn)有工作的構(gòu)造方案,用戶首先必須了解營(yíng)業(yè)額的計(jì)算來源于對(duì)概念“訂單”的屬性“實(shí)收金額”的聚合;其次,必須依照數(shù)據(jù)庫存儲(chǔ)模式構(gòu)造出用戶需求中所涉及的概念(“訂單”“店鋪”“品牌”)、概念間的連接關(guān)系、聚合屬性(“實(shí)收金額”)以及分組屬性(“品牌名稱”).這套操作要求使用者熟悉數(shù)據(jù)庫實(shí)際的存儲(chǔ)模式,且具備一定的關(guān)系代數(shù)理論知識(shí),對(duì)于沒有計(jì)算機(jī)基礎(chǔ)的終端用戶來說難度較大,系統(tǒng)可用性差.而按照本文方法,系統(tǒng)首先發(fā)現(xiàn)查詢指標(biāo)“營(yíng)業(yè)額”來自查詢屬性“實(shí)收金額”,查詢中,另一個(gè)本體中的類“品牌”是一個(gè)查詢對(duì)象;接著,系統(tǒng)通過查詢?cè)P蛯?duì)“向外共享”關(guān)系的表達(dá),在查詢指標(biāo)“營(yíng)業(yè)額”和查詢對(duì)象“品牌”之間建立了導(dǎo)出關(guān)系,用戶可以直接從查詢對(duì)象“品牌”出發(fā)選擇查詢指標(biāo)“營(yíng)業(yè)額”完成查詢構(gòu)造,而實(shí)際完整的本體查詢結(jié)構(gòu)將由系統(tǒng)依據(jù)對(duì)應(yīng)的面向查詢的推理規(guī)則反向推導(dǎo)而構(gòu)造得到.本文方案構(gòu)造流程清晰、構(gòu)造內(nèi)容簡(jiǎn)潔且符合終端用戶的自然理解,系統(tǒng)可用性強(qiáng).

        Fig.8 Example of the application of query-oriented ontology reasoning rules圖8 面向查詢的本體推理規(guī)則的運(yùn)用示例

        3.3 用戶可視化交互設(shè)計(jì)

        本文方法中,終端用戶與系統(tǒng)的交互界面如圖9所示,界面中主要包含查詢指標(biāo)樹(左 1欄)、查詢對(duì)象圖(左 2欄)、查詢屬性表(右2欄)、查詢?cè)乇?右 1欄)4個(gè)子窗口.其中,查詢指標(biāo)樹窗口負(fù)責(zé)展示“查詢指標(biāo)”;查詢對(duì)象圖窗口負(fù)責(zé)以圖形式展示“查詢對(duì)象”;查詢屬性表窗口負(fù)責(zé)展示與用戶所點(diǎn)選的“查詢對(duì)象”相關(guān)的“查詢屬性”;查詢?cè)乇泶翱谪?fù)責(zé)記錄用戶所選擇的元素,對(duì)于用戶所選的“查詢指標(biāo)”可點(diǎn)擊選擇指標(biāo)的聚合方式.

        Fig.9 Interactive interface of data query system圖9 數(shù)據(jù)查詢系統(tǒng)的交互界面

        在該界面中,用戶可以通過選擇查詢指標(biāo)和查詢對(duì)象進(jìn)行配合實(shí)現(xiàn)屬性的聚合,選擇查詢屬性實(shí)現(xiàn)屬性的輸出、篩選和分組,并最終完成用戶輸入.系統(tǒng)利用面向查詢的本體推理規(guī)則所推導(dǎo)的導(dǎo)出關(guān)系幫助用戶屏蔽實(shí)際的數(shù)據(jù)存儲(chǔ)模式并優(yōu)化查詢構(gòu)造流程,使得終端用戶可以操作少量元素來表達(dá)包括分組統(tǒng)計(jì)查詢?cè)趦?nèi)的較為復(fù)雜的查詢結(jié)構(gòu),系統(tǒng)可用性和表達(dá)能力較強(qiáng).最終的用戶輸入user_input整合為五元組(mname,ind,gprop,oprop,fcond)保存于系統(tǒng),其中,mname為所查詢模型名稱,ind為用戶所選指標(biāo)集合,gprop為用戶所選分組屬性集合,oprop為用戶所選輸出屬性集合,fcond為用戶所選篩選條件集合.隨后,系統(tǒng)運(yùn)行本體查詢構(gòu)造算法完成本體查詢語句SPARQL的構(gòu)造.

        3.4 本體查詢SPARQL語句構(gòu)造算法

        本體查詢構(gòu)造算法負(fù)責(zé)將用戶輸入轉(zhuǎn)換為 SPARQL語句,SPARQL語句中最核心的組成成分為圖模式WHERE部分,為了構(gòu)造圖模式,我們需要確定查詢所涉及的所有“查詢對(duì)象”以及它們之間的“外鍵關(guān)聯(lián)”關(guān)系,本體路徑搜索子算法將用于處理此任務(wù).

        本體路徑搜索子算法以用戶輸入user_input和本體模型對(duì)象ont_mgr為輸入,輸出為查詢所涉及的所有“查詢對(duì)象”之間的“外鍵關(guān)聯(lián)”關(guān)系的列表,即連接這些“查詢對(duì)象”的路徑.算法的思路是:從“查詢對(duì)象”有向圖中提取所有入度為 0的“查詢對(duì)象”組成起始對(duì)象集合,接下來遍歷起始對(duì)象集合,對(duì)每個(gè)“查詢對(duì)象”都以之為起點(diǎn)開始以廣度優(yōu)先搜索順序遍歷“查詢對(duì)象”有向圖,對(duì)于遍歷過程中所訪問到的任意“查詢對(duì)象”,檢查其是否與用戶輸入中任意“查詢屬性”具有“從屬”關(guān)系,若有,則將該次遍歷的“外鍵關(guān)聯(lián)”關(guān)系加入結(jié)果列表.本體路徑搜索子算法的偽代碼如下:

        算法1.本體路徑搜索子算法(searchOntPath).

        輸入:用戶輸入user_input,本體模型對(duì)象ont_mgr.

        輸出:“外鍵關(guān)聯(lián)”關(guān)系列表path_list.

        SPARQL語句中最核心的組成成分為圖模式WHERE部分,該部分描述了查詢所涉及的概念、概念之間的關(guān)系、概念的屬性及對(duì)屬性的篩選,需要最先進(jìn)行處理,圖模式構(gòu)造子算法將用于完成圖模式部分的構(gòu)造任務(wù).

        圖模式構(gòu)造子算法以用戶輸入user_input、本體模型對(duì)象ont_mgr和“外鍵關(guān)聯(lián)”關(guān)系列表path_list為輸入,輸出為本體查詢的圖模式部分where,并將圖模式中使用的變量id寫回用戶輸入user_input的輸出屬性和分組屬性中,用于構(gòu)造SPARQL語句中的其他部分.算法的思路是:首先遍歷“外鍵關(guān)聯(lián)”關(guān)系列表path_list,為遍歷到的每個(gè)“外鍵關(guān)聯(lián)”關(guān)系和“查詢對(duì)象”類都生成相應(yīng)圖模式三元組,并記錄所有遍歷到的“查詢對(duì)象”組成列表;然后再遍歷該“查詢對(duì)象”列表,檢查用戶輸入中從屬于各“查詢對(duì)象”的“查詢屬性”,針對(duì)這些“查詢屬性”生成相應(yīng)圖模式三元組,并判斷是否需要添加篩選條件;最后返回本體查詢中的圖模式部分字符串.每個(gè)“查詢對(duì)象”和“查詢屬性”都將生成唯一變量id.圖模式構(gòu)造子算法的偽代碼如下:

        算法2.圖模式構(gòu)造子算法(genSparqlWhere).

        輸入:用戶輸入user_input,本體模型對(duì)象ont_mgr,“外鍵關(guān)聯(lián)”關(guān)系列表path_list.

        輸出:圖模式where.

        完整的本體查詢構(gòu)造過程由本體查詢構(gòu)造算法負(fù)責(zé).本體查詢構(gòu)造算法以用戶輸入user_input和本體模型對(duì)象ont_mgr為輸入,輸出為SPARQL查詢語句字符串.

        算法的思路是:首先,調(diào)用本體路徑搜索子算法searchOntPath獲得構(gòu)造查詢所需的“外鍵關(guān)聯(lián)”關(guān)系列表path_list;然后調(diào)用圖模式構(gòu)造子算法genSparqlWhere生成本體查詢語句中最核心的圖模式部分;接下來遍歷用戶輸入中的“查詢指標(biāo)”、“輸出屬性”和“分組屬性”來生成SPARQL語句中的其余部分;最后,將SPARQL各部分組裝為整體字符串返回.本體查詢構(gòu)造算法的偽代碼如下:

        算法3.本體查詢構(gòu)造算法(genSparql).

        輸入:用戶輸入user_input,本體模型管理器ont_mgr.

        輸出:SPARQL查詢語句sparql.

        4 案例展示

        本節(jié)以“北京宴品牌2016年各店鋪各季度的總營(yíng)業(yè)額”查詢需求為例,展示本文VQS系統(tǒng)的使用操作.

        終端用戶(查詢用戶)首先需要選擇所查詢領(lǐng)域的本體模型,如在本例中,用戶選擇“餐飲前臺(tái)信息管理”模型,選擇了對(duì)應(yīng)的領(lǐng)域模型后,用戶就能開始構(gòu)造查詢模式.

        終端用戶點(diǎn)擊進(jìn)入“餐飲前臺(tái)信息管理”領(lǐng)域的查詢構(gòu)造界面,如圖10所示,用戶按照需求點(diǎn)選指標(biāo)“營(yíng)業(yè)額”、點(diǎn)選對(duì)象“店鋪”,并設(shè)置按屬性“訂單開臺(tái)時(shí)間(季度)”分組.分組構(gòu)造結(jié)束后是查詢構(gòu)造階段,用戶按照需求對(duì)屬性“訂單開臺(tái)時(shí)間(年份)”設(shè)置篩選條件“等于:2016”,對(duì)屬性“品牌名稱”設(shè)置篩選條件按“是:北京宴”.至此完成查詢構(gòu)造,然后點(diǎn)擊“確認(rèn)”提交查詢.

        Fig.10 Data access:Design group圖10 數(shù)據(jù)訪問:分組構(gòu)造

        用戶完成操作后,系統(tǒng)將會(huì)運(yùn)行完整的數(shù)據(jù)訪問流程獲得查詢結(jié)果,并進(jìn)入數(shù)據(jù)展示界面,包含查詢結(jié)果、SPARQL查詢、SQL查詢和數(shù)據(jù)可視化這4部分,具體如圖11、圖12所示.

        Fig.11 Example of the contructed SPARQL and SQL queries圖11 SPARQL與SQL查詢語句構(gòu)造示例

        Fig.12 Data display:Sector and histogram圖12 數(shù)據(jù)展示:扇形圖和柱狀圖

        5 實(shí)驗(yàn)驗(yàn)證

        5.1 實(shí)驗(yàn)設(shè)定

        本節(jié)對(duì)本文方法進(jìn)行評(píng)估的方法為實(shí)驗(yàn)測(cè)試,主要評(píng)估指標(biāo)為方法的可用性和表達(dá)能力.由于用戶對(duì)數(shù)據(jù)庫和計(jì)算機(jī)系統(tǒng)的了解程度非常難以量化,評(píng)估系統(tǒng)易用性將結(jié)合可用性和表達(dá)能力進(jìn)行.在表達(dá)能力相同的情況下,可用性越高(操作越簡(jiǎn)單),則易用性越強(qiáng).實(shí)驗(yàn)對(duì)比對(duì)象為目前最優(yōu)秀的基于本體的可視化查詢系統(tǒng)OptiqueVQS[7].實(shí)驗(yàn)所使用的實(shí)驗(yàn)材料來自于“餐飲前臺(tái)信息管理”領(lǐng)域中,一款主流餐飲前臺(tái)管理系統(tǒng)——“餐行健”系統(tǒng)的后臺(tái)數(shù)據(jù)報(bào)表管理平臺(tái),本節(jié)從其中隨機(jī)選取了 40項(xiàng)數(shù)據(jù)查詢實(shí)例,分別按照本文方法及OptiqueVQS方法完成本體查詢構(gòu)造任務(wù).為了保證用戶對(duì)數(shù)據(jù)庫以及計(jì)算機(jī)專業(yè)知識(shí)了解程度相同,實(shí)驗(yàn)中,兩種VQS系統(tǒng)由同一用戶操作.在實(shí)驗(yàn)開始之前,讓用戶充分熟悉系統(tǒng)的界面和操作,避免UI設(shè)計(jì)影響用戶操作,用戶在進(jìn)行查詢時(shí),允許用戶多次進(jìn)行同一查詢實(shí)例的查詢,我們記錄其操作最簡(jiǎn)單的一次操作.

        5.2 實(shí)驗(yàn)指標(biāo)

        實(shí)驗(yàn)的主要評(píng)估指標(biāo)是可用性和表達(dá)能力.

        · 方法的可用性是指通過系統(tǒng)完成查詢的操作復(fù)雜程度.

        VQS系統(tǒng)的操作主要有點(diǎn)擊選擇(點(diǎn)選)、翻頁查找(翻頁)以及輸入信息(輸入).通常情況下,認(rèn)為輸入操作最為復(fù)雜,翻頁操作次之,點(diǎn)選操作比較簡(jiǎn)單.同時(shí),對(duì)于 VQS系統(tǒng)來說,可視化操作意味著鼠標(biāo)操作是主要操作方式,因此點(diǎn)選操作占絕大部分,翻頁操作較少,而輸入操作一般出現(xiàn)在特殊查詢條件的輸入.不同系統(tǒng)操作次數(shù)一般相同,以“北京宴品牌2016年各店鋪各季度的總營(yíng)業(yè)額”為例,本文方法完成查詢需要15次點(diǎn)選操作和2次輸入操作,沒有翻頁操作.因此在考慮評(píng)估操作復(fù)雜程度時(shí),我們主要是比較點(diǎn)選操作的數(shù)量.但為了區(qū)分不同操作的復(fù)雜性不同,在設(shè)置操作積分時(shí),我們?yōu)辄c(diǎn)選設(shè)置積分為1分;翻頁操作為2分,因?yàn)榉囗撔枰啻吸c(diǎn)擊,但為了排除列表順序?qū)Ψe分的影響,我們按實(shí)驗(yàn)過程中統(tǒng)計(jì)的平均翻頁次數(shù) 2次計(jì)算翻頁操作的積分;而輸入操作為 3分,這是因?yàn)檩斎氩僮鞅绕渌僮鲝?fù)雜,但數(shù)量較少且不同系統(tǒng)差異較小,不應(yīng)該在總積分中占較大比重.對(duì)于同樣的查詢需求,可用性高的VQS系統(tǒng)用戶操作較為簡(jiǎn)單,反之較為復(fù)雜.

        · 方法的表達(dá)能力是指通過系統(tǒng)可視化操作構(gòu)造的查詢語句的能力.

        可視化查詢方法相對(duì)于語句查詢方法在簡(jiǎn)化用戶查詢操作難度的同時(shí),往往會(huì)帶來表達(dá)能力的損失,即部分查詢語句無法通過可視化操作的方式構(gòu)造.不同的 VQS系統(tǒng)一般具有不同的表達(dá)能力,表達(dá)能力高的 VQS系統(tǒng)能構(gòu)造出更多復(fù)雜查詢語句,能更好地滿足用戶的查詢需求.

        兩種指標(biāo)的量化計(jì)算步驟如下.

        1.數(shù)據(jù)查詢實(shí)例數(shù)量N=40.

        2.對(duì)于第i條查詢實(shí)例,在查詢構(gòu)造所需的操作中點(diǎn)選次數(shù)記為Ci、翻頁次數(shù)記為Pi、輸入次數(shù)記為Ii.給點(diǎn)選、翻頁和輸入操作分別設(shè)置Mc=1,Mp=2,MI=3的操作積分,積分高的操作更為復(fù)雜.再根據(jù)所選系統(tǒng)能否正確構(gòu)造出查詢語句來設(shè)置正確性標(biāo)志Ai:

        3.若VQS系統(tǒng)不能正確構(gòu)造查詢語句,則假設(shè)用戶最后可以通過輸入正確查詢語句的方式更正查詢,實(shí)驗(yàn)中首先構(gòu)造出最接近查詢目標(biāo)的查詢,然后增加一次更正操作(輸入操作).

        4.對(duì)于第i條查詢實(shí)例,方案的操作積分Qi的計(jì)算公式為

        其含義為:根據(jù)操作次數(shù)計(jì)算出每種操作的總積分,再將點(diǎn)擊、翻頁、輸入這 3種操作的積分求和作為最終操作積分.

        5.對(duì)于第i條查詢實(shí)例,方案的表達(dá)積分Ei的計(jì)算公式為

        其含義為:除更正操作外,其他操作總分占操作積分的比例.因此,如果可以正確構(gòu)造查詢語句,表達(dá)積分為1;不能正確構(gòu)造查詢語句,則積分小于 1.由于Qi與要構(gòu)造的查詢的復(fù)雜程度基本正相關(guān),這保證了在無法正確構(gòu)造的情況下,要構(gòu)造的查詢?cè)胶?jiǎn)單,積分越接近于0,即懲罰無法正確構(gòu)造的簡(jiǎn)答查詢.

        6.記兩種VQS系統(tǒng)所有查詢實(shí)例中操作積分最高為Qmax.

        7.方案可用性的計(jì)算公式為

        8.方案表達(dá)能力的計(jì)算公式為

        5.3 實(shí)驗(yàn)結(jié)果

        實(shí)驗(yàn)結(jié)果中,兩種評(píng)估指標(biāo)如圖13所示.

        Fig.13 Method evaluation results of this paper圖13 本文方法評(píng)估結(jié)果

        對(duì)于實(shí)驗(yàn)結(jié)果的分析如下.

        (1) 本文方法的可用性量化值高于OptiqueVQS方法,說明終端用戶利用本文方法進(jìn)行查詢構(gòu)造所需要的操作復(fù)雜度更低.形成這樣的實(shí)驗(yàn)結(jié)果的原因在于:本文方法充分利用了本體模型的推理能力來優(yōu)化查詢構(gòu)造流程,用戶可以依賴由面向查詢的本體推理規(guī)則所推導(dǎo)出的導(dǎo)出關(guān)系來完成查詢構(gòu)造,減少了構(gòu)造查詢所需要確認(rèn)的模型元素,而實(shí)際的完整查詢結(jié)構(gòu)則由系統(tǒng)根據(jù)對(duì)應(yīng)的推理規(guī)則反向推導(dǎo)得到,用戶不需要了解數(shù)據(jù)庫系統(tǒng)的實(shí)際存儲(chǔ)模式.該結(jié)果驗(yàn)證了本文方法具有更強(qiáng)的可用性.

        (2) 本文方法的表達(dá)能力量化值高于OptiqueVQS方法,該差異主要來源于本文方法對(duì)終端用戶的分組統(tǒng)計(jì)需求進(jìn)行了支持,而OptiqueVQS方法未能對(duì)之進(jìn)行相應(yīng)支持.實(shí)驗(yàn)共40個(gè)查詢實(shí)例,其中4個(gè)查詢實(shí)例本文方法無法正確構(gòu)造,其原因在于這些查詢需要對(duì)多條查詢語句的結(jié)果進(jìn)行組合得到;12個(gè)查詢實(shí)例OptiqueVQS方法無法正確構(gòu)造,除前面提到的4個(gè)查詢實(shí)例外,還有8個(gè)查詢實(shí)例中涉及到了分組統(tǒng)計(jì),而OptiqueVQS無法可視化構(gòu)造分組查詢.該結(jié)果驗(yàn)證了本文方法具有更強(qiáng)的表達(dá)能力.

        6 結(jié) 論

        本文以幫助終端用戶構(gòu)造本體查詢語句 SPARQL為基本目標(biāo),首先調(diào)研了相關(guān)的研究工作,分析并總結(jié)了相關(guān)工作的主要內(nèi)容與不足之處,不足之處主要在于直接暴露數(shù)據(jù)庫實(shí)際存儲(chǔ)模式且不能支持分組統(tǒng)計(jì)需求;然后,針對(duì)終端用戶的真實(shí)數(shù)據(jù)訪問需求以及現(xiàn)有相關(guān)工作的不足,提出并實(shí)現(xiàn)了一種基于推理的終端用戶本體查詢構(gòu)造方法;最后,通過“餐飲前臺(tái)信息管理”領(lǐng)域的實(shí)際案例對(duì)本文方法進(jìn)行了驗(yàn)證.

        本文方法面向沒有計(jì)算機(jī)基礎(chǔ)的終端用戶,充分利用本體模型的語義表達(dá)能力和推理能力來優(yōu)化終端用戶的查詢構(gòu)造流程,幫助用戶脫離數(shù)據(jù)庫的實(shí)際存儲(chǔ)模式細(xì)節(jié);同時(shí),對(duì)終端用戶的分組統(tǒng)計(jì)需求提供了支持,填補(bǔ)了現(xiàn)有相關(guān)工作的不足,具備更強(qiáng)的可用性和表達(dá)能力.

        本文工作未來的一個(gè)研究方向是實(shí)現(xiàn)對(duì)復(fù)雜統(tǒng)計(jì)指標(biāo)的支持.在實(shí)際應(yīng)用場(chǎng)景中,終端用戶所關(guān)心的一些復(fù)雜統(tǒng)計(jì)指標(biāo)無法直接單次構(gòu)造得到,需要對(duì)多條查詢進(jìn)行組合,例如店鋪的“客均營(yíng)業(yè)額”指標(biāo)需要由店鋪的“營(yíng)業(yè)額”和“客流量”這兩項(xiàng)指標(biāo)聯(lián)合計(jì)算得到,而本文方法尚不支持對(duì)多條查詢進(jìn)行組合.故本文未來需要研究“多條查詢的組合和運(yùn)算”,首先,在模型上增加元素對(duì)其進(jìn)行表達(dá);然后,在系統(tǒng)中添加相應(yīng)功能,實(shí)現(xiàn)對(duì)單條查詢之間類似四則運(yùn)算的組合機(jī)制.

        猜你喜歡
        數(shù)據(jù)庫用戶模型
        一半模型
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
        數(shù)據(jù)庫
        關(guān)注用戶
        商用汽車(2016年11期)2016-12-19 01:20:16
        3D打印中的模型分割與打包
        關(guān)注用戶
        商用汽車(2016年6期)2016-06-29 09:18:54
        數(shù)據(jù)庫
        關(guān)注用戶
        商用汽車(2016年4期)2016-05-09 01:23:12
        數(shù)據(jù)庫
        无码久久精品国产亚洲av影片| 在线观看一区二区三区在线观看| 亚洲国产精品美女久久| 国产尤物av尤物在线观看| 97久久久久人妻精品专区 | 国产亚洲一区二区三区三州| av一区二区在线网站| 香港aa三级久久三级| 播放灌醉水嫩大学生国内精品| A阿V天堂免费无码专区| 日本二区三区在线免费| 小说区激情另类春色| 久久日本三级韩国三级| 国产亚洲精品国看不卡| 女女同女同一区二区三区| 人妻饥渴偷公乱中文字幕| 精品推荐国产精品店| 黄片在线观看大全免费视频| 国产女主播一区二区久久| 亚洲精品久久一区二区三区777| 久久精品片| 国产免费人成网站在线播放| 国产不卡在线视频观看| 高清破外女出血av毛片| 国产无套视频在线观看香蕉 | 乱人伦视频69| 亚洲av无吗国产精品| 97久久久久人妻精品区一| 亚洲免费观看在线视频| 色人阁第四色视频合集网| 国产成人一区二区三区乱| 亚洲精品一区二区| 欧美色图50p| 五月婷婷开心五月播五月| 国99久9在线 | 免费| 亚洲三级黄色| 精品在线亚洲一区二区三区| 少妇被又大又粗又爽毛片久久黑人 | 在线视频一区二区观看| 一区二区三区美女免费视频| 久久99精品国产99久久6尤物 |