初步认识ES

133 阅读2分钟

金三银四,好多小伙伴开始了面试,今年面试有好多固定的知识点,比如Elasticsearch,恰巧工作当中在使用ES,所以拿出了和大家分享分享,希望可以对大家有所帮助。首先先聊聊我对ES的认识:

从开始学习编程,到不断的深入,一直会围绕着一个问题,就是数据的存储和搜索,如何更快,更准确的搜索到数据,如何高效率,低消耗的存入数据是每一个程序需要思考的东西,ES就是为了快速检索设置的,相比较其他的存储:

1、ES采用了Lucene高性能的搜索引擎包,查询效率更快。

2、基于Lucene的搜索引擎采用的倒排索引,更加有利于全文检索。

3、与其他的搜索框架比,ES拥有基于词频,逆文档词频等计算策略确保搜索相关性,并且可以支持错误的拼写纠错,搜索内容高亮等搜索必须的功能。

4、并且ES提供了一套完整的数据操作的API接口,如果只是考虑使用ES的话,可以像请求一个api接口一样完成对数据的操作。

基于上面的描述,我们在日常的工作当中,可以再下面的场景当中使用ES

1、作为后端系统,ES本身提供了完整的api接口,并且数据操作效率很高,可以之前前端ajax或者其他的请求对ES直接操作,所以作为项目的后端系统是完全没有问题的。

2、使用ES优化现在的系统,作为大量搜索数据检索的数据库,比如文章检索,订单,用户检索,当然,这里需要一个稳定的同步系统,将数据同步到es当中。

个人浅见,还请各位大佬多多指点。