秦天偉 吳俠 賈雯馨
【摘要】伴隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,教育對教學資源建設(shè)的重視,為網(wǎng)絡(luò)教學資源庫的建設(shè)提供了契機。
【關(guān)鍵詞】網(wǎng)絡(luò)教學資源
一、搜索性能增強策略研究
(一)使用索引提高搜索性能
索引包括聚集索引和非聚集索引。聚集索引適用于含有大量的不重復(fù)值的列、可用于范圍值計算的列、結(jié)果集較大的查詢及經(jīng)常使用連接或分組的列,非聚集索引中鍵值邏輯順序和物理順序沒有關(guān)系。將主鍵設(shè)置為聚集索引并非最佳方案,在教學資源庫中資源編號是標記列且設(shè)為主鍵,會把資源編號設(shè)置成聚集索引。在實際應(yīng)用中,并不會針對資源編號進行搜索,這就導(dǎo)致讓資源編號作為聚集索引是不正確的選擇。其次,資源編號都不相同,也不符合“很多數(shù)據(jù)不同值的列不應(yīng)該設(shè)置聚合索引”的規(guī)則。
(二)優(yōu)化SQL語句提高搜索性能
數(shù)據(jù)庫管理系統(tǒng)本身具備了一定的查詢分析優(yōu)化能力。在MSSQL中的“查詢分析優(yōu)化器”,會檢測查詢的各個組成部分,并判斷要求掃描的組成部分是不是有用,如果某個組成部分能夠作為一個掃描參數(shù),則稱該組成部分為可優(yōu)化,并使用索引對所需數(shù)據(jù)進行快速獲取。如果某個表達式不能滿足掃描參數(shù)的條件,就不能控制掃描范圍,“索引”對不符合掃描參數(shù)條件的表達式是起到作用的。因此,在SOL查詢語句的編寫過程,要注意where子句的優(yōu)化,讓“索引”的作用得以充分發(fā)揮,最大限度地提高性能。
在搜索過程對信息字段的獲取要遵循“需要多少,提取多少”的準則,不要采用“select*”。字段提取的多少對速度的影響。
(三)自定義分頁提高搜索性能
在數(shù)據(jù)的查詢過程中,若一次性將查詢結(jié)果讀出,當數(shù)據(jù)量較大時,勢必需要消耗較多的讀取時間,影響搜索結(jié)果的最終呈現(xiàn)速度。因此,在項目的實際開發(fā)中,可以應(yīng)用自定義分頁的形式提高搜索的性能,若將實現(xiàn)自定義分頁的過程使用存儲過程的方式來實現(xiàn),充分利用存儲過程的優(yōu)點,搜索性能將會得到更進一步的提高。
二、搜索實用性增強策略研究
(一)純粹模糊查詢實現(xiàn)搜索的不足分析
純粹模糊查詢實現(xiàn)搜索指在搜索的過程中,僅將用戶輸入的關(guān)鍵字在數(shù)據(jù)的查詢過程中,用數(shù)據(jù)庫本身提供的模糊查詢功能,與數(shù)據(jù)庫表中的相關(guān)字段值進行匹配,并將匹配正確的值提取至搜索結(jié)果。其操作簡單,但存在以下2點不足:
(1)相關(guān)詞無法匹配。相關(guān)詞無法匹配造成搜索結(jié)果的部分性,是純粹模糊查詢的最大不足之處。
(2)容錯性低。由于未對輸入的搜索關(guān)鍵詞進行分析,一旦關(guān)鍵詞中包含無用詞或錯別詞時,將導(dǎo)致搜索結(jié)果零數(shù)據(jù)返回。
通過上述分析,要解決相關(guān)詞無法匹配和容錯性低的兩大不足,需要對搜索實用性增強進行研究。
(二)增強相關(guān)詞匹配
相關(guān)詞的界定很難由程序自動判斷,因為相關(guān)詞有客觀構(gòu)成,也有主觀構(gòu)成。如:電腦與計算機、computer為客觀相關(guān)詞,而電腦與微軟、馮·諾依曼則為主觀相關(guān)詞??陀^相關(guān)詞為事實存在,為大多人所共知,而主觀相關(guān)詞需要在特定的條件下成立,人們通過“電腦可以聯(lián)系到軟件巨頭“微軟公司”或計算機科學家“馮·諾依曼”,需要一定的知識延展性,甚至“電腦”可以延伸到“計算器”,不同的用戶有不同的認識。因此,主觀相關(guān)詞具備一定的不確定性與抽象的特點。增強相關(guān)詞匹配可通過增加相關(guān)詞字段或建立相關(guān)詞庫的方法來實現(xiàn)。相關(guān)詞的匹配涉及匹配的深度和廣度,越全面、精準則其投入成本越高。
增加相關(guān)詞字段。指通過在數(shù)據(jù)表中增加“相關(guān)詞”字段,當用戶在添加信息時,輸入與此信息的相關(guān)詞。相關(guān)詞的界定及輸入由信息編輯者進行操作,采用增加相關(guān)詞字段的方式來提高相關(guān)詞匹配,其實現(xiàn)方式簡單,操作過程也容易,但相關(guān)詞的界定由編輯者確定,相關(guān)詞的個人主觀性較強。
建立相關(guān)詞庫。指通過建立相關(guān)詞庫表,當用戶輸入搜索關(guān)鍵詞時,系統(tǒng)自動在相關(guān)詞庫表中搜索其相關(guān)詞,一并歸入關(guān)鍵詞中進行處理,對搜索的實用性有很大的提高。當用戶輸入搜索關(guān)鍵詞時,系統(tǒng)將自動遍歷搜關(guān)鍵詞的相關(guān)詞,達到相關(guān)詞匹配的目的。建立相關(guān)詞庫的方式,其相關(guān)詞并非由編輯者個人界定,而且相關(guān)詞可以靈活調(diào)整,不斷補充。因此,建立相關(guān)詞庫的方式更加全面、客觀,但構(gòu)建一個完善的相關(guān)詞庫需要較大的投入。
增加相關(guān)詞字段與建立相關(guān)詞庫兩者各有優(yōu)缺點,但兩者并非對立。在一個系統(tǒng)中,可以同時采用這2種方式或者其中之一以增強搜索相關(guān)詞匹配,提高搜索實用性。具體實施方案還需要考慮到實際需求和投入成本預(yù)算。
(三)增強搜索容錯性
在搜索的過程中,用戶對搜索關(guān)鍵詞的輸入具備不確定和冗長等特點。不確定主要指關(guān)鍵詞的選詞不確定和關(guān)鍵詞的是否正確不確定,而冗長指用戶輸入的搜索關(guān)鍵詞包含多余的信息。如果系統(tǒng)的搜索過程未對用戶輸入的搜索關(guān)鍵詞進行分析和處理,那么,其搜索結(jié)果將有可能得不到用戶所需要的數(shù)據(jù)。從搜索易用性與實用性的角度出發(fā),搜索功能必須具備一定的容錯性。
要增強搜索的容錯性,就需要解決搜索關(guān)鍵詞的不確定與冗長的特點。將搜索關(guān)鍵詞按一定的規(guī)則進行拆分,簡稱分詞。將長詞轉(zhuǎn)化為短詞,并舍去重復(fù)的部分,可以提高搜索相關(guān)詞的匹配,降低長詞中錯詞、別詞的構(gòu)成,從而提高搜索的容錯性。
分詞搜索可以在一定程度上解決搜索的容錯要求,提升搜索的功能與精確度。分詞技術(shù)主要分為3種:
(1)字符串匹配的分詞方法。字符串匹配的分詞又分為4種,分別是:正向最大匹配法、反向最大匹配法、最短路徑匹配法、雙向最大匹配法。
(2)詞義分詞法。詞義分詞法根據(jù)機器語音進行分詞判斷,通過對句法、語義的分析,使用句法信息、語義信息進行分詞。但詞義分詞法目前還不成熟,尚處于測試階段。
(3)統(tǒng)計分詞法。統(tǒng)計分詞法依據(jù)詞組的統(tǒng)計,針對相鄰的字出現(xiàn)的次數(shù)多少,認定詞的重要程度,作為關(guān)鍵詞的分詞分隔符。
盤古分詞作為一種分詞組件,大大降低了系統(tǒng)進行分詞搜索的投入成本,避免重復(fù)造車的現(xiàn)象,非常方便應(yīng)用在基于NET技術(shù)進行開發(fā)的系統(tǒng)中。
三、結(jié)語
通過對索引的合理利用、SQL語句的優(yōu)化和自定義分頁的使用,對搜索性能有良好的提升,融入盤古分詞的強大功能,結(jié)合相關(guān)詞匹配技術(shù),能夠提高搜索的實用性。本文從搜索性能與實用性兩方面研究了搜索增強技術(shù),并將其應(yīng)用于學院的教學資源庫建設(shè)中,雖然取得了一定的成效,但還需要繼續(xù)努力。endprint