分布式搜索引擎ElasticSearch——深入elasticSearch
分布式搜索引擎ElasticSearch——深入elasticSearch
文章目录
- 分布式搜索引擎ElasticSearch——深入elasticSearch
- 数据聚合
- 聚合的分类
- DSL实现Bucket聚合
- DSL实现Metric聚合
- RestAPI实现聚合
- 自动补全
- DSL实现自动补全查询
- 修改酒店索引库数据结构
- RestAPI实现自动补全查询
- 实现酒店搜索页面输入框的自动补全
- 数据同步
- 数据同步思路分析
- 利用MQ实现mysql与elasticsearch数据同步
- elasticsearch集群
- 搭建ES集群
- ES集群的脑裂
- ES集群的分布式查询
数据聚合

聚合的分类


DSL实现Bucket聚合




DSL实现Metric聚合

RestAPI实现聚合




自动补全



https://github.com/medcl/elasticsearch-analysis-pinyin





DSL实现自动补全查询

Completion Suggester


修改酒店索引库数据结构

RestAPI实现自动补全查询


实现酒店搜索页面输入框的自动补全

数据同步

数据同步思路分析





利用MQ实现mysql与elasticsearch数据同步

elasticsearch集群


搭建ES集群

部署es集群可以直接使用docker-compose来完成,不过要求你的Linux虚拟机至少有4G的内存空间
首先编写一个docker-compose文件,内容如下:
version: '2.2'
services:es01:image: docker.elastic.co/elasticsearch/elasticsearch:7.12.1container_name: es01environment:- node.name=es01- cluster.name=es-docker-cluster- discovery.seed_hosts=es02,es03- cluster.initial_master_nodes=es01,es02,es03- bootstrap.memory_lock=true- "ES_JAVA_OPTS=-Xms512m -Xmx512m"ulimits:memlock:soft: -1hard: -1volumes:- data01:/usr/share/elasticsearch/dataports:- 9200:9200networks:- elastices02:image: docker.elastic.co/elasticsearch/elasticsearch:7.12.1container_name: es02environment:- node.name=es02- cluster.name=es-docker-cluster- discovery.seed_hosts=es01,es03- cluster.initial_master_nodes=es01,es02,es03- bootstrap.memory_lock=true- "ES_JAVA_OPTS=-Xms512m -Xmx512m"ulimits:memlock:soft: -1hard: -1volumes:- data02:/usr/share/elasticsearch/datanetworks:- elastices03:image: docker.elastic.co/elasticsearch/elasticsearch:7.12.1container_name: es03environment:- node.name=es03- cluster.name=es-docker-cluster- discovery.seed_hosts=es01,es02- cluster.initial_master_nodes=es01,es02,es03- bootstrap.memory_lock=true- "ES_JAVA_OPTS=-Xms512m -Xmx512m"ulimits:memlock:soft: -1hard: -1volumes:- data03:/usr/share/elasticsearch/datanetworks:- elasticvolumes:data01:driver: localdata02:driver: localdata03:driver: localnetworks:elastic:driver: bridge
Run docker-compose to bring up the cluster:
docker-compose up



ES集群的脑裂


### ES集群的分布式存储


ES集群的分布式查询


### ES集群的故障转移

