Further your knowledge of the Elasticsearch server by learning more about its internals, querying, and data handling
About This Book
- Understand Apache Lucene and Elasticsearch's design and architecture
- Design your index, configure it, and distribute it, not only with assumptions, but with the underlying knowledge of how it works
- Improve your user search experience with Elasticsearch functionality and learn how to develop your own Elasticsearch plugins
Who This Book Is For
This book is for Elasticsearch users who want to extend their knowledge and develop new skills. Prior knowledge of the Query DSL and data indexing is expected.
What You Will Learn
- Understand Apache Lucene and Elasticsearch's design and architecture
- Use and configure different scoring models to alter the default scoring mechanism
- Choose the appropriate amount of shards and replicas for your deployment
- Improve user search experience by utilizing Elasticsearch functionality
- Control segment merging and learn why Elasticsearch uses merging
- Develop custom Elasticsearch plugins and cover detailed examples of how to extend Elasticsearch by writing your own plugins
- Apply your knowledge to create scalable, efficient, and fault tolerant clusters and monitor your cluster by using and understanding the Elasticsearch API
In Detail
Elasticsearch is a modern, fast, distributed, scalable, fault tolerant, and open source search and analytics engine. Elasticsearch leverages the capabilities of Apache Lucene, providing a new level of control over how you can index and search even huge sets of data.
This book covers intermediate and advanced functionalities of Elasticsearch and walks you through its internals including caches, the Apache Lucene library, and its monitoring capabilities. You'll learn about practical usage of Elasticsearch configuration parameters and how to use the monitoring API.
With this book, you'll delve into Elasticsearch's query rewrite, query template, bulk operation, document grouping, and function score queries. You will also learn how to improve user search experience, index distribution, segment statistics, and merging. By the end of the book, you will be able to enhance Elasticsearch's performance and create your own Elasticsearch plugins.
Rafal Kuc
Rafal Kuc is a born team leader and software developer. Currently, he is working as a consultant and a software engineer at Sematext Group, Inc., where he concentrates on open source technologies, such as Apache Lucene, Solr, Elasticsearch, and the Hadoop stack. He has more than 13 years of experience in various software branches―from banking software to e-commerce products. He is mainly focused on Java but is open to every tool and programming language that will make the achievement of his goal easier and faster. Rafal is also one of the founders of the solr.pl website, where he tries to share his knowledge and help people with their problems related to Solr and Lucene. He is also a speaker at various conferences around the world, such as Lucene Eurocon, Berlin Buzzwords, ApacheCon, Lucene Revolution, and DevOps Days. He began his journey with Lucene in 2002, but it wasn't love at first sight. When he came back to Lucene in late 2003, he revised his thoughts about the framework and saw the potential in search technologies. Then came Solr, and that was it. He started working with Elasticsearch in the middle of 2010. Currently, Lucene, Solr, Elasticsearch, and information retrieval are his main points of interest. Rafal is the author of Solr 3.1 Cookbook, its update―Solr 4.0 Cookbook―and its third release―Solr Cookbook, Third Edition. He is also the author of Elasticsearch Server and its second edition, along with the first edition of Mastering Elasticsearch, all published by Packt Publishing.
Marek Rogozinski
Marek Rogozinski is a software architect and consultant with over 10 years of experience. He specializes in solutions based on open source search engines, such as Solr and Elasticsearch, and software stack for Big Data analytics, including Hadoop, Hbase, and Twitter Storm. He is also a cofounder of the solr.pl website, which publishes information and tutorials about Solr and Lucene libraries. He is the coauthor of Mastering ElasticSearch, ElasticSearch Server, and Elasticsearch Server Second Edition, both published by Packt Publishing. Currently, he holds the position of chief technology officer and lead architect at ZenCard, a company processing and analyzing large amounts of payment transactions in real time, allowing automatic and anonymous identification of retail customers on all retailer channels (m-commerce / e-commerce / brick and mortar) and giving retailers a customer retention and loyalty tool.