自己動手寫分佈式搜索引擎 自己动手写分布式搜索引擎
羅剛, 崔智傑
- 出版商: 清華大學
- 出版日期: 2017-09-01
- 定價: $354
- 售價: 8.5 折 $301
- 語言: 簡體中文
- 頁數: 419
- 裝訂: 平裝
- ISBN: 7302477086
- ISBN-13: 9787302477082
-
相關分類:
大數據 Big-data
立即出貨 (庫存 < 4)
買這商品的人也買了...
-
$234自製搜尋引擎 -
$374解密搜尋引擎技術實戰 - Lucene & Java『精華第三版』 -
$422JavaEE 開發的顛覆者: Spring Boot實戰 -
$474自然語言處理 : 原理與技術實現 -
Kubernetes 使用指南$490$387 -
寫給 PM、RD 與設計師看的設計需求分析─使用者想要的應用程式都是這樣打造出來的 (Designing the Requirements: Building Applications that the User Wants and Needs)$580$458 -
$588NLP 漢語自然語言處理原理與實踐 -
$474網絡爬蟲全解析——技術、原理與實踐 -
第一次用 Docker 就上手$420$332 -
資安風險評估指南 (Network Security Assessment, 3/e)$780$616 -
$232Java EE企業級應用開發教程(Spring+Spring MVC+MyBatis) -
$254亞馬遜 AWS 雲基礎與實戰 -
網站可靠性工程|Google 的系統管理之道 (Site Reliability Engineering: How Google Runs Production Systems)(SRE)-*外觀稍有瑕疵,不介意者再下單$780$616 -
灰帽 C# | 建立自動化安全工具的駭客手冊 (Gray Hat C#: A Hacker's Guide to Creating and Automating Security Tools)$450$356 -
$454構建高可用Linux服務器(第4版) -
$714Kafka 技術內幕 (圖文詳解Kafka源碼設計與實現) -
自然語言處理:用人工智慧看懂中文$690$587 -
$352Python 自然語言處理實戰:核心技術與算法 -
$270這就是搜索引擎:核心技術詳解 -
$301JavaScript 函數式編程指南 -
深入學習 JavaScript 模組化設計 (Mastering Modular JavaScript)$400$316 -
$267Go 語言高級編程 -
深入理解 Java 虛擬機:JVM 高級特性與最佳實踐, 3/e$774$735 -
$517Elasticsearch 實戰與原理解析 -
$534超大流量分佈式系統架構解決方案:人人都是架構師2.0
中文年末書展|繁簡參展書2書75折 詳見活動內容 »
-
75折
為你寫的 Vue Components:從原子到系統,一步步用設計思維打造面面俱到的元件實戰力 (iThome 鐵人賽系列書)$780$585 -
75折
BDD in Action, 2/e (中文版)$960$720 -
75折
看不見的戰場:社群、AI 與企業資安危機$750$563 -
79折
AI 精準提問 × 高效應用:DeepSeek、ChatGPT、Claude、Gemini、Copilot 一本搞定$390$308 -
7折
超實用!Word.Excel.PowerPoint 辦公室 Office 365 省時高手必備 50招, 4/e (暢銷回饋版)$420$294 -
75折
裂縫碎光:資安數位生存戰$550$412 -
85折
日本當代最強插畫 2025 : 150位當代最強畫師豪華作品集$640$544 -
79折
Google BI 解決方案:Looker Studio × AI 數據驅動行銷實作,完美整合 Google Analytics 4、Google Ads、ChatGPT、Gemini$630$498 -
79折
超有料 Plus!職場第一實用的 AI 工作術 - 用對 AI 工具、自動化 Agent, 讓生產力全面進化!$599$473 -
75折
從零開始學 Visual C# 2022 程式設計, 4/e (暢銷回饋版)$690$518 -
75折
Windows 11 制霸攻略:圖解 AI 與 Copilot 應用,輕鬆搞懂新手必學的 Windows 技巧$640$480 -
75折
精準駕馭 Word!論文寫作絕非難事 (好評回饋版)$480$360 -
Sam Yang 的插畫藝術:用 Procreate / PS 畫出最強男友視角 x 女孩美好日常$699$629 -
79折
AI 加持!Google Sheets 超級工作流$599$473 -
78折
想要 SSR? 快使用 Nuxt 吧!:Nuxt 讓 Vue.js 更好處理 SEO 搜尋引擎最佳化(iThome鐵人賽系列書)$780$608 -
78折
超實用!業務.總管.人資的辦公室 WORD 365 省時高手必備 50招 (第二版)$500$390 -
7折
Node-RED + YOLO + ESP32-CAM:AIoT 智慧物聯網與邊緣 AI 專題實戰$680$476 -
79折
「生成式⇄AI」:52 個零程式互動體驗,打造新世代人工智慧素養$599$473 -
7折
Windows APT Warfare:惡意程式前線戰術指南, 3/e$720$504 -
75折
我輩程式人:回顧從 Ada 到 AI 這條程式路,程式人如何改變世界的歷史與未來展望 (We, Programmers: A Chronicle of Coders from Ada to AI)$850$637 -
75折
不用自己寫!用 GitHub Copilot 搞定 LLM 應用開發$600$450 -
79折
Tensorflow 接班王者:Google JAX 深度學習又快又強大 (好評回饋版)$780$616 -
79折
GPT4 會你也會 - 共融機器人的多模態互動式情感分析 (好評回饋版)$700$553 -
79折
技術士技能檢定 電腦軟體應用丙級術科解題教本|Office 2021$460$363 -
75折
Notion 與 Notion AI 全能實戰手冊:生活、學習與職場的智慧策略 (暢銷回饋版)$560$420
相關主題
商品描述
本書介紹了分佈式搜索引擎開發的原理與Java實現,主要包括全文檢索的原理與實現、分佈式算法與代碼實現、SolrCloud和ElasticSearch的使用與原理等內容,並著重介紹了一種實現分佈式中文搜索引擎的方法。 本書適合有Java程序設計基礎的開發人員或者對分佈式搜索引擎技術感興趣的從業人員使用
海報:

作者簡介
羅剛
計算機軟件碩士,畢業於吉林工業大學。2005年創立北京盈智星科技發展有限公司,2008年聯合創立上海數聚軟件公司。
獵兔搜索創始人,當前獵兔搜索在北京、上海以及石家莊均設有研發部。他帶領獵兔搜索技術開發團隊先後開發出獵兔中文分詞系統、獵兔文本挖掘系統,智能垂直搜索系統以及網絡信息監測系統等,實現因特網信息的採集、過濾、搜索和實時監測,其開發的搜索軟件日用戶訪問量萬次以上。
目錄大綱
第1章搜索引擎1
1.1搜索引擎基本模塊2
1.2開發環境3
1.3搜索引擎工作原理4
1.3.1網絡爬蟲5
1.3.2全文索引5
1.3.3搜索用戶界面8
1.3.4分佈式計算9
1.3 .5文本挖掘9
1.4算法基礎9
1.4.1折半查找10
1.4.2排序10
1.4.3最小生成樹12
1.5軟件工具15
1.6單元測試15
1.7本章小結17
1.8術語表18
第2章自己動手寫全文檢索19
2.1構建索引22
2.2生成索引文件23
2.3讀入索引文件25
2.4查詢26
2.5有限狀態機29
2.5.1運算29
2.5.2編輯距離有限狀態機30
2.6本章小結32
第3章Lucene的原理與應用33
3.1 Lucene快速入門34
3.1.1創建索引34
3.1.2查詢索引庫35
3.1.3創建文檔索引36
3.1.4查詢文檔索引36
3.2創建和維護索引庫37
3.2.1設計索引庫結構37
3.2.2創建索引庫38
3.2.3向索引庫中添加索引文檔40
3.2.4刪除索引庫中的索引文檔43
3.2.5更新索引庫中的索引文檔44
3.2.6關閉索引庫45
3.2.7索引的優化與合併45
3.2.8靈活索引46
3.2.9索引文件格式47
3.2.10定製索引存儲結構49
3.2 .11寫索引集成到爬蟲54
3.2.12多線程寫索引56
3.2.13分發索引58
3.2.14修復索引61
3.3查找索引庫61
3.3.1查詢過程61
3.3.2常用查詢64
3.3.3基本詞查詢65
3.3.4模糊匹配65
3.3.5布爾查詢67
3.3.6短語查詢69
3.3.7跨度查詢71
3.3.8 FieldScoreQuery 74
3.3.9排序77
3.3.10使用Filter篩選搜索結果81
3.3.11使用Collector篩選搜索結果82
3.3.12遍歷索引庫85
3.3.13關鍵詞高亮顯示88
3.3.14列合併91
3.3.15關聯內容(BlockJoinQuery) 92
3.3.16查詢大容量索引94
3.4讀寫並發95
3.5 Lucene深入介紹95
3.5.1整體結構96
3.5. 2索引原理97
3.5.3文檔值100
3.5.4 FST 102
3.6查詢語法與解析102
3.6.1 JavaCC 104
3.6.2生成一個查詢解析器114
3.6.3簡單的查詢解析器114
3.6.4靈活的查詢解析器114
3.7檢索模型119
3.7.1向量空間模型121
3.7.2 DFR 125
3.7.3 BM25概率模型130
3.7.4 BM25F概率模型136
3.7.5統計語言模型138
3.7.6相關性反饋140
3.7.7隱含語義索引140
3.7.8學習評分141
3.7.9查詢與相關度142
3.7.10使用Payload調整相關性142
3.8查詢原理146
3.8.1布爾匹配147
3.8.2短語查詢150
3.8.3索引統計150
3.8.4相關性152
3.9分析文本155
3.9.1 Analyzer 156
3.9.2 TokenStream 162
3.9.3定製Tokenizer 164
3.9.4重用Tokenizer 166
3.9.5有限狀態轉換167
3.9.6索引數值列168
3.9.7檢索結果排序171
3.9.8處理價格171
3.10 Lucene中的壓縮算法172
3.10.1變長壓縮172
3.10.2 Gamma 174
3.10.3 PForDelta 176
3.10.4 VSEncoding 178
3.10.5前綴壓縮179
3.10.6差分編碼180
3.10.7靜態索引裁剪182
3.11搜索中文182
3.11.1 Lucene切分原理185
3.11.2 Lucene中的Analyzer 186
3.11.3自己寫Analyzer 188
3.11.4 Lietu中文分詞191
3.11.5字詞混合索引191
3.12搜索英文196
3.12.1英文分詞196
3.12.2詞性標註199
3.12.3原型化201
3.13索引數據庫中的文本202
3.14優化使用Lucene 204
3.14.1系統優化204
3.14.2查詢優化205
3.14.3實現時間加權排序207
3.14.4詞性標註210
3.14.5個性化搜索213
3.15實時搜索213
3.16語義搜索215
3.16.1發現同義詞215
3.16.2垂直領域同義詞219
3.16.3同義詞擴展219
3.16.4語義標註225
3.17本章小結225
3.18術語表226
第4章搜索引擎用戶界面227
4.1實現Lucene搜索228
4.1.1測試搜索功能228
4.1.2加載索引229
4.2搜索頁面設計231
4.2.1 Struts2實現的搜索界面232
4.2.2用於顯示搜索結果的Taglib 234
4.2.3實現翻頁235
4.3實現搜索接口238
4.3.1編碼識別238
4.3.2布爾搜索241
4.3.3指定範圍搜索241
4.3.4搜索結果排序242
4.3.5索引緩存與更新243
4.4實現分類統計視圖249
4.4.1單值列分類統計255
4.4.2側鑽256
4.5實現相似文檔搜索257
4.6實現AJAX搜索聯想詞259
4.6.1估計查詢詞的文檔頻率259
4.6.2搜索聯想詞總體結構259
4.6.3服務器端處理260
4.6.4瀏覽器端處理265
4.6.5拼音提示267
4.6.6部署總結267
4.7推薦搜索詞268
4.7.1挖掘相關搜索詞268
4.7.2使用多線程計算相關搜索詞270
4.8查詢意圖理解271
4.8.1拼音搜索271
4.8.2無結果處理272
4.9集成其他功能272
4.9.1拼寫檢查272
4.9.2分類統計276
4.9.3相關搜索281
4.9.4再次查找284
4.9.5搜索日誌284
4.10查詢分析286
4.10.1歷史搜索詞記錄286
4.10.2日誌信息過濾286
4.10.3信息統計287
4.10.4挖掘日誌信息289
4.10.5查詢詞意圖分析290
4.11部署網站290
4.11.1部署到Web服務器290
4.11.2防止攻擊292
4.12手機搜索界面295
4.13本章小結296
第5章Solr分佈式搜索引擎297
5.1 Solr簡介298
5.2 Solr基本用法299
5.2.1 Solr服務器端的配置與中文支持300
5.2.2數據類型304
5.2.3解析器306
5.2.4把數據放進Solr 307
5.2.5刪除數據312
5.2.6查詢語法313
5.3使用SolrJ 313
5.3.1 Solr客戶端與搜索界面313
5.3.2 Solr索引庫的查找315
5.3.3分類統計317
5.3.4高亮319
5.3.5同義詞322
5.3.6嵌入式Solr 322
5.3.7 Spring實現的搜索界面323
5.3.8索引分發331
5.3.9 Solr搜索優化333
5.4從FAST Search移植到Solr 336
5.5 Solr擴展與定製337
5.5.1默認查詢337
5.5.2插件338
5.5.3 Solr中字詞混合索引338
5.5.4相關檢索340
5.5.5搜索結果去重341
5.5.6定製輸入輸出344
5.5.7聚類348
5.5.8分佈式搜索348
5.5 .9分佈式索引352
5.5.10 SolrJ查詢分析器353
5.5.11擴展SolrJ 360
5.5.12擴展Solr 361
5.5.13日文搜索364
5.5.14查詢Web圖365
5.6 SolrNet 367
5.6.1使用SolrNet實現全文搜索367
5.6.2實現原理370
5.6.3擴展SolrNet 371
5.7 Solr的PHP客戶端373
5.8 Solr的其他客戶端376
5.9為網站增加搜索功能376
5.10 SolrCloud 377
5.10.1 Zab協議377
5.10.2 ZooKeeper 377
5.10. 3使用SolrCloud 379
5.10.4 SQL查詢380
5.11 Solr原理381
5.11.1支持Solr的中文分詞381
5.11.2緩存技術383
5.12本章小結384
第6章ElasticSearch分佈式搜索引擎387
6.1安裝389
6.2搜索集群390
6.2.1 Zen發現機制390
6.2.2 JGroups 391
6.3創建索引393
6.4 Java客戶端接口396
6.4.1創建索引398
6.4. 2插入數據398
6.4.3索引庫結構400
6.5查詢401
6.6高亮顯示405
6.7分頁406
6.8中文搜索407
6.8.1中文AnalyzerProvider 407
6.8.2字詞混合索引409
6.9分組統計412
6.10與爬蟲集成413
6.11 Percolate 413
6.12權限414
6.13 SQL支持415
6.14本章小結419
