資源描述:
《sql server 2000 全文檢索技術(shù) 》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、SQLServer2000全文檢索技術(shù)1全文檢索及其發(fā)展?fàn)顩r隨著海量信息的出現(xiàn)以及計(jì)算機(jī)存儲技術(shù)的發(fā)展,文獻(xiàn)數(shù)據(jù)庫正由書目數(shù)據(jù)庫向全文數(shù)據(jù)庫轉(zhuǎn)變。這一轉(zhuǎn)變使得全文檢索技術(shù)得到空前的發(fā)展。常用的實(shí)現(xiàn)全文檢索的方法主要有以下兩種:第一種方法是不對數(shù)據(jù)庫建立索引而直接對文章進(jìn)行匹配的方法。這種方法由于沒有建立索引庫,因此所占空間較少,但同時正是因?yàn)樗鼪]有索引庫,所以在進(jìn)行全文匹配時要花費(fèi)大量的時間。第二種方法則是一種為全文建立倒排索引庫的方法。這種方法可以大大節(jié)省檢索的時間。但同時,這種方法需要占用一定的存儲空間來建立索引庫。目前,國內(nèi)外對全
2、文檢索的研究可以說是達(dá)到一個高潮。許多研究機(jī)構(gòu)和商業(yè)組織都在進(jìn)行這方面的研究。國際最具影響力的全文檢索評估機(jī)構(gòu)當(dāng)屬TREC(TextRetrievalConference)。它是由美國技術(shù)和標(biāo)準(zhǔn)研究所(NIST)和美國高級研究計(jì)劃局(DARPA)共同舉辦、自1992年以來每年一次的全文檢索評估會議,會議參加者帶來研究的檢索系統(tǒng)以供專家進(jìn)行評估。傳統(tǒng)的信息單位,圖書館等也開始建立全文數(shù)據(jù)庫,引進(jìn)各種全文檢索技術(shù)。一些軟件公司,也紛紛推出全文檢索軟件。國內(nèi)比較有代表性的如TRS等,而國外比較著名的有下文將要介紹的Microsoft公司開發(fā)的
3、SQLServer2000。2在SQLServer2000中配置全文檢索服務(wù)SQLServer是Microsoft公司在原來和Sybase公司合作的基礎(chǔ)上推出的一款面向高端的數(shù)據(jù)庫系統(tǒng)。而SQLServer2000版本則是最新的、大型聯(lián)機(jī)事務(wù)處理的新型數(shù)據(jù)庫平臺。它繼承了SQLServer以前版本的一些強(qiáng)大的優(yōu)勢,如簡單易用、具有良好的穩(wěn)定性和高效性等等。同時,它的功能比以前的版本更加強(qiáng)大,界面更加友好。總之,無論是在功能、安全性、可維護(hù)性,還是在易操作性上都較以前版本有了長足的進(jìn)步。它的全文檢索功能配置簡單,使用十分方便。我在建立關(guān)于
4、信息檢索的英文論文題名、文摘數(shù)據(jù)庫的過程中,使用了SQLServer2000。由于文摘文本單詞量平均在500個左右,而且論文記錄數(shù)量較多,如果不為文摘建立全文索引庫,將嚴(yán)重影響檢索效率。因此,我使用SQLServer2000的全文檢索功能為這個數(shù)據(jù)庫提供了全文檢索服務(wù)。2.1建立全文檢索服務(wù)的過程如下:第一步,在SQLServer中建立一個全文數(shù)據(jù)庫English—Data。在該數(shù)據(jù)庫中建立一個表Papers。該表的字段有pa—per__id(代表論文的順序,數(shù)據(jù)類型為int,長度為4,要求非空,并為標(biāo)知,標(biāo)知種子為1,自動增量為1)、
5、paperAitle(代表論文的題目,數(shù)據(jù)類型為vchar,長度為200,要求非空)、pa—per_abstract(代表論文的文摘,數(shù)據(jù)類型為vchar,長度為8000,要求非空)。第二步,為建立全文索引,一定要為該表建立唯一索引(UniqueIndex)。我為Papers表的paper_id字段建立唯一索引。第三步,將數(shù)據(jù)逐步導(dǎo)入到表Papers中。第四步,打開SQLServer的企業(yè)管理器,在左側(cè)的樹視中點(diǎn)擊數(shù)據(jù)庫。然后點(diǎn)開數(shù)據(jù)庫EnglishData.。選擇“全文目錄”。點(diǎn)擊右鍵,選擇“新建全文目錄”,建立全文目錄Paper-A
6、bstractFullSearch,然后建立名稱為AbstraetSearch的調(diào)度。其他接受默認(rèn)。第五步,選擇企業(yè)管理器的右側(cè)的表Papers,單擊右鍵,選中“全文索引表”,單擊“在表上建立全文索引”。將會出現(xiàn)“全文索引向?qū)А贝翱凇|c(diǎn)擊“下一步”會到達(dá)“選擇索引”窗口。由于本表只有一個唯一索引paper_id,點(diǎn)擊“下一步”,會出現(xiàn)“選擇表中的列”窗口。選擇“paper_abstract”字段,然后點(diǎn)擊“下一步”,出現(xiàn)“選擇目錄”窗口,接受默認(rèn)配置,點(diǎn)擊“下一步”,出現(xiàn)的窗口“選擇或創(chuàng)建填充調(diào)度(可選)”窗口,接受默認(rèn)配置再點(diǎn)擊下一步
7、。出現(xiàn)“正在完成SQLServer全文索引向?qū)А?,點(diǎn)擊“完成”。完成配置。第六步,選擇表Papers,點(diǎn)擊右鍵,選擇“全文索引表”,點(diǎn)擊“啟動完全填充”,等待完成。第七步,配置數(shù)據(jù)源名。在ODBC管理器中的“系統(tǒng)DSN”中,單擊“添加”,選擇“SQLServer”。在數(shù)據(jù)源名中輸入“EnglishData”,然后進(jìn)行客戶配置。第八步,如果以后對表Papers進(jìn)行任何的修改(包括添加、刪除記錄和對原記錄進(jìn)行編輯),都要重復(fù)第六步的操作。這一步是為了保證全文索引庫能夠與表Papers的修改同步。以上是建立全文索引的全過程。完成建立后,即可以
8、使用標(biāo)準(zhǔn)的T—SQL語句對其進(jìn)行全文檢索。2.2在n);(5)為表創(chuàng)建全文索引(sp_fulltexLtable);(6)填充全文目錄(sp_fulltext_catalog)。下面舉例說明:在本例中,對t