Elasticsearch: Guides and Practical Know-how | Page 9 | mironsoft Blog
Elasticsearch
-
Mar 14, 2025
General Elasticsearch sizing rules of thumb rarely assume a Magento catalog with dozens of attributes and several store views per language, so document count and index size grow faster than for a simple content index. Anyone planning capacity for a large Magento catalog needs metrics that account for these specifics directly.
-
Mar 12, 2025
An average swallows exactly the latency spikes that users actually feel, because a few very slow requests get masked by many fast ones. The percentiles aggregation in Elasticsearch instead computes distribution points like p50, p95 and p99, making it visible just how slow the slowest requests really are.
-
Mar 8, 2025
The terms aggregation is one of the most widely used Elasticsearch features, yet it quickly becomes a performance bottleneck at high field cardinality. The shard_size parameter, doc_count_error_upper_bound as an accuracy indicator, and eager global ordinals for precomputing expensive data structures together decide whether a facet query responds in single-digit or triple-digit milliseconds. This article shows how to deliberately tune terms aggregations at millions of unique values without losing sight of result quality.
-
Feb 20, 2025
A result list without highlighting forces users to scan every hit themselves for the term they searched for. Elasticsearch highlighting automatically marks relevant text passages in the search result, but the choice between Unified, Plain and FVH highlighter, along with fine-tuning fragment size, decides whether the highlighting is actually helpful or just distracting.
-
Feb 13, 2025
Anyone trying to export all buckets of a high cardinality field via a terms aggregation with a huge size value inevitably hits memory limits. The composite aggregation solves this problem with an after_key cursor that iterates page by page through any number of buckets, without ever holding more than one page in memory at a time. This article shows how to implement complete exports, reports and data pipeline iterations robustly and memory-efficiently with composite aggregation.
-
Feb 13, 2025
A Magento Docker stack consists of at least five services: PHP-FPM, Nginx, MySQL, Redis, and OpenSearch. Add RabbitMQ for message queues and Varnish for full page caching. How these services are correctly networked, persisted, and started in the right order determines stability and maintainability.
-
Feb 12, 2025
BM25 is the default scoring algorithm of Elasticsearch and OpenSearch, yet most developers only know the name, not the mechanics behind it. Term frequency, inverse document frequency, and field length normalization together determine why one document ranks higher than another, and anyone who understands these three factors can diagnose relevance problems on purpose instead of merely guessing.
-
Feb 9, 2025
Anyone using Elasticsearch only for full text search is leaving most of its analytical power on the table. Bucket aggregations group documents by field values, value ranges or time intervals, while metric aggregations compute concrete numbers such as average, sum or minimum from those groups. Only when both aggregation types work together do you get the dashboards, facets and reports that separate a production search application from a simple keyword search.
-
Feb 9, 2025
For a simple autocomplete on brand or category names, a full-fledged completion suggester with its own suggest index and dedicated mapping is often overkill. The terms enum API offers a considerably lighter alternative: it reads the unique values already present in a field's term index directly and returns prefix matches, without running a complete search request with scoring, relevance calculation, or document retrieval. That makes it well suited for fast suggestion lists on low-cardinality keyword fields such as brand or category names. How the terms enum API works technically, how it differs from the completion suggester, and how a practical brand autocomplete can be built on top of it is what this article covers.
-
Feb 7, 2025
A significant share of all zero result searches happens not because the product is missing, but because customer and catalog use different words for the same thing, or a typo sends the search into a dead end. Search synonyms and spell correction in Magento close exactly this gap, once Search Synonym Groups, token filters and fuzzy matching work together cleanly.