freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

sql全文本檢索應(yīng)用(參考版)

2024-08-29 16:23本頁面
  

【正文】 。會話對象并不一定對所有應(yīng)用程序都適用,如果使用不當(dāng),可能帶來一定程度的危險(xiǎn)。此應(yīng)用程序只是一些可用于實(shí)現(xiàn)最佳全文搜索性能的高級策略的簡單示例。我們對聯(lián)機(jī)零售商目錄使用簡單的搜索引擎方案,并假定在通信量很高的情況下,所有用戶都期待在很短的響應(yīng)時(shí)間內(nèi)獲得結(jié)果。下一節(jié)更全面地介紹了在構(gòu)建 Web 搜索應(yīng)用程序時(shí),如何與其他全文搜索技術(shù)一起使用最佳選擇。接下來,第二個存儲過程檢索與常規(guī)搜索標(biāo)準(zhǔn)匹配的文檔(如果有):create procedure FTSearch searchTerm varchar(1024) asselect [key], [rank] from freetexttable(documentTable, keywords, searchTerm) order by [rank] desc此外,請確保已清理傳入搜索字符串,并用單引號將該字符串括起。首先,創(chuàng)建一個用于檢索最佳選擇行(如果有)的存儲過程:create procedure BBSearch searchTerm varchar(1024) asselect [key], [rank] from freetexttable(bestBets, keywords, searchTerm) order by [rank] desc確保已對傳入搜索字符串進(jìn)行清理,以避免在服務(wù)器上隨意執(zhí)行 TSQL,并確保用單引號將該字符串括起。如果給定上面的表,則可以創(chuàng)建兩個存儲過程,以便對最佳選擇表和文檔表進(jìn)行搜索。為便于檢索,使最佳選擇表與文檔表互斥更為容易 這樣做就無需從最佳選擇和返回的普通搜索結(jié)果行集合中刪除共享操作。全文目錄和索引是為最佳選擇表而創(chuàng)建的。接著創(chuàng)建了“最佳選擇”表,用于存儲所有全文查詢中首先返回的特殊文檔。通常情況下,文檔表中包含其他列,但在本文中,只包含兩列 主鍵索引和文檔本身。start_background_updateindex39。bestBets39。start_change_tracking39。bestBets39。add39。keywords39。bestBets39。BBftkey_idx39。bestBets_cat39。create39。bestBets39。f:\ftCats39。create39。bestBets_cat39。start_background_updateindex39。documentTable39。start_change_tracking39。documentTable39。add39。document39。documentTable39。DTftkey_idx39。documents_cat39。create39。documentTable39。f:\ftCats39。create39。documents_cat39。下面是一個非常簡單的用于創(chuàng)建最佳選擇系統(tǒng)的示例腳本。FREETEXTTABLE 查詢對(非常小的)最佳選擇表執(zhí)行,并且從該查詢中返回的任何結(jié)果都與對基表的 FREETEXTTABLE 查詢結(jié)果一同返回。最佳選擇沒有復(fù)雜的預(yù)編程邏輯(例如,SharePoint Portal Server 就包含這樣的邏輯),因此,通常是首選辦法。附錄 A:實(shí)現(xiàn)全文搜索功能的最佳選擇改進(jìn)全文查詢性能和有效性的一種可行方法是實(shí)現(xiàn)“最佳選擇”系統(tǒng)。通過分布計(jì)算負(fù)載并通過某些巧妙的方式對數(shù)據(jù)進(jìn)行組織,可以省下錢來購買其他硬件和軟件,以擺脫因不必要的緩慢查詢帶來的困擾。小結(jié)Microsoft SQL Server 2000 的全文搜索功能為索引和查詢數(shù)據(jù)庫中存儲的非結(jié)構(gòu)化文本數(shù)據(jù)提供了可靠、快速而靈活的方法。另一種可以替代 Web 服務(wù)器端緩存的方法是在 SQL Server 自身中緩存結(jié)果集,并定義多種用于瀏覽這些結(jié)果的方法。這又回到了全文查詢僅返回主鍵和排位的概念中 SELECT(甚至許多這樣的查詢語句)比全文查詢的速度快許多倍。假定一個在任何給定時(shí)間返回 1000 個活動查詢結(jié)果集中的一個活動緩存集,您將發(fā)現(xiàn)此活動緩存集在 Web 服務(wù)器上占用的內(nèi)存少于 35MB 這還可以接受)。我所推薦的方法可以最大程度地減少全文查詢執(zhí)行的次數(shù)(實(shí)際上,對于要分頁顯示的每個結(jié)果集只需執(zhí)行一次),并將 Web 服務(wù)器用作一個簡單的緩存。換句話說,如果我要發(fā)出“root beer”查詢,一次在某一 Web 頁上顯示 40 個結(jié)果,并且只希望返回該頁面上的 40 個結(jié)果(例如,如果我在第三頁,我希望僅返回第 81 至第 120 條結(jié)果)。通過以上示例,您會了解一種將某些搜索條件抽象到架構(gòu)的方法 實(shí)際上是“欺騙”優(yōu)化程序(更確切的說是“成為”優(yōu)化程序),因?yàn)樵?SQL Server 本身的全文查詢中當(dāng)前不存在本地優(yōu)化。但在何時(shí)應(yīng)用多個過濾器或不應(yīng)用過濾器方面卻有著明顯的限制。Ichiro39。如以下示例所示: 如果您可以調(diào)整架構(gòu),這非常有效 ‐ 每個類別 都成為自己的列(或表格),并且需要命中的 全文索引也較少。即,“類別”列的每個可能值都自成一列(或表),并且與該文章相關(guān)的可搜索關(guān)鍵字僅存儲在此列中。這兩項(xiàng)技術(shù)還存在其他變體,但這是兩種非常簡單的模型。) AND sports39。FORMSOF(INFLECTIONAL(39。Sports39。Ichiro39。人們發(fā)現(xiàn)避免合并的一個有效方法是只在全文索引中添加要過濾的數(shù)據(jù)(如果可能)。正如前面所說的,全文查詢?yōu)槊總€匹配行返回一個主鍵和一個排位 要收集有關(guān)這些行的任何詳細(xì)信息,必須與它的基表進(jìn)行合并。多次重復(fù)數(shù)據(jù)的另一個問題與用于組合關(guān)系型查詢和全文查詢的常用技巧有關(guān)。如果全文索引數(shù)據(jù)量很大,并嘗試使用了此方法,您可能會發(fā)現(xiàn)某些全文查詢很耗時(shí)。較好的解決方案是為搜索應(yīng)用程序?qū)崿F(xiàn)“最佳選擇”系統(tǒng)(請參閱以下示例),這樣就可以確保首先返回某些文檔。有些人認(rèn)為,一種有助于增加某些行排位的技巧是在這些行的全文索引列中重復(fù)常用的搜索關(guān)鍵字。也就是說,當(dāng)您按照排位對結(jié)果進(jìn)行排序時(shí),總是首先返回關(guān)聯(lián)程度最高的結(jié)果。對這個問題,回答可長可短,在這里我將進(jìn)行簡要回答。不過,基于 FREETEXT 的查詢非常靈活,而且速度非常快,是基于 Web 的搜索應(yīng)用程序中通常使用的最佳選擇。因此,當(dāng)您搜索“root beer”時(shí),“root”和“beer”包含其所有形式(尋根溯源與語言相關(guān);所用的語言由生成索引時(shí)指定的全文列語言確定,并且在所有查詢的列中必須相同),并且系統(tǒng)將返回至少與這些詞語之一匹配的所有行。FREETEXT 查詢消除了 CONTAINS 查詢中偶爾出現(xiàn)的所有警告說明。向包含干擾詞的 CONTAINS 查詢返回結(jié)果是不可能的,因?yàn)榇祟惒樵冎环祷嘏c整個查詢字符串完全匹配的結(jié)果。經(jīng)驗(yàn)豐富的開發(fā)人員以及過去使用過全文搜索的數(shù)據(jù)庫管理員,在試圖匹配只包含單個干擾詞的單詞或詞組時(shí),曾遇到過“您的查詢只包含干擾詞”這樣令人吃驚的錯誤。因此,CONTAINS 查詢速度很快,因?yàn)樗鼈兺ǔ7祷睾苌俚慕Y(jié)果,并且不需要執(zhí)行過多的附加處理。CONTAINS 查詢用于對所查詢的所有詞語執(zhí)行完全匹配查詢。到現(xiàn)在為止,您已經(jīng)知道全文查詢是用來從 SQL Server 之外存儲的 MSSearch 索引中訪問數(shù)據(jù)的特殊方法,還知道如果盲目地與基表進(jìn)行合并,就會遇到麻煩。有了這樣的了解,您應(yīng)該避免使用這些類型的查詢,除非不這樣做的開銷更高。與基表合并主鍵的進(jìn)程需要很高的系統(tǒng)開銷 稍后,我們將向您介紹一些巧妙的方法以盡量減少或完全避免這種合并。從本質(zhì)上說,執(zhí)行全文查詢時(shí),查詢詞傳遞給 MSSearch,后者遍歷其內(nèi)部數(shù)據(jù)結(jié)構(gòu)(索引),并向 SQL Server 返回主鍵和排位值。全文查詢查詢?nèi)乃饕c執(zhí)行 SQL Server 中的標(biāo)準(zhǔn)關(guān)系型查詢略有不同。)通常情況下,如果完全填充正在進(jìn)行,則返回的結(jié)果是“1”。, 39。要獲取目錄填充狀態(tài),可以執(zhí)行:select FULLTEXTCATALOGPROPERTY(39。start_full39。Categories39。填充方法之多實(shí)在是不勝枚舉,此處不作詳細(xì)介紹??梢酝ㄟ^系統(tǒng)存儲過程“sp_configure”為服務(wù)器設(shè)置默認(rèn)全文語言。add39。Description39。Categories39。在指定了中性語言的列中不能進(jìn)行任何基于語言的尋根溯源,但有些環(huán)境可能會要求您選擇此方法。這種情況下,您有兩種選擇 首選方法是只將文本數(shù)據(jù)存儲在 IMAGE 列中,并指明其文檔類型,以便對其進(jìn)行過濾。單詞分隔符主要用于處理書面文本。選擇語言的另一個考慮因素與數(shù)據(jù)的表示方法有關(guān)。選擇列語言的另
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1