1 Elasticsearch概述
所属公司:Elastic
官方中文文档:https://www.elastic.co/cn/
适合应用:在线实时搜索、实时分析
规模:超过10万社区会员、超过5000商业用户订购商业特性
作用:支撑数据的存储、搜索和分析
比较Mysql:Elasticsearch 本质上是一个数据库,但并不是 Mysql 这种关系型数据库,查询语言也不是 SQL,而且 Elasticsearch 自己的一套查询语言;
图 1 Mysql&&ES对比
三大特点:
1)(SCALE)具备很好的横向扩展能力,天然具备数据库分片技术;
2)(SPEED)极限的性能,能在毫秒级内返回搜索结果;
3)(RELEVANCE)相关性,能得到高相关性的结果;
ElasticSearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。ElasticSearch 的实现原理主要分为以下几个步骤,首先用户将数据提交到Elastic Search 数据库中,再通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据,当用户搜索数据时候,再根据权重将结果排名,打分,再将返回结果呈现给用户。
Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索、支持多租户。Elasticsearch是分布式的,这意味着索引可以被分成分片,每个分片可以有0个或多个副本。每个节点托管