Elasticsearch到底哪点好?

少点代码,多点头发html

本文已经收录至个人GitHub,欢迎你们踊跃star 和 issues。git

https://github.com/midou-tech/articlesgithub

从今天开始准备给你们带来全新的一系列文章,Elasticsearch系列web

新系列确定会有不少疑惑,先为你们答疑解惑,下面是今天要讲的问题编程

为何写Elasticsearch系列文章?

以前在文章中也陆陆续续的提到过,龙叔是作搜索引擎的。搜索引擎技术属于商业技术,你们耳熟能详的百度搜索,Google搜索,这可都是由于把握核心搜索技术,从而诞生了商业帝国。安全

每一个互联网大厂都想去分一杯搜索的羹,360搜索、神马、头条、搜狗搜索等等,因而可知搜索技术的商业做用和机密性了。服务器

搜索把握用户的入口elasticsearch

蘑菇街的搜索引擎是一款使用C++开发、彻底自研、没有开源的搜索引擎,没有开源就是不能随便写出来的。编程语言

可是如今不同了编辑器

第1、我离职了,离开了意味着不在持有那些商业机密了,就算不讲出来我也没啥心理负担(但仍是不能讲的,离职协议写的很清楚,不能泄露公司商业机密)。

第2、去新的公司仍是在搜索领域,他们用Es Elasticsearch是一个开源搜索,开源的东西能够随便说,但仍是不能说公司的商业数据

本身一直在搜索领域作,输出搜索相关的文章,第一个可让本身更好的学习和总结,第二个可让粉丝们了解到搜索这个神秘的技术,增长你们自身的核心竞争力。

后面会说到,Elasticsearch是搜索引擎,但不简单只能使用在搜索领域,他能够做用的场景很是多。

Elasticsearch是什么?

Elasticsearch 是一个分布式的开源搜索分析引擎,适用于全部类型的数据,包括文本、数字、地理空间、结构化和非结构化数据。

Elasticsearch 在 Apache Lucene 的基础上开发而成,Elasticsearch 以其简单的 REST 风格 API、分布式特性、速度和可扩展性而闻名,是 Elastic Stack 的核心组件。

Elastic Stack 是适用于数据采集、充实、存储、分析和可视化的一组开源工具。人们一般将 Elastic Stack 称为 ELK Stack(代指 Elasticsearch、Logstash 和 Kibana),目前 Elastic Stack 包括一系列丰富的轻量型数据采集代理,这些代理统称为 Beats,可用来向 Elasticsearch 发送数据。

Elasticsearch 的实现原理主要分为如下几个步骤,首先用户将数据提交到Elasticsearch 数据中心,再经过分词控制器去将对应的数据分词,将其权重和分词结果一并存入数据,当用户搜索数据时候,再根据权重将结果排名,打分,再将返回结果呈现给用户。

是什么差很少搞清楚了,再说说ES都哪些成熟的应用以及在哪些领域使用。

Elasticsearch在哪些领域使用?

  • 应用程序搜索
  • 网站搜索
  • 企业搜索
  • 日志处理和分析
  • 基础设施指标和容器监测
  • 应用程序性能监测
  • 地理空间数据分析和可视化
  • 安全分析
  • 业务分析

Elasticsearch有哪些特色?

Elasticsearch 很快。 因为 Elasticsearch 是在 Lucene 基础上构建而成的,因此在全文本搜索方面表现十分出色。Elasticsearch 同时仍是一个近实时的搜索平台,这意味着从文档索引操做到文档变为可搜索状态之间的延时很短,通常只有一秒。所以,Elasticsearch 很是适用于对时间有严苛要求的用例,例如安全分析和基础设施监测。

Elasticsearch 具备分布式的本质特征。 Elasticsearch 中存储的文档分布在不一样的容器中,这些容器称为分片,能够进行复制以提供数据冗余副本,以防发生硬件故障。Elasticsearch 的分布式特性使得它能够扩展至数百台(甚至数千台)服务器,并处理 PB 量级的数据。

Elasticsearch 包含一系列普遍的功能。 除了速度、可扩展性和弹性等优点之外,Elasticsearch 还有大量强大的内置功能(例如数据汇总和索引生命周期管理),能够方便用户更加高效地存储和搜索数据。

Elastic Stack 简化了数据采集、可视化和报告过程。 经过与 Beats 和 Logstash 进行集成,用户可以在向 Elasticsearch 中索引数据以前轻松地处理数据。同时,Kibana 不只可针对 Elasticsearch 数据提供实时可视化,同时还提供 UI 以便用户快速访问应用程序性能监测 (APM)、日志和基础设施指标等数据。

学习Elasticsearch能提升哪些竞争力?

看到Elasticsearch在这么多的领域在使用,特色也这么明显。看到这里估计都不用在说什么核心竞争力,你已经意识到了。

Elastic 于 2018 年 6 月 29 日正式推出 Elastic Certified Engineer 认证考试,认证经过能够得到官方颁发的证书和徽章,title就是 Elastic认证工程师

具体认证的细节和含金量,没有具体研究过,可是能够很明显的感觉到官方出了这样一个认证,代表社会须要大量这样的人才,而这方面人才的培养和考核指标还欠缺。

有没有必要必定要考这个认证?

我的以为,和英语四六级同样,经过了再说没用。

若是你是学生,能够考虑去考一个认证,由于你很难有业务场景驱使你去作这方面的成长,认证必定是有难度的,一个一个的困难会驱使你成长,最终这个认证也会成为招聘时一个很是大的亮点。

这个认证会有哪些帮助?

  • 对于快速的构建知识体系帮助。

  • 对于全面的熟悉官方文档帮助。

  • 对于实战解决线上问题帮助。(遇到了相关技术问题基本上不须要再求助于社区,80%以上的问题本身基本就能解决。)

  • 对于加强信心、克服英文恐惧帮助。

Elasticsearch 支持哪些编程语言?

  • Java
  • JavaScript (Node.js)
  • Go
  • .NET (C#)
  • PHP
  • Perl
  • Python
  • Ruby

哪里能够找到有关 Elasticsearch 的更多信息?

我是龙叔,一个分享互联网技术和心路历程的star。

相关文章
相关标签/搜索