什么是elasticsearch以及我们为什么要使用它

1. 前言

倘若我们谈起 elasticsearch 那么其必然无人不知,无人不晓。如果你要说它的优点,那必然也是可以举出一大堆。例如以下:

  • 它是一个神器,如果你要做搜索这个功能。你用上它将会大大的帮助你。
  • 它十分的强大,可以简化我们的功能
  • 只要能了解他,自然而然在找工作的容易程度以及薪资待遇上将会得到一定的改善
  • 大家都说他很不错,并且大厂都使用这个。那么我来使用这个也一定没错。
  • 上司叫我这么做我自然而然,就去用也没有什么好说的。

等等等等,其中的一条或者多条。便是我们当初去学习并且使用elasticsearch的原因。

但是,倘若要谈到细节。使用自己的语言来描述elasticsearch,它能解决什么样的实际问题上以及为什么要使用它的时候。
我认为许多人是会忽视这个问题的。

特别是后面两条,大部分人的初衷。仅仅是希望自己能快速的去使用它。而不是去理解他。
如果仅仅只是作为一个使用者,一个码农。的确是不必要去了解深度含义。但是若要,希望能跟进一步。我们却要知道一些深入的问题。

**
PS:以下对其的描述,仅仅是我个人对其的理解。每个人每个时期对某样东西的理解是不一样的。因此还是希望大家只是把它当做一种观点,而不是全盘去接受他
**

2. 什么是elasticsearch

2.1 第一阶段:数据库

如果只是把elastaticsearch当作一个个体来看的话。我们完全可以把它当做一个数据库。我们不妨拿Mysql与其进行比较。我们不难发现,他们对其数据存储的描述的不同之处。仅仅只是名称不同罢了。

因此,如果你先把他来代替Mysql。在理论上是完全可以的,使用它们的不同,完完全全只是连接与使用的所编写的代码不同罢了。

2.2 第二阶段:数据关系的快速鉴别器

我在自己准备开发的搜索引擎的项目之中。进行了一定的思考,对于大数据的搜索。elastaticsearch的工作原则是什么呢?
根据其他网络是的借鉴,主要的工作原则便是对目标数据进行分词。然后,根据这些分词来快速的找到数据。
那么我们便可以进行理解:你将数据按照某一种维度关系进行排布,然后,当我们根据这样的维度去获取数据的时候。我们可以相对应快的获取到我们想要的这些数据。(相对更快

3.为什么我们要去使用elastaticsearch

在目前我的理解之中:elastaticsearch与其他的数据库的不同之处。便是这个理由:更快
如果仅仅为了满足需求,我们可以使用任何一种数据库,几乎都可以实现,我们想要的东西。包括数据分析等等等。
他们的差别仅仅只是一个关键维度:“速度”。
使用哪个,能将我们的系统的响应速度更加快速,我们就是用哪个。
因此,我们就有了MYSQL,SQLITE,SQLSERVER,HADOOP,ELASTICSEARCH 等等一系列因素这一系列的数据分析工具来帮助我们实现,我们想要去实现

结语

这里其实,还是要继续重申一下,所谓的学习,并不是只有一个声音。
这篇文章也是,并不一定是真理,只是给予大家一个思考的层面。

仅此而已


版权声明:本文为ArroGance_X原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。