Elasticsearch 是什么?

Elasticsearch 是一个分布式的、开源的搜索分析引擎,支持各种数据类型,包括文本、数字、地理、结构化、非结构化。

Elasticsearch 是基于 Apache Lucene 的。

Elasticsearch 因其简单的 REST API、分布式特性、告诉、可扩展而闻名。

Elasticsearch 是 Elastic 产品栈的核心,Elastic 产品栈是个开源工具集合,用于数据接收、存储、分析、可视化。

一个搜索和分析引擎

Elasticsearch 可以让你存储所有类型的数据。

你可能认为搜索是关于文本的,的确,Elasticsearch 精通索引和查询文本。

但是,那不是全部,你还可以存储数字类型的数据、Geo 地理类型的数据。

Elasticsearch 不仅可以查询数据,还可以做汇总、聚合等等操作。

开源

Elasticsearch 是免费、开源的。

Elasticsearch 所属的 Elastic 公司,是一家商业盈利性质的公司,但你并不需要因为使用 Elasticsearch 而付费。

Elastic 公司使用的是增值服务模式,你付费的话可以得到更多的支持和产品特性。

一个完整的生态

Elasticsearch 是 Elastic 产品栈的核心。

其中的工具可以帮助你实现可视化(Kibana)、接入(Beats、Logstash)和管理存储在 Elasticsearch 中的数据。

除了官方工具,还有大量免费和商用的工具库可以使用。

弹性

搜索技术有弹性是什么意思?

一是 Elasticsearch 可以轻松进行节点扩展。

二是你可以非常轻松的使用 Elasticsearch,非常容易起步,而且,还通过多种方式帮助你成功的使用在产品环境中。

分布式

可扩展性是 Elasticsearch 的一个巨大优势。

在你起步的时候,可以使用一个节点,在壮大之后,Elasticsearch 可以轻松的扩展。

添加物理节点,然后在配置文件中列出即可。

在新节点加入之后,你的 indexes 会自动分布到新的节点。

可以用来做什么?

使用场景例如:

  • 文档存错查询

可以很好地存储和查询文档,用于应用程序搜索、企业搜索和网站搜索。

  • 日志存储和索引

使用 ELK,轻松存储和分析日志。

ELK 还通常用于监控基础信息、应用程序性能和使用情况。

  • 地理数据存储和分析

  • 商业智能平台

在各类场景中,可以抽象出2种数据类型:

  • 静态数据

Elasticsearch 用作搜索引擎。

  • 时间序列数据

时序数据发送到 Elasticsearch,用于产品分析、报告、异常检测 ……

Elasticsearch 的替代方案

Elasticsearch 的竞争对手只有一个,Apache Solr,有着和 Elasticsearch 相似的特性,但 Solr 的发展势头远不及 Elasticsearch。

可以看到,2014年左右 Elasticsearch 的受欢迎程度大大超过了 Solr。

小结

上面的内容可以让你对 Elasticsearch 有一个基本的认识,包括 Elasticsearch 是什么、可以用来做什么、市场地位。

翻译整理自:

https://medium.com/tech-explained/elasticsearch-explained-411e300413c7

Elasticsearch:是什么?你为什么需要他?的更多相关文章

  1. Elasticsearch之java的基本操作一

    摘要   接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...

  2. Elasticsearch 5.0 中term 查询和match 查询的认识

    Elasticsearch 5.0 关于term query和match query的认识 一.基本情况 前言:term query和match query牵扯的东西比较多,例如分词器.mapping ...

  3. 以bank account 数据为例,认识elasticsearch query 和 filter

    Elasticsearch 查询语言(Query DSL)认识(一) 一.基本认识 查询子句的行为取决于 query context filter context 也就是执行的是查询(query)还是 ...

  4. Ubuntu 14.04中Elasticsearch集群配置

    Ubuntu 14.04中Elasticsearch集群配置 前言:本文可用于elasticsearch集群搭建参考.细分为elasticsearch.yml配置和系统配置 达到的目的:各台机器配置成 ...

  5. ElasticSearch 5学习(10)——结构化查询(包括新特性)

    之前我们所有的查询都属于命令行查询,但是不利于复杂的查询,而且一般在项目开发中不使用命令行查询方式,只有在调试测试时使用简单命令行查询,但是,如果想要善用搜索,我们必须使用请求体查询(request ...

  6. ElasticSearch 5学习(9)——映射和分析(string类型废弃)

    在ElasticSearch中,存入文档的内容类似于传统数据每个字段一样,都会有一个指定的属性,为了能够把日期字段处理成日期,把数字字段处理成数字,把字符串字段处理成字符串值,Elasticsearc ...

  7. .net Elasticsearch 学习入门笔记

    一. es安装相关1.elasticsearch安装  运行http://localhost:9200/2.head插件3.bigdesk插件安装(安装细节百度:windows elasticsear ...

  8. 自己写的数据交换工具——从Oracle到Elasticsearch

    先说说需求的背景,由于业务数据都在Oracle数据库中,想要对它进行数据的分析会非常非常慢,用传统的数据仓库-->数据集市这种方式,集市层表会非常大,查询的时候如果再做一些group的操作,一个 ...

  9. 如何在Elasticsearch中安装中文分词器(IK+pinyin)

    如果直接使用Elasticsearch的朋友在处理中文内容的搜索时,肯定会遇到很尴尬的问题--中文词语被分成了一个一个的汉字,当用Kibana作图的时候,按照term来分组,结果一个汉字被分成了一组. ...

  10. jar hell & elasticsearch ik 版本问题

    想给es 安装一个ik 的插件, 我的es 是 2.4.0, 下载了一个版本是 1.9.5, [2016-10-09 16:56:26,248][INFO ][node ] [node-2] init ...

随机推荐

  1. H3C VLAN基本配置

  2. Java 趣事之 a=a++ 和 a=++a(转)

    转自:https://blog.csdn.net/LovePluto/article/details/81062176 如果问 a++ 和 ++a 的区别,估计很多都能回答上来.a++ 是先取 a 的 ...

  3. vueX中使用namespaced

    用法: namespaced:true; getter调用时: this.$store.getters['XXX/getXXX']; commit调用时: this.$store.commit('XX ...

  4. C# 任务并行

    . List<int> ids = new List<int>(); ; i < ; i++) { ids.Add(i); } ;//最大并行数量 List<Tas ...

  5. 【Linux】CentOS 7.5 修改时区

    1⃣️查看当前CentOS系统版本: [parallels@k8s-node2 ~]$ cat /etc/redhat-release CentOS Linux release 7.5.1804 (C ...

  6. windows下使用cmake+mingw配置makefile

    前面一节说了cmake简易使用,但是实际开发中项目文件非常多,使用哪种简易方式会导致代码十分混乱,因此本文介绍一种cmake管理大型项目的demo流程. 具体步骤如下: 1.创建相关的项目目录 cmd ...

  7. Mac Tab自动补全键

    最近入手一个Mac(Mac 2019版本),在使用终端时,发现不能使用Tab键自动补全代码,网络搜寻下,发现这里有个方法,记录下,免得自己忘记: 1 / 首先找到这个图标 2 / 输入命令 nano ...

  8. UITapGestureRecognizer 和 UICollectionView、UITableView的点击事件冲突问题

    解决:https://blog.gocy.tech/2016/11/19/iOS-touch-handling/ 1. tap.delegate = self; tap加个代理<UIGestur ...

  9. SpringMVC||IQ

    Here's question about springmvc 1.Springmvc spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即 ...

  10. .Net快速上手Nlog日志组件

    目录 一.NLog 简介 二.NLog 安装 三. NLog 配置 四.程序代码中写日志 五.参考 一.NLog 简介 NLog是适用于各种.NET平台的灵活,免费的日志记录平台.NLog使写入多个目 ...