Elasticsearch搜索引擎构建入门与实战

价格 89.80对比
发货 全国
销量 暂无
评价 已有 0 条评价
人气 已有 3 人关注
数量
+-
库存100
 
联系方式
加关注0

DESTOON网站管理系统

管理员第1年
资料未认证
保证金未缴纳
  • 上次登录 今天 10:16
  • 姓名 (先生)  

内容简介

本书从Elasticsearch的基本概念和原理讲起,然后系统介绍Elasticsearch的使用场景,带领读距离接触Elasticsearch。本书涵盖Elasticsearch客户端的安装和使用、索引创建、文档操作、搜索匹配、搜索排序和聚合等技术,可以帮助读者循序地掌握Elasticsearch的相关知识。 本书共8章,分为3篇。第1篇“Elasticsearch基础”,主要介绍Elasticsearch的基础知识和基本用法;第2篇“Elasticsearch提高”,首先介绍文本搜索和排序原理,然后介绍聚合的使用方法;第3篇“Elasticsearch实战”,以酒店搜索为案例,详细介绍Elasticsearch在实际搜索应用中涉及的相关技术,帮助读者了解搜索引擎,从而提高开发。本书介绍Elasticsearch的核能——搜索匹配和搜索排序,其中对中文匹配的实现方法用较多篇行讲解,帮助读行中文搜索的落地工作,另外还结合项目实战案例讲解搜索排能,帮助读者更加透彻地理解Elasticsearch排序算法的原理。 本书内容丰富,语言通俗易懂,讲解图文并茂,案例典型实用,适合Elasticsearch初学者和有基础而想提高开发阶人员阅读,另外还适合作为相关院校和培训机构的教材。

目录

序前言第1篇 Elasticsearch基础 第1章 Elasticsearch入门 1.1 Elasticsearch概述 1.1.1 Elasticsearch简介 1.1.2 Elasticsearch的基本概念 1.1.3 Elasticsearch和关系型数据库的对比 1.2 Elasticsearch的架构原理 1.2.1 节点职责 1.2.2 主分片和副分片 1.2.3 路由计算 1.2.4 文档读写过程 1.3 Elasticsearch的应用场景 1.3.1 搜索引擎 1.3.系统 1.3.3 二级索引 1.3.4 日志分析 1.4 Elasticsearch的安装 1.4.1 单机模式安装 1.4.2 集群模式安装 1.5 Elasticsearch搜索入门 1.5.1 创建索引 1.5.2 写入文档 1.5.3 根据_id搜索文档 1.5.4 根据一般字段搜索文档 1.5.5 根据文本字段搜索文档 第2章 Elasticsearch客户端实战 2.1 Kibana客户端简介 2.1.1 Kibana的安装 2.1.2 在Kibana中搜索文档 2.2 Java客户端简介 2.2.1 Java客户端的使用 2.2.2 Java带验证客户端的使用 2.2.3 Java客户端搜索文档 2.3 SpringBoot客户端简介 2.3.1 创建SpringBoot客户端 2.3.2 SpringBoot客户端搜索文档 2.4 Jest客户端简介 2.4.1 创建Jest客户端 2.4.2 Jest客户端搜索文档 第3章 Elasticsearch基础r/> 3.1 索引r/> 3.1.1 创建索引 3.1.2 删除索引 3.1.3 关闭索引 3.1.4 打开索引 3.1.5 索引别名 3.2 映射r/> 3.2.1 查看映射 3.2.2 扩展映射 3.2.3 基本的数据类型 3.2.4 复杂的数据类型 3.2.5 动态映射 3.2.6 多字段 3.3 文档r/> 3.3.1 单条写入文档 3.3.2 批量写入文档 3.3.3 更新单条文档 3.3.4 批量更新文档 3.3.5 根据条件更新文档 3.3.6 删除单条文档 3.3.7 批量删除文档 3.3.8 根据条件删除文档 第4章 丰富的搜能 4.1 搜索辅能 4.1.1 指定返回的字段 4.1.2 结果计数 4.1.3 结果分页 4.1.4 能分析 4.1.5 评分分析 4.2 丰富的搜索匹能 4.2.1 查询所有文档 4.2.2 term级别查询 4.2.3 布尔查询 4.2.4 filter查询原理 4.2.5 Constant查询 4.2.6 Function查询 4.2.7 全文搜索 4.2.8 基于地理位置查询 4.2.9 搜索建议 4.3 按字段值排序 4.3.1 按普通字段值排序 4.3.2 按地理距离排序第2篇 Elasticsearch提高 第5章 文本搜索 5.1 文本搜索简介 5.1.1 文本的索引建立过程 5.1.2 文本的搜索过程 5.2 分析器简介 5.2.1 字符过滤器 5.2.2 分词器 5.2.3 分词过滤器 5.3 分析器的使用 5.3.1 测试分析API 5.3.2 内置分析器 5.3.3 索引时使用分析器 5.3.4 搜索时使用分析器 5.3.5 自定义分析器 5.4 中文分析器 5.4.1 中文分词介绍 5.4.2 IK分析器 5.4.3 HanLP分析器 5.5 使用同义词 5.5.1 建立索引时使用同义词 5.5.2 查询时使用同义词 5.6 使用停用词 5.6.1 使用停用词过滤器 5.6.2 在内置分析器中使用停用词 5.6.3 在IK分析器中使用停用词 5.6.4 在HanLP分析器中使用停用词 5.7 拼音搜索 5.7.1 拼音分析器插件的安装 5.7.2 拼音分析器插件的使用 5.8 高亮显示搜索 5.8.1 初步使用高亮显示搜索 5.8.2 选择高亮显示搜索策略 5.8.3 在Java客户端行高亮显示搜索 5.9 拼写纠错 5.9.1 使用Elasticsearc行拼写纠错 5.9.2 更的拼写纠错 第6章 搜索排序 6.1 相关排序 6.1.1 TF-IDF模型 6.1.2 向量空间模型 6.1.3 BM25算法简介 6.1.4 BM25实例解析 6.1.5 BM25参数调节 6.1.6 分布式场景对排序的影响 6.1.7 使用其他相关算法 6.2 查询时设置权重 6.2.1 查询时boost参数的设置 6.2.2 在Java客户端中使用boost参数 6.2.3 boosting查询 6.2.4 在Java客户端中使用boosting查询 6.3 Function 查询简介 6.3.1 简单函数 6.3.2 函数计算关系 6.3.3 衰减函数 6.4 script 查询简介 6.4.1 Painless简介 6.4.2 在script Scor中使用Painler/> 6.4.3 使用数组和集合 6.4.4 使用文档数据 6.4.5 向脚本传参 6.4.6 在script 中使用函数 6.4.7 在Java客户端中使用script 6.4.8 练inler/> 6.5 二次打分 6.5.1 二次打分简介 6.5.2 使用示例 6.5.3 在Java客户端中使用二次打分 第7章 聚合 7.1 聚合指标 7.1.1 常见的统计指标 7.1.2 空值处理 7.2 桶聚合 7.2.1 单维度桶聚合 7.2.2 多维度桶嵌套聚合 7.2.3 地理距离聚合 7.3 聚合方式 7.3.1 直接聚合 7.3.2 先查询再聚合 7.3.3 前过滤器 7.3.4 后过滤器 7.4 聚合排序 7.4.1 按文档计数排序 7.4.2 按聚合指标排序 7.4.3 按分组key排序 7.5 聚合分页 7.5.1 ToD hits聚合 7.5.2 CollaDse聚合第3篇 Elasticsearch实战 第8章 搜索实战 8.1 项目简介 8.1.1 背景简介 8.1.2 搜索建能简介 8.1.3 搜能简介 8.1.4 排能简介 8.2 技术方案 8.2.1 体架构设计 8.2.2 组件简介 8.21 3搜索建议方案 8.2.4 匹配方案 8.2.5 排序方案 8.3 搜索建能的实现 8.3.1 索引创建 8.3.2 后端服务 8.3.3 索引初始化 8.3.4 搜索建议服务 8.4 搜能的实现 8.4.1 项目创建 8.4.2 索引创建 8.4.3 数据初始化 8.4.4 整体工作 8.4.5 获页数 8.4.6 查询构建 8.4.7 结果处理和封装 8.4.8 对搜索排行打分 8.5 前能的实现 8.5.1 项目创建 8.5.2 请求转发 8.5.3 搜索建议交互 8.5.4 搜索交互

摘要与插图

  1.1.1 Elasticsearch简介
  当前,很多应用都有搜能。Lucene作为“老牌”的搜索技术支持库,它提供的很能都能用于处理文本类型的数据。但是使用Lucene架设搜索引擎需要使用者熟悉搜索引擎的很多知识,对使用者的要求高,并且Lucene仅仅提供了基础的搜索引擎支持,而对搜索的分布式、容错和实时并不支持。
  ES是建立在Lucene基础之上的分布式准实时搜索引擎,它所提供的诸能中有一大优点,即实时好。那么什么是实时好呢?在一般的业务需求中,新增加的数据少要1min才能被搜索到,而在ES中,数秒甚内即可搜索到新增的数据。
  除了良好的实时外,ES还提供了很多能。例如,ES是分布式的架构设计,当单台或者少量的计算机不能很好地支持搜索任务时,可以扩展到足够多的计算机行搜索;以往在使用Lucene时,需要用户有Java语言基础,而ES提供了REST风格的API接口,使用户可以借助任何语言使用对ES执行请求来完成搜索任务;ES本身还提供了聚能,用户可以使用能对索引中的数行统计分析;在数据方面,ES提供了X-Pac行用户验证。
  如今,ES不仅是一个搜索引擎框架,而且其官方还提供了ELK“全家桶”,为构建搜索引擎提供了很好的解决方案。其中,E代表Elasticsearch,主要提供数据搜索和分能;L代表Logstash,借助它可以将数据库和日志等结构化或非结构化数据轻松地导入ES中;K代表Kibana,它可以将分析结行图形化展示,此外还可以使用它提供的开发工具对E行请求的交互。

举报收藏 0
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  版权声明  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  粤ICP备2021111040号