架构师为什么elasticsearch是必学的?

java中的路飞


你好,我是研华科技西安分公司的技术主管,负责公司云平台的日志架构,我来谈谈我的看法。

为什么elasticsearch是架构师必须要了解的?

要回答这个问题,那我们就需要先看看elasticsearch能干什么?

elasticsearch是一个分布式的搜索引擎,它提供了数据的全文检索能力。

你想想看,现实生活中哪个架构不需要搜索功能?我们的日志系统需要搜索,远的来看,银行的系统需要搜索功能,12306系统需要搜索功能,电商系统也需要搜索功能,,,

架构师的目的在于把现实生活的需求使用代码架构来实现,但是人天生对复杂数据不敏感,人只需要看到他需要看到的数据即可。所以,对于架构师来讲,在构建从现实需求到虚拟架构之间必须要有一层数据转换的功能来做这件事情,而目前来看,最好的工具就是elasticsearch。以下是我们日志系统的架构图:

不知道能否回答您的问题,如果有疑问,我们再沟通!


云平台架构


1、先说说Lucene与elasticsearch关系?Lucene是一个开源的全文检索引擎工具包(类似于Java api),而Elasticsearch底层是基于这些包,对其进行了扩展,提供了比Lucene更为丰富的查询语言,可以非常方便的通过Elasticsearch的HTTP接口与底层Lucene交互。如果在应用程序中直接使用Lucene,你需要覆盖大量的集成框架工作,而使用ElasticSearch就省下了这些集成工作。一句话概括: Elasticsearch是Lucene面向企业搜索应用的扩展,极大的缩短研发周期。2、有没有必要先去学习Lucene?刚刚入门Elasticsearch,只需稍微了解下Lucene,无需去真正学习它,就可以很好的完成全文索引的工作,很好的进行开发。等自己熟练使用之后,可以反过头来学习Lucene里面底层的原理,也是一种提升。因为Lucene是一个编程库,您可以按原始接口来调用。但是Elasticsearch是在它基础上扩展的应用程序,就可以直接拿来使用了。---例子一定要看!!如下:---例如:你直接拿汽车(Elasticsearch)来开,开好车就行,无需了解里面的发动机、各个组件(Lucene library)。后面你在去了解一些原理,对于修车等等会有帮助。




分享到:


相關文章: