一:elasticsearch 是什么?
elasticsearch是一个基于Lucene的搜索服务器。elasticsearch使用java开发的开源框架,基于RESTFUL WEB接口。elasticsearch是一个可靠的,实时的,高性能,使用简单的一个搜索引擎。
二:elasticsearch 特性
1:全文检索
2:分布式实时存储,并将每一个字段多编入索引,使之可以被搜索。
3:实时分析的分布式搜索引擎
4:可以扩展到上百台甚至上千服务器,处理PB级别的结构化或者非结构化数据。
三:索引在elasticsearch语句是什么意思?
1:index(名词),一个索引类似于传统关系数据库的一个数据库,是一个存储关系型文档的地方。index复数词是Indexes或者Indecs,索引实际上是指向一个或者多个物理 分片 的 逻辑命名空间。
2:index(动词),存储文档数据到Elasticsearch 索引中的,以便它可以被检索和查询到,这非常类似于Mysql的Insert语法。
3:倒排索引:关系型数据库增加一个索引(比如B-Tree索引到一个指定的列上),以便提升数据的检索速度。Elasticsearch和Lucene使用一个倒排索引的结构来达到相同的目的。
注意:默认每个文档中的所有属性多是被索引的(有一个倒排索引)和可被搜索的,一个没有倒排索引的属性是不能被搜索的。
四:elasticsearch与solr区别
1:solr利用Zookeeper进行分布式管理,elasticsearch自身带有分布式协调管理功能
2:solr存储的数据类型很多种,elasticearch只支持json
3:solr实用于传统搜索,性能比elasticsearch好,elasticsearch实用于实时搜索,性能比solr性能好
4:solr官方提供的功能比较多,elasticsearch专注于核心功能,其它由第三方插件提供
5:solr在数据量大的时候性能比elasticsearch低
6:对单纯的已有数据,solr更快
7:当实时建立索引时,solr会造成i/0阻塞,导致查询性能较低,elasticsearch具有明显的优势。
网友评论