TWI647578B - Search engine based document indexing method, data query method and server - Google Patents

Search engine based document indexing method, data query method and server Download PDF

Info

Publication number
TWI647578B
TWI647578B TW099106787A TW99106787A TWI647578B TW I647578 B TWI647578 B TW I647578B TW 099106787 A TW099106787 A TW 099106787A TW 99106787 A TW99106787 A TW 99106787A TW I647578 B TWI647578 B TW I647578B
Authority
TW
Taiwan
Prior art keywords
participle
unary
word
segmentation
filter
Prior art date
Application number
TW099106787A
Other languages
English (en)
Other versions
TW201131396A (en
Inventor
魏磊
沈加翔
Original Assignee
阿里巴巴集團控股有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 阿里巴巴集團控股有限公司 filed Critical 阿里巴巴集團控股有限公司
Priority to TW099106787A priority Critical patent/TWI647578B/zh
Publication of TW201131396A publication Critical patent/TW201131396A/zh
Application granted granted Critical
Publication of TWI647578B publication Critical patent/TWI647578B/zh

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申請案之實施例揭示基於搜索引擎的文檔索引方法、資料查詢方法及伺服器,所述文檔索引方法包括:獲取待索引的文檔,並對所述文檔進行分詞操作得到一元分詞;判斷每個一元分詞是否為過濾字,若所述一元分詞是過濾字,則將所述一元分詞和與所述一元分詞順序相鄰的至少一個一元分詞成多元分詞,對所述多元分詞建立索引;若所述一元分詞不是過濾字,則直接對所述一元分詞建立索引。本申請案之實施例中在進行索引或查詢時,將作為高頻字的一元分詞與其相鄰的至少一個一元分詞成多元分詞,以確保不會因為對高頻字進行索引而導致查詢時浪費搜索引擎的資源,並且也不會因為跳過對高頻字的索引而導致查詢結果不準確。

Description

基於搜索引擎的文檔索引方法、資料查詢方法及伺服器
本申請案係有關搜索引擎技術領域,尤其有關一種基於搜索引擎的文檔索引方法、資料查詢方法及伺服器。
搜索引擎(Search Engine)是指根據一定的策略、運用特定的電腦程式集網際網路上的資訊,在對資訊進行組織和處理後,並將處理後的資訊顯示給用戶,為用戶提供檢索服務的系統。
搜索引擎的工作原理如下:首先,進行網頁抓取,每個獨立的搜索引擎都有自己的網頁抓取程式,俗稱網路蜘蛛(Spider),Spider順著網頁中的超鏈結,連續地抓取網頁,所抓取到的網頁被稱為網頁快照,由於網際網路中超鏈結的應用很普遍,理論上,從一定範圍的網頁出發,就能搜集到絕大多數的網頁;其次,進行網頁處理,搜索引擎抓到網頁後,提取關鍵字,建立索引檔;才能提供檢索服務;最後,提供檢索服務,用戶輸入關鍵字進行檢索,搜索引擎從索引資料庫中找到匹配該關鍵字的網頁,為了用戶便於判斷,除了網頁標題和URL外,還會提供一段來自網頁的摘要以及其他資訊。
對於中文搜索引擎來說,在進行索引和查詢時,都需要進行中文分詞的操作,其中常用的中文分詞方法為一元分詞法,亦即將句子中的每個漢字作為一個單位,假設待 索引的句子為“中國股市”,則經過一元分詞後的結果為四個單字,分別為“中”、“國”、“股”、“市”。以“市”字為例,在索引了600萬個文檔的單台搜索引擎伺服器內,“市”字出現的概率高達93%,因此在根據一元分詞劃分結果查詢“中國股市”時,對於“市”字的查詢將極大消耗搜索引擎伺服器的資源,因此在搜索引擎內,預先保存了高頻字列表,對於高頻字採用過濾的方式不進行查詢,因此搜索“中國股市”就簡化為搜索“中國股”,以跳過對高頻字“市”的查詢。
在對現有技術的研究和實踐過程中,發明人發現現有技術中存在以下問題:在採用一元分詞法進行索引和查詢時,雖然透過預先設置的高頻字列表跳過了對高頻字的查詢,但是卻會導致查詢結果不準確。仍然以查詢“中國股市”為例,雖然跳過了“市”字的查詢,但是返回的查詢結果中將包括大量的“中國股民”、“中國股票”等包含“中國股”的查詢結果,因此導致查詢結果與需要查詢的內容不相符。
本申請案之實施例的目的在於提供一種基於搜索引擎的文檔索引方法、資料查詢方法及伺服器,以解決現有透過高頻詞過濾方式進行索引和查詢,導致查詢結果不準確的問題。
為解決上述技術問題,本申請案之實施例提供了一種 基於搜索引擎的文檔索引方法,是這樣實現的:一種基於搜索引擎的文檔索引方法,包括:獲取待索引的文檔,並對所述文檔進行分詞操作得到一元分詞;判斷每個一元分詞是否為過濾字,若所述一元分詞是過濾字,將所述一元分詞和與所述一元分詞順序相鄰的至少一個一元分詞成多元分詞,對所述多元分詞建立索引;若所述一元分詞不是過濾字,則直接對所述一元分詞建立索引。為解決上述技術問題,本申請案之實施例提供了一種基於搜索引擎的資料查詢方法,是這樣實現的:一種基於搜索引擎的資料查詢方法,所述資料查詢方法應用所述文檔索引方法所建立的索引,包括:獲取待查詢的資料,並對所述資料進行分詞操作得到一元分詞;判斷每個一元分詞是否為過濾字,若所述一元分詞是過濾字,將所述一元分詞和與所述一元分詞順序相鄰的至少一個一元分詞成多元分詞,根據所述多元分詞查找所述索引,若所述一元分詞不是過濾字,則根據所述一元分詞查找所述索引;將查找所述索引後得到的查詢結果進行合併。
為解決上述技術問題,本申請案之實施例還提供了一種基於搜索引擎的文檔索引伺服器,是這樣實現的:一種基於搜索引擎的文檔索引伺服器,包括: 獲取單元,用以獲取待索引的文檔;分詞單元,用以對所述獲取單元獲取的文檔進行分詞操作得到一元分詞;判斷單元,用以判斷每個一元分詞是否為過濾字;索引單元,用以當所述判斷單元判斷所述一元分詞是過濾字時,將所述一元分詞和與所述一元分詞順序相鄰的至少一個一元分詞成多元分詞,對所述多元分詞建立索引,當所述判斷單元判斷所述一元分詞不是過濾字時,則直接對所述一元分詞建立索引。
為解決上述技術問題,本申請案之實施例還提供了一種基於搜索引擎的資料查詢伺服器,是這樣實現的:一種基於搜索引擎的資料查詢伺服器,所述資料查詢伺服器應用所述文檔索引伺服器所建立的索引,包括:獲取單元,用以獲取待查詢的資料;分詞單元,用以對所述獲取單元獲取的資料進行分詞操作得到一元分詞;判斷單元,用以判斷每個一元分詞是否為過濾字;查找單元,用以當所述判斷單元判斷所述一元分詞是過濾字時,將所述一元分詞和與所述一元分詞順序相鄰的至少一個一元分詞成多元分詞,根據所述多元分詞查找所述索引,當所述判斷單元判斷所述一元分詞不是過濾字時,則根據所述一元分詞查找所述索引;合併單元,用以將所述查找單元查找所述索引後得到的查詢結果進行合併。
可見,本申請案之實施例中在進行索引或查詢時,將作為高頻字的一元分詞與其相鄰的至少一個一元分詞成多元分詞,以保證不會因為對高頻字進行索引而導致查詢時浪費搜索引擎的資源,並且也不會因為跳過對高頻字的索引而導致查詢結果不準確;以查詢“中國股市”為例,本申請案之實施例將以分詞“中”、“國”、“股”、“股市”進行查詢,由於分詞“股市”的命中率遠低於高頻字“市”的命中率,並且也不會由於跳過對“市”的查詢而查詢到除“股市”以外的分詞,因此在降低搜索引擎資源消耗的同時可以返回正確的查詢結果,由此提高了搜索引擎的性能。
本申請案之實施例提供一種基於搜索引擎的文檔索引方法、資料查詢方法及伺服器。
為了使本技術領域的人員更好地理解本申請案之實施例中的技術方案,並使本申請案之實施例的上述目的、特徵和優點能夠更加明顯易懂,下面結合附圖對本申請案之實施例中技術方案作進一步詳細的說明。
搜索引擎按照功能劃分,通常由搜索模組、索引模組、查詢模組和用戶介面模組四個部分組成。其中,搜索模組的功能是透過Spider在網際網路中漫遊,發現和搜集網頁資訊;索引模組的功能是從搜索模組搜索到的網頁中抽取出索引項,用以表示文檔以及產生文檔庫的索引表;查 詢模組的功能是根據用戶的查詢在索引庫中檢索文檔,並對將要輸出的結果進行排序,按照用戶的查詢需求合理回饋資訊;用戶介面模組的作用是接收用戶的查詢請求,並向用戶返回查詢結果。本申請案之實施例主要描述搜索引擎中的索引功能和查詢功能的實現過程。
為了使本技術領域的人員更好地理解本申請案中的技術方案,下面將結合本申請案之實施例中的附圖,對本申請案之實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請案的一部分實施例,而不是全部的實施例。基於本申請案中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都應當屬於本申請案之保護的範圍。
參見圖1,為本申請案之基於搜索引擎的文檔索引方法的第一實施例流程圖:
步驟101:獲取待索引的文檔。
本申請案之實施例中待索引的文檔通常為透過搜索引擎的搜索功能從網際網路中搜集的網頁資訊,這些網頁資訊被保存在搜索引擎伺服器的儲存空間內(例如磁片),當搜索引擎伺服器需要進行索引時,則從儲存空間內獲取還未索引過的網頁資訊。
步驟102:對待索引的文檔進行分詞操作得到一元分詞。
需要說明的是,如果待索引的文檔中只有一個字,並且該字是高頻字,則不再為該文檔建立索引。
步驟103:判斷每個一元分詞是否為過濾字,若是,則執行步驟104:否則,執行步驟105。
其中,過濾字就是搜索引擎在查詢時會直接忽略不查的高頻字,這些高頻字由於在文檔中出現的頻率較高,因此查詢時會耗費大量系統資源,所以通常事先透過統計等手段在索引前就確定好過濾字列表,用以後續查詢時跳過對這些高頻字的查詢。例如,根據統計結果,“中國股市”中的“市”為高頻字,因此可以將“市”寫入過濾字列表。
通常對文檔分詞後得到的一元分詞結果中包含若干個一元分詞,因此順序對每個一元分詞是否為過濾字進行判斷。
步驟104:將一元分詞和與該一元分詞順序相鄰的至少一個一元分詞成多元分詞,對該多元分詞建立索引,結束目前流程。
其中,較佳地,將一元分詞和與該一元分詞順序相鄰的一元分詞成二元分詞,對於判斷為高頻字的目前一元分詞,如果該一元分詞是文檔中的第一個一元分詞時,則將該一元分詞與其後一個一元分詞成二元分詞;如果該一元分詞是文檔中的最後一個一元分詞時,則將該一元分詞與其前一個一元分詞成二元分詞;如果該一元分詞不是該文檔中的第一個一元分詞和最後一個一元分詞,則將該一元分詞與其前一個一元分詞和後一個一元分詞分別組成二元分詞。
對於按照上述方式組成的二元分詞建立索引,由上述描述可知,兩個相鄰的一元分詞成一個二元分詞,例如,“我”和“的”是兩個一元分詞,則將它們結合起來組成“我的”就是二元分詞。
同理,多元分詞指至少兩個相鄰的一元分詞成一個多元分詞,除了上述二元分詞外,還有三元分詞、四元分詞等,例如,由“中”、“國”和“人”組成一個三元分詞“中國人”。
步驟105:直接對該一元分詞建立索引,結束目前流程。
對於不是高頻字的一元分詞,則按照現有技術中的方式直接對其建立索引。
參見圖2,為本申請案之基於搜索引擎的文檔索引方法的第二實施例流程圖,該實施例以多元分詞為二元分詞為例,詳細描述了文檔索引過程:
步驟201:預先設置過濾字列表。
過濾字列表的設置可以透過對網際網路中大量文檔的統計計算得到。例如,假設對600萬個文檔分別進行一元分詞,然後計算這些一元分詞在每個文檔中出現的次數,最後對這些一元分詞出現的次數進行排序,取排序最高(例如前10個)的一元分詞作為高頻字,構建高頻字列表。
步驟202:載入過濾字列表後,獲取待索引的文檔。
步驟203:對待索引的文檔進行分詞操作得到一元分 詞。
步驟204:遍歷所述一元分詞。
遍歷一元分詞,亦即按照文檔的分詞結果順序獲取每一個一元分詞,並對獲取的每一個一元分詞執行後續是否為過濾字的判斷步驟。
步驟205:透過查找過濾字列表判斷目前一元分詞是否為過濾字,若是,則執行步驟206;否則,執行步驟208。
步驟206:將所述一元分詞和與所述一元分詞順序相鄰的一元分詞成二元分詞。
步驟207:對二元分詞建立索引,執行步驟209。
步驟208:直接對一元分詞建立索引。
步驟209:判斷是否遍歷完所述一元分詞,若是,則結束目前流程;否則,返回步驟204。
上述本申請案之基於搜索引擎的文檔索引方法的第二實施例中,步驟204至步驟208可以採用如下示例的虛擬碼實現:
在搜索引擎中應用上述文檔索引方法實施例建立的索引中,沒有為高頻字建立的索引,但包括了對高頻字與其相鄰的字組合而成的二元分詞建立的索引,為後續資料查詢的準確性提供了保證。
與本申請案之基於搜索引擎的文檔索引方法的實施例相對應,本申請案還提供了基於搜索引擎的資料查詢方法的實施例,所述資料查詢方法的實施例透過應用所述文檔索引方法的實施例所建立的索引進行資料查詢。
參見圖3,為本申請案之基於搜索引擎的資料查詢方法的第一實施例流程圖;
步驟301:獲取待查詢的資料。
待查詢的資料通常為網際網路用戶從網站前端輸入的需要查詢的資料,由搜索引擎接收該輸入的查詢資料。
步驟302:對待查詢的資料進行分詞操作得到一元分詞。
步驟303:判斷每個一元分詞是否為過濾字,若是,則執行步驟304;否則,執行步驟305。
通常對資料分詞後得到的一元分詞結果中包含若干個一元分詞,因此順序對每個一元分詞是否為過濾字進行判斷。
步驟304:將一元分詞和與該一元分詞順序相鄰的至少一個一元分詞成多元分詞,根據該多元分詞查找建立的 索引,執行步驟306。
其中,較佳地,將所述一元分詞和與所述一元分詞順序相鄰的一元分詞成二元分詞,對於判斷為高頻字的目前一元分詞,如果該一元分詞是待查詢資料中的第一個一元分詞,則將該一元分詞與其後一個一元分詞成二元分詞;如果該一元分詞不是待查詢資料中的第一個一元分詞,則將該一元分詞與其前一個一元分詞或後一個一元分詞成二元分詞。
步驟305:根據該一元分詞查找建立的索引。
步驟306:將查找索引後得到的查詢結果進行合併,結束目前流程。
參見圖4,為本申請案之基於搜索引擎的資料查詢方法的第二實施例流程圖,該實施例以多元分詞為二元分詞為例,詳細描述了資料查詢過程:
步驟401:載入預先設置的過濾字列表後,獲取待查詢的資料。
步驟402:對待查詢的資料進行分詞操作得到一元分詞。
步驟403:遍歷所述一元分詞。
遍歷一元分詞,亦即按照待查詢資料的分詞結果順序獲取每一個一元分詞,並對獲取的一元分詞執行後續是否為過濾字的判斷步驟。
步驟404:透過查找過濾字列表判斷目前一元分詞是否為過濾字,若是,則執行步驟405;否則,執行步驟 407。
步驟405:將所述一元分詞和與所述一元分詞順序相鄰的一元分詞成二元分詞。
步驟406:根據該二元分詞查找建立的索引,執行步驟208。
步驟407:根據該一元分詞查找建立的索引。
步驟408:判斷是否遍歷完所述一元分詞,若是,則執行步驟409;否則,返回步驟403。
步驟409:將查找索引後得到的所有查詢結果進行合併,結束目前流程。
對於根據每個分詞查詢索引後得到的結果進行合併,進一步還可以根據預先設置的條件(例如返回20個結果)向用戶返回最終顯示的查詢結果,此處與現有技術一致,在此不再贅述。
上述本申請案之基於搜索引擎的資料查詢方法的第二實施例中,步驟403至步驟407可以採用如下示例的虛擬碼實現:
在搜索引擎中應用上述資料查詢方法實施例進行資料查詢,由於建立的索引中沒有高頻字,並且將高頻字與其他字組成二元分詞後建立了索引,因此在資料查詢時不會因為對高頻字進行索引而浪費搜索引擎的資源,並且也不會因為跳過對高頻字的查詢而導致結果不準確。
另外,需要說明的是,上述本申請案之索引和查詢實施例應用在中文搜索引擎時,其中對待查詢的資料進行分詞操作得到的一元分詞指每個單字,以“中國股市”為例,根據統計結果預先設置的過濾字為“市”,劃分得到的一元分詞為“中”、“國”、“股”、“市”;當上述本申請案之索引和查詢實施例應用在外文搜索引擎時,以英文“Chinese Stock Market”為例,則假設根據統計“Stock”是過濾字,則按照英文分詞特點劃分得到的一元分詞為“Chinese”、“Stock”、“Market”,後續索引和查詢的過程與中文字一致,亦即在索引時,過濾“Stock”後,得到的索引分別為“Chinese”、“Chinese Stock”、“Stock Market”和“Market”;查詢時,可以對“Chinese”、“Chinese Stock”、“Market”進行查詢,在此不再贅述。
與本申請案之基於搜索引擎的文檔索引方法和資料查 詢方法的實施例相對應,本申請案還提供了基於搜索引擎的文檔索引伺服器和資料查詢伺服器的實施例。
參見圖5,為本申請案之基於搜索引擎的文檔索引伺服器的第一實施例方塊圖:
該文檔索引伺服器包括:獲取單元510、分詞單元520、判斷單元530和索引單元540。
其中,獲取單元510,用以獲取待索引的文檔;分詞單元520,用以對所述獲取單元510獲取的文檔進行分詞操作得到一元分詞;判斷單元530,用以判斷每個一元分詞是否為過濾字;索引單元540,用以當所述判斷單元530判斷所述一元分詞是過濾字時,將所述一元分詞和與所述一元分詞順序相鄰的至少一個一元分詞成多元分詞,對所述多元分詞建立索引,當所述判斷單元530判斷所述一元分詞不是過濾字時,則直接對所述一元分詞建立索引。
參見圖6,為本申請案之基於搜索引擎的文檔索引伺服器的第二實施例方塊圖:該文檔索引伺服器包括:預置單元610、載入單元620、獲取單元630、分詞單元640、判斷單元650和索引單元660。
其中,預置單元610,用以預先設置過濾字列表;載入單元620,用以載入所述閾值單元610中的過濾字列表; 獲取單元630,用以獲取待索引的文檔;分詞單元640,用以對所述獲取單元630獲取的文檔進行分詞操作得到一元分詞;判斷單元650,用以判斷每個一元分詞是否為過濾字;索引單元660,用以當所述判斷單元650判斷所述一元分詞是過濾字時,將所述一元分詞和與所述一元分詞順序相鄰的至少一個一元分詞成多元分詞,對所述多元分詞建立索引,當所述判斷單元650判斷所述一元分詞不是過濾字時,則直接對所述一元分詞建立索引。較佳地,索引單元660將所述一元分詞和與所述一元分詞順序相鄰的一元分詞成二元分詞,對所述二元分詞建立索引。
具體上,判斷單元650可以包括(圖6中未示出):遍歷分詞單元,用以遍歷所述一元分詞;查找過濾字單元,用以透過查找所述過濾字列表判斷每個一元分詞是否為過濾字。
本申請案提供的基於搜索引擎的資料查詢伺服器的實施例透過應用所述文檔索引伺服器的實施例所建立的索引進行資料查詢。
參見圖7,為本申請案之基於搜索引擎的資料查詢伺服器的第一實施例方塊圖:該資料查詢伺服器包括:獲取單元710、分詞單元720、判斷單元730、查找單元740和合併單元750。
獲取單元710,用以獲取待查詢的資料; 分詞單元720,用以對所述獲取單元獲取的資料進行分詞操作得到一元分詞;判斷單元730,用以判斷每個一元分詞是否為過濾字;查找單元740,用以當所述判斷單元730判斷所述一元分詞是過濾字時,將所述一元分詞和與所述一元分詞順序相鄰的至少一個一元分詞成多元分詞,根據所述多元分詞查找所述索引,當所述判斷單元730判斷所述一元分詞不是過濾字時,則根據所述一元分詞查找所述索引;合併單元750,用以將所述查找單元740查找所述索引後得到的查詢結果進行合併。
參見圖8,為本申請案之基於搜索引擎的資料查詢伺服器的第二實施例方塊圖:該資料查詢伺服器包括:載入單元810、獲取單元820、分詞單元830、判斷單元840、查找單元850和合併單元860。
載入單元810,用以載入預先設置的過濾字列表;獲取單元820,用以獲取待查詢的資料;分詞單元830,用以對所述獲取單元820獲取的資料進行分詞操作得到一元分詞;判斷單元840,用以判斷每個一元分詞是否為過濾字;查找單元850,用以當所述判斷單元840判斷所述一元分詞是過濾字時,將所述一元分詞和與所述一元分詞順 序相鄰的至少一個一元分詞成多元分詞,根據所述多元分詞查找所述索引,當所述判斷單元840判斷所述一元分詞不是過濾字時,則根據所述一元分詞查找所述索引;較佳地,查找單元850將所述一元分詞和與所述一元分詞順序相鄰的一元分詞成二元分詞,根據所述二元分詞查找所述索引;合併單元860,用以將所述查找單元850查找所述索引後得到的查詢結果進行合併。
具體上,判斷單元840可以包括(圖8中未示出):遍歷分詞單元,用以遍歷所述一元分詞;查找過濾字單元,用以透過查找所述過濾字列表判斷每個一元分詞是否為過濾字。
透過以上的實施方式的描述可知,本申請案之實施例在對搜索引擎的索引和查詢過程中,透過將高頻一元分詞成有限多元分詞,從而將對高頻字的查詢轉換為對低頻詞的查詢,在獲取正確查詢結果的基礎上降低了搜索引擎的負載,提升了搜索引擎的查詢性能。
透過以上的實施方式的描述可知,本領域的技術人員可以清楚地瞭解到本申請案可借助軟體加必需的通用硬體平臺的方式來實現。基於這樣的理解,本申請案的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟體產品的形式體現出來,該電腦軟體產品可以儲存在儲存媒體中,如ROM/RAM、磁片、光碟等,包括若干指令用以使得一台電腦設備(可以是個人電腦,伺服器,或者網路設 備等)執行本申請案之各個實施例或者實施例的某些部分所述的方法。
本說明書中的各個實施例均採用漸進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對於系統實施例而言,由於其基本相似於方法實施例,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。
本申請案可用於許多通用或專用的計算系統環境或配置中。例如:個人電腦、伺服器電腦、手持設備或攜帶型設備、平板型設備、多處理器系統、基於微處理器的系統、置頂盒、可編程的消費電子設備、網路PC、小型電腦、大型電腦、包括以上任何系統或設備的分散式計算環境等等。
本申請案可以在由電腦執行的電腦可執行指令的一般上下文中描述,例如程式模組。一般地,程式模組包括執行特定任務或實現特定抽象資料類型的常式、程式、物件、元件、資料結構等等。也可以在分散式計算環境中實踐本申請案,在這些分散式計算環境中,由透過通信網路而被連接的遠端處理設備來執行任務。在分散式計算環境中,程式模組可以位於包括儲存設備在內的本地和遠端電腦儲存媒體中。
雖然透過實施例描繪了本申請案,本領域普通技術人員知道,本申請案有許多變形和變化而不脫離本申請案的精神,希望所附加的申請專利範圍包括這些變型和變化而 不違離本申請案的精神。
510‧‧‧獲取單元
520‧‧‧分詞單元
530‧‧‧判斷單元
540‧‧‧索引單元
610‧‧‧預置單元
620‧‧‧載入單元
630‧‧‧獲取單元
640‧‧‧分詞單元
650‧‧‧判斷單元
660‧‧‧索引單元
710‧‧‧獲取單元
720‧‧‧分詞單元
730‧‧‧判斷單元
740‧‧‧查找單元
750‧‧‧合併單元
810‧‧‧載入單元
820‧‧‧獲取單元
830‧‧‧分詞單元
840‧‧‧判斷單元
850‧‧‧查找單元
860‧‧‧合併單元
為了更清楚地說明本申請案之實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請案中記載的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本申請案之基於搜索引擎的文檔索引方法的第一實施例流程圖;圖2為本申請案之基於搜索引擎的文檔索引方法的第二實施例流程圖;圖3為本申請案之基於搜索引擎的資料查詢方法的第一實施例流程圖;圖4為本申請案之基於搜索引擎的資料查詢方法的第二實施例流程圖;圖5為本申請案之基於搜索引擎的文檔索引伺服器的第一實施例方塊圖;圖6為本申請案之基於搜索引擎的文檔索引伺服器的第二實施例方塊圖;圖7為本申請案之基於搜索引擎的資料查詢伺服器的第一實施例方塊圖;圖8為本申請案之基於搜索引擎的資料查詢伺服器的 第二實施例方塊圖。

Claims (14)

  1. 一種基於搜索引擎的文檔索引方法,其特徵在於,包括:獲取待索引的文檔,並對該文檔進行分詞操作得到一元分詞;判斷每個一元分詞是否為過濾字,其中,該過濾字包括在查詢期間會被該搜索引擎忽略不查的高頻字,若該一元分詞是過濾字,則將該一元分詞和與該一元分詞順序相鄰的至少一個一元分詞成多元分詞,對該多元分詞建立索引;若該一元分詞不是過濾字,則直接對該一元分詞建立索引。
  2. 如申請專利範圍第1項所述的方法,其中,還包括:預先設置過濾字列表。
  3. 如申請專利範圍第2項所述的方法,其中,在該獲取待索引的文檔之前還包括:載入該過濾字列表。
  4. 如申請專利範圍第1項所述的方法,其中,該將該一元分詞和與該一元分詞順序相鄰的至少一個一元分詞成多元分詞包括:將該一元分詞和與該一元分詞順序相鄰的一元分詞成二元分詞。
  5. 如申請專利範圍第4項所述的方法,其中,該將該一元分詞和與該一元分詞順序相鄰的一元分詞成二元分詞包括:當該一元分詞是該文檔中的第一個一元分詞時,將該 一元分詞與其後一個一元分詞成二元分詞;當該一元分詞是該文檔中的最後一個一元分詞時,將該一元分詞與其前一個一元分詞成二元分詞;當該一元分詞不是該文檔中的第一個一元分詞和最後一個一元分詞時,將該一元分詞與其前一個一元分詞和後一個一元分詞分別組成二元分詞。
  6. 一種基於搜索引擎的資料查詢方法,其特徵在於,該方法應用如申請專利範圍第1項所述之文檔索引方法所建立的索引,包括:獲取待查詢的資料,並對該資料進行分詞操作得到一元分詞;判斷每個一元分詞是否為過濾字,其中,該過濾字包括在查詢期間會被該搜索引擎忽略不查的高頻字,若該一元分詞是過濾字,則將該一元分詞和與該一元分詞順序相鄰的至少一個一元分詞成多元分詞,根據該多元分詞查找該索引,若該一元分詞不是過濾字,則根據該一元分詞查找該索引;將查找該索引後得到的查詢結果進行合併。
  7. 如申請專利範圍第6項所述的方法,其中,在該獲取待查詢資料之前,還包括:載入預先設置的過濾字列表。
  8. 如申請專利範圍第6項所述的方法,其中,將該一元分詞和與該一元分詞順序相鄰的至少一個一元分詞成多元分詞包括:將該一元分詞和與該一元分詞順序相鄰的 一元分詞成二元分詞。
  9. 如申請專利範圍第8項所述的方法,其中,該將該一元分詞和與該一元分詞順序相鄰的一元分詞成二元分詞包括:當該一元分詞是該資料中的第一個一元分詞時,將該一元分詞與其後一個一元分詞成二元分詞;當該一元分詞不是該資料中的第一個一元分詞時,將該一元分詞與其前一個一元分詞或後一個一元分詞成二元分詞。
  10. 一種基於搜索引擎的文檔索引伺服器,其特徵在於,包括:獲取單元,用以獲取待索引的文檔;分詞單元,用以對該獲取單元所獲取的文檔進行分詞操作得到一元分詞;判斷單元,用以判斷每個一元分詞是否為過濾字,其中,該過濾字包括在查詢期間會被該搜索引擎忽略不查的高頻字;及索引單元,用以當該判斷單元判斷該一元分詞是過濾字時,將該一元分詞和與該一元分詞順序相鄰的至少一個一元分詞成多元分詞,對該多元分詞建立索引,當該判斷單元判斷該一元分詞不是過濾字時,則直接對該一元分詞建立索引。
  11. 如申請專利範圍第10項所述的伺服器,其中,還包括: 預置單元,用以預先設置過濾字列表。
  12. 如申請專利範圍第11項所述的伺服器,其中,還包括:載入單元,用以在該獲取單元獲取待索引的文檔之前,載入該過濾字列表。
  13. 一種基於搜索引擎的資料查詢伺服器,其特徵在於,該伺服器應用如申請專利範圍第10項所述之文檔索引伺服器所建立的索引,包括:獲取單元,用以獲取待查詢的資料;分詞單元,用以對該獲取單元所獲取的資料進行分詞操作得到一元分詞;判斷單元,用以判斷每個一元分詞是否為過濾字,其中,該過濾字包括在查詢期間會被該搜索引擎忽略不查的高頻字;查找單元,用以當該判斷單元判斷該一元分詞是過濾字時,將該一元分詞和與該一元分詞順序相鄰的至少一個一元分詞成多元分詞,根據該多元分詞查找該索引,當該判斷單元判斷該一元分詞不是過濾字時,則根據該一元分詞查找該索引;及合併單元,用以將該查找單元查找該索引後得到的查詢結果進行合併。
  14. 如申請專利範圍第13項所述的伺服器,其中,還包括:載入單元,用以在該獲取單元獲取待查詢的資料之前,載入預先設置的過濾字列表。
TW099106787A 2010-03-09 2010-03-09 Search engine based document indexing method, data query method and server TWI647578B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW099106787A TWI647578B (zh) 2010-03-09 2010-03-09 Search engine based document indexing method, data query method and server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW099106787A TWI647578B (zh) 2010-03-09 2010-03-09 Search engine based document indexing method, data query method and server

Publications (2)

Publication Number Publication Date
TW201131396A TW201131396A (en) 2011-09-16
TWI647578B true TWI647578B (zh) 2019-01-11

Family

ID=50180359

Family Applications (1)

Application Number Title Priority Date Filing Date
TW099106787A TWI647578B (zh) 2010-03-09 2010-03-09 Search engine based document indexing method, data query method and server

Country Status (1)

Country Link
TW (1) TWI647578B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7039636B2 (en) * 1999-02-09 2006-05-02 Hitachi, Ltd. Document retrieval method and document retrieval system
US20070233460A1 (en) * 2004-08-11 2007-10-04 Sdl Plc Computer-Implemented Method for Use in a Translation System
TW200928810A (en) * 2007-12-31 2009-07-01 Aletheia University Method for searching data

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7039636B2 (en) * 1999-02-09 2006-05-02 Hitachi, Ltd. Document retrieval method and document retrieval system
US20070233460A1 (en) * 2004-08-11 2007-10-04 Sdl Plc Computer-Implemented Method for Use in a Translation System
TW200928810A (en) * 2007-12-31 2009-07-01 Aletheia University Method for searching data

Also Published As

Publication number Publication date
TW201131396A (en) 2011-09-16

Similar Documents

Publication Publication Date Title
TWI512506B (zh) Sorting method and device for search results
US10452691B2 (en) Method and apparatus for generating search results using inverted index
US10169449B2 (en) Method, apparatus, and server for acquiring recommended topic
US9448999B2 (en) Method and device to detect similar documents
CN101963965B (zh) 基于搜索引擎的文档索引方法、数据查询方法及服务器
US7730060B2 (en) Efficient evaluation of object finder queries
US8719262B1 (en) Identification of semantic units from within a search query
CN106844640B (zh) 一种网页数据分析处理方法
EP2812815B1 (en) Web page retrieval method and device
US9953185B2 (en) Identifying query patterns and associated aggregate statistics among search queries
WO2008098502A1 (fr) Procédé et dispositif destinés à créer un index et procédé et système de récupération
US8423885B1 (en) Updating search engine document index based on calculated age of changed portions in a document
WO2017114282A1 (zh) 信息搜索装置及方法、搜索服务器及机器可读存储介质
CN110362593B (zh) 一种数据查询方法、装置、设备及存储介质
JP7395377B2 (ja) コンテンツ検索方法、装置、機器、および記憶媒体
CN114139040A (zh) 一种数据存储及查询方法、装置、设备及可读存储介质
CN105808615A (zh) 一种基于分词权重的文档索引生成方法和装置
Cao et al. Searching for truth in a database of statistics
CN109656947B (zh) 数据查询方法、装置、计算机设备和存储介质
CN103226601A (zh) 一种图片搜索的方法和装置
WO2012091541A1 (en) A semantic web constructor system and a method thereof
TWI647578B (zh) Search engine based document indexing method, data query method and server
US11726972B2 (en) Directed data indexing based on conceptual relevance
CN111639099A (zh) 全文索引方法及***
CN105808607A (zh) 一种文档索引的生成方法和装置