ELasticSearch——ElasticScarch 概述及安装

1、Elastic Stack 简介

早期 Elastic Stack 名为 ELK,对应Elasticsearch,Logstash 和 Kibana这三个开源软件,但由于在做日志收集时Logstash过于重量级,因此官方又开发了各种Beat组件,比如FileBeat,PackBeat等等。随着这些角色的加入ELK更名位Elastic Stack。

Elastic Stack 能够安全可靠地获取任何来源、任何格式的数据,然后实时地对数据进行搜索、分析和可视化。

官网地址:https://www.elastic.co/cn/

官方文档:https://www.elastic.co/guide/index.html

2、ElasticSearch 概述

2.1、Lucene 简介

Lucene是Apache软件基金会 Jakarta项目组的一个子项目,提供了一个简单却强大的应用程式接口,能够做全文索引和搜寻。在Java开发环境里Lucene是一个成熟的免费开源工具。就其本身而言,Lucene是当前以及最近几年最受欢迎的免费Java信息检索程序库。但 Lucene只是一个提供全文搜索功能类库的核心工具包,而真正使用它还需要一个完善的服务框架搭建起来进行应用。

人们经常提到信息检索程序库,虽然与搜索引擎有关,但不应该将信息检索程序库与搜索引擎相混淆。

Lucene是一个全文检索引擎的架构。那什么是全文搜索引擎?

全文搜索引擎是名副其实的搜索引擎,国外具代表性的有Google、FastU/AllTheWeb、AltaVista、Inktomi、Teoma、WiseNut等,国内著名的有百度( Baidu )。它们都是通过从互联网上提取的各个网站的信息(以网页文字为主)而建立的数据库中,检索与用户查询条件匹配的相关记录,然后按一定的排列顺序将结果返回给用户,因此他们是真正的搜索引擎。

从搜索结果来源的角度,全文搜索引擎又可细分为两种,一种是拥有自己的检索程序( Indexer ),俗称"蜘蛛"”(Spider )程序或"机器人" ( Robot )程序,并自建网页数据库,搜索结果直接从自身的数据库中调用,如上面提到的7家引擎;另一种则是租用其他引擎的数据库,并按自定的格式排列搜索结果,如Lycos引擎。

2.2、ElasticSearch 概述

ElasticSearch 是什么

Elasticsearch(简称ES)是一个基于Apache Lucene的搜索服务器,是一个分布式、高扩展、高实时、Restful 风格的全文搜索和数据分析引擎。Elasticsearch是用Java语言开发的,这使Elasticsearch能够在不同的平台上运行,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。

ElasticSearch 官网:https://www.elastic.co/cn/elasticsearch/

ElasticSearch 特性

Elasticsearch的一般特性如下 :

  • Elasticsearch可扩展高达PB级的结构化和非结构化数据。
  • Elasticsearch可以用来替代MongoDB和RavenDB等做文档存储。
  • Elasticsearch使用非标准化来提高搜索性能。
  • Elasticsearch是受欢迎的企业搜索引擎之一,目前被许多大型组织使用,如Wikipedia,The Guardian,StackOverflow,GitHub等。
  • Elasticsearch是开放源代码,可在Apache许可证版本2.0下提供。

参考链接:https://www.bootwiki/elasticsearch/elasticsearch-tutorial.html

2.3、ElasticSearch 和 Solr 的对比及选型

Solr 概述

Solr是Apache下的一个顶级开源项目,采用ava开发,它是基于Lucene的全文搜索服务器。Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展,并对索引、搜索性能进行了优化。

Solr可以独立运行,运行在Jetty、Tomcat等这些Servlet容器中,Solr 索引的实现方法很简单,用POST方法向Solr服务器发送一个描述Field及其内容的XML文档,Solr根据xml文档添加、删除、更新索引。Solr搜索只需要发送HTTPGET请求,然后对Solr返回Xml.,json等格式的查询结果进行解析,组织页面布局。Solr不提供构建UI的功能,Solr提供了一个管理界面,通过管理界面可以查询Solr的配置和运行情况。

Solr是基于lucene开发企业级搜索服务器,实际上就是封装了lucene。

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

ElasticSearch 和 Solr 的对比

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

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

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

Solr利用Zookeeper进行分布式管理,而Elasticsearch自身带有分布式协调管理功能。

Google搜索趋势结果表明,与Solr 相比,Elasticsearch具有很大的吸引力,但这并不意味着Apache Solr已经死亡。虽然有些人可能不这么认为,但Solr仍然是最受欢迎的搜索引擎之一,拥有强大的社区和开源支持。

与Solr相比,Elasticsearch易于安装且非常轻巧。此外,你可以在几分钟内安装并运行Elasticsearch。但是,如果Elasticsearch管理不当,这种易于部署和使用可能会成为一个问题。基于JSON的配置很简单,但如果要为文件中的每个配置指定注释,那么它不适合您。总的来说,如果你的应用使用的是JSON,那么Elasticsearch是一个更好的选择。否则,请使用Solr,因为它的schema.xml和solrconfig.xml都有很好的文档记录。

Solr 拥有更大,更成熟的用户,开发者和贡献者社区。ES 虽拥有的规模较小但活跃的用户社区以及不断增长的贡献者社区。

Solr贡献者和提交者来自许多不同的组织,而Elasticsearch提交者来自单个公司。Solr更成熟,但ES增长迅速,更稳定。

Solr是一个非常有据可查的产品,具有清晰的示例和API用例场景。Elasticsearch 的文档组织良好,但它缺乏好的示例和清晰的配置说明。

ElasticSearch 和 Solr 的技术选型

有时很难找到明确的答案。无论您选择Solr还是Elasticsearch,首先需要了解正确的用例和未来需求。总结他们的每个属性。

由于易于使用,Elasticsearch在新开发者中更受欢迎。一个下载和一个命令就可以启动一切。

如果除了搜索文本之外还需要它来处理分析查询,Elasticsearch是更好的选择。

如果需要分布式索引,则需要选择Elasticsearch。对于需要良好可伸缩性和以及性能分布式环境,Elasticsearch是更好的选择。

Elasticsearch在开源日志管理用例中占据主导地位,许多组织在Elasticsearch中索引它们的日志以使其可搜索。

如果你喜欢监控和指标,那么请使用Elasticsearch,因为相对于Solr,Elasticsearch暴露了更多的关键指标。

3、ElasticSearch 下载安装(Windows)

1、进入官网ElasticSearch 官网:https://www.elastic.co/cn/elasticsearch/

下载最新版本:进入官网后,选择操作系统,点击下载

下载历史版本:点击右侧的 View past releases,然后再选择自己想要的版本。

2、下载后解压安装包

解压后的文件目录如下图:

目录说明

  • bin:可执行文件的存放目录
  • config:配置文件的存放目录
    • log4j2.properties:日志配置文件
    • jvm.options:java 虚拟机配置文件
    • elasticsearch.yml:ES配置文件
  • jdk:存放适合当前Elasticsearch版本的jdk
  • lib:引用的相关库的存放目录,elasticsearch.jar本身也放于该目录。
  • logs:默认的日志存放目录。
  • modules:功能模块的存放目录
  • plugins:插件存放目录

3、启动 ElasticSearch

打开bin目录,双击elasticsearch.bat:

两个端口:

9300端口为Elasticsearch集群间组件的通信端口,9200端口为浏览器访问的http.协议RESTful端口。

访问请求:http://localhost:9200/,如果出现如下信息,说明ES启动成功!

上面显示了 ElasticSearch 的配置信息。

4、启动失败可能的原因

ELasticSearch——ElasticScarch 概述及安装(v7.8)相关推荐

  1. Day121.ElasticSearch:概述、安装、基本操作、DSL高级查询

    目录 一.ElasticSearch概述 2.倒排索引 3.ElasticSearch 核心概念 ★ (一) ElasticSearch | 相关工具安装 (Windows) 2.kibana7.8 ...

  2. ElasticSearch基础知识与安装(学习笔记)

    ElasticSearch基础知识与安装 前言 一.ElasticSearch简介 1.1 概述 1.2 核心概念 1.2.1 索引 index 1.2.2 类型 type 1.2.3 字段Field ...

  3. [翻译]ElasticSearch官方文档-安装

    本文翻译自:www.elastic.co/guide/en/el- 本文是Elasticsearch的入门文档,将会介绍ElasticSearch在不同环境下的安装. 安装 Elasticsearch ...

  4. 【ElasticSearch】使用Docker安装ElasticSearch、基本增删改查使用

    一.Elasticsearch Elasticsearch 是一个分布式.可扩展.实时的搜索与数据分析引擎. 官方中文文档:Elasticsearch 权威指南 二.安装 1.拉取镜像 docker ...

  5. ElasticSearch可视化工具Dejavu安装使用

    目录 1.安装 Docker 环境 2.运行 ElasticSearch 服务 3.安装运行 Dejavu 服务 Dejavu 是一个 ElasticSearch 的 Web UI 工具,支持通过 J ...

  6. 21-win10下ElasticSearch.6.1.0安装SQL插件

    简介:win10下ElasticSearch.6.1.0安装SQL插件 5.安装sql 5.0 es配置 安装es http://blog.csdn.net/qq_21383435/article/d ...

  7. ES | CentOS下基于ElasticSearch的head插件安装

    文章目录: ▶ 环境要求 ▶ node下载 ▶ node安装 ▶ head插件下载 ▶ head插件安装 ▶ 启动ElasticSearch-head ▶ 访问验证ElasticSearch-head ...

  8. es(Elasticsearch)客户端Elasticsearch-head安装使用(04Elasticsearch-head安装篇)

    背景 elasticsearch-head是一款专门针对于elasticsearch的客户端工具,用来展示数据.elasticsearch-head是基于JavaScript语言编写的,可以使用npm ...

  9. ELK日志分析平台(一)—elasticsearch安装及配置、elasticsearch图形化插件安装

    1.elasticsearch简介 elastic官网 2.安装及配置 官方下载网站 本次实验版本用7.6 [root@foundation50 ~]# cd /mnt/pub/docs/elk/7. ...

最新文章

  1. 【3DMax教程】三维产品可视化视频教程 3d Products Visualization Course
  2. 计算机科普知识小动画,4岁嗯哼知识量惊呆杜江!这4部科普启蒙动画,孩子绝对不能错过...
  3. python画图显示不了中文_Python使用matplotlib绘图无法显示中文问题的解决方法
  4. redis获取存在的键值_Redis 分布式锁、限流
  5. php if echo,多个?php if .. echo'..'; ?如何优化写法?
  6. 兰花草c语言编码蜂鸣器,蜂鸣器奏乐-多种音乐分享
  7. Bullzip PDF Printer 打印机驱动安装失败解决
  8. 解决vmrc的连接已断开,正在尝试重新连接
  9. RGB网页颜色在线取色器
  10. 天天说大数据但不知怎么用?读完这篇你就懂了
  11. Word中插入的域或者公式显示乱码的解决办法
  12. 26个英语字母表及字母音标
  13. BZOJ4319: cerc2008 Suffix reconstruction Suffix Array 的理解
  14. 解读SIM卡、USIM卡、UICC卡、eSIM卡的区别
  15. week10 day1 JavaScript
  16. c++和c语言之间有什么区别
  17. 手动杀掉AUTORUN病毒.
  18. fastjson.android首字母大写转化问题
  19. 链改升级,区块链——炳德区块链
  20. 让知识构建未来—知识图谱技术与应用 | AI TIME-33

热门文章

  1. 【编译matlab函数生成dll】
  2. JAVA教程(二)之面向对象前基础知识
  3. zookeeper安装步骤
  4. 机房收费系统验收报告
  5. CBGS,百度地图15年的四个字母
  6. Three.js实现光照阴影
  7. 谨防上当:揭露那些披着大数据外衣的假大数据课程
  8. DEC多国字符集(MCS)-ASCII码对照表、键盘常用ASCII码
  9. Arduino+蜂鸣器实现黑人抬棺的音乐
  10. 合肥师范学院计算机毕业答辩,取消本科生论文答辩是不是一句戏言