Elasticsearch 數據搜索與分析實戰
王深湛
- 出版商: 人民郵電
- 出版日期: 2023-04-01
- 售價: $599
- 貴賓價: 9.5 折 $569
- 語言: 簡體中文
- 頁數: 379
- ISBN: 7115603650
- ISBN-13: 9787115603654
-
相關分類:
全文搜尋引擎 Full-text-search
立即出貨
買這商品的人也買了...
-
$750$713 -
$301Kibana 數據可視化 (Learning Kibana 5.0)
-
$750$638 -
$454Python 3 反爬蟲原理與繞過實戰
-
$556Elasticsearch 實戰與原理解析
-
$780$702 -
$780$608 -
$556OpenStack 設計與實現, 3/e
-
$534$507 -
$680$530 -
$599$569 -
$539$512 -
$474$450 -
$480$379 -
$620$490 -
$480$432 -
$654$621 -
$479$455 -
$356網絡安全應急管理與技術實踐
-
$305網絡攻防實訓 (微課視頻版)
-
$650$487 -
$714Python 大數據架構全棧開發與應用
-
$479$455 -
$658一本書講透 Elasticsearch:原理、進階與工程實務
-
$650$487
相關主題
商品描述
本書從Elasticsearch的功能和業務場景開始介紹,逐步深入講解Elasticsearch在數據搜索和數據分析領域的實戰應用,並詳細介紹Elasticsearch的Java高級客戶端編程方法和整個Elastic Stack技術生態體系。
本書共12章,第1章講述Elasticsearch的業務場景和安裝配置;第2章講述Elasticsearch內部實現的各種原理;第3章講述Elasticsearch索引的使用方法;第4章講述文本分析的過程和文本分析器的使用;第5章講述Elasticsearch支持的各種搜索方式;第6章講述使用聚集統計進行數據分析的方法;第7章講述索引之間存在父子關系時的解決方法;第8章講述Elasticsearch的Java高級客戶端編程方法;第9章講述Elasticsearch集群的搭建、優化、備份方法;第10~12章講述Elastic Stack各組件的配合使用。
本書內容通俗易懂,易於學習,既講理論原理又側重介紹開發實戰,很適合Java後端開發工程師、大數據開發工程師、Elasticsearch技術講師和學員及搜索引擎技術的愛好者閱讀。另外,本書也可以作為培訓機構的教材,用來指導Elasticsearch新手的入門學習。
作者簡介
武汉大学计算机硕士,长期专注于Java后端开发,擅长领域为微服务、全文检索和大数据分析。目前供职于中国科学院下某研究所担任高级研发工程师,长期在一线担任开发职位,项目经验丰富,热衷于开源事业,乐于做技术分享和交流。
目錄大綱
原理篇
第 1章 快速入門 03
1 1 Elasticsearch簡介 03
1 2 Elasticsearch的典型接入方式 04
1 2 1 將Elasticsearch作為數據源 04
1 2 2 給已有系統添加Elasticsearch 05
1 2 3 使用Elastic Stack 05
1 3 專有名詞解釋 06
1 4 安裝Elasticsearch 7 9 1 08
1 5 安裝Kibana調試Elasticsearch 09
1 6 Elasticsearch節點的重要配置 11
1 6 1 集群節點的配置方法和優先級 12
1 6 2 elasticsearch yml的重要配置 13
1 6 3 配置JVM的堆內存大小 15
1 7 本章小結 16
第 2章 深入原理 17
2 1 搜索引擎的基本原理 17
2 2 Elasticsearch集群的形成機制 19
2 2 1 集群節點的發現、選舉和引導過程 20
2 2 2 集群狀態的發布過程 20
2 3 索引分片的分配機制 21
2 3 1 分片的分配 21
2 3 2 分片分配的過程 22
2 3 3 分片分配的感知 25
2 3 4 分片分配的過濾 27
2 4 索引分片的恢復機制 28
2 4 1 分片的恢復 29
2 4 2 分片恢復的過程 29
2 4 3 減少不必要的分片恢復 32
2 5 索引數據的寫入過程 33
2 6 索引數據的搜索過程 35
2 7 本章小結 36
應用篇
第3章 索引數據 41
3 1 使用映射定義索引結構 41
3 1 1 映射的概念和使用 41
3 1 2 映射支持的常規字段類型 43
3 1 3 忽略映射中不合法的數據 48
3 1 4 字段復制和字段存儲 51
3 1 5 動態映射 54
3 2 索引中數據的增刪改查 60
3 2 1 使用REST端點對索引映射中的數據進行增刪改查 61
3 2 2 使用樂觀鎖進行並發控制 63
3 2 3 索引數據的批量寫入 65
3 3 索引數據的路由規則 68
3 3 1 索引數據路由的原理 69
3 3 2 使用自定義路由分發數據 69
3 4 索引的別名 73
3 4 1 別名的創建和刪除 73
3 4 2 別名配合數據過濾 74
3 4 3 別名配合數據路由 76
3 5 滾動索引 77
3 6 索引的狀態管理 80
3 6 1 清空緩存 80
3 6 2 刷新索引 81
3 6 3 沖洗索引 81
3 6 4 強制合並 82
3 6 5 關閉索引 82
3 6 6 凍結索引 83
3 7 索引的塊 83
3 8 索引模板 84
3 8 1 使用索引模板定製索引結構 84
3 8 2 使用模板組件簡化模板配置 88
3 9 索引的監控 90
3 9 1 監控索引的健康狀態 90
3 9 2 監控索引分片的段數據 91
3 9 3 監控索引分片的分配 93
3 9 4 監控索引分片的恢復 93
3 9 5 監控索引的統計指標 95
3 10 控制索引分片的分配 97
3 11 本章小結 98
第4章 文本分析 99
4 1 文本分析的原理 99
4 2 使用內置的分析器分析文本 100
4 2 1 標準分析器 100
4 2 2 簡單分析器 105
4 2 3 空格分析器 106
4 3 使用IK分詞器分析文本 108
4 3 1 安裝IK分詞器 108
4 3 2 在索引中使用IK分詞器 108
4 4 自定義文本分析器分析文本 112
4 4 1 字符過濾器 112
4 4 2 分詞器 115
4 4 3 分詞過濾器 119
4 4 4 給索引添加自定義分析器 124
4 5 查看文檔的詞條向量 127
4 6 keyword類型字段的標準化 131
4 7 本章小結 134
第5章 搜索數據 135
5 1 精準級查詢 136
5 1 1 術語查詢 136
5 1 2 多術語查詢 137
5 1 3 主鍵查詢 139
5 1 4 範圍查詢 140
5 1 5 存在查詢 142
5 1 6 前綴查詢 143
5 1 7 正則查詢 145
5 1 8 通配符查詢 146
5 2 全文檢索 147
5 2 1 匹配搜索 148
5 2 2 布爾前綴匹配搜索 150
5 2 3 短語搜索 151
5 2 4 短語前綴匹配搜索 152
5 2 5 多字段匹配搜索 152
5 2 6 查詢字符串搜索 153
5 3 經緯度搜索 156
5 3 1 圓形搜索 156
5 3 2 矩形搜索 158
5 3 3 多邊形搜索 160
5 4 復合搜索 161
5 4 1 布爾查詢 161
5 4 2 常量得分查詢 164
5 4 3 析取最大查詢 165
5 4 4 相關度增強查詢 166
5 5 搜索結果的總數 166
5 6 搜索結果的分頁 167
5 6 1 普通分頁 168
5 6 2 滾動分頁 168
5 6 3 Search after分頁 169
5 7 搜索結果的排序 171
5 8 篩選搜索結果返回的字段 172
5 9 高亮搜索結果中的關鍵詞 174
5 10 折疊搜索結果 175
5 11 解釋搜索結果 180
5 12 本章小結 181
第6章 聚集統計 183
6 1 度量聚集 183
6 1 1 平均值聚集 184
6 1 2 最大值和最小值聚集 185
6 1 3 求和聚集 186
6 1 4 統計聚集 186
6 1 5 基數聚集 187
6 1 6 百分比聚集 188
6 1 7 百分比等級聚集 190
6 1 8 頭部命中聚集 191
6 1 9 矩陣統計聚集 192
6 2 桶聚集 194
6 2 1 詞條聚集 194
6 2 2 範圍聚集 198
6 2 3 日期範圍聚集 200
6 2 4 直方圖聚集 202
6 2 5 日期直方圖聚集 204
6 2 6 缺失聚集 207
6 2 7 過濾器聚集 208
6 2 8 多過濾器聚集 209
6 3 管道聚集 210
6 3 1 平均桶聚集 211
6 3 2 求和桶聚集 212
6 3 3 最大桶和最小桶聚集 214
6 3 4 累計求和桶聚集 216
6 3 5 差值聚集 217
6 4 使用fielddata聚集text字段 219
6 5 使用全局有序編號加快聚集速度 221
6 6 給聚集請求添加後過濾器 222
6 7 本章小結 224
第7章 父子關聯 226
7 1 使用對象數組存在的問題 226
7 2 嵌套對象 229
7 2 1 在索引中使用嵌套對象 229
7 2 2 嵌套對象的搜索 231
7 2 3 嵌套對象的聚集 236
7 3 join字段 240
7 3 1 在索引中使用join字段 240
7 3 2 join字段的搜索 243
7 3 3 join字段的聚集 248
7 4 在應用層關聯數據 253
7 5 本章小結 255
第8章 Java高級客戶端編程 257
8 1 開發前的準備 257
8 2 建立索引並寫入數據 259
8 2 1 創建映射 259
8 2 2 寫入、修改、刪除數據 263
8 3 搜索數據 267
8 4 統計分析 274
8 5 為索引接入實時數據 278
8 6 本章小結 279
第9章 集群擴展和性能優化 280
9 1 節點的角色類型 280
9 2 在CentOS 7上搭建Elasticsearch集群 282
9 2 1 準備工作 282
9 2 2 安裝集群 284
9 2 3 驗證安裝 286
9 3 推薦的集群配置 288
9 4 監控集群 292
9 4 1 監控集群的狀態信息 292
9 4 2 監控集群的健康狀態 294
9 4 3 監控集群節點的統計指標 295
9 4 4 監控節點的熱點線程 298
9 4 5 查看慢搜索日誌 298
9 4 6 查看慢索引日誌 299
9 5 索引分片數的設置與橫向擴容 300
9 6 優化索引的寫入速度 303
9 6 1 避免寫入過大的文檔 303
9 6 2 合並寫入請求 304
9 6 3 適當增大寫入的線程數和索引緩沖區 307
9 7 優化搜索的響應速度 307
9 7 1 避免深度分頁 308
9 7 2 合並搜索請求 308
9 7 3 使用緩存加快搜索速度 311
9 7 4 控制搜索請求的路由 313
9 8 集群的重啟 314
9 8 1 全集群重啟 315
9 8 2 滾動重啟 316
9 9 集群的備份和恢復 317
9 9 1 搭建共享文件目錄 317
9 9 2 備份集群數據 319
9 9 3 恢復集群數據 322
9 9 4 刪除備份數據 323
9 9 5 自動化備份 323
9 10 遠程集群 325
9 10 1 配置遠程集群 325
9 10 2 搜索遠程集群的數據 327
9 11 本章小結 328
發散篇
第 10章 Logstash:數據的源泉 333
10 1 Logstash的工作原理 333
10 2 Logstash的安裝和目錄結構 334
10 3 Logstash的重要配置 335
10 4 Logstash採集腳本的結構 336
10 5 實戰舉例的執行 337
10 5 1 採集Nginx日誌數據到索引中 338
10 5 2 全量抽取表數據到索引中 340
10 5 3 增量抽取表數據到索引中 345
10 5 4 如何給敏感配置項加密 347
10 6 本章小結 347
第 11章 Kibana:數據可視化利器 349
11 1 在CentOS 7上安裝Kibana 349
11 2 用Kibana可視化管理數據 350
11 2 1 索引管理 350
11 2 2 快照備份和恢復管理 352
11 2 3 遠程集群管理 357
11 3 開發工具 358
11 3 1 REST端點控制台 358
11 3 2 搜索調試器 359
11 3 3 Grok正則模式調試器 360
11 4 數據可視化分析 360
11 4 1 Discover發現 360
11 4 2 Visualize可視化組件 362
11 4 3 Maps地圖 363
11 4 4 Dashboard大屏儀表盤 364
11 4 5 Canvas畫布 364
11 4 6 查看樣例數據 365
11 5 本章小結 367
第 12章 Beats家族:精細化數據採集 368
12 1 Beats家族在Elastic Stack中的職責 368
12 2 Filebeat的安裝和工作原理 369
12 3 filebeat yml的重要配置 370
12 4 Filebeat採集Nginx日誌到
Elasticsearch中 372
12 5 Filebeat採集日誌到Logstash中 375
12 6 本章小結 378