![]()
内容推荐 拉杜·乔戈、马修·李·欣曼、罗伊·罗素著的《Elasticsearch实战》主要展示如何使用Elasticsearch构建可扩展的搜索应用程序。书中覆盖了Elasticsearch的主要特性,从使用不同的分析器和查询类型进行相关性调优,到使用聚集功能进行实时性分析,还有地理空间搜索和文档过滤等更多吸引人的特性。 全书共分两个部分,第一部分解释了核心特性,内容主要涉及Elasticsearch的介绍,数据的索引、更新和删除,数据的搜索,数据的分析,使用相关性进行搜索,使用聚集来探索数据,文档间的关系等;第二部分介绍每个特性工作的更多细节及其对性能和可扩展性的影响,以便对核心功能进行产品化,内容主要涉及水平扩展和性能提升等。此外,本书还有6个附录(网上下载),提供了读者应该知道的特性,展示了关于地理空间搜索和聚集,如何管理Elasticsearch插件,学习在搜索结果中如何高亮查询单词,在生产环境中用来协助管理Elasticsearch的第三方的监控工具有哪些,如何使用Percolator过滤为多个查询匹配少量文档,如何使用不同的建议器来实现自动完成的功能。 本书适合所有对Elasticsearch感兴趣的技术人员阅读。 目录 第一部分 第1章 Elasticsearch介绍 1.1 用Elasticsearch解决搜索问题 1.1.1 提供快速查询 1.1.2 确保结果的相关性 1.1.3 超越精确匹配 1.2 探索典型的Elasticsearch使用案例 1.2.1 将Elasticsearch作为主要的后端系统 1.2.2 将Elasticsearch添加到现有的系统 1.2.3 将Elasticsearch和现有工具一同使用 1.2.4 Elasticsearch的主要特性 1.2.5 扩展Lucene的功能 1.2.6 在Elasticsearch中组织数据 1.2.7 安装Java语言 1.2.8 下载并启动Elasticsearch 1.2.9 验证是否工作 1.3 小结 第2章 深入功能 2.1 理解逻辑设计:文档、类型和索引 2.1.1 文档 2.1.2 类型 2.1.3 索引 2.2 理解物理设计:节点和分片 2.2.1 创建拥有一个或多个节点的集群 2.2.2 理解主分片和副本分片 2.2.3 在集群中分发分片 2.2.4 分布式索引和搜索 2.3 索引新数据 2.3.1 通过cURL索引一篇文档 2.3.2 创建索引和映射类型 2.3.3 通过代码样例索引文档 2.4 搜索并获取数据 2.4.1 在哪里搜索 2.4.2 回复的内容 2.4.3 如何搜索 2.4.4 通过ID获取文档 2.5 配置Elasticsearch 2.5.1 在elasticsearch.yml中指定集群的名称 2.5.2 通过logging.yml指定详细日志记录 2.5.3 调整JVM设置 2.6 在集群中加入节点 2.6.1 启动第二个节点 2.6.2 增加额外的节点 2.7 小结 第3章 索引、更新和删除数据 3.1 使用映射来定义各种文档 3.1.1 检索和定义映射 3.1.2 扩展现有的映射 3.2 用于定义文档字段的核心类型 3.2.1 字符串类型 3.2.2 数值类型 3.2.3 日期类型 3.2.4 布尔类型 3.3 数组和多字段 3.3.1 数组 3.3.2 多字段 3.4 使用预定义字段 3.4.1 控制如何存储和搜索文档 3.4.2 识别文档 3.5 更新现有文档 3.5.1 使用更新API 3.5.2 通过版本来实现并发控制 3.6 删除数据 3.6.1 删除文档 3.6.2 删除索引 3.6.3 关闭索引 3.6.4 重新索引样本文档 3.7 小结 第4章 搜索数据 4.1 搜索请求的结构 4.1.1 确定搜索范围 4.1.2 搜索请求的基本模块 4.1.3 基于请求主体的搜索请求 4.1.4 理解回复的结构 4.2 介绍查询和过滤器DSL 4.2.1 match查询和term过滤器 4.2.2 常用的基础查询和过滤器 4.2.3 match查询和term过滤器 4.2.4 phrase_prefix查询 4.3 组合查询或复合查询 4.3.1 bool查询 4.3.2 bool过滤器 4.4 超越match和过滤器查询 4.4.1 range查询和过滤器 4.4.2 prefix查询和过滤器 4.4.3 wildcard查询 4.5 使用过滤器查询字段的存在性 4.5.1 exists过滤器 4.5.2 missing过滤器 4.5.3 将任何查询转变为过滤器 4.6 为任务选择最好的查询 4.7 小结 第5章 分析数据 5.1 什么是分析 5.1.1 字符过滤 5.1.2 切分为分词 5.1.3 分词过滤器 5.1.4 分词索引 5.2 为文档使用分析器 5.2.1 在索引创建时增加分析器 5.2.2 在Elasticsearch的配置中添加分析器 5.2.3 在映射中指定某个字段的分析器 5.3 使用分析API来分析文本 5.3.1 选择一个分析器 5.3.2 通过组合即兴地创建分析器 5.3.3 基于某个字段映射的分析 5.3.4 使用词条向量API来学习索引词条 5.4 分析器、分词器和分词过滤器 5.4.1 内置的分析器 5.4.2 分词器 5.4.3 分词过滤器 5.5 N元语法、侧边N元语法和滑动窗口 5.5.1 一元语法过滤器 5.5.2 二元语法过滤器 5.5.3 三元语法过滤器 5.5.4 设置min_gram和max_gram 5.5.5 侧边N元语法过滤器 5.5.6 N元语法的设置 5.5.7 滑动窗口分词过滤器 5.6 提取词干 5.6.1 算法提取词干 5.6.2 使用字典提取词干 5.6.3 重写分词过滤器的词干提取 5.7 小结 第6章 使用相关性进行搜索 6.1 Elasticsearch的打分机制 6.1.1 文档打分是如何运作的 6.1.2 词频 6.1.3 逆文档频率 6.1.4 Lucene评分公式 6.2 其他打分方法 6.3 boosting 6.3.1 索引期间的boosting 6.3.2 查询期间的boosting 6.3.3 跨越多个字段的查询 6.4 使用“解释”来 |