ElasticSearch 副本-01【ES 概述及安装】

ElasticSearch 概述

Elasticsearch 是一个分布式开源搜索分析引擎,适用于所有类型的数据,包括文本、数字、地理空间、结构化和非结构化数据。Elasticsearch 在 Apache Lucene 的基础上开发而成,由 Elasticsearch N.V.(即现在的 Elastic)于 2010 年首次发布。Elasticsearch 以其简单的 REST 风格 API分布式特性速度可扩展性而闻名,是 Elastic Stack 的核心组件;Elastic Stack 是适用于数据采集、充实、存储、分析和可视化的一组开源工具。人们通常将 Elastic Stack 称为 ELK Stack(代指 Elasticsearch、Logstash 和 Kibana),目前 Elastic Stack 包括一系列丰富的轻量型数据采集代理,这些代理统称为 Beats,可用来向 Elasticsearch 发送数据。

ElasticSearch 官网

ElasticSearch 与 Solr 的区别

Solr 简介

Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。

Solr是一个高性能,采用Java开发,基于Lucene的全文搜索服务器。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎

ElasticSearch 对比 Solr

参考:https://www.cnblogs.com/fosilzhou/articles/4629220.html

当单纯的对已有数据进行搜索时,Solr更快。

ElasticSearch 副本-01【ES 概述及安装】

实时建立索引时, Solr会产生io阻塞,查询性能较差, Elasticsearch具有明显的优势

ElasticSearch 副本-01【ES 概述及安装】

随着数据量的增加,Solr的搜索效率会变得更低,而Elasticsearch却没有明显的变化。

ElasticSearch 副本-01【ES 概述及安装】

综上所述,Solr的架构不适合实时搜索的应用。

Elasticsearch 与 Solr 的比较总结

  • 二者安装都很简单;
  • Solr 利用 Zookeeper 进行分布式管理,而 Elasticsearch 自身带有分布式协调管理功能;
  • Solr 支持更多格式的数据,而 Elasticsearch 仅支持json文件格式;
  • Solr 官方提供的功能更多,而 Elasticsearch 本身更注重于核心功能,高级功能多有第三方插件提供;
  • Solr 在传统的搜索应用中表现好于 Elasticsearch,但在处理实时搜索应用时效率明显低于 Elasticsearch。

Solr 是传统搜索应用的有力解决方案,但 Elasticsearch 更适用于新兴的实时搜索应用。

使用 Docker 安装 ElasticSearch

注意:ElasticSearch 最低要求 JDK 版本为 1.8

使用 Docker 拉取 ElasticSearch 最新版本 7.6.2

docker pull elasticsearch:7.6.2

ElasticSearch 副本-01【ES 概述及安装】

根据 Docker ElasticSearch Description 编写 docker-compose.yml 文件

version: '3.1'

services:
  elasticsearch:
    image: elasticsearch:7.6.2
    container_name: elasticsearch
    environment:
      discovery.type: single-node
    ports:
      - 9200:9200
      - 9300:9300

启动 ElasticSearch

touyel@server:/usr/local/docker/elasticsearch$ docker-compose up -d
Creating network "elasticsearch_default" with the default driver
Recreating elasticsearch ... done

访问 ip:9200:

ElasticSearch 副本-01【ES 概述及安装】

安装完成!

安装 kibana

Kibana 是一个为 LogstashElasticSearch 提供的日志分析的 Web 接口。可使用它对日志进行高效的搜索、可视化、分析等各种操作。

kibana 需要与 ES 的版本一致

拉取 kibana 镜像

docker pull kibana:7.6.2

编辑 docker-compose.yml

version: '3.1'

services:
  elasticsearch:
    image: elasticsearch:7.6.2
    container_name: elasticsearch
    restart: always
    environment:
      discovery.type: single-node
    ports:
      - 9200:9200
      - 9300:9300
  kibana:
    image: kibana:7.6.2
    container_name: kibana
    environment:
      ELASTICSEARCH_URL: "127.0.0.1:9200"
      I18N_LOCALE: "zh-CN"
    ports:
      - 5601:5601

访问 192.168.59.130:5601

ElasticSearch 副本-01【ES 概述及安装】

使用 kibana 的开发工具

ElasticSearch 副本-01【ES 概述及安装】

上一篇:Solr简单配置


下一篇:07 在solr中配置分词器、停词库以及扩展词库