分布式搜索引擎ElasticSearch——深入elasticSearch

发布时间:2024年01月17日

分布式搜索引擎ElasticSearch——深入elasticSearch


在这里插入图片描述

数据聚合

在这里插入图片描述

聚合的分类

在这里插入图片描述
在这里插入图片描述

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.1
    container_name: es01
    environment:
      - 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: -1
        hard: -1
    volumes:
      - data01:/usr/share/elasticsearch/data
    ports:
      - 9200:9200
    networks:
      - elastic
  es02:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.12.1
    container_name: es02
    environment:
      - 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: -1
        hard: -1
    volumes:
      - data02:/usr/share/elasticsearch/data
    networks:
      - elastic
  es03:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.12.1
    container_name: es03
    environment:
      - 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: -1
        hard: -1
    volumes:
      - data03:/usr/share/elasticsearch/data
    networks:
      - elastic

volumes:
  data01:
    driver: local
  data02:
    driver: local
  data03:
    driver: local

networks:
  elastic:
    driver: bridge

Run docker-compose to bring up the cluster:

docker-compose up

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

ES集群的脑裂

在这里插入图片描述
在这里插入图片描述
### ES集群的分布式存储
在这里插入图片描述
在这里插入图片描述

ES集群的分布式查询

在这里插入图片描述
在这里插入图片描述
### ES集群的故障转移
在这里插入图片描述
在这里插入图片描述

文章来源:https://blog.csdn.net/shall_zhao/article/details/135605799
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。