Skip to main content
Version: 2024.4

Special Aspects for Elasticsearch

Basically Elasticsearch worker works as described in the optimized architecture. Currently, Elasticsearch 8 is supported.

Installation

Elasticsearch 8

To work properly Pimcore requires the Elasticsearch client, install them with: composer require pimcore/elasticsearch-client.

Index Configuration

Elasticsearch provides a couple of additional configuration options for the index to utilize elasticsearch features. See Configuration Details for more information.

Reindexing Mode

It is possible that elasticsearch cannot update the mapping, e.g. if data types of attributes change on the fly. For this case, a reindex is necessary. If it is necessary, a native ES reindex is executed automatically during bin/console ecommerce:indexservice:bootstrap --create-or-update-index-structure.

While reindex is executed, no updates are written to the ES index. The changes remain in store table and are transferred to index during next execution of bin/console ecommerce:indexservice:process-update-queue after reindex is finished.

All queries that take place during reindex go to the old index. As soon the reindex is finished, the current index is switched to the newly created index and the old index is deleted.
As a result, during reindex the results delivered by Product Lists can contain old data.

To manually start a reindex, following command can be used: bin/console ecommerce:indexservice:search-index-sync reindex.

caution

The existing command bin/console ecommerce:indexservice:search-elasticsearch-sync reindex is deprecated and will be removed in 2.0.0.

Indexing of Classification Store Attributes

With elasticsearch it is possible to index all attributes of Classification Store data without defining an attribute for each single classification store key.

For details see Filter Classification Store in Filter Service documentation.

Synonyms

Pimcore provides an out-of-the box integration for synonyms in elasticsearch. See Synonyms for details.