本發(fā)明涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及一種搜索引擎的監(jiān)控方法和裝置。
背景技術(shù):
傳統(tǒng)搜索引擎中,一般分為線上和線下兩個(gè)部分,線下為線上提供數(shù)據(jù)索引,線上對(duì)外提供服務(wù)。線下提供的索引數(shù)據(jù)的準(zhǔn)確性決定了線上的正確性和可用性。搜索引擎正常的更新邏輯一般包括:數(shù)據(jù)更新、環(huán)境更新、索引更新和服務(wù)切換。而在數(shù)據(jù)更新到服務(wù)切換的過(guò)程中,會(huì)產(chǎn)生大量的時(shí)間開(kāi)銷,在這期間一旦出現(xiàn)了問(wèn)題而又沒(méi)能及時(shí)發(fā)現(xiàn),將導(dǎo)致搜索引擎的服務(wù)不可用或者搜索結(jié)果錯(cuò)亂,那么對(duì)于搜索引擎來(lái)講,損失是巨大的。
現(xiàn)有的搜索排序監(jiān)控方法對(duì)于搜索引擎的可用性和正確性的監(jiān)控存在一定的缺陷,容易導(dǎo)致搜索引擎的服務(wù)不可用或者搜索結(jié)果錯(cuò)亂。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的旨在至少在一定程度上解決相關(guān)技術(shù)中的技術(shù)問(wèn)題之一。
為此,本發(fā)明的第一個(gè)目的在于提出一種搜索引擎的監(jiān)控方法。該方法使用設(shè)定的搜索關(guān)鍵詞請(qǐng)求監(jiān)控系統(tǒng)中的模擬搜索引擎服務(wù),獲取排序結(jié)果,通過(guò)對(duì)排序結(jié)果重復(fù)度判斷監(jiān)控系統(tǒng)的正確性,從而對(duì)監(jiān)控系統(tǒng)監(jiān)控的線上搜索引擎的問(wèn)題進(jìn)行預(yù)警,可以提升搜索引擎的穩(wěn)定性,確保搜索引擎的可用性和正確性。
本發(fā)明的第二個(gè)目的在于提出一種搜索引擎的監(jiān)控裝置。
為了實(shí)現(xiàn)上述目的,本發(fā)明第一方面實(shí)施例的搜索引擎的監(jiān)控方法,包括:監(jiān)控系統(tǒng)使用設(shè)定的搜索關(guān)鍵詞第一次請(qǐng)求所述監(jiān)控系統(tǒng)中模擬搜索引擎服務(wù),所述模擬搜索引擎與被監(jiān)控的搜索引擎按照設(shè)定的策略同步更新;所述監(jiān)控系統(tǒng)獲取所述模擬搜索引擎返回的與所述設(shè)定的搜索關(guān)鍵詞第一次請(qǐng)求對(duì)應(yīng)的第一文檔集合;所述監(jiān)控系統(tǒng)使用相同的設(shè)定的搜索關(guān)鍵詞第二次請(qǐng)求所述監(jiān)控系統(tǒng)中模擬搜索引擎服務(wù);所述監(jiān)控系統(tǒng)獲取所述模擬搜索引擎返回的與所述設(shè)定的搜索關(guān)鍵詞第二次請(qǐng)求對(duì)應(yīng)的第二文檔集合;所述監(jiān)控系統(tǒng)根據(jù)所述第一文檔集合和所述第二文檔集合中文檔的重復(fù)度,確定所述模擬搜索引擎的正確性,以對(duì)所述監(jiān)控系統(tǒng)監(jiān)控的搜索引擎進(jìn)行預(yù)警。
本發(fā)明實(shí)施例的搜索引擎的監(jiān)控方法,監(jiān)控系統(tǒng)使用設(shè)定的搜索關(guān)鍵詞請(qǐng)求監(jiān)控系統(tǒng)中模擬搜索引擎服務(wù),獲取上述搜索引擎返回的設(shè)定的搜索關(guān)鍵詞對(duì)應(yīng)的文檔集合,然后根據(jù)同一搜索關(guān)鍵詞相鄰兩次請(qǐng)求獲取的第一文檔集合和第二文檔集合中文檔的重復(fù)度,確定模擬搜索引擎的正確性,以對(duì)監(jiān)控系統(tǒng)監(jiān)控的搜索引擎進(jìn)行預(yù)警,從而可以提升搜索引擎的穩(wěn)定性,確保搜索引擎的可用性和正確性。
為了實(shí)現(xiàn)上述目的,本發(fā)明第二方面實(shí)施例的搜索引擎的監(jiān)控裝置,包括:搜索請(qǐng)求模塊,用于使用設(shè)定的搜索關(guān)鍵詞第一次請(qǐng)求所述搜索引擎的監(jiān)控裝置中模擬搜索引擎服務(wù),所述模擬搜索引擎與被監(jiān)控的搜索引擎按照設(shè)定的策略同步更新;獲取模塊,用于獲取所述模擬搜索引擎返回的與所述設(shè)定的搜索關(guān)鍵詞第一次請(qǐng)求對(duì)應(yīng)的第一文檔集合;所述搜索請(qǐng)求模塊,還用于使用相同的設(shè)定的搜索關(guān)鍵詞第二次請(qǐng)求所述搜索引擎的監(jiān)控裝置中模擬搜索引擎服務(wù);所述獲取模塊,還用于獲取所述模擬搜索引擎返回的與所述設(shè)定的搜索關(guān)鍵詞第二次請(qǐng)求對(duì)應(yīng)的第二文檔集合;確定模塊,用于所述第一文檔集合和所述第二文檔集合中文檔的重復(fù)度,確定所述模擬搜索引擎的正確性,以對(duì)所述搜索引擎的監(jiān)控裝置監(jiān)控的搜索引擎進(jìn)行預(yù)警。
本發(fā)明實(shí)施例的搜索引擎的監(jiān)控裝置,搜索請(qǐng)求模塊使用設(shè)定的搜索關(guān)鍵詞請(qǐng)求搜索引擎的監(jiān)控裝置中更新的搜索引擎服務(wù),獲取模塊獲取上述搜索引擎返回的設(shè)定的搜索關(guān)鍵詞對(duì)應(yīng)的文檔集合,然后確定模塊根據(jù)同一搜索關(guān)鍵詞相鄰兩次請(qǐng)求獲取的第一文檔集合與第二文檔集合中文檔的重復(fù)度,確定模擬搜索引擎的正確性,以對(duì)搜索引擎的監(jiān)控裝置監(jiān)控的搜索引擎進(jìn)行預(yù)警,從而可以提升搜索引擎的穩(wěn)定性,確保搜索引擎的可用性和正確性。
本發(fā)明附加的方面和優(yōu)點(diǎn)將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過(guò)本發(fā)明的實(shí)踐了解到。
附圖說(shuō)明
本發(fā)明上述的和/或附加的方面和優(yōu)點(diǎn)從下面結(jié)合附圖對(duì)實(shí)施例的描述中將變得明顯和容易理解,其中:
圖1為本發(fā)明搜索引擎的監(jiān)控方法一個(gè)實(shí)施例的流程圖;
圖2為本發(fā)明搜索引擎的監(jiān)控方法中監(jiān)控系統(tǒng)的架構(gòu)一個(gè)實(shí)施例的示意圖;
圖3為本發(fā)明搜索引擎的監(jiān)控方法另一個(gè)實(shí)施例的流程圖;
圖4為本發(fā)明搜索引擎的監(jiān)控方法再一個(gè)實(shí)施例的流程圖;
圖5為本發(fā)明搜索引擎的監(jiān)控方法再一個(gè)實(shí)施例的流程圖;
圖6為本發(fā)明搜索引擎的監(jiān)控裝置一個(gè)實(shí)施例的結(jié)構(gòu)示意圖;
圖7為本發(fā)明搜索引擎的監(jiān)控裝置另一個(gè)實(shí)施例的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面詳細(xì)描述本發(fā)明的實(shí)施例,所述實(shí)施例的示例在附圖中示出,其中自始至終相同或類似的標(biāo)號(hào)表示相同或類似的元件或具有相同或類似功能的元件。下面通過(guò)參考附圖描述的實(shí)施例是示例性的,僅用于解釋本發(fā)明,而不能理解為對(duì)本發(fā)明的限制。相反,本發(fā)明的實(shí)施例包括落入所附加權(quán)利要求書的精神和內(nèi)涵范圍內(nèi)的所有變化、修改和等同物。
圖1為本發(fā)明搜索引擎的監(jiān)控方法一個(gè)實(shí)施例的流程圖,如圖1所示,該搜索引擎的監(jiān)控方法可以包括:
步驟101,監(jiān)控系統(tǒng)使用設(shè)定的搜索關(guān)鍵詞第一次請(qǐng)求上述監(jiān)控系統(tǒng)中模擬搜索引擎服務(wù),上述模擬搜索引擎與被監(jiān)控的搜索引擎按照設(shè)定的策略同步更新。
步驟102,監(jiān)控系統(tǒng)獲取上述模擬搜索引擎返回的與上述設(shè)定的搜索關(guān)鍵詞第一次請(qǐng)求對(duì)應(yīng)的第一文檔集合。
具體地,監(jiān)控系統(tǒng)可以獲取上述模擬搜索引擎返回的與上述設(shè)定的搜索關(guān)鍵詞第一次請(qǐng)求對(duì)應(yīng)的第一文檔(Document;以下簡(jiǎn)稱:Doc)排序列表,存入搜索日志中。
步驟103,監(jiān)控系統(tǒng)使用相同的設(shè)定的搜索關(guān)鍵詞第二次請(qǐng)求上述監(jiān)控系統(tǒng)中模擬搜索引擎服務(wù)。
步驟104,監(jiān)控系統(tǒng)獲取上述模擬搜索引擎返回的與上述設(shè)定的搜索關(guān)鍵詞第二次請(qǐng)求對(duì)應(yīng)的第二文檔集合。
具體地,監(jiān)控系統(tǒng)可以獲取上述模擬搜索引擎返回的與上述設(shè)定的搜索關(guān)鍵詞第二次請(qǐng)求對(duì)應(yīng)的第二文檔排序列表,存入搜索日志中。
本實(shí)施例中,監(jiān)控系統(tǒng)第一次請(qǐng)求與第二次請(qǐng)求上述監(jiān)控系統(tǒng)中的模擬搜索引擎服務(wù)之間間隔預(yù)定的時(shí)間長(zhǎng)度。其中,上述預(yù)定的時(shí)間長(zhǎng)度可以在具體實(shí)現(xiàn)時(shí)根據(jù)實(shí)現(xiàn)需求和/或系統(tǒng)性能等自行設(shè)定,本實(shí)施例對(duì)上述預(yù)定的時(shí)間長(zhǎng)度的長(zhǎng)短不作限定。
在具體實(shí)現(xiàn)時(shí),監(jiān)控系統(tǒng)可以每隔t分鐘使用設(shè)定的搜索關(guān)鍵詞請(qǐng)求上述監(jiān)控系統(tǒng)中模擬搜索引擎服務(wù)。
其中,t的大小可以在具體實(shí)現(xiàn)時(shí)根據(jù)實(shí)現(xiàn)需求和/或系統(tǒng)性能等自行設(shè)定,本實(shí)施例對(duì)t的大小不作限定。
步驟105,監(jiān)控系統(tǒng)根據(jù)上述第一文檔集合和上述第二文檔集合中文檔的重復(fù)度,確定上述模擬搜索引擎的正確性,以對(duì)上述監(jiān)控系統(tǒng)監(jiān)控的搜索引擎進(jìn)行預(yù)警。
上述搜索引擎的監(jiān)控方法中,監(jiān)控系統(tǒng)使用設(shè)定的搜索關(guān)鍵詞請(qǐng)求監(jiān)控系統(tǒng)中更新的搜索引擎服務(wù),獲取上述搜索引擎返回的設(shè)定的搜索關(guān)鍵詞對(duì)應(yīng)的文檔集合,然后根據(jù)同一搜索關(guān)鍵詞相鄰兩次請(qǐng)求獲取的第一文檔集合和第二文檔集合中文檔的重復(fù)度,確定監(jiān)控系統(tǒng)中模擬搜索引擎的正確性,以對(duì)監(jiān)控系統(tǒng)監(jiān)控的搜索引擎進(jìn)行預(yù)警,從而可以提升搜索引擎的穩(wěn)定性,確保搜索引擎的可用性和正確性。
本發(fā)明圖1所示實(shí)施例提供的搜索引擎的監(jiān)控方法可以通過(guò)圖2所示的監(jiān)控系統(tǒng)實(shí)現(xiàn),圖2為本發(fā)明搜索引擎的監(jiān)控方法中監(jiān)控系統(tǒng)的架構(gòu)一個(gè)實(shí)施例的示意圖。
圖2所示的架構(gòu)中,實(shí)線框?yàn)楸O(jiān)控系統(tǒng)環(huán)境的日更新邏輯:
(1)監(jiān)控系統(tǒng)基于部分Doc創(chuàng)建。監(jiān)控系統(tǒng)對(duì)全量Doc數(shù)據(jù)進(jìn)行抽樣,獲取約100萬(wàn)的Doc數(shù)據(jù),如果全量Doc數(shù)據(jù)為1億,那么在單機(jī)的情況下,監(jiān)控系統(tǒng)對(duì)獲取的Doc數(shù)據(jù)的處理時(shí)間可以縮小為原來(lái)的1/100。
(2)監(jiān)控系統(tǒng)每天需要分別拉取搜索引擎的線下和線上的環(huán)境,包括配置和/或詞典等。監(jiān)控系統(tǒng)需要保證自身環(huán)境與線上搜索引擎的環(huán)境完全一致,以便真正反映線上真實(shí)的狀況。
(3)監(jiān)控系統(tǒng)在環(huán)境同步后,需要建立Doc文檔的倒排索引,并進(jìn)行索引切換。
圖2所示的架構(gòu)中,虛線框?yàn)楸O(jiān)控系統(tǒng)的監(jiān)控邏輯:
(1)監(jiān)控服務(wù)可用性;
(2)使用設(shè)定的搜索關(guān)鍵詞請(qǐng)求監(jiān)控系統(tǒng)中更新的搜索引擎服務(wù),獲取排序結(jié)果中Doc的重復(fù)度。
進(jìn)一步地,參見(jiàn)圖3,圖3為本發(fā)明搜索引擎的監(jiān)控方法另一個(gè)實(shí)施例的流程圖,如圖3所示,本發(fā)明圖1所示實(shí)施例提供的搜索引擎的監(jiān)控方法中,步驟105可以包括:
步驟301,計(jì)算第一文檔集合與第二文檔集合中按序選擇的至少兩個(gè)文檔的重復(fù)度。
具體地,可以根據(jù)獲取的搜索日志,對(duì)第一文檔集合與第二文檔集合中按序選擇的前N個(gè)Doc的重復(fù)度按照式(1)進(jìn)行計(jì)算。
pQn=(Ln-1∩Ln)/N (1)
其中,pQn表示搜索關(guān)鍵詞Q第n次請(qǐng)求與第n-1次請(qǐng)求的Doc的重復(fù)度;Ln表示第n次請(qǐng)求的Doc集合;Ln-1表示第n-1次請(qǐng)求的Doc集合;N表示每次請(qǐng)求獲取的Doc的數(shù)量,N為整數(shù),N≥2;(Ln-1∩Ln)表示第n-1次請(qǐng)求和第n次請(qǐng)求獲得的重復(fù)的Doc的數(shù)量。
步驟302,判斷上述重復(fù)度是否大于或等于重復(fù)度報(bào)警閾值。如果是,則執(zhí)行步驟303; 如果上述重復(fù)度小于重復(fù)度報(bào)警閾值,則執(zhí)行步驟304。
其中,上述重復(fù)度報(bào)警閾值可以在具體實(shí)現(xiàn)時(shí)根據(jù)實(shí)現(xiàn)需求和/或系統(tǒng)性能等自行設(shè)定,本實(shí)施例對(duì)上述重復(fù)度報(bào)警閾值的大小不作限定。
步驟303,確定上述模擬搜索引擎未發(fā)生錯(cuò)誤。
步驟304,確定上述模擬搜索引擎發(fā)生錯(cuò)誤。
也就是說(shuō),當(dāng)重復(fù)度小于設(shè)定的重復(fù)度報(bào)警閾值時(shí),可以確定監(jiān)控系統(tǒng)中的模擬搜索引擎發(fā)生錯(cuò)誤,這也表示監(jiān)控系統(tǒng)監(jiān)控的搜索引擎的正確性可能出現(xiàn)問(wèn)題,這時(shí)候需要報(bào)警給相關(guān)人員進(jìn)行排查,確保監(jiān)控系統(tǒng)監(jiān)控的搜索引擎的正確性。
進(jìn)一步地,參見(jiàn)圖4,圖4為本發(fā)明搜索引擎的監(jiān)控方法再一個(gè)實(shí)施例的流程圖,如圖4所示,本發(fā)明圖1所示實(shí)施例提供的搜索引擎的監(jiān)控方法中,步驟101之后,還可以包括:
步驟401,監(jiān)控系統(tǒng)判斷上述監(jiān)控系統(tǒng)中模擬搜索引擎是否能正常返回搜索結(jié)果。如果是,則執(zhí)行步驟102;如果上述監(jiān)控系統(tǒng)中模擬搜索引擎不能正常返回搜索結(jié)果,則執(zhí)行步驟402。
步驟402,確定上述模擬搜索引擎發(fā)生故障,進(jìn)行報(bào)警。
也就是說(shuō),在監(jiān)控系統(tǒng)使用設(shè)定的搜索關(guān)鍵詞請(qǐng)求上述監(jiān)控系統(tǒng)中模擬搜索引擎服務(wù)之后,需要判斷監(jiān)控系統(tǒng)中模擬搜索引擎是否能正常返回搜索結(jié)果,如果能,則繼續(xù)執(zhí)行步驟102;而如果不能,則可以確定上述模擬搜索引擎發(fā)生故障,這也表示上述監(jiān)控系統(tǒng)監(jiān)控的搜索引擎的可用性可能出現(xiàn)問(wèn)題,需要報(bào)警給相關(guān)人員處理疑似問(wèn)題,以確保監(jiān)控系統(tǒng)監(jiān)控的搜索引擎的可用性。
進(jìn)一步地,參見(jiàn)圖5,圖5為本發(fā)明搜索引擎的監(jiān)控方法再一個(gè)實(shí)施例的流程圖,本發(fā)明圖1所示實(shí)施例提供的搜索引擎的監(jiān)控方法中,步驟101之前,還可以包括監(jiān)控系統(tǒng)的環(huán)境更新的過(guò)程,如圖5所示,監(jiān)控系統(tǒng)的環(huán)境更新的過(guò)程可以包括:
步驟501,監(jiān)控系統(tǒng)從線下文檔處理環(huán)境中獲取指定的文檔標(biāo)識(shí)對(duì)應(yīng)的文檔,上述指定的文檔標(biāo)識(shí)對(duì)應(yīng)的文檔是周期性更新的。
具體地,上述指定的文檔標(biāo)識(shí)對(duì)應(yīng)的文檔是周期性更新的可以為:上述指定的文檔標(biāo)識(shí)對(duì)應(yīng)的文檔是每日更新的,或者上述指定的文檔標(biāo)識(shí)對(duì)應(yīng)的文檔是每12小時(shí)更新的,等等,本實(shí)施例對(duì)上述指定的文檔標(biāo)識(shí)對(duì)應(yīng)的文檔的更新周期不作限定。
本實(shí)施例中,監(jiān)控系統(tǒng)去線下文檔處理環(huán)境中獲取每日更新的指定的文檔標(biāo)識(shí)對(duì)應(yīng)的文檔,可以保證每日監(jiān)控的文檔集合一定,從而使監(jiān)控對(duì)象具有可對(duì)比性。
步驟502,監(jiān)控系統(tǒng)在線上搜索引擎環(huán)境更新后,同步更新后的線上搜索引擎環(huán)境到 上述監(jiān)控系統(tǒng)中的模擬搜索引擎。
具體地,在線上搜索引擎環(huán)境更新后,監(jiān)控系統(tǒng)同步更新后的線上搜索引擎環(huán)境到上述監(jiān)控系統(tǒng)中的模擬搜索引擎,保證監(jiān)控系統(tǒng)中的模擬搜索引擎與線上搜索引擎的環(huán)境保持完全一致,使監(jiān)控系統(tǒng)中的模擬搜索引擎與線上搜索引擎的環(huán)境具有一致性。
步驟503,監(jiān)控系統(tǒng)使用上述模擬搜索引擎建立獲取的文檔對(duì)應(yīng)的倒排索引,進(jìn)行索引切換。
具體地,在監(jiān)控系統(tǒng)線上線下部分環(huán)境完全同步后,監(jiān)控系統(tǒng)使用新的環(huán)境建立步驟501中獲取的文檔對(duì)應(yīng)的倒排索引,并進(jìn)行索引切換,從而使監(jiān)控系統(tǒng)能真實(shí)反映線上搜索引擎的情況,使監(jiān)控系統(tǒng)具有真實(shí)性。
按照?qǐng)D5所示實(shí)施例的邏輯,監(jiān)控系統(tǒng)其實(shí)是線上搜索引擎的一個(gè)真實(shí)反映,但由于集群小,數(shù)據(jù)少,使得監(jiān)控系統(tǒng)的更新遠(yuǎn)遠(yuǎn)比線上搜索引擎的環(huán)境更新要快,單臺(tái)監(jiān)控機(jī)器,80w數(shù)據(jù)量的Doc,從數(shù)據(jù)更新到環(huán)境更新,可以在30分鐘之內(nèi)完成,從而能更快發(fā)現(xiàn)潛在的問(wèn)題,包括線下數(shù)據(jù)更新錯(cuò)誤、線上環(huán)境更新錯(cuò)誤和/或線上服務(wù)更新錯(cuò)誤等。
本發(fā)明針對(duì)傳統(tǒng)搜索排序監(jiān)控在系統(tǒng)正確性和可用性上的不足,提出一種搜索引擎的監(jiān)控方法,本發(fā)明提供的搜索引擎的監(jiān)控方法中,監(jiān)控系統(tǒng)將搜索引擎的可用性和正確性轉(zhuǎn)化為小數(shù)據(jù)集合上的系統(tǒng)可用性以及數(shù)據(jù)重復(fù)度來(lái)體現(xiàn),從而能夠在線上搜索引擎服務(wù)切換之前,發(fā)現(xiàn)潛在的問(wèn)題。
本發(fā)明提供的搜索引擎的監(jiān)控方法以小集群模擬線上搜索引擎更新的全流程,效率高,監(jiān)控的準(zhǔn)確度高;每天同步線上環(huán)境以及搜索引擎相關(guān)詞典,確保監(jiān)控系統(tǒng)與線上系統(tǒng)環(huán)境的一致性;另外,監(jiān)控系統(tǒng)每隔固定的時(shí)間,使用固定一批搜索關(guān)鍵詞來(lái)請(qǐng)求監(jiān)控系統(tǒng)中更新的搜索引擎服務(wù),可以確保搜索引擎的可用性,在獲取排序結(jié)果之后,通過(guò)對(duì)排序結(jié)果重復(fù)度的監(jiān)控來(lái)對(duì)線上搜索引擎的問(wèn)題進(jìn)行預(yù)警,可以確保搜索引擎的正確性。
圖6為本發(fā)明搜索引擎的監(jiān)控裝置一個(gè)實(shí)施例的結(jié)構(gòu)示意圖,本實(shí)施例中的搜索引擎的監(jiān)控裝置可以作為監(jiān)控系統(tǒng),或者監(jiān)控系統(tǒng)的一部分實(shí)現(xiàn)本發(fā)明圖1所示實(shí)施例的流程,如圖6所示,該搜索引擎的監(jiān)控裝置可以包括:搜索請(qǐng)求模塊61、獲取模塊62和確定模塊63;
其中,搜索請(qǐng)求模塊61,用于使用設(shè)定的搜索關(guān)鍵詞第一次請(qǐng)求上述搜索引擎的監(jiān)控裝置中模擬搜索引擎服務(wù),上述模擬搜索引擎與被監(jiān)控的搜索引擎按照設(shè)定的策略同步更新;
獲取模塊62,用于獲取上述模擬搜索引擎返回的與上述設(shè)定的搜索關(guān)鍵詞第一次請(qǐng)求 對(duì)應(yīng)的第一文檔集合;具體地,獲取模塊62可以獲取上述模擬搜索引擎返回的與上述設(shè)定的搜索關(guān)鍵詞第一次請(qǐng)求對(duì)應(yīng)的第一Doc排序列表,存入搜索日志中。
本實(shí)施例中,搜索請(qǐng)求模塊61,還用于使用相同的設(shè)定的搜索關(guān)鍵詞第二次請(qǐng)求上述搜索引擎的監(jiān)控裝置中模擬搜索引擎服務(wù);
獲取模塊62,還用于獲取上述模擬搜索引擎返回的與上述設(shè)定的搜索關(guān)鍵詞第二次請(qǐng)求對(duì)應(yīng)的第二文檔集合;具體地,獲取模塊62可以獲取上述模擬搜索引擎返回的與上述設(shè)定的搜索關(guān)鍵詞第二次請(qǐng)求對(duì)應(yīng)的第二Doc排序列表,存入搜索日志中。
本實(shí)施例中,搜索請(qǐng)求模塊61第一次請(qǐng)求與第二次請(qǐng)求上述搜索引擎的監(jiān)控裝置中的模擬搜索引擎服務(wù)之間間隔預(yù)定的時(shí)間長(zhǎng)度。其中,上述預(yù)定的時(shí)間長(zhǎng)度可以在具體實(shí)現(xiàn)時(shí)根據(jù)實(shí)現(xiàn)需求和/或系統(tǒng)性能等自行設(shè)定,本實(shí)施例對(duì)上述預(yù)定的時(shí)間長(zhǎng)度的長(zhǎng)短不作限定。
在具體實(shí)現(xiàn)時(shí),搜索請(qǐng)求模塊61可以每隔t分鐘使用設(shè)定的搜索關(guān)鍵詞請(qǐng)求上述搜索引擎的監(jiān)控裝置中更新的搜索引擎服務(wù)。
其中,t的大小可以在具體實(shí)現(xiàn)時(shí)根據(jù)實(shí)現(xiàn)需求和/或系統(tǒng)性能等自行設(shè)定,本實(shí)施例對(duì)t的大小不作限定。
確定模塊63,用于根據(jù)第一文檔集合和第二文檔集合中文檔的重復(fù)度,確定上述模擬搜索引擎的正確性,以對(duì)上述搜索引擎的監(jiān)控裝置監(jiān)控的搜索引擎進(jìn)行預(yù)警。
上述搜索引擎的監(jiān)控裝置中,搜索請(qǐng)求模塊61使用設(shè)定的搜索關(guān)鍵詞請(qǐng)求搜索引擎的監(jiān)控裝置中更新的搜索引擎服務(wù),獲取模塊62獲取上述搜索引擎返回的設(shè)定的搜索關(guān)鍵詞對(duì)應(yīng)的文檔集合,然后確定模塊63根據(jù)同一搜索關(guān)鍵詞相鄰兩次請(qǐng)求獲取的第一文檔集合和第二文檔集合中文檔的重復(fù)度,確定搜索引擎的監(jiān)控裝置中模擬搜索引擎的正確性,以對(duì)搜索引擎的監(jiān)控裝置監(jiān)控的搜索引擎進(jìn)行預(yù)警,從而可以提升搜索引擎的穩(wěn)定性,確保搜索引擎的可用性和正確性。
圖7為本發(fā)明搜索引擎的監(jiān)控裝置另一個(gè)實(shí)施例的結(jié)構(gòu)示意圖,本實(shí)施例中的搜索引擎的監(jiān)控裝置可以實(shí)現(xiàn)本發(fā)明圖3~圖5所示實(shí)施例的流程,與圖6所示的搜索引擎的監(jiān)控裝置相比,不同之處在于,圖7所示的搜索引擎的監(jiān)控裝置中,確定模塊63可以包括:計(jì)算子模塊631、判斷子模塊632和正確性確定子模塊633;
其中,計(jì)算子模塊631,用于計(jì)算第一文檔集合與第二文檔集合中按序選擇的至少兩個(gè)文檔的重復(fù)度;具體地,計(jì)算子模塊631可以根據(jù)獲取模塊62獲取的搜索日志,對(duì)第一文檔集合與第二文檔集合中按序選擇的前N個(gè)Doc的重復(fù)度按照式(1)進(jìn)行計(jì)算。
判斷子模塊632,用于判斷計(jì)算子模塊631計(jì)算的重復(fù)度是否大于或等于重復(fù)度報(bào)警 閾值;其中,上述重復(fù)度報(bào)警閾值可以在具體實(shí)現(xiàn)時(shí)根據(jù)實(shí)現(xiàn)需求和/或系統(tǒng)性能等自行設(shè)定,本實(shí)施例對(duì)上述重復(fù)度報(bào)警閾值的大小不作限定。
正確性確定子模塊633,用于當(dāng)判斷子模塊632確定計(jì)算子模塊631計(jì)算的重復(fù)度大于或等于重復(fù)度報(bào)警閾值時(shí),確定上述模擬搜索引擎未發(fā)生錯(cuò)誤;當(dāng)判斷子模塊632確定計(jì)算子模塊631計(jì)算的重復(fù)度小于上述重復(fù)度報(bào)警閾值時(shí),確定上述模擬搜索引擎發(fā)生錯(cuò)誤。
也就是說(shuō),當(dāng)重復(fù)度小于設(shè)定的重復(fù)度報(bào)警閾值時(shí),正確性確定子模塊633可以確定上述模擬搜索引擎發(fā)生錯(cuò)誤,這也表示搜索引擎的監(jiān)控裝置所監(jiān)控的搜索引擎的正確性可能出現(xiàn)問(wèn)題,這時(shí)候需要報(bào)警給相關(guān)人員進(jìn)行排查,確保搜索引擎的監(jiān)控裝置所監(jiān)控的搜索引擎的正確性。
進(jìn)一步地,上述搜索引擎的監(jiān)控裝置還可以包括:判斷模塊64;
判斷模塊64,用于在搜索請(qǐng)求模塊61使用設(shè)定的搜索關(guān)鍵詞第一次請(qǐng)求上述搜索引擎的監(jiān)控裝置中模擬搜索引擎服務(wù)之后,判斷上述搜索引擎的監(jiān)控裝置中模擬搜索引擎是否能正常返回搜索結(jié)果;
獲取模塊62,具體用于當(dāng)判斷模塊64確定上述搜索引擎的監(jiān)控裝置中模擬搜索引擎能正常返回搜索結(jié)果時(shí),執(zhí)行獲取上述模擬搜索引擎返回的上述設(shè)定的搜索關(guān)鍵詞第一次請(qǐng)求對(duì)應(yīng)的第一文檔集合的步驟;
確定模塊63,還用于當(dāng)判斷模塊64確定上述搜索引擎的監(jiān)控裝置中模擬搜索引擎不能正常返回搜索結(jié)果時(shí),確定上述模擬搜索引擎發(fā)生故障,進(jìn)行報(bào)警。
也就是說(shuō),在搜索請(qǐng)求模塊61使用設(shè)定的搜索關(guān)鍵詞請(qǐng)求上述搜索引擎的監(jiān)控裝置中模擬搜索引擎服務(wù)之后,判斷模塊64需要判斷搜索引擎的監(jiān)控裝置中模擬搜索引擎是否能正常返回搜索結(jié)果,如果能,則獲取模塊62執(zhí)行獲取上述模擬搜索引擎返回的與上述設(shè)定的搜索關(guān)鍵詞第一次請(qǐng)求對(duì)應(yīng)的第一文檔集合的步驟;而如果不能,則確定模塊63可以確定上述模擬搜索引擎發(fā)生故障,這也表示上述搜索引擎的監(jiān)控裝置監(jiān)控的搜索引擎的可用性可能出現(xiàn)問(wèn)題,需要報(bào)警給相關(guān)人員處理疑似問(wèn)題,以確保上述搜索引擎的監(jiān)控裝置監(jiān)控的搜索引擎的可用性。
進(jìn)一步地,上述搜索引擎的監(jiān)控裝置還可以包括:同步模塊65、建立模塊66和切換模塊67;
獲取模塊62,還用于在搜索請(qǐng)求模塊61使用設(shè)定的搜索關(guān)鍵詞第一次請(qǐng)求上述搜索引擎的監(jiān)控裝置中模擬搜索引擎服務(wù)之前,從線下文檔處理環(huán)境中獲取指定的文檔標(biāo)識(shí)對(duì)應(yīng)的文檔,上述指定的文檔標(biāo)識(shí)對(duì)應(yīng)的文檔是周期性更新的;具體地,上述指定的文檔標(biāo) 識(shí)對(duì)應(yīng)的文檔是周期性更新的可以為:上述指定的文檔標(biāo)識(shí)對(duì)應(yīng)的文檔是每日更新的,或者上述指定的文檔標(biāo)識(shí)對(duì)應(yīng)的文檔是每12小時(shí)更新的,等等,本實(shí)施例對(duì)上述指定的文檔標(biāo)識(shí)對(duì)應(yīng)的文檔的更新周期不作限定。
本實(shí)施例中,獲取模塊62去線下文檔處理環(huán)境中獲取每日更新的指定的文檔標(biāo)識(shí)對(duì)應(yīng)的文檔,可以保證每日監(jiān)控的文檔集合一定,從而使監(jiān)控對(duì)象具有可對(duì)比性。
同步模塊65,用于在線上搜索引擎環(huán)境更新后,同步更新后的線上搜索引擎環(huán)境到上述搜索引擎的監(jiān)控裝置中的模擬搜索引擎;具體地,在線上搜索引擎環(huán)境更新后,同步模塊65同步更新后的線上搜索引擎環(huán)境到上述搜索引擎的監(jiān)控裝置中的模擬搜索引擎,保證搜索引擎的監(jiān)控裝置中的模擬搜索引擎與線上搜索引擎的環(huán)境保持完全一致,使搜索引擎的監(jiān)控裝置中的模擬搜索引擎與線上搜索引擎的環(huán)境具有一致性。
建立模塊66,用于使用上述模擬搜索引擎建立獲取模塊62獲取的文檔對(duì)應(yīng)的倒排索引;
切換模塊67,用于進(jìn)行索引切換。
具體地,在搜索引擎的監(jiān)控裝置線上線下部分環(huán)境完全同步后,建立模塊66使用新的環(huán)境建立獲取模塊62獲取的文檔對(duì)應(yīng)的倒排索引,并由切換模塊67進(jìn)行索引切換,從而使搜索引擎的監(jiān)控裝置能真實(shí)反映線上搜索引擎的情況,使搜索引擎的監(jiān)控裝置具有真實(shí)性。
上述搜索引擎的監(jiān)控裝置其實(shí)是線上搜索引擎的一個(gè)真實(shí)反映,但由于集群小,數(shù)據(jù)少,使得搜索引擎的監(jiān)控裝置的更新遠(yuǎn)遠(yuǎn)比線上搜索引擎的環(huán)境更新要快,單臺(tái)監(jiān)控機(jī)器,80w數(shù)據(jù)量的Doc,從數(shù)據(jù)更新到環(huán)境更新,可以在30分鐘之內(nèi)完成,從而能更快發(fā)現(xiàn)潛在的問(wèn)題,包括線下數(shù)據(jù)更新錯(cuò)誤、線上環(huán)境更新錯(cuò)誤和/或線上服務(wù)更新錯(cuò)誤等,進(jìn)而可以確保搜索引擎的可用性和正確性。
需要說(shuō)明的是,在本發(fā)明的描述中,術(shù)語(yǔ)“第一”、“第二”等僅用于描述目的,而不能理解為指示或暗示相對(duì)重要性。此外,在本發(fā)明的描述中,除非另有說(shuō)明,“多個(gè)”的含義是兩個(gè)或兩個(gè)以上。
流程圖中或在此以其他方式描述的任何過(guò)程或方法描述可以被理解為,表示包括一個(gè)或更多個(gè)用于實(shí)現(xiàn)特定邏輯功能或過(guò)程的步驟的可執(zhí)行指令的代碼的模塊、片段或部分,并且本發(fā)明的優(yōu)選實(shí)施方式的范圍包括另外的實(shí)現(xiàn),其中可以不按所示出或討論的順序,包括根據(jù)所涉及的功能按基本同時(shí)的方式或按相反的順序,來(lái)執(zhí)行功能,這應(yīng)被本發(fā)明的實(shí)施例所屬技術(shù)領(lǐng)域的技術(shù)人員所理解。
應(yīng)當(dāng)理解,本發(fā)明的各部分可以用硬件、軟件、固件或它們的組合來(lái)實(shí)現(xiàn)。在上述實(shí) 施方式中,多個(gè)步驟或方法可以用存儲(chǔ)在存儲(chǔ)器中且由合適的指令執(zhí)行系統(tǒng)執(zhí)行的軟件或固件來(lái)實(shí)現(xiàn)。例如,如果用硬件來(lái)實(shí)現(xiàn),和在另一實(shí)施方式中一樣,可用本領(lǐng)域公知的下列技術(shù)中的任一項(xiàng)或他們的組合來(lái)實(shí)現(xiàn):具有用于對(duì)數(shù)據(jù)信號(hào)實(shí)現(xiàn)邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(Programmable Gate Array;以下簡(jiǎn)稱:PGA),現(xiàn)場(chǎng)可編程門陣列(Field Programmable Gate Array;以下簡(jiǎn)稱:FPGA)等。
本技術(shù)領(lǐng)域的普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法攜帶的全部或部分步驟是可以通過(guò)程序來(lái)指令相關(guān)的硬件完成,所述的程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),包括方法實(shí)施例的步驟之一或其組合。
此外,本發(fā)明各個(gè)實(shí)施例中的各功能模塊可以集成在一個(gè)處理模塊中,也可以是各個(gè)模塊單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上模塊集成在一個(gè)模塊中。上述集成的模塊既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能模塊的形式實(shí)現(xiàn)。所述集成的模塊如果以軟件功能模塊的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),也可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。
上述提到的存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤或光盤等。
在本說(shuō)明書的描述中,參考術(shù)語(yǔ)“一個(gè)實(shí)施例”、“一些實(shí)施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結(jié)合該實(shí)施例或示例描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)包含于本發(fā)明的至少一個(gè)實(shí)施例或示例中。在本說(shuō)明書中,對(duì)上述術(shù)語(yǔ)的示意性表述不一定指的是相同的實(shí)施例或示例。而且,描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)可以在任何的一個(gè)或多個(gè)實(shí)施例或示例中以合適的方式結(jié)合。
盡管上面已經(jīng)示出和描述了本發(fā)明的實(shí)施例,可以理解的是,上述實(shí)施例是示例性的,不能理解為對(duì)本發(fā)明的限制,本領(lǐng)域的普通技術(shù)人員在本發(fā)明的范圍內(nèi)可以對(duì)上述實(shí)施例進(jìn)行變化、修改、替換和變型。