Elastic Search是最流行的开源分布式搜索引擎中间件,内核基于Java编写开发的Lucene, 在BAT等大型互联网新闻、电商、游戏、社交、大数据等领域有广泛的应用。Java Spring Boot 2.0为ElasticSearch企业级开发提供了完善的支持,本次课程一起深入学习ElasticSearch新特性与API机制。
1、ElasticSearch分布式搜索引擎
- ElasticSearch是基于Lucene的搜索服务器,开源
- 提供了一个分布式多用户能力的全文搜索引擎
- 提供Restful接口 HTTP使用JSON进行数据索引
- Elasticsearch是用Java开发的,但支持多种语言客户端
- Elasticsearch2018年9月美国上市
- 原生的分布式架构模型 支持分片
- 分布式导向,包括分布式搜索,分布式索引,零配置,自动分片,索引自动负载
- 针对实时搜索专门优化:先把索引放在内存中,定期同步到硬盘
- 附带web 图形化管理工具
- Hadoop也可以使用它作为搜索引擎服务器
2、分布式架构图
ElasticSearch采用分布式机器架构,Linux系统部署,支持Docker方式。客户端使用原生协议或者REST API,不限制语言,服务器端主要是Java开发。
3、ElasticSearch新特性
-
- 分布式和高可用性搜索引擎。
-
- 多租户
-
- 支持多个索引。
-
- HTTP REST的API
-
- Native Java API。
-
- 面向文档Document
-
- 灵活数据模型。
-
- 可以定义模式以定制索引过程。
-
- 可靠,异步写入。
-
- (近)Real Time实时搜索。
-
- 基于Lucene
-
- 单文档级操作具有原子性,一致性,隔离性和持久性。
4、Java Spring Data ElasticSearch新特性
Spring Data提供了对于 Elasticsearch友好支持。
5、Linux安装ElasticSearch
可以多个系统安装,支持LinuxMac OS和Win系统
注意服务端使用Java开发,所以请先安装Java Open JDK8.
Linux: sudo apt-get install elasticsearch
安装完成,使用Status检查状态。
6、视频课程
视频地址:https://yq.aliyun.com/live/844
PPT地址:https://yq.aliyun.com/live/844
阿里巴巴Java群2600多人,
直播地址:Java技术进阶群
进群方式:钉钉扫码入群