国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于搜索引擎的慢查詢優(yōu)化系統(tǒng)

2017-04-22 10:11:20陳倫躍殷峰
現(xiàn)代計算機 2017年8期
關(guān)鍵詞:搜索引擎檢索數(shù)據(jù)庫

陳倫躍,殷峰

(1.四川大學(xué)計算機學(xué)院,成都 610065;2.西南民族大學(xué)校園網(wǎng)絡(luò)管理中心,成都 610064)

基于搜索引擎的慢查詢優(yōu)化系統(tǒng)

陳倫躍1,殷峰2

(1.四川大學(xué)計算機學(xué)院,成都 610065;2.西南民族大學(xué)校園網(wǎng)絡(luò)管理中心,成都 610064)

信息系統(tǒng)一般需要一個數(shù)據(jù)持久層來對系統(tǒng)中的信息進行存儲和查詢,而數(shù)據(jù)持久層所面臨的慢查詢問題會極大地影響系統(tǒng)的用戶體驗。目前的研究可以較好地解決由于數(shù)據(jù)量的增長所帶來的慢查詢問題,而對由業(yè)務(wù)分化帶來的慢查詢問題無能為力。當業(yè)務(wù)分化后,數(shù)據(jù)源將處于不同的業(yè)務(wù)部門,甚至不同公司的管理下,數(shù)據(jù)查詢時連接操作大大增加。分析在實際生產(chǎn)環(huán)境中所面對的慢查詢問題,創(chuàng)造性地提出一種使用搜索引擎技術(shù)用于改善數(shù)據(jù)持久層查詢性能的系統(tǒng)。該系統(tǒng)具有低侵入性、快速開發(fā)、性能優(yōu)良等優(yōu)點。

慢查詢;搜索引擎;查詢優(yōu)化;系統(tǒng)設(shè)計

0 引言

信息系統(tǒng)一般需要一個數(shù)據(jù)持久層來對系統(tǒng)中的信息進行存儲和查詢。當信息系統(tǒng)所承擔的業(yè)務(wù)快速擴展之后,其已有的數(shù)據(jù)持久層將面臨諸多挑戰(zhàn)。其中慢查詢問題是很多系統(tǒng)都會面臨的挑戰(zhàn),且會極大地影響系統(tǒng)的用戶體驗。當業(yè)務(wù)規(guī)模快速增長后,系統(tǒng)處理的數(shù)據(jù)規(guī)??焖僭鲩L,使得數(shù)據(jù)庫的查詢變慢。針對數(shù)據(jù)量增長帶來的慢查詢問題,已有相對充分的研究。但更嚴重的問題是隨著新的業(yè)務(wù)不斷擴展,老的業(yè)務(wù)不斷分化,系統(tǒng)中會出現(xiàn)越來越多的獨立子系統(tǒng)使得系統(tǒng)整體的數(shù)據(jù)模型越來越復(fù)雜。不同子系統(tǒng)的數(shù)據(jù)源往往處于不同業(yè)務(wù)部門甚至不同公司的管理之下,而一些業(yè)務(wù)需求常常橫跨了多個獨立的子業(yè)務(wù),造成許多查詢需要鏈接多張表,這也會帶來慢查詢問題。

針對慢查詢問題,已有的方案主要著眼于對數(shù)據(jù)存儲本身的優(yōu)化,但在實際生產(chǎn)中,即使每個子系統(tǒng)的查詢得到了充足的優(yōu)化,跨多個子系統(tǒng)的業(yè)務(wù)的查詢服務(wù)仍然會受制于連接的性能。由于業(yè)務(wù)的分化擴展,多個數(shù)據(jù)源的鏈接操作在實際生產(chǎn)中是無法避免的。為了解決業(yè)務(wù)分化帶來的慢查詢問題,需要一種可以獨立于原有數(shù)據(jù)持久層之外,與業(yè)務(wù)架構(gòu)無關(guān)的優(yōu)化方案。

針對業(yè)務(wù)分化造成的慢查詢問題及已有解決方案的不足,本文提出了基于搜索引擎的慢查詢優(yōu)化系統(tǒng)。該系統(tǒng)綜合了許多現(xiàn)有方案的優(yōu)點。首先,系統(tǒng)的侵入性低,可以獨立于原有數(shù)據(jù)持久層提供服務(wù),既不需要在系統(tǒng)初期做出特殊設(shè)計,也不需要對已有的業(yè)務(wù)代碼進行大規(guī)模的修改,最重要的是可以解決由于業(yè)務(wù)分化帶來的慢查詢問題;其次,該系統(tǒng)具有良好的查詢性能,系統(tǒng)使用搜索引擎集群提供查詢服務(wù)的增強,可以從根本上緩解慢查詢問題,當業(yè)務(wù)進一步發(fā)展時也可以彈性地對系統(tǒng)進行擴容;最后,搜索引擎有許多成熟的開源產(chǎn)品可以使用,對已有系統(tǒng)使用該解決方案進行改造需要的研發(fā)、資金、時間成本低。

1 相關(guān)工作

為了解決慢查詢問題,已有3種傳統(tǒng)解決方案。

第一種,進行數(shù)據(jù)庫性能的調(diào)優(yōu),讀寫分離,分庫分表等工作,如文獻[1]討論了在SQL Server上的調(diào)優(yōu)問題。但是這種解決方案只能暫時緩解慢查詢問題,隨著業(yè)務(wù)的進一步發(fā)展,仍然會面臨性能的瓶頸,因而這是一種治標不治本的解決方案;其次,該方案只能優(yōu)化由數(shù)據(jù)量增加帶來的查詢性能瓶頸,不能改善由于業(yè)務(wù)分化,數(shù)據(jù)連接操作變多帶來的性能瓶頸。

第二種,使用新的數(shù)據(jù)存儲技術(shù)改寫原有的數(shù)據(jù)持久層,例如文獻[2][3]中提到的NoSQL數(shù)據(jù)庫。這些新型存儲技術(shù)已經(jīng)在實踐中證明了其具有良好的性能,可以有效地解決慢查詢問題。但是使用這種方案將大規(guī)模地改造已有的數(shù)據(jù)持久層,面臨著數(shù)據(jù)遷移,業(yè)務(wù)分流等問題,勢必會影響已有系統(tǒng)的正常運行。同時,該解決方案也和第一種方案一樣不能改善由于業(yè)務(wù)分化,數(shù)據(jù)連接操作變多帶來的性能瓶頸。

第三種,為原有的系統(tǒng)增加分布式索引,如文獻[4-5]中提到的解決方案便可以用于改善數(shù)據(jù)庫的檢索性能。這種解決方案具有系統(tǒng)侵入性小的優(yōu)點,不會大規(guī)模影響到原有系統(tǒng)的運行;同時具有較好的性能,可以有效地解決慢查詢問題;最后也能夠較為有效地解決業(yè)務(wù)分化的問題。但是該解決方案較為復(fù)雜,沒有成熟的開源產(chǎn)品可以使用,尚處于理論研究階段,因而該方案在實際工程中的使用也較為困難。

在搜索引擎應(yīng)用的研究上,目前主要著眼于在垂直檢索領(lǐng)域,利用搜索引擎信息檢索的能力為相應(yīng)的專業(yè)領(lǐng)域提供參考建議與決策支持,如文獻[6][7]分別研究了搜索引擎在圖書館情報學(xué)和農(nóng)業(yè)上的應(yīng)用。而很少有將搜索引擎用于提供信息系統(tǒng)底層服務(wù)的研究。

基于對慢查詢問題及已有解決方案不足的分析,本文創(chuàng)造性地提出了使用搜索引擎優(yōu)化慢查詢問題,開闊了搜索引擎應(yīng)用的研究范圍,也為解決慢查詢問題提供了思路。

2 理論分析

為了優(yōu)化查詢性能,無論關(guān)系型數(shù)據(jù)庫、NoSQL數(shù)據(jù)庫,還是搜索引擎,都有相應(yīng)的索引機制。不同的索引機制決定了不同系統(tǒng)在性能上的差別。本節(jié)將對數(shù)據(jù)庫索引與搜索引擎索引的異同進行討論。

傳統(tǒng)的關(guān)系型數(shù)據(jù)庫與NoSQL數(shù)據(jù)庫多使用樹形結(jié)構(gòu)的正排索引,如關(guān)系型數(shù)據(jù)庫中常使用B+樹,NoSQL數(shù)據(jù)庫中常使用LSM樹。這些樹形結(jié)構(gòu)的索引讀寫性能平衡。當這些數(shù)據(jù)庫進行查詢時,將從根節(jié)點開始,自頂向下訪問索引文件,其時間代價為O(logn),其中的n為數(shù)據(jù)的規(guī)模。與數(shù)據(jù)庫不同,搜索引擎主要使用倒排索引技術(shù)。以開源搜索工具包Lucene的索引為例,為一組單詞建立索引時,其結(jié)構(gòu)如圖1所示:

圖1 搜索引擎索引結(jié)構(gòu)

搜索引擎的倒排索引由3部分組成,分別是詞典索引(Term Index)、詞典(Term Dictionary)、文檔位圖(Position Graph)組成。詞典索引使用前綴樹進行組織,對關(guān)鍵字前綴建立了索引。詞典中包含了所有的關(guān)鍵字,并指向相應(yīng)的文檔位圖。文檔位圖中記錄了每個關(guān)鍵字在哪些文檔中出現(xiàn)過,及指向這些文檔的指針。當搜索引擎進行檢索時,它先使用詞典索引對檢索的關(guān)鍵字進行查詢,當在詞典中查到相應(yīng)的關(guān)鍵字之后,直接從文檔位圖中讀出所有待檢索文檔的位置信息??梢?,搜索引擎在查詢時主要的性能開銷為對詞典索引和詞典的訪問,其時間代價為O(loglen),其中的len為關(guān)鍵字長度的規(guī)模。

從上述分析中可以發(fā)現(xiàn),相較于數(shù)據(jù)庫的索引,搜索引擎使用的倒排索引在檢索時具有以下的優(yōu)點:首先,當數(shù)據(jù)量較大時,數(shù)據(jù)的規(guī)模n遠遠大于關(guān)鍵字長度len的規(guī)模,在對一張長表進行檢索時,搜索引擎檢索的時間代價O(loglen)遠小于數(shù)據(jù)庫檢索的時間代價O(logn);其次,搜索引擎的詞典索引文件及詞典只對關(guān)鍵字的種類進行索引,體積更小,可以在內(nèi)存中保存,而數(shù)據(jù)庫的索引只能保存在磁盤中,因而對搜索引擎索引文件的訪問速度更快;再而,通用信息檢索引擎對不同的數(shù)據(jù)類型采用了不同的索引方式,上面分析是針字符串的,例如針對整數(shù),有TrieIntField類型,針對經(jīng)緯度,就可以用GeoHash編碼,檢索引擎幾乎可以為文件中的任意字段建立索引,而數(shù)據(jù)庫的索引對某些字段的索引效率較低,如數(shù)據(jù)重復(fù)且分布平均的表字段;最后,在數(shù)據(jù)庫中給兩個字段獨立建立的索引無法聯(lián)合起來使用,必須對聯(lián)合查詢的場景建立復(fù)合索引,而通用信息檢索引擎可以使用AND或者OR組合使用索引進行檢索。需要指出的是,在由于業(yè)務(wù)分化造成的慢查詢問題中,數(shù)據(jù)庫分別屬于不同的業(yè)務(wù)部門,甚至不同的公司管理,它們無法建立復(fù)合索引,也無法使用NoSQL技術(shù)構(gòu)建一張公用的大表,這時搜索引擎對多表聯(lián)合進行檢索的能力更顯得重要。

綜上所述,雖然數(shù)據(jù)庫的搜索結(jié)構(gòu)具有讀寫平衡的優(yōu)點,但在進行查詢操作時,搜索引擎的效率將明顯高于數(shù)據(jù)庫,特別是當檢索數(shù)據(jù)量較大時,檢索一些不適合建立數(shù)據(jù)庫索引的字段時,或者需要對多個字段進行檢索時,這種性能差距將更為巨大。

3 實驗驗證

為了驗證兩種解決方案在實際生產(chǎn)中慢查詢的性能差距,本文使用MySQL數(shù)據(jù)庫及OpenSearch搜索引擎進行了實驗對比。實驗平臺配置如下:操作系統(tǒng):Win7sp1,處理器:i5-3470,內(nèi)存:12GB,MySQL數(shù)據(jù)庫與OpenSearch搜索引擎分別使用最新(2016年8月)的免費版,實驗中禁用了各自的緩存。實驗數(shù)據(jù)使用MovieLens數(shù)據(jù)集[8],該數(shù)據(jù)集包含了:由260000個用戶針對40000部電影打出的24000000個電影評分。實驗中為搜索引擎和數(shù)據(jù)庫分別建立了合適的索引結(jié)構(gòu)。實驗數(shù)據(jù)集的數(shù)據(jù)模型如圖2所示:

圖2 實驗數(shù)據(jù)集數(shù)據(jù)模型

實驗中設(shè)計了三種查詢場景來對比數(shù)據(jù)庫查詢速度與搜索引擎查詢速度之間的區(qū)別。這三個實驗分別是:查找2016年所有的動作電影;查找2016年前1000條用戶為電影打出的滿分;查找2016年所有被用戶打過滿分的動作電影。這三個實驗分別包含了對小表的查詢,對大表的查詢,對大表的連接操作三種代表性情形。實驗對每種查詢場景分別重復(fù)了1000次,并取得了查詢時間的平均值。實驗結(jié)果如圖3所示:

圖3 實驗結(jié)果

三個實驗展現(xiàn)了使用搜索引擎替代數(shù)據(jù)庫執(zhí)行某些慢查詢語句時的性能優(yōu)勢。當涉及到全文檢索(如實驗中的genres字段),超長表(如實驗中的ratings表),多表鏈接(如實驗三中設(shè)計的場景)時,搜索引擎執(zhí)行相同的查詢的速度遠快于數(shù)據(jù)庫,這驗證了上文理論分析的正確性。而當只是對一張較小的表(如實驗一中的場景)進行查詢時,這種優(yōu)勢便不明顯了,這是由于當問題規(guī)模較小時,搜索引擎的檢索速度反而會由于更復(fù)雜的計算而慢于數(shù)據(jù)庫。同時,實驗證明了,在慢查詢問題中,連接操作才是最為消耗性能的,在使用數(shù)據(jù)庫進行執(zhí)行時,實驗三的執(zhí)行時間是實驗一和實驗二執(zhí)行時間之和的5.1倍??梢?,優(yōu)化單表的查詢速度并不是解決慢查詢問題的核心途徑,優(yōu)化連接性能甚至避免過多的連接才是解決慢查詢問題的方法。

4 基于搜索引擎的慢查詢優(yōu)化系統(tǒng)

基于上述理論分析及實驗結(jié)果,本文提出了一種基于搜索引擎的慢查詢優(yōu)化系統(tǒng)。該系統(tǒng)遵循CAP理論[9]和BASE原則[10]進行設(shè)計,其核心思路是:讀寫分離,主要使用搜索引擎提供讀服務(wù),保障核心查詢服務(wù)的高可用性,主要使用原有數(shù)據(jù)持久層提供寫服務(wù),保障寫入性能不下降;寫入數(shù)據(jù)與搜索引擎進行異步的數(shù)據(jù)同步,保障數(shù)據(jù)的最終一致性;搜索引擎獨立于數(shù)據(jù)庫進行集群部署,保障系統(tǒng)的容錯性,彈性擴容性與低侵入性。下面將具體描述該系統(tǒng)。

在數(shù)據(jù)寫入時,由于數(shù)據(jù)庫在寫入時的性能、可靠性優(yōu)于搜索引擎,所以系統(tǒng)對數(shù)據(jù)庫進行同步的寫入。對搜索引擎文檔的寫入操作為:先寫入緩存并加以持久化,緩存記錄的信息為預(yù)寫式日志。當緩存中仍然有數(shù)據(jù)沒有寫入搜索引擎的文檔庫中時,便持續(xù)異步向搜索引擎中寫入數(shù)據(jù)。最后,系統(tǒng)定期對比數(shù)據(jù)庫的日志信息與緩存信息,重做緩存或搜索引擎中的寫入失敗。這樣的寫入方案一方面利用了數(shù)據(jù)庫的事務(wù)性保證數(shù)據(jù)不會丟失,另一方面用緩存機制與異步寫入解決了搜索引擎文檔寫入性能瓶頸,定時的數(shù)據(jù)校正保證了數(shù)據(jù)的最終一致性。寫入的系統(tǒng)流程如圖4所示:

圖4 數(shù)據(jù)的寫入流程

在數(shù)據(jù)進行查詢時,系統(tǒng)先對查詢的復(fù)雜程度進行判斷。當查詢所涉及到的表規(guī)模小于10萬、不涉及到1個以上的鏈接操作、不涉及到對數(shù)據(jù)庫未建立索引的字段進行查詢,系統(tǒng)判定為簡單查詢。執(zhí)行簡單查詢時,搜索引擎的性能優(yōu)勢并不明顯,因而直接使用數(shù)據(jù)庫進行查詢并輸出。而當執(zhí)行復(fù)雜的查詢時,系統(tǒng)首先使用搜索引擎進行查詢。當搜索引擎搜索失敗時,失敗可能是由于搜索引擎中相應(yīng)的數(shù)據(jù)尚未同步造成的,因而此時系統(tǒng)繼續(xù)使用數(shù)據(jù)庫進行搜索并輸出。這樣的設(shè)計保障了該系統(tǒng)中查詢操作的高可用性。查詢的系統(tǒng)流程如圖5所示:

圖5 數(shù)據(jù)的查詢流程

基于上面對讀寫流程的討論,從整個信息系統(tǒng)的層次架構(gòu)上來看,該系統(tǒng)中除數(shù)據(jù)庫為原有的以外,其余部分皆是新增至原始的數(shù)據(jù)持久層之上的,搜索引擎只提供查詢加速的服務(wù),最終的數(shù)據(jù)仍然以原有的數(shù)據(jù)源層為準,搜索引擎不直接與數(shù)據(jù)源層進行交互,因而本文提出的系統(tǒng)可以看作增強數(shù)據(jù)庫查詢性能的中間件。系統(tǒng)架構(gòu)如圖6所示:

圖6 系統(tǒng)層次結(jié)構(gòu)

該系統(tǒng)架構(gòu)有以下優(yōu)點。首先,該系統(tǒng)作為獨立的一層,可以單獨選取工程方案,有許多實用的開源產(chǎn)品可供使用,節(jié)約了研發(fā)成本與時間;其次,系統(tǒng)支持彈性擴展,當查詢性能再次遭遇瓶頸時可以繼續(xù)擴展性能,而不需要對其他層做出修改;其次,系統(tǒng)對原有系統(tǒng)的侵入性小,原有的業(yè)務(wù)層和數(shù)據(jù)持久層可以不做改變,這有利于系統(tǒng)的穩(wěn)定性;最重要的是,該系統(tǒng)作為中間件可以橫跨多個子業(yè)務(wù)為高層業(yè)務(wù)提供統(tǒng)一的分布式索引,無論數(shù)據(jù)持久層分裂成了多少個單獨管理的數(shù)據(jù)源,該系統(tǒng)都只對應(yīng)著同一個搜索引擎,并一同建立索引,這相當于在寫入搜索引擎時便已經(jīng)對所有的表的字段進行了連接操作,這解決了由于業(yè)務(wù)分化造成的慢查詢問題。

綜上所述,基于本文提出的慢查詢優(yōu)化系統(tǒng)具有以下一些優(yōu)點:首先,可以有效解決由于業(yè)務(wù)分化帶來的慢查詢問題;其次,該解決方案有著優(yōu)良的性能,在性能不足時還可以繼續(xù)彈性擴容而不影響其他層的業(yè)務(wù);最后,該解決方案有著成熟的開源搜索工具可以使用,稍加開發(fā)便可以成為查詢優(yōu)化中間件,具有極低的時間、資金成本。

5 結(jié)語

本文分析了生產(chǎn)環(huán)境所面臨的慢查詢問題,查詢會極大地影響系統(tǒng)的用戶體驗。本文指出了業(yè)務(wù)的分化是造成這類問題的主要原因。針對該問題,已有三種解決方案,分別是:針對慢查詢語句進行調(diào)優(yōu),使用NoSQL技術(shù)重構(gòu)系統(tǒng)數(shù)據(jù)持久層,設(shè)計并架設(shè)合適的分布式索引。這三種解決方案都有著明顯的缺點,因而較難滿足實際應(yīng)用中的需求。基于實際生產(chǎn)中的需求及已有方案的缺點,并結(jié)合對數(shù)據(jù)庫及搜索引擎索引原理的分析,本文提出了基于搜索引擎的慢查詢優(yōu)化系統(tǒng),該系統(tǒng)能夠有效解決實際生產(chǎn)中面臨的慢查詢問題,同時具有低侵入性、快速開發(fā)、性能優(yōu)良等優(yōu)點。本文對信息系統(tǒng)解決慢查詢問題有著實際的參考意義?;谠撓到y(tǒng)和已有的開源搜索工具可以進一步開發(fā)出專用的查詢優(yōu)化分布式中間件,有著進一步研究的價值。

[1]朱喜梅.基于SQL Server數(shù)據(jù)庫的性能調(diào)優(yōu)策略與研究[D].哈爾濱理工大學(xué),2009.

[2]覃雄派,王會舉,李芙蓉,等.數(shù)據(jù)管理技術(shù)的新格局[J].軟件學(xué)報,2013(2):175-197.

[3]申德榮,于戈,王習(xí)特,等.支持大數(shù)據(jù)管理的NoSQL系統(tǒng)研究綜述[J].軟件學(xué)報,2013(8):1786-1803.

[4]吳煒,蘇永紅,李瑞軒,等.基于DHT的分布式索引技術(shù)研究與實現(xiàn)[J].計算機科學(xué),2010,37(2):65-70.

[5]隆飛,翁海星,高明,等.基于LSM Tree的分布式索引實現(xiàn)[J].華東師范大學(xué)學(xué)報自然科學(xué)版,2016(5).

[6]周威.知識搜索引擎在圖書館參考咨詢中的應(yīng)用研究[D].東北師范大學(xué),2010.

[7]劉艷華,徐勇.不同搜索引擎在農(nóng)業(yè)領(lǐng)域的應(yīng)用效果對比[J].農(nóng)業(yè)網(wǎng)絡(luò)信息,2009(8):25-29.

[8]MovieLens.http://grouplens.org/datasets/movielens/

[9]Gilbert S,Lynch N.Brewer's Conjecture and the Feasibility of Consistent,Available,Partition-Tolerant Web Services[J].Acm Sigact News,2002,33(2):51-59.

[10]Pritchett D.BASE:An Acid Alternative[J].Queue,2008,6(3):48-55.

The Slow Query Optimization System Based on Search Engine

CHEN Lun-yue1,YIN Feng2
(1.College of Computer Science,Sichuan University,Chengdu 610065; 2.The Campus Network Management Center,Southwest University for Nationalities,Chengdu 610064)

Generally,there is a data persistence layer to store and query the information in any information system.The often faced slow-query problem will greatly affect the system's user experience.Present studies can solve some problems caused by the growth of the data quite well.But when facing the problem caused by the business differentiation,the present studies work bad.Usually,the data source will be under the management of different business divisions,even different companies,which caused the increase of join operations in data querying.Analyzes the slow-query problem faced in real production environment,and creatively puts forward a system using the search engine technology to improve query performance.The system has several advantages including:low invasive,agile development,good performance,etc.

Slow Query;Search Engine;Query Optimization;System Design

1007-1423(2017)08-0026-05

10.3969/j.issn.1007-1423.2017.08.006

殷鋒(1972-),男,貴州榕江人,教授,研究方向為數(shù)據(jù)挖掘、中間件、分布式計算、軟件測試陳倫躍(1992-),男,四川成都人,碩士研究生,研究方向為態(tài)勢感知、民航大數(shù)據(jù)

2016-12-15

2017-02-20

猜你喜歡
搜索引擎檢索數(shù)據(jù)庫
2019年第4-6期便捷檢索目錄
數(shù)據(jù)庫
財經(jīng)(2017年2期)2017-03-10 14:35:35
數(shù)據(jù)庫
財經(jīng)(2016年15期)2016-06-03 07:38:02
專利檢索中“語義”的表現(xiàn)
專利代理(2016年1期)2016-05-17 06:14:36
數(shù)據(jù)庫
財經(jīng)(2016年3期)2016-03-07 07:44:46
數(shù)據(jù)庫
財經(jīng)(2016年6期)2016-02-24 07:41:51
網(wǎng)絡(luò)搜索引擎亟待規(guī)范
基于Nutch的醫(yī)療搜索引擎的研究與開發(fā)
廣告主與搜索引擎的雙向博弈分析
國際標準檢索
和田市| 田林县| 肥西县| 樟树市| 军事| 石首市| 嫩江县| 石棉县| 瑞安市| 榕江县| 双鸭山市| 攀枝花市| 永春县| 雷波县| 岗巴县| 枣强县| 肇东市| 新河县| 北辰区| 循化| 广宁县| 佛冈县| 博兴县| 淅川县| 长泰县| 高平市| 吴堡县| 桓台县| 富裕县| 玉树县| 凤凰县| 霍山县| 介休市| 南城县| 日土县| 襄垣县| 安福县| 霍邱县| 桦甸市| 伊川县| 甘南县|