Book description
Written for intermediate users, this tutorial helps you utilize the power of Apache Lucene and Elastic Search to optimize your information retrieval. From design to implementation to management, it’s the all-inclusive guide.
- Learn about Apache Lucene and ElasticSearch design and architecture to fully understand how this great search engine works
- Design, configure, and distribute your index, coupled with a deep understanding of the workings behind it
- Learn about the advanced features in an easy to read book with detailed examples that will help you understand and use the sophisticated features of ElasticSearch
In Detail
ElasticSearch is fast, distributed, scalable, and written in the Java search engine that leverages Apache Lucene capabilities providing a new level of control over how you index and search even the largest set of data.
"Mastering ElasticSearch" covers the intermediate and advanced functionalities of ElasticSearch and will let you understand not only how ElasticSearch works, but will also guide you through its internals such as caches, Apache Lucene library, monitoring capabilities, and the Java API. In addition to that you'll see the practical usage of ElasticSearch configuration parameters, monitoring API, and easy-to-use and extend examples on how to extend ElasticSearch by writing your own plugins.
"Mastering ElasticSearch" starts by showing you how Apache Lucene works and what the ElasticSearch architecture looks like. It covers advanced querying capabilities, index configuration control, index distribution, ElasticSearch administration and troubleshooting. Finally you'll see how to improve the user’s search experience, use the provided Java API and develop your own custom plugins.
It will help you learn how Apache Lucene works both in terms of querying and indexing. You'll also learn how to use different scoring models, rescoring documents using other queries, alter how the index is written by using custom postings and what segments merging is, and how to configure it to your needs. You'll optimize your queries by modifying them to use filters and you'll see why it is important. The book describes in details how to use the shard allocation mechanism present in ElasticSearch such as forced awareness.
"Mastering ElasticSearch" will open your eyes to the practical use of the statistics and information API available for the index, node and cluster level, so you are not surprised about what your ElasticSearch does while you are not looking. You'll also see how to troubleshoot by understanding how the Java garbage collector works, how to control I/O throttling, and see what threads are being executed at the any given moment. If user spelling mistakes are making you lose sleep at night - don't worry anymore the book will show you how to configure and use the ElasticSearch spell checker and improve the query relevance of your queries. Last, but not least you'll see how to use the ElasticSearch Java API to use the ElasticSearch cluster from your JVM based application and you'll extend ElasticSearch by writing your own custom plugins.
If you are looking for a book that will allow you to easily extend your basic knowledge about ElasticSearch or you want to go deeper into the world of full text search using ElasticSearch then this book is for you.
Table of contents
-
Mastering ElasticSearch
- Table of Contents
- Mastering ElasticSearch
- Credits
- About the Authors
- About the Reviewers
- www.PacktPub.com
- Preface
- 1. Introduction to ElasticSearch
- 2. Power User Query DSL
- 3. Low-level Index Control
-
4. Index Distribution Architecture
- Choosing the right amount of shards and replicas
- Routing explained
-
Altering the default shard allocation behavior
- Introducing ShardAllocator
- The even_shard ShardAllocator
- The balanced ShardAllocator
- The custom ShardAllocator
-
Deciders
- SameShardAllocationDecider
- ShardsLimitAllocationDecider
- FilterAllocationDecider
- ReplicaAfterPrimaryActiveAllocationDecider
- ClusterRebalanceAllocationDecider
- ConcurrentRebalanceAllocationDecider
- DisableAllocationDecider
- AwarenessAllocationDecider
- ThrottlingAllocationDecider
- RebalanceOnlyWhenActiveAllocationDecider
- DiskThresholdDecider
- Adjusting shard allocation
- Query execution preference
- Using our knowledge
- Summary
- 5. ElasticSearch Administration
- 6. Fighting with Fire
- 7. Improving the User Search Experience
-
8. 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
- The cluster administration API
-
The Indices administration API
- The index existence API
- The Type existence API
- The indices stats API
- Index status
- Segments information API
- Creating an index API
- Deleting an index
- Closing an index
- Opening an index
- The Refresh API
- The Flush API
- The Optimize API
- The put mapping API
- The delete mapping API
- The gateway snapshot API
- The aliases API
- The get aliases API
- The aliases exists API
- The clear cache API
- The update settings API
- The analyze API
- The put template API
- The delete template API
- The validate query API
- The put warmer API
- The delete warmer API
- Summary
- 9. Developing ElasticSearch Plugins
- Index
Product information
- Title: Mastering ElasticSearch
- Author(s):
- Release date: October 2013
- Publisher(s): Packt Publishing
- ISBN: 9781783281435
You might also like
book
Python for DevOps
Much has changed in technology over the past decade. Data is hot, the cloud is ubiquitous, …
book
Kubernetes in Action
Kubernetes in Action teaches you to use Kubernetes to deploy container-based distributed applications. You'll start with …
book
Head First Design Patterns, 2nd Edition
You know you don’t want to reinvent the wheel, so you look to design patterns—the lessons …
book
Python Crash Course, 2nd Edition
This is the second edition of the best selling Python book in the world. Python Crash …