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

Using nested objects


Nested objects can come in handy in certain situations. Basically, with nested objects Elasticsearch allows us to connect multiple documents together – one main document and multiple dependent ones. The main document and the nested ones are indexed together and they are placed in the same segment of the index (actually, in the same block inside the segment, near each other), which guarantees the best performance we can get for such a data structure. The same goes for changing the document; unless you are using the update API, you need to index the parent document and all the other nested ones at the same time.

Note

If you would like to read more about how nested objects work on the Apache Lucene level, there is a very good blog post written by Mike McCandless at http://blog.mikemccandless.com/2012/01/searching-relational-content-with.html.

Now let's get on with our example use case. Imagine that we have a shop with clothes and we store the size and color of each t-shirt...