Book Image

Learning Elasticsearch

By : Abhishek Andhavarapu
Book Image

Learning Elasticsearch

By: Abhishek Andhavarapu

Overview of this book

Elasticsearch is a modern, fast, distributed, scalable, fault tolerant, and open source search and analytics engine. You can use Elasticsearch for small or large applications with billions of documents. It is built to scale horizontally and can handle both structured and unstructured data. Packed with easy-to- follow examples, this book will ensure you will have a firm understanding of the basics of Elasticsearch and know how to utilize its capabilities efficiently. You will install and set up Elasticsearch and Kibana, and handle documents using the Distributed Document Store. You will see how to query, search, and index your data, and perform aggregation-based analytics with ease. You will see how to use Kibana to explore and visualize your data. Further on, you will learn to handle document relationships, work with geospatial data, and much more, with this easy-to-follow guide. Finally, you will see how you can set up and scale your Elasticsearch clusters in production environments.
Table of Contents (11 chapters)
10
Exploring Elastic Stack (Elastic Cloud, Security, Graph, and Alerting)

Translog

In the What happens when you index a document section, we discussed that when you index a document, the refresh process creates a new segment. Since writing the segment to the disk on every refresh is very expensive, the segment is only written to in-memory file system cache. When certain conditions are met, a process known as Lucene commit writes all the files (segments) in the memory to a physical disk.

If a node crashes before the files in memory are persisted to the physical disk, the data in the file system cache is lost, and any uncommitted changes are also lost. But Lucene commit is very expensive and cannot be done after every operation. To solve this problem, Elasticsearch introduced transaction log, which is a write-ahead log:

During an index or delete operation, the document is written to both the memory buffer and the transaction log. The index/delete operation...