Book Image

Elasticsearch Server - Third Edition

By : Rafal Kuc
Book Image

Elasticsearch Server - Third Edition

By: Rafal Kuc

Overview of this book

ElasticSearch is a very fast and scalable open source search engine, designed with distribution and cloud in mind, complete with all the goodies that Apache Lucene has to offer. ElasticSearch’s schema-free architecture allows developers to index and search unstructured content, making it perfectly suited for both small projects and large big data warehouses, even those with petabytes of unstructured data. This book will guide you through the world of the most commonly used ElasticSearch server functionalities. You’ll start off by getting an understanding of the basics of ElasticSearch and its data indexing functionality. Next, you will see the querying capabilities of ElasticSearch, followed by a through explanation of scoring and search relevance. After this, you will explore the aggregation and data analysis capabilities of ElasticSearch and will learn how cluster administration and scaling can be used to boost your application performance. You’ll find out how to use the friendly REST APIs and how to tune ElasticSearch to make the most of it. By the end of this book, you will have be able to create amazing search solutions as per your project’s specifications.
Table of Contents (18 chapters)
Elasticsearch Server Third Edition
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Preface
Index

Words with the same meaning


You may have heard about synonyms, words that have the same or similar meaning. Sometimes you would want to have some words matched when one of those words is entered into the search box. Let's recall our sample data from Chapter 3, Searching Your Data. There was a book called crime and punishment. What if we want that book to not only be matched when the words crime or punishment are used, but also when using the words such as criminality and abuse. At first glance, this may not sound like good behavior, but sometimes this is really needed, especially in use cases where there are multiple words meaning the same (like in medicine). To handle such use cases, we will use synonyms.

Synonym filter

Synonyms in Elasticsearch are handled on the analysis level – at both index and query time, by a dedicated synonyms filter. To use the synonym filter, we need to define our own analyzer. For example, let's define an analyzer that will be called synonym and will use the whitespace...