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

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

文章目录

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

分布式搜索引擎ElasticSearch——深入elasticSearch_第1张图片

数据聚合

分布式搜索引擎ElasticSearch——深入elasticSearch_第2张图片

聚合的分类

分布式搜索引擎ElasticSearch——深入elasticSearch_第3张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第4张图片

DSL实现Bucket聚合

分布式搜索引擎ElasticSearch——深入elasticSearch_第5张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第6张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第7张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第8张图片

DSL实现Metric聚合

分布式搜索引擎ElasticSearch——深入elasticSearch_第9张图片

RestAPI实现聚合

分布式搜索引擎ElasticSearch——深入elasticSearch_第10张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第11张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第12张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第13张图片

自动补全

分布式搜索引擎ElasticSearch——深入elasticSearch_第14张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第15张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第16张图片
https://github.com/medcl/elasticsearch-analysis-pinyin
分布式搜索引擎ElasticSearch——深入elasticSearch_第17张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第18张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第19张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第20张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第21张图片

DSL实现自动补全查询

分布式搜索引擎ElasticSearch——深入elasticSearch_第22张图片
Completion Suggester
分布式搜索引擎ElasticSearch——深入elasticSearch_第23张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第24张图片

修改酒店索引库数据结构

分布式搜索引擎ElasticSearch——深入elasticSearch_第25张图片

RestAPI实现自动补全查询

分布式搜索引擎ElasticSearch——深入elasticSearch_第26张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第27张图片

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

分布式搜索引擎ElasticSearch——深入elasticSearch_第28张图片

数据同步

分布式搜索引擎ElasticSearch——深入elasticSearch_第29张图片

数据同步思路分析

分布式搜索引擎ElasticSearch——深入elasticSearch_第30张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第31张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第32张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第33张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第34张图片

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

分布式搜索引擎ElasticSearch——深入elasticSearch_第35张图片

elasticsearch集群

分布式搜索引擎ElasticSearch——深入elasticSearch_第36张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第37张图片

搭建ES集群

分布式搜索引擎ElasticSearch——深入elasticSearch_第38张图片
部署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

分布式搜索引擎ElasticSearch——深入elasticSearch_第39张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第40张图片

分布式搜索引擎ElasticSearch——深入elasticSearch_第41张图片

ES集群的脑裂

分布式搜索引擎ElasticSearch——深入elasticSearch_第42张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第43张图片
### ES集群的分布式存储
分布式搜索引擎ElasticSearch——深入elasticSearch_第44张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第45张图片

ES集群的分布式查询

分布式搜索引擎ElasticSearch——深入elasticSearch_第46张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第47张图片
### ES集群的故障转移
分布式搜索引擎ElasticSearch——深入elasticSearch_第48张图片
分布式搜索引擎ElasticSearch——深入elasticSearch_第49张图片

你可能感兴趣的:(搜索引擎,分布式,elasticsearch)