分布式搜索引擎ElasticSearch开发实战,大致包括:
1:ES提供的各类接口的功能、基于Java的开发等
2:深化ES各部分的功能应用;理解ES各个部分的实现机制等
3:ES在电商中的典型应用,比如:通用搜索、按商品属性搜索等
20年Java开发和使用经验,多年的首席架构师和CTO,拥有Sun的多项Java和J2EE方面的技能认证,拥有丰富的开发经验和深厚的技术沉淀,精通Java/JavaEE相关技术和多种开源框架,尤其擅长系统分析和架构设计。
拥有多年项目经理、技术部经理的管理经验,参与和领导了上百个大中型项目的设计和开发,在互联网应用系统架构、系统设计、应用级框架和中间件开发等方面具有很多经验和领悟。
原创著作《研磨设计模式》和《研磨Struts2》广受好评,尤其是《研磨设计模式》,一直稳居原创设计模式类图书第一的位置,并输出版权到台湾。
更为难得的是,入行20年,仍然奋战在技术一线,深知一线架构师需要掌握哪些技术、掌握到什么程度、一线架构设计会遇到哪些坑、如何才能做出最合适的架构设计,经验最难得!老师把这些经验和感悟都融合到课程中,能帮你节省很多走弯路的时间。
第01节课:Elasticsearch是什么、能干什么、特性;ES的安装
第02节课:安装常用插件:Head、ik、mavel
第03节课:基本概念的学习
第04节课:基本使用-1,包括:请求格式、返回、创建索引、查看索引、插入数据
第05节课:基本使用-2,包括:查询数据、修改数据、删除数据、删除索引
第06节课:简单查询:ES搜索的方式、关于timeout、多索引和多类别、分页、在集群系统中深度分页、关于routing、关于加减符号
第07节课:学习ES的基本流程,包括:准备索引阶段、构建索引数据、查询阶段
第08节课:ES的API约定,包括:多索引参数、通用参数等
第09节课:索引操作,包括:创建、获取、打开关闭、Mapping操作、设置、分析器等等
第10节课:索引管理和索引配置,包括:索引管理的API,索引的配置,比如内存控制器、数据缓存等
第11节课:详细学习Mapping第一部分,包括:概念、数据类型、属性设置、重点讲了analyzed和store
第12节课:详细学习Mapping第二部分,包括:继续讲述各种数据类型的属性设置,Token Count类型、多值字段、内部对象映射、内部对象数组等
第13节课:详细学习Mapping第三部分,包括:元数据类型,_source、_all、_id、Mapping Parameters、路由映射、fielddata等
第14节课:详细学习Mapping第四部分,包括:动态映射、_default_ 映射、动态字段映射、动态模板、自定义动态索引、自定义字段映射
第15节课:理解Lucene如何处理文档、倒排索引以及Lucene中的倒排索引
第16节课:理解索引,包括:ES的倒排索引、动态索引、删除和更新、合并段、Refresh和Flush等
第17节课:学习分析器,包括:分析器的基本构成、配置样例、缺省的Analyzer、内建的分析器、使用分析器等
第18节课:重新索引数据、索引别名(包括别名的各种操作)、零停机时间,并演示如何使用索引别名在零停机时间内从旧的索引切换到新的索引
第19节课:学习DSL,包括:基本语法、参数、条件、分页、排序、字段过滤、Field Data Fields、设置权重、最低评分等
第20节课:学习结构化搜索,包括:term、terms、range、exists、missing、prefix、wildcard、regexp、fuzzy、type、ids等查询,还有复合查询、Bool查询等等
第21节课:学习结构化过滤,包括:和结构化查询的异同、常用的过滤语句、查找准确值、范围查询(包括日期范围)等
第22节课:全文搜索第一部分,包括:全文搜索的概念、分类,match查询(细讲各种细节情况,比如:查询多个词、提高精度、控制精度等)
第23节课:全文搜索第二部分,包括:短语搜索、短语前缀搜索、组合查询、multi_match、Query String Query、Simple Query String Query等
第24节课:与搜索相关的杂项知识,包括:一次查询多个文档、批量操作、确定分析器、查询重写、理解分布式搜索等
第25节课:学习ES的Script,包括:开启脚本功能、设置要使用的脚本语言、使用脚本的方式,并具体演示了各种使用脚步的方式
第26节课:评分和重新评分,包括:理解相关性、TF/IDF(即检索词频率/反向文档频率)、评分说明等;重新评分的方式,并具体演示
第27节课:函数评分,包括:语法形式、类型、具体的使用示例,比如:script_score、weight 、random_score、Field Value factor等
第28节课:相关性排序失效;高亮显示,包括三种高亮的设置方式,以及设置高亮显示的Html的Tags;日期筛选,包括基本的日期表达式
第29节课:与搜索相关的杂项知识,包括:Post Filter、搜索偏好、字段统计API、Update By Query
第30节课:重建索引的方法、索引词频率、滚屏搜索
第31节课:Span查询,包括:span_term查询、span_multi、span_first、span_near、span_or、span_not、span_containingspan_within等
第32节课:嵌套查询第一部分,包括:嵌套的概念、和Object类型的区别、解决的问题,嵌套对象映射、查询嵌套对象等
第33节课:嵌套查询第二部分,包括:以嵌套栏位排序、查询嵌套隐藏的内容、嵌套聚合;Parent-Child查询
第34节课:Geo查询第一部分,包括:地理坐标点、geo_bounding_box、geo_distance、geo_distance_range、减少坐标点的内存使用、排序、Geohash概述、映射和Geohash Cell过滤器等
第35节课:Geo查询第二部分,包括:地理位置聚合、geo_distance按距离聚合、geohash_grid聚合器、geo_bounds范围边界聚合器、地理形状映射、查询地理形状等
第36节课:聚合第一部分,包括:聚合的类型、基本语法、Metrics聚合 之(Avg、sum、max、min、stats、cardinalityExtended Stats、Top hits)
第37节课:聚合第二部分,包括:Metrics聚合 之 Value Count;Bucket聚合 之 Histogram、Date Histogram、Range、Date Range、Terms、Filter、Filters、Missing等
第38节课:聚合第三部分,包括:Pipeline、bucket_path语法、Pipeline 之 Avg、max、min、sum、stats、extended_stats Bucket、Derivative Bucket、Cumulative Sum、Bucket Script、Bucket Selector等
第39节课:ES配置,包括:环境变量、系统配置、ES自身的配置、索引配置、日志配置等
第40节课:ES集群第一部分,包括:查看集群健康、ES节点类型、主节点、数据节点、客户端节点、部落节点等
第41节课:ES集群第二部分,包括:理解索引和分片、理解分片-复制、理解分片-consistency(一致性)、timeout、执行的顺序步骤、多文档模式、理解路由等
第42节课:ES集群第三部分,包括:集群API、Cat API
第43节课:ES集群第四部分,包括:节点发现、主节点选举、故障检测、集群状态维护、集群分片配置 等
第44节课:ES的Java开发第一部分,包括:ES Java API,代码示例常用的功能第一部分
第45节课:ES的Java开发第二部分,代码示例常用的功能第二部分
第46节课:ES和Spring集成开发第一部分,包括:ES与Spring的集成,代码示例常用的功能第一部分
第47节课:ES和Spring集成开发第二部分,代码示例常用的功能第二部分
第48节课:优化建议第一部分,包括:机器配置、ES部署和配置、优化建议-集群等
第49节课:优化建议第二部分,包括:优化建议-索引、优化建议-查询、其它配置优化等
第50节课:应用ES第一部分,包括:分析到底哪些功能适合使用ES来实现,并讲述部分功能实现的思路
第51节课:应用ES第二部分,包括:讲述部分功能实现的思路
1:有一定工作经验,还未从事架构工作,但想要向架构方面发展的朋友
2:已经开始从事架构工作,但想要系统学习提升的朋友
3:已经掌握阶段一和阶段二课程的内容,想要继续深化、更加实战化的朋友
4:有一定开发经验,想要系统学习架构方面的知识,扩展知识面和提升开发能力的朋友
1:本课程是关注于架构设计,不关注业务设计,所以想要学习业务建模、软件的概要或详细设计的朋友,不适合选择本课程,对于软件设计方面的内容,我们会开设专门的软件设计类课程进行讲述,比如:框架设计、API设计、系统建模、设计模式综合应用、软件系统重构等等。
2:毕竟软件架构和软件设计关注的是不同层面的东西,当然,在国内目前的情况是,很多公司的软件架构和软件设计是同一批人员。不过由于内容实在太多,因此我们把软件架构和软件设计分开成不同的课程体系。
登录后才能获取具体下载信息,请点击前往登录
您的账号信息不全,需完善信息才能获取具体下载信息,请点击前往完善信息
点击查看下载信息