Book description
A practical project-based guide to generating compelling search solutions using the dynamic and powerful features of Elasticsearch
In Detail
Elasticsearch is a distributed search server similar to Apache Solr with a focus on large datasets, schemaless setup, and high availability. Utilizing the Apache Lucene library (also used in Apache Solr), Elasticsearch enables powerful full-text search, as well as autocomplete "morelikethis" search, multilingual functionality, and an extensive search query DSL.
This book starts with the creation of a Google-like web search service, enabling you to generate your own search results. You will then learn how an e-commerce website can be built using Elasticsearch. We will discuss various approaches in getting relevant content up the results, such as relevancy based on how well a query matched the text, time-based recent documents, geographically nearer items, and other frequently used approaches.
Finally, the book will cover various geocapabilities of Elasticsearch to make your searches similar to real-world scenarios.
What You Will Learn
- Build a simple scalable server for effective searching in Elasticsearch
- Design a scalable e-commerce search solution to generate accurate search results using various filters such as filters based on date range and price range
- Improve the relevancy and scoring of your searches
- Manage real-world, complex data using various techniques, including parent-child search and searching questions based on the criteria of questions and answers
- Use the excellent data crunching and aggregation capability of Elasticsearch to analyze your data
- Generate real-time visualizations of your data using compelling visualization techniques, such as time graphs, pie charts, and stacked graphs
- Enhance the quality of your search and widen the scope of matches using various analyzer techniques, such as lower casing, stemming, and synonym matching
Table of contents
-
Elasticsearch Blueprints
- Table of Contents
- Elasticsearch Blueprints
- Credits
- About the Author
- About the Reviewer
- www.PacktPub.com
- Preface
- 1. Google-like Web Search
-
2. Building Your Own E-Commerce Solution
- Data modeling in Elasticsearch
- Choosing between a query and a filter
- Searching your documents
- Aggregating your results
- Filter your results based on a date range
- Implementing a prize range filter
- Implementing a category filter
- Implementation of filters in Elasticsearch
- Searching with multiple conditions
- Sorting results
- Using the scroll API for consistent pagination
- Autocomplete in Elasticsearch
- Hotel suggester using autocomplete
- Summary
-
3. Relevancy and Scoring
- How scoring works
-
The Ebola outbreak
- Boost match in the title field column over description
- Most recently published medical journals
- The most recent Ebola report on healthy patients
- Boosting certain symptoms over others
- Random ordering of medical journals for different interns
- Medical journals from the closest place to the Ebola outbreak
- Medical journals from unhealthy places near the Ebola outbreak
- Healthy people from unhealthy locations have Ebola symptoms
- Relevancy based on the order in which the symptoms appeared
- Summary
-
4. Managing Relational Content
- The product-with-tags search problem
- Nested types to the rescue
- Limitations on a query on nested fields
- Using a parent-child approach
- Schema design to store questions and answers
- Searching questions based on a criteria of answers
- Searching answers based on a criteria of questions
- The score of questions based on the score of each answer
- Filtering questions with more than four answers
- Summary
-
5. Analytics Using Elasticsearch
-
A flight ticket analytics scenario
- Index creation and mapping
-
A case study on analytics requirements
- Male and female distribution of passengers
- Time-based patterns or trends in booking tickets
- Hottest arrival and departure points
- The correlation of ticket type with time
- Distribution of the travel duration
- The most preferred or hottest hour for booking tickets
- The most preferred or hottest weekday for travel
- The pattern between a passenger's purpose of visit, ticket type, and their sex
- Summary
-
A flight ticket analytics scenario
-
6. Improving the Search Experience
- News search
- A case-insensitive search
- Effective e-mail or URL link search inside text
- Prioritizing a title match over content match
- Terms aggregation giving weird results
- Using a lowercased analyzer
- Improving the search experience using stemming
- A synonym-aware search
- The holy box of search
- Boolean operations
- Words with similar sounds
- Substring matching
- Summary
- 7. Spicing Up a Search Using Geo
- 8. Handling Time-based Data
- Index
Product information
- Title: Elasticsearch Blueprints
- Author(s):
- Release date: July 2015
- Publisher(s): Packt Publishing
- ISBN: 9781783984923
You might also like
book
Elasticsearch 5.x Cookbook - Third Edition
Over 170 advanced recipes to search, analyze, deploy, manage, and monitor data effectively with Elasticsearch 5.x …
book
Mastering Elasticsearch 5.x - Third Edition
Master the intricacies of Elasticsearch 5 and use it to create flexible and scalable search solutions …
book
Indexing
Indexing consists of both novel and more traditional techniques. Cutting-edge indexing techniques, such as automatic indexing, …
book
ElasticSearch Cookbook - Second Edition
Over 130 advanced recipes to search, analyze, deploy, manage, and monitor data effectively with ElasticSearch In …