这门课解决什么工作场景
当业务系统里的数据量越来越大,你会发现传统的 MySQL 查询在处理多条件筛选、日志检索或者商品搜索时越来越吃力。比如用户输入一句话去搜索内容,或者需要从几百万条订单记录里按多个维度做模糊查询,用 SQL 写不仅复杂,而且响应极慢。这门课针对的就是这类痛点。它把 ElasticSearch 这个分布式搜索引擎拉到最基础的操作层面,教你怎么用它来替代数据库中低效的搜索逻辑。学完之后,你能明白为什么要把数据同步到 ES,以及它和 MySQL 在存储和查询机制上的本质区别,从而在实际工作中遇到搜索性能瓶颈时,知道该用什么工具去解决。
适合什么基础与建议先看哪几块
这套资料不适合完全没写过代码的新手。你需要具备基本的 Java 语法概念,并且用过 MySQL,这样在讲到 ES 与 MySQL 的对比、索引和文档的映射关系时,才不会觉得抽象。建议一开始不要急着敲代码,先看“全文检索技术简介”和“与 Mysql 对比”这两块,把倒排索引和正排索引的区别弄清楚,这是整个 ES 的核心逻辑。理解之后,再去看安装配置和基本操作。由于课程大量使用了 curl 命令行来发送 REST 请求,如果你平时习惯用图形化工具,建议先跟着 Windows 安装 curl 的部分把环境跑通,因为用命令行直接创建索引、插入和查看文档,最能让你直观感受到 ES 是通过 HTTP 接口进行交互的。
资料怎么配合练习与学完能独立做什么
看资料的过程必须跟着实操,不要只看不动手。这套教程偏重底层原理和基础验证,所以你的练习重点应该放在跟着视频一步步启动 ES 服务,然后用 curl 命令去手动创建一个索引、写入一条文档,再把它查出来。你可以尝试用不同的字段类型去建索引,看看搜索结果有什么差异。把这套基础流程跑通之后,学完你就能独立完成 ElasticSearch 的本地环境搭建、基础配置,并且能通过 REST 接口完成最核心的增删改查操作。这就意味着,当团队里需要有人先去验证一下 ES 是否满足某个搜索需求时,你已经具备了搭建测试环境并跑通基本数据流的能力,为后续进一步结合 Java 客户端做复杂业务开发打下了地基。
本教程将展示 Elasticsearch 的实际工作原理。从Elasticsearch的安装,运行,存储、搜索上进行讲解,首先了解CURL命令行访问该 REST
课程目录
* 第一章 微课-【Java】搜索引擎 ElasticSearch/
* 全文检索技术简介/
* Java语言全文检索技术简介
* ElasticSearch的安装和配置/
* ElasticSearch的安装和配置
* 安装es插件
* ElasticSearch基本操作入门/
* ElasticSearch基本操作入门1
* Elasticsearch基本操作入门2
* Elasticsearch与Mysql对比/
* Elasticsearch与Mysql对比
* curl命令/
* Windows安装CURL命令
* curl命令创建一个索引
* curl命令插入一个文档
* curl命令查看文档
* curl命令更新文档
* curl命令搜索文档
* 检索返回Json对象说明
* curl命令删除文档
* curl命令删除索引
* 使用Java操作客户端(入门)/
* 使用Java操作客户端之创建TransportClient
* 新建文档(json)
* 新建文档(map)
* 新建文档(XContentBuilder)
* 搜索文档数据(单个索引和多个索引)
* 更新文档数据(3种方式)
* 删除文档数据
* 查询/
* 条件查询QueryBuilders(queryString方法)
* 条件查询QueryBuilders(TermQuery和WildcardQuery)
* 各种查询对象Query的使用之单字分词的效果
* 在Elasticsearch安装IK中文分词器/
* 在Elasticsearch安装IK中文分词器
* ElasticSearch 常用编程操作(CRUD)/
* 索引相关操作(创建索引和删除索引)
* 映射相关操作(创建映射并设置IK分词)
* 文档相关操作(使用Jackson创建文档数据)
* 修改文档相关操作(使用Jackson修改文档数据)
* 删除文档相关操作
* IK分词器自定义词库
* 查询文档(查询所有)
* 查询文档(解析字符串查询QueryString)
* 查询文档(通配符查询)
* 查询文档(词条查询)
* 查询文档(字段匹配查询)
* 查询文档(ID字段查询)
* 查询文档(模糊查询fuzzy)
* 查询文档(范围查询)
* 查询文档(跨度查询)
* 查询文档(组合查询布尔查询)
* 查询文档(排序查询)
* 查询文档/
* 查询文档之分页操作
* 查询文档之高亮显示
* 文档得分和权重加分
* 过滤器






