- Elasticsearch Blueprints
- Vineeth Mohan
- 390字
- 2021-07-16 13:39:30
Chapter 1. Google-like Web Search
Text search problems are one of the key and common use cases for web-based applications. Developers over the world have been keen to bring an open source solution to this problem. Hence, the Lucene revolution happened. Lucene is the heart of most of the search engines that you see today. It basically accepts the text that is to be searched, stores it in an easy searchable form or data structure (inverted index), and then accepts various types of search queries and returns a set of matching results. After the first search revolution, came the second one. Many server-based search solutions, such as Apache SOLR, were built on top of Lucene and marked the second phase of the search revolution. Here, a powerful wrapper was made to interface web users that wanted to index and search text of Lucene. Many powerful tools, notably SOLR, were developed at this stage of revolution. Some of these search frameworks were able to provide document database features too. Then, the next phase of the search revolution came, which is still on-going. The design goal of this phase is provide scaling solutions for the existing stack. Elasticsearch is a search and analytic engine that provides a powerful wrapper to Lucene along with an inbuilt document database and provisions various scaling solutions. The document database is also implemented using Lucene. Though competitors of Elasticsearch have some more advanced feature sets, those tools lack the simplicity and the wide range of scalability solutions Elasticsearch offers. Hence, we can see that Elasticsearch is the farthest point to which the search revolution has reached and is the future of text search.
This chapter takes you along the course to build a simple scalable search server. We will see how to create an index and add some documents to it and try out some essential features such as highlighting and pagination of results. Also, we will cover topics such as how to set an analyzer for our text and how to apply filters to eliminate unwanted characters such as HTML tags, and so on.
Here are the important topics that we will cover in this chapter:
- Deploying Elasticsearch
- Concept of the head UI shards and replicas
- Index – type mapping
- Analyzers, filters, and tokenizers
- The head UI
Let's start and explore Elasticsearch in detail.
- 數(shù)據(jù)科學(xué)實(shí)戰(zhàn)手冊(R+Python)
- JavaScript從入門到精通(微視頻精編版)
- C語言最佳實(shí)踐
- Scratch 3游戲與人工智能編程完全自學(xué)教程
- JavaScript入門經(jīng)典
- Visual C#通用范例開發(fā)金典
- Spring核心技術(shù)和案例實(shí)戰(zhàn)
- Tableau 10 Bootcamp
- OpenGL Data Visualization Cookbook
- Lift Application Development Cookbook
- C指針原理揭秘:基于底層實(shí)現(xiàn)機(jī)制
- QPanda量子計(jì)算編程
- 深入實(shí)踐DDD:以DSL驅(qū)動(dòng)復(fù)雜軟件開發(fā)
- 多媒體技術(shù)及應(yīng)用
- Java程序設(shè)計(jì)