搜索引擎零距離

出版時(shí)間:2009 年5月  出版社:清華大學(xué)出版社  作者:王亮  頁數(shù):394  
Tag標(biāo)簽:無  

前言

搜索引擎是指因特網(wǎng)上專門提供查詢服務(wù)的一類網(wǎng)站,這些網(wǎng)站通過網(wǎng)絡(luò)搜索軟件(又稱為網(wǎng)絡(luò)搜索機(jī)器人)或網(wǎng)站登錄等方式,收集因特網(wǎng)上大量網(wǎng)站的頁面,經(jīng)過加工處理后建庫,從而能夠?qū)τ脩籼岢龅母鞣N查詢作出響應(yīng),提供用戶所需的信息。用戶的查詢途徑主要包括自由詞、全文檢索、主題詞檢索、分類檢索及其他特殊信息的檢索f企業(yè)、人名、電話黃頁等)。本書中所記述的種種理論與知識,是筆者在多年的搜索引擎開發(fā)過程中的積累與沉淀,其中既涉及了Google和Baidu這種類型的通用搜索引擎,也涉及了垂直搜索引擎的開發(fā)技術(shù)。垂直搜索引擎概念的提出,就是針對某一特定領(lǐng)域、某一特定人群或某一特定需求提供的有一定價(jià)值的信息和相關(guān)服務(wù)??梢院唵蔚恼f成是搜索引擎領(lǐng)域的行業(yè)化分工。眾多專業(yè)性網(wǎng)站、行業(yè)網(wǎng)站獨(dú)立服務(wù)于互聯(lián)網(wǎng)的成功,恰恰證明了互聯(lián)網(wǎng)的格局應(yīng)該是多方面的。通用搜索引擎的性質(zhì),決定了其不能滿足特殊領(lǐng)域和特殊人群的精準(zhǔn)化信息需求服務(wù)。市場需求多元化決定了搜索引擎的服務(wù)模式必將出現(xiàn)細(xì)分,以針對不同行業(yè)提供更加精確的行業(yè)服務(wù)模式??梢哉f通用搜索引擎的發(fā)展為垂直搜索引擎的出現(xiàn)提供了良好的市場空間,勢必將出現(xiàn)垂直搜索引擎在互聯(lián)網(wǎng)中占據(jù)部分市場的趨勢,也是搜索引擎行業(yè)細(xì)分化的必然趨勢。

內(nèi)容概要

  《搜索引擎零距離:基于Ruby+Java搜索引擎原理與實(shí)現(xiàn)》的內(nèi)容中,既有教科書式的理論闡述,也有“七天入門”式的實(shí)例解析,還有《Linux內(nèi)核情景分析》風(fēng)格的細(xì)致的代碼分析,甚至還有一些英語文獻(xiàn)翻譯,從初學(xué)者到有一定經(jīng)驗(yàn)的搜索引擎開發(fā)人員,各個(gè)層次的讀者都能找到一些適合自己閱讀的章節(jié)。隨著網(wǎng)絡(luò)信息資源的急劇增長,人們越來越多地關(guān)注如何快速有效地從海量的網(wǎng)絡(luò)信息中,抽取出潛在的、有價(jià)值的信息,使之有效地在管理和決策中發(fā)揮作用。搜索引擎技術(shù)解決了用戶檢索網(wǎng)絡(luò)信息的困難,目前搜索引擎技術(shù)正成為計(jì)算機(jī)科學(xué)界和信息產(chǎn)業(yè)界爭相研究、開發(fā)的對象?!端阉饕媪憔嚯x:基于Ruby+Java搜索引擎原理與實(shí)現(xiàn)》的作者是一位資深的搜索引擎開發(fā)人員,書中對數(shù)據(jù)獲?。ňW(wǎng)絡(luò)信息挖掘)與數(shù)據(jù)檢索(搜索引擎)兩個(gè)方面作了深入的介紹。《搜索引擎零距離:基于Ruby+Java搜索引擎原理與實(shí)現(xiàn)》首先提出了一套“網(wǎng)絡(luò)數(shù)據(jù)挖掘”的完整理論,并給出一個(gè)實(shí)際的智能爬蟲系統(tǒng),通過理論與實(shí)際的完整呈現(xiàn),使讀者能夠?qū)Α熬W(wǎng)絡(luò)數(shù)據(jù)挖掘”有一個(gè)比較具體的認(rèn)識,然后介紹了一個(gè)專用程序語言IRS,并給出了這個(gè)語言的編譯器以及虛擬機(jī)的實(shí)現(xiàn)方法?!端阉饕媪憔嚯x:基于Ruby+Java搜索引擎原理與實(shí)現(xiàn)》還通過對多個(gè)開源搜索引擎項(xiàng)目抽絲剝繭的細(xì)致分析,引出搜索引擎的一些基本原理與開發(fā)方法,并介紹了一個(gè)商業(yè)化搜索引擎的實(shí)例。《搜索引擎零距離:基于Ruby+Java搜索引擎原理與實(shí)現(xiàn)》的最后還結(jié)合一個(gè)Java框架介紹了一些軟件設(shè)計(jì)思想?!  端阉饕媪憔嚯x:基于Ruby+Java搜索引擎原理與實(shí)現(xiàn)》涉及網(wǎng)絡(luò)數(shù)據(jù)挖掘、搜索引擎原理、編譯原理、數(shù)據(jù)庫原理、正則表達(dá)式、軟件工程、設(shè)計(jì)模式、Ruby語言、HTTP協(xié)議等計(jì)算機(jī)科學(xué)與技術(shù)的知識,適合搜索引擎開發(fā)人員作為參考,也適合有一定計(jì)算機(jī)基礎(chǔ)的讀者閱讀,以擴(kuò)展視野。

作者簡介

王亮,主持或參與過多個(gè)大中型索引擎開發(fā)與運(yùn)營,具有豐富的搜索引擎算法理論知識與實(shí)際開發(fā)運(yùn)營經(jīng)驗(yàn)。曾任職于愛立信、Smarter.com、上海網(wǎng)村、上海邁眾,2009年創(chuàng)立上海睿驛信息技術(shù)有限公司并任CEO,致力于提供搜索引擎相關(guān)的產(chǎn)品和服務(wù)。

書籍目錄

第1章 網(wǎng)頁數(shù)據(jù)挖掘.1 1.1 網(wǎng)頁數(shù)據(jù)挖掘定義11.2 Web數(shù)據(jù)挖掘面臨的問題11.3 Web數(shù)據(jù)挖掘的分類11.4 網(wǎng)頁數(shù)據(jù)的結(jié)構(gòu)與特點(diǎn)31.4.1 HTML超文本標(biāo)記語言31.4.2 WML無線標(biāo)記語言41.5 網(wǎng)頁數(shù)據(jù)挖掘的基本方法61.5.1 預(yù)備知識71.5.2 變量模板匹配方法81.5.3 樹節(jié)點(diǎn)直接標(biāo)識方法101.5.4 語義規(guī)則識別方法13第2章 智能網(wǎng)絡(luò)爬蟲142.1 智能網(wǎng)絡(luò)爬蟲的定義與特點(diǎn)142.2 抓取入口定義142.3 次級頁面自動發(fā)現(xiàn)142.4 次級頁面地址拼接162.5 已爬地址處理172.6 信息采集強(qiáng)度控制192.7 模擬用戶登錄192.8 驗(yàn)證碼識別202.9 代理服務(wù)器設(shè)置202.10 JavaScript解析控制21第3章 網(wǎng)頁信息挖掘?qū)S贸绦蛟O(shè)計(jì)語言IRS233.1 IRS語言的簡介與設(shè)計(jì)原則233.2 IRS腳本語法結(jié)構(gòu)233.2.1 頁面配置塊233.2.2 頁面名語句233.2.3 爬蟲配置聲明語句243.2.4 入口聲明語句243.2.5 編碼配置263.2.6 步長配置263.2.7 重試次數(shù)配置273.2.8 正則模式匹配語句273.2.9 匹配名聲明283.2.10 IEE表達(dá)式283.2.11 模式匹配修飾符293.2.12 節(jié)點(diǎn)模式匹配語句323.2.13 次級頁面入口語句..3 33.2.14 保存語句353.2.15 Ruby控制語句353.2.16 爬蟲配置語句373.2.17 系統(tǒng)配置語句373.2.18 外部配置文件383.2.19 執(zhí)行語句塊393.2.20 IRQL存儲語句403.2.21 IRQL語言中的數(shù)據(jù)表443.2.22 IRQL內(nèi)部函數(shù)493.2.23 實(shí)例解析55第4章 IRS虛擬機(jī)及編譯器實(shí)現(xiàn)原理694.1 Ruby基本語法704.1.1 字句構(gòu)造和表達(dá)式704.1.2 字面值714.1.3 控制結(jié)構(gòu)744.1.4 類和方法的定義804.1.5 運(yùn)算符表達(dá)式844.1.6 變量和常量894.1.7 方法調(diào)用914.2 Java與JRuby的整合934.2.1 Java中的Ruby運(yùn)行庫環(huán)境934.2.2 IRSReflectionCallback類實(shí)現(xiàn)944.2.3 在Java中編譯執(zhí)行Ruby腳本994.2.4 Java內(nèi)嵌Ruby方法總結(jié)1004.3 詞法分析和語法分析1014.3.1 定義與簡介1014.3.2 SableCC1034.4 IRS語言的語義分析1374.5 IRVM虛擬機(jī)主類1464.5.1 generateEntrance()1474.5.2 getContent()1494.5.3 match()1604.5.4 Save()1744.5.5 compileAndRun()198第5章 搜索引擎設(shè)計(jì)原理2005.1 概述2005.2 Lucene搜索引擎的原理2055.2.1 工作方式2055.2.2 基本概念2065.2.3 包結(jié)構(gòu)2075.2.4 索引操作2085.2.5 搜索2105.2.6 分析器2145.2.7 性能優(yōu)化2155.2.8 并行集群2165.3 Hadoop搜索引擎的原理2205.3.1 組成結(jié)構(gòu)2205.3.2 開發(fā)與使用2225.4 Nutch搜索引擎的原理2265.4.1 簡介2265.4.2 插件體系2265.4.3 數(shù)據(jù)獲取與分析2285.5 Compass搜索引擎的原理2645.5.1 功能增強(qiáng)2645.5.2 API簡化2655.5.3 編程方式2655.6 Solr搜索引擎的原理2665.6.1 概述2665.6.2 使用Solr269第6章 搜索引擎的商業(yè)化實(shí)現(xiàn)2756.1 索引2756.1.1 Solr實(shí)現(xiàn)2756.1.2 MySE實(shí)現(xiàn)2796.1.3 總結(jié)3176.2 查詢3176.2.1 Solr實(shí)現(xiàn)3176.2.2 MySE實(shí)現(xiàn)3186.2.3 總結(jié)358第7章 Hivemind3597.1 模塊(Modules)3597.2 子模塊與依賴性(SubModules&Dependency)3607.3 服務(wù)點(diǎn)(ServicePoints)3617.4 攔截器(Interceptor)3627.5 配置點(diǎn)(ConfigurationPoints)3637.6 符號資源(SymbolSources)3647.7 轉(zhuǎn)換器(Translators)3657.8 對象提供器(ObjectProviders)3687.9 服務(wù)模型(ServiceModels)3707.10 啟動&預(yù)加載(Startup&EagerLoad)3737.11 服務(wù)構(gòu)造器376后記與感謝393

章節(jié)摘錄

插圖:第1章 網(wǎng)頁數(shù)據(jù)挖掘1.1 網(wǎng)頁數(shù)據(jù)挖掘定義數(shù)據(jù)挖掘(Data Minin9,DM),是從存放在數(shù)據(jù)庫、數(shù)據(jù)倉庫或其他信息庫中的大量數(shù)據(jù)中提取或“挖掘”有趣知識的過程。隨著網(wǎng)絡(luò)的不斷發(fā)展,因特網(wǎng)目前已成為一個(gè)巨大的、分布廣泛的和全球性的信息服務(wù)中心。從海量的網(wǎng)絡(luò)信息中尋找有用的知識,早已成為人們的迫切需求。各種類似Google、Baidu等的搜索引擎也層出不窮,Web數(shù)據(jù)挖掘的應(yīng)用在現(xiàn)實(shí)中不斷體現(xiàn)。Web數(shù)據(jù)挖掘建立在對大量的網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行分析的基礎(chǔ)上,采用相應(yīng)的數(shù)據(jù)挖掘算法,在具體的應(yīng)用模型上進(jìn)行數(shù)據(jù)的提取、數(shù)據(jù)篩選、數(shù)據(jù)轉(zhuǎn)換、數(shù)據(jù)挖掘和模式分析,最后做出歸納性的推理、預(yù)測客戶的個(gè)性化行為以及用戶習(xí)慣,從而幫助決策和管理,減少決策的風(fēng)險(xiǎn)。Web數(shù)據(jù)挖掘涉及多個(gè)領(lǐng)域,除數(shù)據(jù)挖掘外,還涉及計(jì)算機(jī)網(wǎng)絡(luò)、數(shù)據(jù)庫與數(shù)據(jù)倉儲、人工智能、信息檢索、可視化、自然語言理解等技術(shù)。1.2 Web數(shù)據(jù)挖掘面臨的問題Web的巨大、分布廣泛和內(nèi)容多樣使得目前的Web數(shù)據(jù)挖掘面臨著眾多問題和挑戰(zhàn)。首先,對有效的數(shù)據(jù)倉庫和數(shù)據(jù)挖掘來說,Web上的數(shù)據(jù)過于龐大。而且,Web上的數(shù)據(jù)具有極強(qiáng)的動態(tài)性,不僅數(shù)量增長快而且更新十分迅速。但是面對如此大量的Web信息,卻有調(diào)查表明:99%的Web信息對于99%的用戶是無用的。這樣看來,面對網(wǎng)絡(luò)上形形色色的用戶群體,許多由Web搜索引擎所檢索到的資料將會被淹沒。

后記

從2000年進(jìn)入大學(xué)計(jì)算機(jī)專業(yè),開始編寫Pascal語言程序算起,我已經(jīng)在程序設(shè)計(jì)領(lǐng)域耕耘了8年。大學(xué)時(shí)伴隨我最多是的VC 6.0,閱讀著各色的C++書籍,編寫自己的一個(gè)個(gè)C++項(xiàng)目,各種各樣的算法、理論、編程思想,經(jīng)過自己的理解消化之后,從書本進(jìn)入自己的頭腦。這些計(jì)算機(jī)科學(xué)與軟件工程中的知識,在后來的工作中有意無意地被使用到,正是因?yàn)閷Α毒幾g原理》的熟悉,當(dāng)遇到網(wǎng)頁信息挖掘這樣一個(gè)復(fù)雜項(xiàng)目的時(shí)候,我設(shè)計(jì)了IRS語言,使用這個(gè)語言中各種靈活的表達(dá)式、函數(shù)、流程控制來實(shí)現(xiàn)對高度靈活復(fù)雜的網(wǎng)頁信息挖掘需求。2004年,我在一家商品搜索引擎公司工作,與同事們一起用C、Pefl、PHP語言為這個(gè)系統(tǒng)設(shè)計(jì)各種功能模塊。這段時(shí)間中,我開始了解搜索引擎系統(tǒng)的概念、算法等方方面面。2005年,我在一家無線搜索引擎公司接受了一個(gè)任務(wù):用Java語言獨(dú)立實(shí)現(xiàn)一個(gè)工業(yè)級別的搜索引擎。由于預(yù)算的有限與時(shí)間的緊迫,我向開源軟件尋求靈感與幫助。深入研究了L,ucene和。Nutch之后,我發(fā)現(xiàn)它們剛好能符合我的需求,基于這兩個(gè)系統(tǒng),我開始架構(gòu)自己的搜索引擎系統(tǒng)UUSE。在以后的若干年中,Lucene的版本從1.4升級到了2.3,功能與性能不斷改善,Nutch中的“分布式計(jì)算與文件系統(tǒng)”模塊獨(dú)立成為Hadoop項(xiàng)目,性能和可擴(kuò)展性也有了長足的進(jìn)步。2006年,Apache發(fā)布了開源的Solr項(xiàng)目,這使得架設(shè)一個(gè)中小規(guī)模的搜索引擎變得比較容易。

編輯推薦

《搜索引擎零距離:基于Ruby+Java搜索引擎原理與實(shí)現(xiàn)》特色:國內(nèi)垂直搜引擎的扛鼎之作;集開源搜索引擎之大成,融會貫通,自成一體;無線搜索引擎核心技術(shù)零距離接觸;Web信息挖掘?qū)S贸绦蛟O(shè)計(jì)語言,語法標(biāo)準(zhǔn)首次發(fā)布;垂直爬蟲專業(yè)并行虛擬機(jī)核心技術(shù)展示;多年商業(yè)搜索引擎開發(fā)運(yùn)營經(jīng)驗(yàn)之提煉總結(jié);真實(shí)的中型分布式搜索引擎開發(fā)案例全景展現(xiàn);最新Java前沿技術(shù)在經(jīng)典計(jì)算機(jī)理論上的優(yōu)秀應(yīng)用;專業(yè)信息檢索理論與商業(yè)搜索需求的完美結(jié)合;Java軟件工程設(shè)計(jì)模式最佳實(shí)踐。

圖書封面

圖書標(biāo)簽Tags

評論、評分、閱讀與下載


    搜索引擎零距離 PDF格式下載


用戶評論 (總計(jì)5條)

 
 

  •   比較爛,建議慎重購買~
  •   書拿到的時(shí)候感覺有點(diǎn)舊,也不是最新印刷的.
  •   知識豐富,很好,多多支持
  •   封面上吹噓的基本上沒提到。。
  •   剛開始讀了一點(diǎn)兒,喜歡RUBY,所以買了這本,大致翻了下,RUBY的東西還是不多,JAVA占了不少的篇幅,期待將來能有更多RUBY實(shí)現(xiàn)的好書
 

250萬本中文圖書簡介、評論、評分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號-7