一種優化分詞庫的方法和裝置的制造方法
【專利摘要】本文公布一種優化分詞庫的方法和裝置,該方法包括:獲取預設個數個熱詞;將獲得的熱詞與搜索引擎中的第一分詞庫進行排重處理以生成該搜索引擎中的第二分詞庫;根據生成的該搜索引擎中的第二分詞庫對應用資源進行索引重構。本發明實施例避免了無法識別網絡熱詞的弊端,從而提升了應用商店的搜索、使用性能,增強了用戶體驗。
【專利說明】
一種優化分詞庫的方法和裝置
技術領域
[0001]本發明實施例涉及但不限于大數據技術,尤指一種優化分詞庫的方法和裝置。
【背景技術】
[0002]對于應用商店這類型的產品而言,具有搜索功能的搜索引擎是必不可少的重要組成部分之一。搜索功能的好壞,是評估一個應用商店易用性高低的核心指標,例如,用戶在應用商店搜索框內連續輸入若干個關鍵詞均無法定位到目標應用,這樣會導致用戶體驗極差。
[0003]目前,大部分的應用商店的搜索功能是基于全文搜索引擎(Lucene)或Lucene的衍生產品開發而成的。其中,Lucene中的原生分詞庫存儲在分布式文檔存儲數據庫(MongoDB)中的MongoDB文件中,Lucene中有原生分詞庫,其中,Lucene中的原生分詞庫與應用商店的應用資源之間對應于一個索引,且應用商店的服務器會對Lucene中的原生分詞庫會進行更新,當Lucene中的原生分詞庫更新后,應用商店的服務器需要對更新后的Lucene中的原生分詞庫對應的索引進行索引重構。
[0004]由于Lucene是Apache(Web服務器軟件)上的一款開源搜索引擎,所以對中文的分詞處理不好,盡管相關技術已對分詞庫進行了補充優化的補救措施,如IKAnalyze(—個開源的,基于java語言開發的輕量級的中文分詞工具包),但是其更新緩慢,且由于不同語言之間的差異導致了對當前的很多網絡熱詞無法識別,所以對于搜索、使用性能的提升并不明顯,用戶體驗也有待提升。
【發明內容】
[0005]本申請提供了一種優化分詞庫的方法和裝置,能夠避免無法識別網絡熱詞的弊端,從而提升應用商店的搜索、使用性能,增強用戶體驗。
[0006]為了達到本申請目的,本申請提供了一種優化分詞庫的方法,包括:
[0007]獲取預設個數個熱詞;
[0008]將獲得的熱詞與搜索引擎中的第一分詞庫進行排重處理以生成該搜索引擎中的第二分詞庫;
[0009]根據生成的該搜索引擎中的第二分詞庫對應用資源進行索引重構。
[0010]可選地,所述熱詞包括:網頁熱詞,和/或用戶搜索熱詞,和/或手動錄入熱詞。
[0011]可選地,當所述熱詞包括網頁熱詞時,所述獲取預設個數個熱詞包括:
[0012]采用網絡爬蟲程序獲取預設網頁的資源;
[0013]獲取所述預設網頁的資源中所包含的各個網頁熱詞及其自身的排序;
[0014]在獲得的各個網頁熱詞中獲取由大到小的所述預設個數個網頁熱詞作為所述熱
Τ.κ| ο
[0015]可選地,當所述熱詞包括用戶搜索熱詞時,所述獲取預設個數個熱詞包括:
[0016]獲取各個用戶在應用商店的操作軌跡;
[0017]根據獲得的各個用戶在應用商店的操作軌跡確定各個用戶搜索熱詞以及其自身的排序;
[0018]在確定出的各個用戶搜索熱詞中獲取由大到小的所述預設個數個用戶搜索熱詞作為所述熱詞。
[0019]可選地,該方法還包括:將獲得的所述熱詞存儲至分布式文檔存儲數據庫。
[0020]可選地,所述將獲得的所述熱詞存儲至分布式文檔存儲數據庫具體包括:在所述分布式文檔存儲數據庫中創建一個分布式文檔存儲數據庫類型的文件;
[0021 ]將獲得的所述分詞寫入創建的分布式文檔存儲數據庫類型的文件中。
[0022]可選地,所述根據生成的該搜索引擎中的第二分詞庫對應用資源進行索引重構包括:
[0023]獲取所述搜索引擎中的第一分詞庫對應的第一索引;
[0024]根據所述搜索引擎中的第二分詞庫采用覆蓋增量模式對獲得的所述搜索引擎中的第一分詞庫對應的第一索引進行更新。
[0025]本申請還提供了一種優化分詞庫的裝置,包括:獲取模塊、處理模塊和重構模塊;其中,
[0026]獲取模塊,用于獲取預設個數個熱詞;
[0027]處理模塊,用于將獲得的熱詞與搜索引擎中的第一分詞庫進行排重處理以生成該搜索引擎中的第二分詞庫;
[0028]重構模塊,用于根據生成的該搜索引擎中的第二分詞庫對應用資源進行索引重構。
[0029]可選地,所述熱詞包括:網頁熱詞,和/或用戶搜索熱詞,和/或手動錄入熱詞。
[0030]可選地,當所述熱詞包括網頁熱詞時,所述獲取模塊具體用于:
[0031]采用網絡爬蟲程序獲取預設網頁的資源;
[0032]獲取所述預設網頁的資源中所包含的各個網頁熱詞及其自身的排序;
[0033]在獲得的各個網頁熱詞中獲取由大到小的所述預設個數個網頁熱詞作為所述熱
Τ.κ| ο
[0034]可選地,當所述熱詞包括用戶搜索熱詞時,所述獲取模塊具體用于:
[0035]獲取各個用戶在應用商店的操作軌跡;
[0036]根據獲得的各個用戶在應用商店的操作軌跡確定各個用戶搜索熱詞以及其自身的排序;
[0037]在確定出的各個用戶搜索熱詞中獲取由大到小的所述預設個數個用戶搜索熱詞作為所述熱詞。
[0038]可選地,該裝置還包括更新模塊,用于將獲得的所述熱詞存儲至分布式文檔存儲數據庫。
[0039]可選地,所述更新模塊,具體用于在所述分布式文檔存儲數據庫中創建一個分布式文檔存儲數據庫類型的文件;
[0040]將獲得的所述分詞寫入創建的分布式文檔存儲數據庫類型的文件中。
[0041]可選地,所述重構模塊,具體用于:
[0042]獲取所述搜索引擎中的第一分詞庫對應的第一索引;
[0043]根據所述搜索引擎中的第二分詞庫采用覆蓋增量模式對獲得的所述搜索引擎中的第一分詞庫對應的第一索引進行更新。
[0044]本發明實施例包括:獲取預設個數個熱詞;將獲得的熱詞與搜索引擎中的第一分詞庫進行排重處理以生成該搜索引擎中的第二分詞庫;根據生成的該搜索引擎中的第二分詞庫對應用資源進行索引重構。本發明實施例避免了無法識別網絡熱詞的弊端,從而提升了應用商店的搜索、使用性能,增強了用戶體驗。
【附圖說明】
[0045]此處所說明的附圖用來提供對本發明的進一步理解,構成本申請的一部分,本發明的示意性實施例及其說明用于解釋本發明,并不構成對本發明的不當限定。在附圖中:
[0046]圖1為本發明優化分詞庫的方法的流程圖;
[0047]圖2為本發明分詞庫來源的示意圖;
[0048]圖3為本發明整合搜索引擎中的第二分詞庫的示意圖;
[0049]圖4為本發明優化分詞庫的方法的實施例的流程圖;
[0050]圖5為本發明優化分詞庫的裝置的結構示意圖。
【具體實施方式】
[0051]下面將結合附圖及實施例對本發明的技術方案進行更詳細的說明。
[0052]圖1為本發明優化分詞庫的方法的流程圖,如圖1所示,周期性的執行以下步驟:
[0053]步驟101:獲取預設個數個熱詞。
[0054]其中,熱詞包括:網頁熱詞,和/或用戶搜索熱詞,和/或手動錄入熱詞。
[0055]其中,預設個數可以是一個由系統設定的默認值,如500,1000;也可以由應用商店的服務器的管理員(或運營人員)進行設定。
[0056]其中,當熱詞包括網頁熱詞時,獲取預設個數個熱詞包括:
[0057]采用網絡爬蟲程序獲取預設網頁的資源;
[0058]獲取預設網頁的資源中所包含的各個網頁熱詞及其自身的排序;
[0059]在獲得的各個網頁熱詞中獲取由大到小的預設個數個網頁熱詞作為熱詞。其中,預設網頁包括如新浪微博熱詞頁面、百度搜索熱詞頁面等等。
[0060]可選地,該方法還包括:將獲得的預設網頁的資源存儲在分布式文件系統(HDFS)中。
[0061]其中,通過分布式系統基礎架構(Hadoop)獲取預設網頁的資源中所包含的各個網頁熱詞及其自身的排序;包括:
[0062]Hadoop采用大數據統計功能確定HDFS中存儲的一個或一個以上的預設網頁的資源中所包含的多個網頁熱詞以及每個網絡熱詞的使用次數;
[0063]Hadoop根據確定出的每個網絡熱詞的使用次數確定各個網頁熱詞的排序。需要說明的是,關于如何通過Hadoop確定多個網頁熱詞以及每個網絡熱詞的使用次數,屬于本領域技術人員所熟知的慣用技術手段,此處不再贅述,并不用來限制本發明。例如,Hadoop對HDFS上的網頁資源進行增量大數據統計分析,根據網頁中已有的網絡熱詞排行和詞語出現的頻率,結合一定的計算權重(此處的權重可以由管理人員進行設定,屬于本領域的慣用技術手段,此處不再贅述),重新整合成一份得分從高到低的網絡熱詞的排行榜(排序)。
[0064]其中,當熱詞包括用戶搜索熱詞時,獲取預設個數個熱詞包括:
[0065]獲取各個用戶在應用商店的操作軌跡;
[0066]根據獲得的各個用戶在應用商店的操作軌跡確定各個用戶搜索熱詞以及其自身的排序;
[0067]在確定出的各個用戶搜索熱詞中獲取由大到小的預設個數個用戶搜索熱詞作為熱詞。
[0068]其中,當熱詞包括網頁熱詞和用戶搜索熱詞時,獲取預設個數個熱詞包括:
[0069]采用網絡爬蟲程序獲取預設網頁的資源;
[0070]獲取預設網頁的資源中所包含的各個網頁熱詞及其自身的排序;以及,
[0071]獲取各個用戶在應用商店的操作軌跡;
[0072]根據獲得的各個用戶在應用商店的操作軌跡確定各個用戶搜索熱詞以及其自身的排序;
[0073]在獲得的各個網頁熱詞中獲取由大到小的預設個數個網頁熱詞以及在確定出的各個用戶搜索熱詞中獲取由大到小的預設個數個用戶搜索熱詞作為熱詞。
[0074]可選地,該方法還包括:將獲得的各個用戶在應用商店的操作軌跡存儲至關系型數據庫(Mysql)中。
[0075]其中,Hadoop根據存儲在Mysql中的各個用戶在應用商店的操作軌跡確定各個用戶搜索熱詞以及其自身的排序;包括:
[0076]Hadoop采用大數據統計功能對各個用戶在應用商店的操作軌跡進行檢索并統計用戶搜索的各個關鍵詞及其搜索次數;
[0077]Hadoop在統計出的各個關鍵詞中獲取由大到小的預設個數個關鍵詞作為預設個數個用戶搜索熱詞。
[0078]其中,手動錄入熱詞是應用商店的服務器的管理員根據自身的經驗輸入的熱詞,且其手動錄入熱詞的個數也由其自身決定。
[0079]需要說明的是,手動錄入熱詞更好的保證了應用商店的搜索性能。
[0080]其中,當熱詞包括網頁熱詞和手動錄入熱詞時,獲取預設個數個熱詞包括:
[0081]采用網絡爬蟲程序獲取預設網頁的資源;
[0082]獲取預設網頁的資源中所包含的各個網頁熱詞及其自身的排序;
[0083]在獲得的各個網頁熱詞中獲取由大到小的預設個數個網頁熱詞以及將應用商店的服務器的管理員根據自身的經驗輸入的手動錄入熱詞作為熱詞。
[0084]其中,當熱詞包括用戶搜索熱詞和手動錄入熱詞時,獲取預設個數個熱詞包括:
[0085]獲取各個用戶在應用商店的操作軌跡;
[0086]根據獲得的各個用戶在應用商店的操作軌跡確定各個用戶搜索熱詞以及其自身的排序;
[0087]在確定出的各個用戶搜索熱詞中獲取由大到小的預設個數個用戶搜索熱詞以及將應用商店的服務器的管理員根據自身的經驗輸入的手動錄入熱詞作為熱詞。
[0088]其中,當熱詞包括網頁熱詞、用戶搜索熱詞和手動錄入熱詞時,獲取預設個數個熱詞包括:
[0089]采用網絡爬蟲程序獲取預設網頁的資源;
[0090]獲取預設網頁的資源中所包含的各個網頁熱詞及其自身的排序;以及,
[0091]獲取各個用戶在應用商店的操作軌跡;
[0092]根據獲得的各個用戶在應用商店的操作軌跡確定各個用戶搜索熱詞以及其自身的排序;
[0093]在獲得的各個網頁熱詞中獲取由大到小的預設個數個網頁熱詞、在確定出的各個用戶搜索熱詞中獲取由大到小的預設個數個用戶搜索熱詞以及將應用商店的服務器的管理員根據自身的經驗輸入的手動錄入熱詞作為熱詞。
[0094]可選地,熱詞還包括除通過以上獲取方式之外的其它方式獲取的熱詞,此處不再贅述,并不用來限制本申請。
[0095]如圖2所示,為本發明分詞庫來源的示意圖。
[0096]步驟102:將獲得的熱詞與搜索引擎中的第一分詞庫進行排重處理以生成該搜索引擎中的第二分詞庫。
[0097]其中,搜索引擎是全文搜索引擎(Lucene);搜索引擎中的第一分詞庫是Lucene中的原生分詞庫。
[0098]可選地,在步驟101之后,在步驟102之前,該方法還包括:將獲得的上述熱詞存儲至分布式文檔存儲數據庫(MongoDB)中。
[0099]需要說明的是,因為上述步驟是周期性的業務,所以在下一周期執行到步驟102時,本周期生成的第二分詞庫則被當做下一周期搜索引擎的原生分詞庫。
[0100]其中,將獲得的上述熱詞存儲至MongoDB中包括:在MongoDB中創建一個MongoDB類型的文件;
[0101 ]將獲得的上述熱詞寫入創建的MongoDB類型的文件中。
[0102]步驟103:根據生成的該搜索引擎中的第二分詞庫對應用資源進行索引重構。
[0103]其中,步驟103具體包括:
[0104]獲取搜索引擎中的第一分詞庫對應的第一索引;
[0105]根據搜索引擎中的第二分詞庫采用覆蓋增量模式對獲得的搜索引擎中的第一分詞庫對應的第一索引進行更新。
[0106]需要說明的是,此處的覆蓋增量模式是指建立與第二分詞庫中新增加的分詞對應的索引并將新建立的索引添加至第一索引中。增量覆蓋模式可保障在更新的過程中,確保應用商店的搜索功能的可用性。
[0107]本發明實施方式中,通過將獲得的預設個數個熱詞與搜索引擎中的第一分詞庫進行排重處理以生成該搜索引擎中的第二分詞庫以及根據生成的該搜索引擎中的第二分詞庫對應用資源進行索引重構,避免了無法識別網絡熱詞的弊端,從而提升了應用商店的搜索、使用性能,增強了用戶體驗。
[0108]圖3為本發明實施例整合搜索引擎中的第二分詞庫的示意圖,如圖3所示,包括:
[0109]步驟301:開始。
[0110]步驟302:存儲在Mysql中的各個用戶在應用商店的操作軌跡。
[0111]本步驟具體包括:通過應用商店的服務器獲取各個用戶在應用商店的操作軌跡;
[0112]將獲得的各個用戶在應用商店的操作軌跡存儲在Mysql中。
[0113]步驟303= Hadoop根據操作軌跡確定出排序前500的用戶搜索熱詞。
[0114]本步驟具體包括:Hadoop采用大數據統計功能對各個用戶在應用商店的操作軌跡進行檢索并統計用戶搜索的各個關鍵詞及其搜索次數;
[0115]Hadoop在統計出的各個關鍵詞中獲取搜索次數由大到小的500個關鍵詞作為排序前500的用戶搜索熱詞。
[0116]步驟304:應用商店的服務器的管理員根據自身的經驗手動錄入熱詞。
[0117]步驟305:采用網絡爬蟲程序獲取預設網頁的資源。
[0118]步驟306:將獲得的預設網頁的資源存儲在HDFS中。
[0119]步驟307 = Hadoop確定出排序前500的網絡熱詞。
[0120]本步驟具體包括:獲取預設網頁的資源中所包含的各個網頁熱詞及其自身的排序;
[0121]在獲得的各個網頁熱詞中獲取由大到小的500個網頁熱詞作為排序前500的網絡熱詞。
[0122]步驟308:將分詞存儲至分布式文檔存儲數據庫(MongoDB)中。
[0123]本步驟具體包括:
[0124]在MongoDB中創建一MongoDB類型的文件;
[0125]將手動錄入熱詞、排序前500的網絡熱詞、排序前500的網絡熱詞存儲至創建的MongoDB類型的文件中。
[0126]步驟309:對MongoDB中的分詞和Lucene中的原生分詞庫進行排重。
[0127]需要說明的是,本申請中的排重即去重。
[0128]步驟310:根據排重后的分詞庫對應用資源進行索引重構。
[0129]需要說明的是,如何根據排重后的分詞庫對應用資源進行索引重構屬于本領域技術人員所熟知的慣用技術手段,此處不再贅述。
[0130]步驟311:結束。
[0131]圖4為本發明優化分詞庫的方法的實施例的流程圖,如圖4所示,周期性執行以下步驟,包括:
[0132]步驟401:采用網絡爬蟲程序獲取預設網頁的資源。
[0133]步驟402:將獲得的預設網頁的資源存儲在分布式文件系統(HDFS)中。
[0134]步驟403:根據獲得的預設網頁的資源獲取預設個數個網頁熱詞。
[0135]其中,預設個數可以是一個由系統設定的默認值,如500,1000;也可以由應用商店的服務器的管理員(或運營人員)進行設定。
[0136]步驟403具體包括:
[0137]獲取預設網頁的資源中所包含的各個網頁熱詞及其自身的排序;
[0138]在獲得的各個網頁熱詞中獲取由大到小的預設個數個網頁熱詞作為熱詞。其中,預設網頁包括如新浪微博熱詞頁面、百度搜索熱詞頁面等等。
[0139]其中,通過分布式系統基礎架構(Hadoop)獲取預設網頁的資源中所包含的各個網頁熱詞及其自身的排序;包括:
[0140]Hadoop采用大數據統計功能確定HDFS中存儲的一個或一個以上的預設網頁的資源中所包含的多個網頁熱詞以及每個網絡熱詞的使用次數;
[0141]Hadoop根據確定出的每個網絡熱詞的使用次數確定各個網頁熱詞的排序。需要說明的是,關于如何通過Hadoop確定多個網頁熱詞以及每個網絡熱詞的使用次數,屬于本領域技術人員所熟知的慣用技術手段,此處不再贅述,并不用來限制本發明。例如,Hadoop對HDFS上的網頁資源進行增量大數據統計分析,根據網頁中已有的網絡熱詞排行和詞語出現的頻率,結合一定的計算權重(此處的權重可以由管理人員進行設定,屬于本領域的慣用技術手段,此處不再贅述),重新整合成一份得分從高到低的網絡熱詞的排行榜(排序)。
[0142]步驟404:獲取各個用戶在應用商店的操作軌跡。
[0143]步驟405:將獲得的各個用戶在應用商店的操作軌跡存儲至關系型數據庫(Mysql)中。
[0144]步驟406:根據獲得的各個用戶在應用商店的操作軌跡獲取預設個數個用戶搜索熱詞。
[0145]步驟406具體包括:根據獲得的各個用戶在應用商店的操作軌跡確定各個用戶搜索熱詞以及其自身的排序;
[0146]在獲得的各個網頁熱詞中獲取由大到小的預設個數個網頁熱詞以及在確定出的各個用戶搜索熱詞中獲取由大到小的預設個數個用戶搜索熱詞作為熱詞。
[0147]其中,Hadoop根據存儲在Mysql中的各個用戶在應用商店的操作軌跡確定各個用戶搜索熱詞以及其自身的排序;包括:
[0148]Hadoop采用大數據統計功能對各個用戶在應用商店的操作軌跡進行檢索并統計用戶搜索的各個關鍵詞及其搜索次數;
[0149]Hadoop在統計出的各個關鍵詞中獲取由大到小的預設個數個關鍵詞作為預設個數個用戶搜索熱詞。
[0150]步驟407:獲取手動錄入熱詞。
[0151]其中,手動錄入熱詞是應用商店的服務器的管理員根據自身的經驗輸入的熱詞,且其手動錄入熱詞的個數也由其自身決定。
[0152]需要說明的是,手動錄入熱詞更好的保證了應用商店的搜索性能。
[0153]步驟408:將獲得的預設個數個網頁熱詞、預設個數個用戶搜索熱詞和手動錄入熱詞存儲至分布式文檔存儲數據庫(MongoDB)中。
[0154]本步驟具體包括:
[0155]在MongoDB中創建一MongoDB類型的文件;
[0156]將獲得的預設個數個網頁熱詞、預設個數個用戶搜索熱詞和手動錄入熱詞存儲至創建的MongoDB類型的文件中。
[0157]步驟409:將預設個數個網頁熱詞、預設個數個用戶搜索熱詞和手動錄入熱詞與搜索引擎中的第一分詞庫進行排重處理以生成該搜索引擎中的第二分詞庫。
[0158]其中,搜索引擎是全文搜索引擎(Lucene);搜索引擎中的第一分詞庫是Lucene中的原生分詞庫。
[0159]需要說明的是,因為上述步驟是周期性的業務,所以在下一周期執行到步驟409時,本周期生成的第二分詞庫則被當做下一周期搜索引擎的原生分詞庫。
[0160]步驟410:根據生成的該搜索引擎中的第二分詞庫對應用資源進行索引重構。
[0161]其中,步驟410具體包括:
[0162]獲取搜索引擎中的第一分詞庫對應的第一索引;
[0163]根據搜索引擎中的第二分詞庫采用覆蓋增量模式對獲得的搜索引擎中的第一分詞庫對應的第一索引進行更新。
[0164]需要說明的是,此處的覆蓋增量模式是指建立與第二分詞庫中新增加的分詞對應的索引并將新建立的索引添加至第一索引中。增量覆蓋模式可保障在更新的過程中,確保應用商店的搜索功能的可用性。
[0165]圖5為本發明優化分詞庫的裝置的結構示意圖,如圖5所示,包括:獲取模塊50、處理模塊51和重構模塊52。其中,
[0166]獲取模塊50,用于獲取預設個數個熱詞。
[0167]其中,熱詞包括:網頁熱詞,和/或用戶搜索熱詞,和/或手動錄入熱詞。
[0168]其中,當熱詞包括網頁熱詞時,獲取模塊50具體用于:
[0169]采用網絡爬蟲程序獲取預設網頁的資源;
[0170]獲取預設網頁的資源中所包含的各個網頁熱詞及其自身的排序;
[0171]在獲得的各個網頁熱詞中獲取由大到小的預設個數個網頁熱詞作為熱詞。
[0172]可選地,獲取模塊50,還用于將獲得的預設網頁的資源存儲在分布式文件系統(HDFS)中。
[0173]其中,獲取模塊50通過分布式系統基礎架構(Hadoop)對獲得的預設網頁的資源進行大數據分析以獲取各個網頁熱詞的排序;包括:
[0174]Hadoop確定HDFS中存儲的一個或一個以上的預設網頁的資源中所包含的多個網頁熱詞以及每個網絡熱詞的使用次數;
[0175]Hadoop根據確定出的每個網絡熱詞的使用次數確定各個網頁熱詞的排序。
[0176]其中,當熱詞包括用戶搜索熱詞時,獲取模塊50具體用于:
[0177]獲取各個用戶在應用商店的操作軌跡;
[0178]根據獲得的各個用戶在應用商店的操作軌跡確定各個用戶搜索熱詞以及其自身的排序;
[0179]在確定出的各個用戶搜索熱詞中獲取由大到小的預設個數個用戶搜索熱詞作為熱詞。
[0180]可選地,獲取模塊50,還用于將獲得的各個用戶在應用商店的操作軌跡存儲至關系型數據庫(Mysql)中。
[0181]其中,當熱詞包括網頁熱詞和用戶搜索熱詞時,獲取模塊50具體用于:
[0182]采用網絡爬蟲程序獲取預設網頁的資源;
[0183]獲取預設網頁的資源中所包含的各個網頁熱詞及其自身的排序;以及,
[0184]獲取各個用戶在應用商店的操作軌跡;
[0185]根據獲得的各個用戶在應用商店的操作軌跡確定各個用戶搜索熱詞以及其自身的排序;
[0186]在獲得的各個網頁熱詞中獲取由大到小的預設個數個網頁熱詞以及在確定出的各個用戶搜索熱詞中獲取由大到小的預設個數個用戶搜索熱詞作為熱詞。
[0187]其中,當熱詞包括網頁熱詞、用戶搜索熱詞和手動錄入熱詞時,獲取模塊50具體用于:
[0188]采用網絡爬蟲程序獲取預設網頁的資源;
[0189]獲取預設網頁的資源中所包含的各個網頁熱詞及其自身的排序;以及,
[0190]獲取各個用戶在應用商店的操作軌跡;
[0191]根據獲得的各個用戶在應用商店的操作軌跡確定各個用戶搜索熱詞以及其自身的排序;
[0192]在獲得的各個網頁熱詞中獲取由大到小的預設個數個網頁熱詞、在確定出的各個用戶搜索熱詞中獲取由大到小的預設個數個用戶搜索熱詞以及將應用商店的服務器的管理員根據自身的經驗輸入的手動錄入熱詞作為熱詞。
[0193]處理模塊51,用于將獲得的上述熱詞與搜索引擎中的第一分詞庫進行排重處理以生成該搜索引擎中的第二分詞庫。
[0194]其中,搜索引擎中的第一分詞庫是搜索引擎中的原生分詞庫。
[0195]重構模塊52,用于根據生成的該搜索引擎中的第二分詞庫對應用資源進行索引重構。
[0196]其中,重構模塊52,具體用于:
[0197]獲取搜索引擎中的第一分詞庫對應的第一索引;
[0198]根據搜索引擎中的第二分詞庫采用覆蓋增量模式對獲得的搜索引擎中的第一分詞庫對應的第一索引進行更新。
[0199]可選地,該裝置還包括更新模塊53,用于將獲得的上述熱詞存儲至分布式文檔存儲數據庫(MongoDB)中。
[0200]其中,更新模塊53,具體用于
[0201 ] 用于在MongoDB中創建一個MongoDB文件;
[0202]將搜索引擎中的第二分詞庫寫入創建的MongoDB文件中。
[0203]可選地,上述裝置可以設置在應用商店的服務器中。
[0204]需要說明的是,在本文中,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者裝置不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者裝置所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括該要素的過程、方法、物品或者裝置中還存在另外的相同要素。
[0205]上述本發明實施例序號僅僅為了描述,不代表實施例的優劣。
[0206]本領域普通技術人員可以理解上述方法中的全部或部分步驟可通過程序來指令相關硬件(例如處理器)完成,所述程序可以存儲于計算機可讀存儲介質中,如只讀存儲器、磁盤或光盤等。可選地,上述實施例的全部或部分步驟也可以使用一個或多個集成電路來實現。相應地,上述實施例中的各模塊/單元可以采用硬件的形式實現,例如通過集成電路來實現其相應功能,也可以采用軟件功能模塊的形式實現,例如通過處理器執行存儲于存儲器中的程序/指令來實現其相應功能。本發明不限制于任何特定形式的硬件和軟件的結入口 ο
[0207]以上僅為本申請的優選實施例,并非因此限制本申請的專利范圍,凡是利用本申請說明書及附圖內容所作的等效結構或等效流程變換,或直接或間接運用在其他相關的技術領域,均同理包括在本申請的專利保護范圍內。
【主權項】
1.一種優化分詞庫的方法,其特征在于,包括: 獲取預設個數個熱詞; 將獲得的熱詞與搜索引擎中的第一分詞庫進行排重處理以生成該搜索引擎中的第二分詞庫; 根據生成的該搜索引擎中的第二分詞庫對應用資源進行索引重構。2.根據權利要求1所述的方法,其特征在于,所述熱詞包括:網頁熱詞,和/或用戶搜索熱詞,和/或手動錄入熱詞。3.根據權利要求2所述的方法,其特征在于,當所述熱詞包括網頁熱詞時,所述獲取預設個數個熱詞包括: 采用網絡爬蟲程序獲取預設網頁的資源; 獲取所述預設網頁的資源中所包含的各個網頁熱詞及其自身的排序; 在獲得的各個網頁熱詞中獲取由大到小的所述預設個數個網頁熱詞作為所述熱詞。4.根據權利要求2所述的方法,其特征在于,當所述熱詞包括用戶搜索熱詞時,所述獲取預設個數個熱詞包括: 獲取各個用戶在應用商店的操作軌跡; 根據獲得的各個用戶在應用商店的操作軌跡確定各個用戶搜索熱詞以及其自身的排序; 在確定出的各個用戶搜索熱詞中獲取由大到小的所述預設個數個用戶搜索熱詞作為所述熱詞。5.根據權利要求1所述的方法,其特征在于,所述根據生成的該搜索引擎中的第二分詞庫對應用資源進行索引重構包括: 獲取所述搜索引擎中的第一分詞庫對應的第一索引; 根據所述搜索引擎中的第二分詞庫采用覆蓋增量模式對獲得的所述搜索引擎中的第一分詞庫對應的第一索引進行更新。6.一種優化分詞庫的裝置,其特征在于,包括:獲取模塊、處理模塊和重構模塊;其中, 獲取模塊,用于獲取預設個數個熱詞; 處理模塊,用于將獲得的熱詞與搜索引擎中的第一分詞庫進行排重處理以生成該搜索引擎中的第二分詞庫;重構模塊,用于根據生成的該搜索引擎中的第二分詞庫對應用資源進行索引重構。7.根據權利要求6所述的裝置,其特征在于,所述熱詞包括:網頁熱詞,和/或用戶搜索熱詞,和/或手動錄入熱詞。8.根據權利要求7所述的裝置,其特征在于,當所述熱詞包括網頁熱詞時,所述獲取模塊具體用于: 采用網絡爬蟲程序獲取預設網頁的資源; 獲取所述預設網頁的資源中所包含的各個網頁熱詞及其自身的排序;在獲得的各個網頁熱詞中獲取由大到小的所述預設個數個網頁熱詞作為所述熱詞。9.根據權利要求7所述的裝置,其特征在于,當所述熱詞包括用戶搜索熱詞時,所述獲取模塊具體用于: 獲取各個用戶在應用商店的操作軌跡; 根據獲得的各個用戶在應用商店的操作軌跡確定各個用戶搜索熱詞以及其自身的排序; 在確定出的各個用戶搜索熱詞中獲取由大到小的所述預設個數個用戶搜索熱詞作為所述熱詞。10.根據權利要求6所述的裝置,其特征在于,所述重構模塊,具體用于: 獲取所述搜索引擎中的第一分詞庫對應的第一索引; 根據所述搜索引擎中的第二分詞庫采用覆蓋增量模式對獲得的所述搜索引擎中的第一分詞庫對應的第一索引進行更新。
【文檔編號】G06F17/30GK105824976SQ201610251202
【公開日】2016年8月3日
【申請日】2016年4月20日
【發明人】鄒煒
【申請人】努比亞技術有限公司