PacktLib: Mastering ElasticSearch

Mastering ElasticSearch

Credits

About the Authors

About the Reviewers

www.PacktPub.com

Preface

Introduction to ElasticSearch

Introducing Apache Lucene

Introducing ElasticSearch

Summary

Power User Query DSL

Default Apache Lucene scoring explained

Query rewrite explained

Rescore

Bulk Operations

Sorting data

Update API

Using filters to optimize your queries

Filter and scopes in ElasticSearch faceting mechanism

Summary

Low-level Index Control

Altering Apache Lucene scoring

Similarity model configuration

Using codecs

NRT, flush, refresh, and transaction log

Looking deeper into data handling

Segment merging under control

Summary

Index Distribution Architecture

Choosing the right amount of shards and replicas

Routing explained

Altering the default shard allocation behavior

Adjusting shard allocation

Query execution preference

Using our knowledge

Summary

ElasticSearch Administration

Choosing the right directory implementation – the store module

Discovery configuration

Segments statistics

Understanding ElasticSearch caching

Summary

Fighting with Fire

Knowing the garbage collector

When it is too much for I/O – throttling explained

Speeding up queries using warmers

Very hot threads

Real-life scenarios

Summary

Improving the User Search Experience

Correcting user spelling mistakes

Improving query relevance

Summary

ElasticSearch Java APIs

Introducing the ElasticSearch Java API

The code

Connecting to your cluster

Anatomy of the API

CRUD operations

Querying ElasticSearch

Performing multiple actions

Percolator

The explain API

Building JSON queries and documents

The administration API

Summary

Developing ElasticSearch Plugins

Creating the Apache Maven project structure

Creating a custom river plugin

Creating custom analysis plugin

Summary

Index