A brief introduction to ElasticSearch

  1. What is ElasticSearch?

ElasticSearch, referred to as ES, is an open source, highly scalable, distributed full-text search engine. It is more convenient to use than solr

Elasticsearch is a Lucene -based search server. It provides a distributed multi-user capable full-text search engine based on a RESTful web interface. Elasticsearch, developed in the Java language and released as open source under the terms of the Apache license, is a popular enterprise-grade search engine. Elasticsearch is used in cloud computing to achieve real-time search, stable, reliable, fast, and easy to install and use

Elasticsearch is a distributed, highly scalable, high real-time search and data analysis engine. It can easily enable large amounts of data to be searched, analyzed and explored. Taking full advantage of the horizontal scalability of Elasticsearch can make data more valuable in the production environment. The implementation principle of Elasticsearch is mainly divided into the following steps. First, the user submits the data to the Elasticsearch database, and then uses the word segmentation controller to segment the corresponding sentence, and stores its weight and word segmentation results into the data. When the user searches for data At that time, the results will be ranked and scored according to the weight, and then the returned results will be presented to the user.

  1. Lucene and ElasticSearch relationship

Lucene is the core of ElasticSearch

Elastic is based on Lucene and has made some encapsulation and enhancements to make it very easy for us to get started

  1. Comparison and selection of Solr and ElasticSearch

Compared

Solr provides an API interface similar to Web-Service

ElasticSearch hides the complexity of Lucence through a simple Restful API, making full-text search easier

selection

Solr is faster when simply searching existing data

When building an index, Solr will generate IO blocking, and the query performance is poor. ElasticSearch has obvious advantages

As the amount of data increases (large data volume), Solr's search efficiency will become lower, but ElasticSearch has no significant change

Summarize

1 ElasticSearch is out of the box, very simple Solr installation is a little more complicated

2 Solr uses Zookeeper for sub-management, while ElasticSearch has its own distributed coordination management function

3 Solr supports data in more formats, such as JSON, XML, CSV, while ElasticSearch only supports JSON file format

4 Sorl query is fast, but it is slow to update the index (slow insertion and deletion). It is used for e-commerce and other applications with a lot of queries. ElasticSearch builds indexes quickly, that is, queries are fast, and is used for searches such as Facebook and Sina.

5 Solr officially provides more functions, while ElasticSearch itself focuses more on core functions. Advanced functions can be provided by third-party plug-ins. For example, the graphical interface requires kibana support

6 Solr is a powerful solution for traditional search applications, but ElasticSearch is more suitable for search applications in the new era

7 Solr is relatively mature, with a larger, more mature user, developer and contributor, but ElasticSearch thinks that there are fewer developers and maintainers, and the update is too fast

Guess you like

Origin blog.csdn.net/weixin_46713508/article/details/131366650