欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

寬松的過濾設(shè)置的制作方法

文檔序號:6595703閱讀:187來源:國知局
專利名稱:寬松的過濾設(shè)置的制作方法
寬松的過濾設(shè)置背景大多數(shù)現(xiàn)行的搜索引擎使用基于關(guān)鍵字的搜索以在萬維網(wǎng)(web)上定位網(wǎng)頁或在線信息。搜索引擎使用web爬行器來遍歷在線網(wǎng)頁并將網(wǎng)頁的內(nèi)容歸類成倒排索引。倒排索引是一種索引數(shù)據(jù)結(jié)構(gòu),其存儲了關(guān)鍵字到已被web爬行器定位了關(guān)鍵字的在線文檔的映射關(guān)系。倒排索引中的條目包括關(guān)鍵字和含有感興趣的關(guān)鍵字的文檔的列表。當(dāng)用戶向搜索引擎發(fā)出諸如“dentists in Seattle Washington”(華盛頓州西雅圖市內(nèi)的牙醫(yī)) 之類的查詢時,搜索引擎能通過查找倒排索引來快速地檢索出包含這四個關(guān)鍵字的在線文檔的列表。大多數(shù)基于關(guān)鍵字的搜索引擎按如下假設(shè)操作用戶僅意在尋找含有所有搜索項的文檔。傳統(tǒng)搜索引擎通過定位含有所提交的每一個關(guān)鍵字的文檔來應(yīng)答提交的查詢。 這一般被稱為“基于“與”的搜索”。然而當(dāng)用戶通過包含不必要的項來過度指定查詢時, 未含有一個或多個額外項的相關(guān)文檔不能被定位到。在上述例子中,倒排索引可能僅僅指定包含關(guān)鍵字“dentists”(牙醫(yī))和“Seattle”(西雅圖市)但不包含“in” (內(nèi)的)和 “Washington”(華盛頓州)的文檔。因此,搜索引擎將不返回不包括以上全部四個關(guān)鍵字的文檔。概述提供此概述以便以簡化的形式介紹在以下的詳細(xì)描述中進(jìn)一步描述的一些概念。 此概述并不意在標(biāo)識所要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不是意在被用于幫助確定所要求保護(hù)的主題的范圍。本發(fā)明的一個方面涉及定位滿足搜索引擎查詢中的單詞的子集的web文檔。一旦用戶將查詢提交給搜索引擎,搜索引擎將查詢解析為關(guān)鍵字并確定web爬行器是否在任何在線文檔中找到這些關(guān)鍵字的子集。為了這樣做,搜索引擎可對照web爬行器找到的項的倒排索引查詢單詞,并檢查在其中找到這些項的文檔。還有,搜索引擎查詢中的一些關(guān)鍵字可被指定為“非寬松”關(guān)鍵字。非寬松關(guān)鍵字,如果被指定的話,必須被包含在被標(biāo)識為匹配查詢的任何文檔中。搜索引擎在搜索結(jié)果列表中返回標(biāo)識出的文檔。本發(fā)明的另一個方面涉及被配置成返回上述搜索結(jié)果列表的服務(wù)器。所述服務(wù)器被配置成從客戶機(jī)計算設(shè)備接收搜索引擎查詢,將所述查詢解析為關(guān)鍵字,搜索倒排索引以確定是否有任何文檔包含這些關(guān)鍵字的子集。所述服務(wù)器還可被配置成僅定位還包含任何非寬松關(guān)鍵字的文檔。附圖的若干視圖的簡述下文參考附圖詳細(xì)描述本發(fā)明,其中

圖1是根據(jù)一個實施例的示例性計算設(shè)備的框圖;圖2是根據(jù)一個實施例的倒排索引的表格表示的示圖;圖3A是根據(jù)一個實施例的在搜索引擎上執(zhí)行寬松搜索(relaxed searching)的聯(lián)網(wǎng)環(huán)境的框圖;圖;3B示出根據(jù)一個實施例的在配置成執(zhí)行寬松搜索的聯(lián)網(wǎng)環(huán)境上的框圖和信息
4流;圖4是示出根據(jù)一個實施例的在搜索引擎上執(zhí)行寬松搜索的步驟的流程圖;以及圖5是根據(jù)一個實施例的來自執(zhí)行寬松搜索的搜索引擎的搜索結(jié)果列表的示圖。詳細(xì)描述此處描述的主題用具體細(xì)節(jié)來呈現(xiàn)以滿足法定要求。然而,此處的描述并不意在限制本專利的范圍。相反,可以理解的是所要求保護(hù)的主題還可以結(jié)合其他當(dāng)前或?qū)淼募夹g(shù)以其他方式實現(xiàn),以包括與本文檔中所述的步驟不同的步驟或與本文檔中所述的步驟類似的步驟的組合。另外,盡管此處可使用術(shù)語“框”來指示所用方法的不同元素,但該術(shù)語不應(yīng)該被理解為意味著此處所公開的各步驟之中或之間的任何特定順序。一般來說,此處描述的實施例涉及搜索引擎,該搜索引擎通過標(biāo)識僅包含用戶提交的關(guān)鍵字的子集的文檔來為搜索引擎查詢創(chuàng)建結(jié)果列表。在一個實施例中,一旦用戶提交搜索引擎查詢,搜索引擎在倒排索引中檢查以定位含有該查詢中的每個單獨的關(guān)鍵字的文檔。然后,為每個單詞而被標(biāo)識的文檔可被比較,以查看該文檔是否包含任何其他關(guān)鍵字。只有包含了關(guān)鍵字的子集的文檔才會被標(biāo)識用于結(jié)果列表。關(guān)鍵字的子集相當(dāng)于關(guān)鍵字總數(shù)(N)減去小于N的給定數(shù)字(K),產(chǎn)生N-K個單詞長度的子集。例如,如果查詢包含 "Seattle dentists in Washington”,且K等于1,那么文檔將僅需要上述單詞中的任意三個單詞以被包括在結(jié)果列表上。K可以任何數(shù)字變化,且可要么由搜索引擎的管理者設(shè)定, 要么由搜索引擎使用已知的試探法來設(shè)定。為簡明起見,N減去K在此處用N-K表示。在替代實施例中,搜索引擎可被配置成僅搜索包含N個單詞的給定查詢中更少數(shù)量的單詞(M)的web文檔,M<N。例如,還看上述查詢,在這個實施例中搜索引擎可被配置成搜索含有“Seattle",“dentists",“ in"和“Washington,,以中的任意兩個或三個單詞的文檔。因此,在這個實施例中,該查詢的任M個單詞可在web文檔上進(jìn)行匹配。如此處所討論的,搜索引擎查詢是指搜索引擎進(jìn)行對Web的任何關(guān)鍵字。web搜索查詢可用本領(lǐng)域技術(shù)人員所熟知的任何數(shù)量的方式來發(fā)起。例如,用戶可在搜索引擎的網(wǎng)頁上的文本域或者網(wǎng)頁瀏覽器的工具欄的文本域中輸入關(guān)鍵字或短語。對于本領(lǐng)域的技術(shù)人員而言,顯然用于發(fā)起搜索引擎查詢的眾多方式也都是可能的且不必在此具體討論。盡管此處討論的實施例涉及經(jīng)由因特網(wǎng)訪問網(wǎng)頁,但是其他實施例可經(jīng)專用網(wǎng)絡(luò)來訪問電子文檔。在一個實施例中,本發(fā)明采用計算機(jī)程序產(chǎn)品的形式,該計算機(jī)程序產(chǎn)品包括在一個或多個計算機(jī)可讀介質(zhì)上具體化的計算機(jī)可用指令。計算機(jī)可讀介質(zhì)包括易失性和非易失性介質(zhì)、可移動和不可移動介質(zhì),且考慮了可由數(shù)據(jù)庫、交換機(jī)和各種其他網(wǎng)絡(luò)設(shè)備讀取的介質(zhì)。作為示例而非限制,計算機(jī)可讀介質(zhì)包括計算機(jī)存儲介質(zhì)。計算機(jī)存儲介質(zhì)或機(jī)器可讀介質(zhì)包括以用于存儲信息的各種方法或技術(shù)實現(xiàn)的介質(zhì)。存儲的信息的例子包括計算機(jī)可用指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其他數(shù)據(jù)表示。計算機(jī)存儲介質(zhì)包括但不限于隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、電可擦除可編程只讀存儲器(EEPROM)、獨立于諸如緊致盤只讀存儲器(CD-ROM)、數(shù)字多功能盤(DVD),全息介質(zhì)或其他光盤介質(zhì)、磁帶盒、磁帶、 磁盤存儲或其他磁存儲設(shè)備等不同存儲介質(zhì)或結(jié)合這些不同存儲介質(zhì)使用的閃存。這些存儲器組件可瞬時地、暫時地或永久地存儲數(shù)據(jù)。
已經(jīng)簡要地描述了此處描述的實施例的一般概覽,下面描述示例性操作環(huán)境。首先具體參看圖1,用于實現(xiàn)一個實施例的示例性操作環(huán)境被示出并總地指定為為計算設(shè)備 100。計算設(shè)備100僅是合適的計算環(huán)境的一個示例,并不意在對本發(fā)明的使用或功能范圍做任何限定。計算設(shè)備100也不能被解釋為具有對與所示的任何一個組件或其組合有關(guān)的任何依賴性或要求。在一個實施例中,計算設(shè)備100是個人計算機(jī)。不過在其他實施例中, 計算設(shè)備100可以是蜂窩電話、智能電話、數(shù)字電話、手持設(shè)備、黑莓 、個人數(shù)字助理(PDA) 或者能執(zhí)行計算機(jī)指令的其他設(shè)備??稍诎ㄖT如程序模塊之類的由計算機(jī)或諸如PDA或其他手持設(shè)備之類的其他機(jī)器執(zhí)行的計算機(jī)可執(zhí)行指令的計算機(jī)代碼或機(jī)器可用指令的一般上下文中描述各實施例。一般而言,包括例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等的程序模塊指的是執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的代碼。此處描述的各實施例可以在各種系統(tǒng)配置中實現(xiàn),包括手持設(shè)備、消費電子產(chǎn)品、通用計算機(jī)、更專用計算設(shè)備等。此處描述的實施例還可以在分布式計算環(huán)境中實現(xiàn),其中任務(wù)是由通過通信網(wǎng)絡(luò)鏈接的遠(yuǎn)程處理設(shè)備執(zhí)行的。繼續(xù)參看圖1,計算設(shè)備100包括直接或間接耦合下列設(shè)備的總線110 存儲器 112、一個或多個處理器114、一個或多個呈現(xiàn)組件116、輸入/輸出端口 118、輸入/輸出組件120、以及說明性電源122??偩€110可代表一個或多個總線(如地址總線、數(shù)據(jù)總線或者其結(jié)合)。盡管為簡潔起見,圖1的各框用線示出,但實際上,各組件的劃分并不如此清楚,且比喻性地來說,這些線條更確切而言是灰色的和模糊的。例如,可以將諸如顯示設(shè)備等呈現(xiàn)組件認(rèn)為是I/O組件。還有,處理器帶有存儲器。本領(lǐng)域的技術(shù)人員將理解,這是本領(lǐng)域的本質(zhì),且如之前所提到的,圖1的示圖僅示出能與本發(fā)明的一個或多個實施例結(jié)合使用的示例性計算設(shè)備。在諸如“工作站”、“服務(wù)器”、“膝上型計算機(jī)”、“手持式設(shè)備”等分類之間并不做區(qū)分,因為所有這些都被考慮在圖1的范圍內(nèi)且稱為“計算設(shè)備”。計算設(shè)備100—般包括各種計算機(jī)可讀介質(zhì)。作為示例但非限制,計算機(jī)可讀介質(zhì)可包括隨機(jī)存取存儲器(RAM);只讀存儲器(ROM);電可擦除可編程只讀存儲器 (EEPROM);閃存或其他存儲器技術(shù);⑶-ROM、數(shù)字多功能盤(DVD)或其他光或全息介質(zhì);磁帶盒、磁帶、磁盤存儲器或其他磁存儲設(shè)備;載波或可用于對所需要的信息編碼且能被計算設(shè)備100訪問的其他介質(zhì)。存儲器112包括易失性和/或非易失性存儲器形式的計算機(jī)存儲介質(zhì)。存儲器可以是可移動的、不可移動的或其組合。示例性硬件設(shè)備包括固態(tài)存儲器、硬盤驅(qū)動器、高速緩存、光盤驅(qū)動器等。計算設(shè)備100包括從諸如存儲器112或I/O組件120之類的各種實體讀取數(shù)據(jù)的一個或多個處理器。呈現(xiàn)組件116將數(shù)據(jù)指示呈現(xiàn)給用戶或其他設(shè)備。示例性呈現(xiàn)組件包括顯示設(shè)備、揚聲器、打印組件、振動組件等。I/O端口 118允許計算設(shè)備100邏輯地耦合到包括I/O組件120的其他設(shè)備,其中一些可以是內(nèi)置的。說明性的組件包括話筒、操縱桿、游戲墊、圓盤衛(wèi)星天線、掃描儀、打印機(jī)、無線設(shè)備等。在進(jìn)一步繼續(xù)之前,應(yīng)定義一些關(guān)鍵單詞和短語。正如上文提到的,“倒排索引” 是一種索引數(shù)據(jù)結(jié)構(gòu),它包括web爬行器所標(biāo)識的關(guān)鍵字到在線文檔的映射。圖2是根據(jù)本發(fā)明的一實施例的倒排索引的表格表示的示圖。關(guān)鍵字KWl-KWn被web爬行器注意到在文檔Dl-Dn中。如圖2所示,“X"表示web爬行器在其中找到特定關(guān)鍵字的文檔Dl-Dn。因此,Kffl包含在Dl、D2、D4和Dn中。當(dāng)然,圖2中的表格僅示出倒排索引的圖表化表示, 因為本領(lǐng)域的技術(shù)人員將理解到實際的倒排索引可能并不被實際上存儲為表格。當(dāng)應(yīng)用此處描述的實施例時,搜索引擎使用倒排索引來標(biāo)識包含提交的搜索查詢中的關(guān)鍵字的文檔。包含查詢中的關(guān)鍵字的子集的文檔被返回給進(jìn)行提交的用戶。例如, 如果查詢包含關(guān)鍵字KW1-KW6且子集被設(shè)定為N-I個單詞(即只需要在文檔中有6個單詞中的5個),那么只有D2將被返回。另外,倒排索引存儲了包含特定關(guān)鍵字的文檔的位置。倒排索引還可被配置成存儲與關(guān)鍵字相關(guān)或與文檔相關(guān)的附加信息。對于關(guān)鍵字,關(guān)鍵字的實例的詞性可以被存儲——例如,該關(guān)鍵字是否被用作名詞、動詞、形容詞等。另外,替代拼寫也可被存儲用于該關(guān)鍵字??梢詾樵撐臋n存儲的附加信息的示例,包括但不限于,文檔標(biāo)識符、文檔URL、元數(shù)據(jù)、元標(biāo)簽等。本領(lǐng)域技術(shù)人員可以理解各種數(shù)據(jù)都可以被存儲以指定特定關(guān)鍵字與文檔; 因此,這些數(shù)據(jù)不需要在此詳細(xì)討論。此處描述的倒排索引可以是包含對每個列出的關(guān)鍵字的文檔的引用的列表的記錄級別的倒排索引,或者是包含文檔中每個關(guān)鍵字的位置的單詞級別的倒排索引。各實施例還可采用兩種類型的混合。如此處所使用的,關(guān)鍵字并不限于自然語言單詞。附加地,關(guān)鍵字可包括縮略語、 縮寫、數(shù)字、名字和短語。例如,關(guān)鍵字可以是〃 inc. “、“ SMTP"、“ 40"、“ John" 或者"sign of peace"。雖然這里提到的是實際的單詞,但上述任何一個均可以被替代使用。術(shù)語“文檔”指的是使用搜索引擎能搜索到的實際的文檔、網(wǎng)頁、多媒體(比如音頻、視頻、圖像)等。文檔可位于網(wǎng)絡(luò)(如因特網(wǎng))上、位于數(shù)據(jù)庫中或者本地存儲于計算設(shè)備上(如本地驅(qū)動器、虛擬硬盤或其他存儲介質(zhì)上)?!皩捤伤阉鳌敝傅氖撬阉髋c搜索引擎查詢中提交的全部關(guān)鍵字的子集相匹配的文檔。使用上述這個術(shù)語,與寬松搜索相關(guān)的子集包含N-K個關(guān)鍵字,其中1<K< N。這種類型的搜索被稱為“寬松的”,因為它不需要包含搜素引擎查詢中的所有關(guān)鍵字的文檔被返回在結(jié)果列表中。標(biāo)識出的文檔(即包含了 N-K個關(guān)鍵字的那些)最終可在搜索結(jié)果列表中被列出并呈現(xiàn)給用戶。圖3Α是根據(jù)本發(fā)明的實施例的用于在搜索引擎上執(zhí)行寬松搜索的聯(lián)網(wǎng)環(huán)境的框圖。客戶機(jī)計算設(shè)備300、搜索引擎服務(wù)器302、各種信息數(shù)據(jù)庫304均與網(wǎng)絡(luò)305連接。該搜索引擎服務(wù)器300和信息數(shù)據(jù)庫304可包括任何類型的應(yīng)用服務(wù)器、數(shù)據(jù)庫服務(wù)器或者可被配置成執(zhí)行下述軟件及管理web文檔的文件服務(wù)器。另外,搜索引擎服務(wù)器300和信息數(shù)據(jù)庫304可以是專用或共享服務(wù)器。搜索引擎服務(wù)器300和信息數(shù)據(jù)庫304的組件可包括但不限于,處理單元、內(nèi)部系統(tǒng)存儲器和用于耦合包括用于存儲信息(如文件和相關(guān)聯(lián)的元數(shù)據(jù))的一個或多個數(shù)據(jù)庫在內(nèi)的各種系統(tǒng)組件的合適的系統(tǒng)總線。每個服務(wù)器一般包括或者能訪問多種計算機(jī)可讀介質(zhì)。雖然搜索引擎服務(wù)器302被示為單個機(jī)箱,但是本領(lǐng)域技術(shù)人員可以了解該搜索引擎服務(wù)器302是可擴(kuò)展的。例如,搜索引擎服務(wù)器302可以實際上包括操作以下描述的軟件的各部分的多個服務(wù)器。單個單元的描述意在簡潔,而不是以任何形式限制實施例的范圍。在操作中,搜索引擎服務(wù)器302主控搜索引擎,所述搜索引擎被設(shè)計成從遠(yuǎn)程計算設(shè)備(如客戶機(jī)計算設(shè)備300)接收查詢,并定位Web上或?qū)S镁W(wǎng)絡(luò)內(nèi)的信息以滿足查詢。查詢是對Web上含有特定關(guān)鍵字或短語的文檔的請求。在一些實施例中,在搜索引擎服務(wù)器302上執(zhí)行的搜索引擎使用持續(xù)更新的倒排索引一由web爬行器創(chuàng)建一來快速定位滿足查詢的網(wǎng)頁。一旦網(wǎng)頁被定位后,它們的URL被傳輸回客戶機(jī)計算設(shè)備202并顯示為超鏈接。為了訪問被定位的網(wǎng)頁,用戶只需選擇相應(yīng)的超鏈接。本領(lǐng)域技術(shù)人員可以了解存在用于挖掘網(wǎng)絡(luò)上的信息的各種其他技術(shù)。文檔被存儲于信息數(shù)據(jù)庫304上并可經(jīng)由網(wǎng)絡(luò)305使用傳輸協(xié)議和相關(guān)URL來訪問。客戶機(jī)計算設(shè)備300可通過使用傳輸協(xié)議請求URL來取得網(wǎng)頁。結(jié)果,網(wǎng)頁可以被下載到客戶機(jī)計算設(shè)備300并存儲于存儲器中。然后,被存儲的網(wǎng)頁可以由網(wǎng)頁瀏覽器讀取并呈現(xiàn)給用戶??蛻魴C(jī)計算設(shè)備300可以是任何類型的計算設(shè)備,如上文參考圖1所描述的設(shè)備 100。僅作為示例而非限制,客戶機(jī)計算設(shè)備300可以是個人計算機(jī)、臺式計算機(jī)、膝上型計算機(jī)、手持式設(shè)備、蜂窩電話、數(shù)字電話、智能電話、PDA等。客戶機(jī)計算設(shè)備300可以配有網(wǎng)頁瀏覽器。網(wǎng)頁瀏覽器是一種軟件應(yīng)用,使得用戶能夠顯示位于Web上的信息并與之進(jìn)行交互。在一實施例中,網(wǎng)頁瀏覽器使用傳輸協(xié)議與搜索引擎服務(wù)器300和信息數(shù)據(jù)庫304進(jìn)行通信來獲取網(wǎng)頁。文檔可以由網(wǎng)頁瀏覽器通過發(fā)送傳輸協(xié)議和URL來定位。網(wǎng)頁瀏覽器還可以用多種標(biāo)記語言(如超文本標(biāo)記語言(HTML)和可擴(kuò)展標(biāo)記語言(XML))來呈現(xiàn)頁面并執(zhí)行各種腳本語言(如SilverLight 、 JavaScript、Flash、Visual Basic Scripting Edition (VBScript)等)。用戶可使用網(wǎng)頁瀏覽器導(dǎo)航到搜索引擎的網(wǎng)站上。一旦在網(wǎng)站上,用戶可以向搜索引擎提交關(guān)鍵字,客戶機(jī)計算設(shè)備300繼而將關(guān)鍵字傳輸?shù)剿阉饕娣?wù)器302。當(dāng)然, 向搜索引擎提交查詢是更加復(fù)雜的;然而,查詢到搜索引擎的等待實例的通信對于本領(lǐng)域的技術(shù)人員而言是顯而易見的,因此不需要在此討論。在一個實施例中,搜索引擎服務(wù)器302接收查詢并將該查詢解析成一個或多個關(guān)鍵字。搜索引擎服務(wù)器302在一個或多個倒排索引中搜索含有N-K個關(guān)鍵字的文檔。被定位的文檔(即含有N-K個關(guān)鍵字的那些)在檢索結(jié)果列表中被列出,并被搜索引擎服務(wù)器 302傳輸?shù)娇蛻魴C(jī)計算設(shè)備300以顯示給用戶。在一個實施例中,倒排索引是由web爬行器瀏覽存儲于信息數(shù)據(jù)庫304中的文檔而準(zhǔn)備的。信息數(shù)據(jù)庫304代表了存儲各種在線文檔的服務(wù)器。例如,信息數(shù)據(jù)庫304可以主存包含數(shù)量眾多的在線文檔的網(wǎng)頁。網(wǎng)絡(luò)305可包括任何計算機(jī)網(wǎng)絡(luò)或其組合。可配置成作為網(wǎng)絡(luò)305而操作的計算機(jī)網(wǎng)絡(luò)的示例包括但不限于,無線網(wǎng)絡(luò)、陸線、電纜線路、光纖線路、局域網(wǎng)(LAN)、廣域網(wǎng) (WAN)、城域網(wǎng)(MAN)等。然而,網(wǎng)絡(luò)305并不限于耦合分開的計算單元的連接。相反,網(wǎng)絡(luò) 305還可以包括在服務(wù)器或計算設(shè)備之間傳輸數(shù)據(jù)的子系統(tǒng)。例如,網(wǎng)絡(luò)305還可以包括點對點連接、因特網(wǎng)、以太網(wǎng)、背板總線、電氣總線、神經(jīng)網(wǎng)絡(luò)或其他內(nèi)部系統(tǒng)。在網(wǎng)絡(luò)305包括LAN聯(lián)網(wǎng)環(huán)境的實施例中,組件通過網(wǎng)絡(luò)接口或適配器連接到LAN 上。在網(wǎng)絡(luò)305包括WAN聯(lián)網(wǎng)環(huán)境的實施例中,組件使用調(diào)制解調(diào)器或用于在WAN上建立通信的其他手段來進(jìn)行通信。在網(wǎng)絡(luò)305包括MAN聯(lián)網(wǎng)環(huán)境的實施例中,組件使用無線接口或光纖連接來連接到MAN。這樣的聯(lián)網(wǎng)環(huán)境在辦公室、企業(yè)范圍的計算機(jī)網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)或因特網(wǎng)中很常見??梢岳斫獾氖?,所示的網(wǎng)絡(luò)連接是示例性的,且在計算機(jī)之間建立通信鏈路的其他手段也可被使用。另外,網(wǎng)絡(luò)305上的通信可需要圖示的設(shè)備使用通信協(xié)議。這些協(xié)議的示例包括但不限于,超文本傳輸協(xié)議(HTTP)、傳輸控制協(xié)議(TCP/IP)等。本領(lǐng)域技術(shù)人員可以理解各種協(xié)議均可用于在網(wǎng)絡(luò)305上通信;因此,這些協(xié)議在此無需具體討論。在另一個實施例中,搜索引擎查詢中的某些關(guān)鍵字可被指定為不是寬松的,表示所有被檢索出來的文檔都必須含有非寬松的單詞。再次舉之前的例子,查詢“dentists in Seattle Washington”中的‘Seattle”可以被指定為非寬松的。因此,分析倒排索引以尋找含有“kattle”作為N-K個項中的一個項的文檔。下面的代碼或者其變體可被用于指定非寬松關(guān)鍵字類。
class NoRelaxTuple public Tuple {
public:
Tuple *m_pConstraint;
StringBuilder*ToString(StringBuilder*buffer); NoRelaxTuple(); NoRelaxTuple();
};下面的代碼或者其變體可被用于指定查詢中的非寬松單詞。
class NoRelaxOperator public IQueryOperator {
public:
void Initialize(QueryParserState*pParser); void StartQuery() {} bool HandleOperator (
Query TokenType token, const UInt9*szParsePosition, size」*pcbConsumed); void EndQueryO {}
};圖;3B示出根據(jù)一個實施例的在配置成執(zhí)行寬松搜索的聯(lián)網(wǎng)環(huán)境上的框圖和信息流。如所示,客戶機(jī)計算設(shè)備300、搜索引擎302和信息數(shù)據(jù)庫304,參看圖3A所描述的,在網(wǎng)絡(luò)305上通信。另外,搜索引擎服務(wù)器302被示為帶有多個抽象層的單個服務(wù)器前端 308和后端310。前端308代表與客戶機(jī)計算設(shè)備300進(jìn)行交互的軟件組件。后端310代表為前端308處理信息以及在后臺線程上執(zhí)行輔助進(jìn)程(如網(wǎng)絡(luò)爬行)的軟件組件。盡管示于同一個服務(wù)器上,但前端308和后端310可以替代地在互相通信的分開的服務(wù)器上執(zhí)行。實際上,前端308和后端310僅僅是對搜索引擎的一實施例的不同部分的抽象。在操作中,用戶使用客戶機(jī)計算設(shè)備300上的網(wǎng)頁瀏覽器306來訪問搜索引擎的網(wǎng)站。用戶可在網(wǎng)站上輸入并提交搜索引擎查詢A,網(wǎng)站繼而將該搜索引擎查詢A傳輸?shù)剿阉饕娣?wù)器302。在一個實施例中,前端308包括解析器312,它是將搜索引擎查詢A分成獨立的關(guān)鍵字B的軟件?;蛘?,解析器312可將搜索引擎查詢312分成多個關(guān)鍵字的短語。關(guān)鍵字B被傳遞到位于后端310上的一個或多個倒排索引314上。在一個實施例中,后端310遍歷倒排索引314中的條目以試圖定位關(guān)鍵字。倒排索引314標(biāo)示出含有倒排索引314中所列出的條目的文檔318。如之前所述,每個條目包括一關(guān)鍵字(不必與關(guān)鍵字B混淆)以及web爬行器316已在其中定位了該關(guān)鍵字的所有文檔318。每個被標(biāo)識出的文檔318的各種信息(如文檔標(biāo)識符、URL、網(wǎng)際協(xié)議(IP)地址等)可與該關(guān)鍵字相關(guān)聯(lián)地被存儲在倒排索引314中。在一個實施例中,后端310搜索倒排索引314來找關(guān)鍵字。在該實施例中,后端 310傳送含有關(guān)鍵字B中的至少一個關(guān)鍵字的一列文檔D。例如,對于關(guān)鍵字“dentists in Seattle Washington” 的文檔 D 包括含有〃 dentists"、“ in"、“ Seattle" 和〃 Washington"的所有文檔318。在一個實施例中,作為后端310上執(zhí)行的軟件的一部分的寬松聚合器320在文檔D中搜索含有N-K個關(guān)鍵字B的文檔(稱為文檔E)。文檔E(即含有N-K個關(guān)鍵字B的文檔)被傳遞到前端308上的結(jié)果產(chǎn)生器322。 該結(jié)果產(chǎn)生器322創(chuàng)建包括文檔E,即含有N-K個關(guān)鍵字B的那些文檔的搜索結(jié)果列表F。 例如,最頻繁被訪問的文檔的URL可被給予列表上的優(yōu)先級。另選地,基于客戶機(jī)計算設(shè)備 300的地理位置的地理上相關(guān)的結(jié)果例如通過反向IP地址或全球定位系統(tǒng)(GPS)設(shè)備確定。本領(lǐng)域技術(shù)人員可以理解其他替代方案也是可能的,且沒必要在此詳細(xì)描述。最后,搜索結(jié)果列表F被傳輸?shù)娇蛻魴C(jī)計算設(shè)備300并在網(wǎng)頁瀏覽器306中顯示給用戶。后端310還被配置成操作web爬行器316來遍歷文檔318,以及更新倒排索引314。 可增加新的條目,現(xiàn)有條目可被更新,或者陳舊的條目可被刪除。這個web爬行器316可以在與寬松聚合器320并行的線程上操作。本領(lǐng)域技術(shù)人員很了解web爬行器的細(xì)節(jié);因此, 無需在此詳細(xì)描述。圖4是示出根據(jù)一個實施例的在搜索引擎上執(zhí)行寬松搜索的步驟(盡管無需是順序的)的流程圖。最初,用戶從客戶機(jī)計算設(shè)備向主控搜索引擎的服務(wù)器提交搜索引擎查詢,如402所示。搜索引擎將查詢解析成關(guān)鍵字,如404所示。一旦被解析,在倒排索引中搜索每個關(guān)鍵字,該倒排索引含有數(shù)量眾多的關(guān)鍵字條目和在其中能找到關(guān)鍵字的相應(yīng)網(wǎng)絡(luò)文檔一如406處所示。如408處所示,已知含有查詢的關(guān)鍵字中的至少一部分一即至少 N-K個關(guān)鍵字一的網(wǎng)絡(luò)文檔被標(biāo)識出來。然后,標(biāo)識出的網(wǎng)絡(luò)文檔被傳輸回客戶機(jī)計算設(shè)備 (在410處指示)以呈現(xiàn)給用戶。
圖5示出根據(jù)一個實施例的來自執(zhí)行寬松搜索的搜索引擎的搜索結(jié)果列表的示圖。具體來說,圖6示出web瀏覽器窗口 500的屏幕截圖,其呈現(xiàn)了搜索引擎的網(wǎng)站。用戶提交了搜索引擎查詢502,帶有關(guān)鍵字"york"、“ wild"、“ kingdom"和〃 USA",這些被分別標(biāo)記為單詞504、506、508、510。搜索引擎查詢502被提交給搜索引擎,搜索引擎返回含有N-K個關(guān)鍵字的結(jié)果的列表。在這個實例中,N等于4(單詞504、單詞506、單詞 508和單詞510)且K被搜索引擎的管理員設(shè)定為1。因此產(chǎn)生的文檔具有4個關(guān)鍵字504、 506,508和510中的至少3個。如所示,結(jié)果512、514、516、518和520都含有關(guān)鍵字504、 506、508和510中的至少3個。盡管此處以特定于結(jié)構(gòu)特征和方法動作的語言描述了主題,但可以理解的是在所附的權(quán)利要求中限定的主題并不一定限于上述描述的特定特征或動作。相反,上述特定特征和動作是作為實現(xiàn)權(quán)利要求的示例形式而公開的。例如,除此處描述的之外的采樣速率或采樣周期也可由權(quán)利要求的范圍來捕捉。
權(quán)利要求
1.一個或多個在其上含有計算機(jī)可執(zhí)行指令的計算機(jī)可讀介質(zhì),所述計算機(jī)可執(zhí)行指令用于執(zhí)行檢索并傳送由用戶通過搜索引擎提交的查詢的搜索結(jié)果的方法,所述方法包括接收查詢(402);將查詢解析成一個或多個關(guān)鍵字(404); 在倒排索引中搜索所述一個或多個關(guān)鍵字G06);標(biāo)識含有比所述一個或多個關(guān)鍵字中的全部關(guān)鍵字少的關(guān)鍵字的網(wǎng)絡(luò)文檔G08); 傳送網(wǎng)絡(luò)文檔的列表G10)。
2.如權(quán)利要求1所述的介質(zhì),其特征在于,所述倒排索引包括鏈接到含有所述多個關(guān)鍵字的多個網(wǎng)絡(luò)文檔的多個關(guān)鍵字。
3.如權(quán)利要求1所述的介質(zhì),其特征在于,所述網(wǎng)絡(luò)文檔包括所述一個或多個關(guān)鍵字中的全部關(guān)鍵字減去所述一個或多個關(guān)鍵字中的特定量的關(guān)鍵字。
4.如權(quán)利要求1所述的介質(zhì),其特征在于,所述倒排索引包括一個或多個條目,每一個條目包括一關(guān)鍵字和含有該關(guān)鍵字的文檔的標(biāo)示。
5.如權(quán)利要求4所述的介質(zhì),其特征在于,所述標(biāo)識中的每一個包括以下中的至少一個每一個文檔的文檔標(biāo)識符、統(tǒng)一資源定位器(URL)、網(wǎng)際協(xié)議(IP)地址。
6.如權(quán)利要求4所述的介質(zhì),其特征在于,通過路由組件不用采樣地傳遞數(shù)據(jù)包包括從路由組件的輸出接口傳輸數(shù)據(jù)包到網(wǎng)絡(luò)。
7.一種用于檢索和傳送用戶通過搜索引擎提交的查詢的搜索結(jié)果的方法,所述方法包括接收查詢(402);將查詢解析成一個或多個關(guān)鍵字G04); 在倒排索引中搜索所述一個或多個關(guān)鍵字G06);對于所述一個或多個關(guān)鍵字中的每一個,標(biāo)識包括所述一個或多個關(guān)鍵字中的所述每一個的一個或多個網(wǎng)絡(luò)文檔的集合G08);確定包含所述一個或多個關(guān)鍵字的子集的多個網(wǎng)絡(luò)文檔的集合,其中所述子集等于所述一個或多個關(guān)鍵字的總數(shù)(N)減去特定量的關(guān)鍵字(K) (408);以及傳送經(jīng)過濾的網(wǎng)絡(luò)文檔的集合的列表。
8.如權(quán)利要求7所述的方法,其特征在于,在倒排索引中搜索所述一個或多個關(guān)鍵字進(jìn)一步包括在倒排索引中僅搜索含有N-K個關(guān)鍵字的文檔。
9.如權(quán)利要求7所述的方法,其特征在于,還包括將所述一個或多個關(guān)鍵字中的至少一個指定為非寬松關(guān)鍵字,其中所述非寬松關(guān)鍵字必須被包含在所述網(wǎng)絡(luò)文檔中。
10.如權(quán)利要求7所述的方法,其特征在于,所述網(wǎng)絡(luò)文檔包括所述一個或多個關(guān)鍵字中的全部關(guān)鍵字所述一個或多個關(guān)鍵字中的特定量的關(guān)鍵字。
11.如權(quán)利要求10所述的方法,其特征在于,所述一個或多個關(guān)鍵字中的特定量等于2。
12.一種用于檢索和傳送提交給搜索引擎的查詢的結(jié)果的計算機(jī)設(shè)備,包括 執(zhí)行計算機(jī)可讀指令的處理器(104);用所述計算機(jī)可讀指令配置的一個或多個計算機(jī)可讀介質(zhì)(112);倒排索引,存儲于所述計算機(jī)可讀介質(zhì)中并由所述處理器執(zhí)行,所述倒排索引被配置成接收查詢中的所有關(guān)鍵字并標(biāo)識包含每一個關(guān)鍵字的網(wǎng)絡(luò)文檔(314);以及寬松過濾設(shè)置聚合器,存儲于所述計算機(jī)可讀介質(zhì)中并由所述處理器執(zhí)行,用于確定所述倒排索引中包含所述一個或多個關(guān)鍵字的子集的網(wǎng)絡(luò)文檔的列表,其中所述子集等于關(guān)鍵字的總數(shù)(N)減去一個關(guān)鍵字(320)。
13.如權(quán)利要求12所述的方法,其特征在于,至少一個關(guān)鍵字被指定為要被包含在所述網(wǎng)絡(luò)文檔的每一個中。
14.如權(quán)利要求12所述的方法,其特征在于,所述倒排索引維護(hù)一個或多個條目,每一個條目包括一關(guān)鍵字和包含該關(guān)鍵字的至少一個文檔。
15.如權(quán)利要求14所述的方法,其特征在于,所述倒排索引與web爬行器通信,以不斷地更新所述一個或多個條目。
全文摘要
此處描述了搜索引擎查詢中的關(guān)鍵字的子集。所述搜索引擎查詢被解析成關(guān)鍵字。對照倒排索引來檢查這些關(guān)鍵字以確定是否有任何網(wǎng)絡(luò)文檔包含關(guān)鍵字的子集。包含關(guān)鍵字的子集的文檔在搜索結(jié)果列表中被列出并傳送回給用戶。
文檔編號G06F17/21GK102239492SQ200980149052
公開日2011年11月9日 申請日期2009年11月17日 優(yōu)先權(quán)日2008年12月4日
發(fā)明者D·齊, G·高希, N·R·維賈亞, R·馬宗德, T·K·多曾, Y·王 申請人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
大理市| 邵武市| 建始县| 台北市| 雷波县| 花莲市| 密山市| 九江县| 荣昌县| 彩票| 桃园市| 临武县| 天等县| 乐都县| 吉水县| 雷波县| 西丰县| 东安县| 确山县| 澄城县| 南江县| 洛扎县| 万全县| 巴楚县| 托克逊县| 灵丘县| 广宗县| 藁城市| 甘德县| 洪雅县| 上高县| 文昌市| 梁河县| 巴里| 彭水| 天津市| 鲁甸县| 浏阳市| 吐鲁番市| 巴彦县| 华阴市|