Skip to main content
Indexing performance can vary significantly depending on your dataset, index settings, and hardware. The batch object provides information about the progress of asynchronous indexing operations. The progressTrace field within the batch object offers a detailed breakdown of where time is spent during the indexing process. Use this data to identify bottlenecks and improve indexing speed.

Understanding the progressTrace

progressTrace is a hierarchical trace showing each phase of indexing and how long it took. Each entry follows the structure:
This means:
  • The step occurred during indexing.
  • The subtask was extracting word proximity.
  • It took 33.71 seconds.
Focus on the longest-running steps and investigate which index settings or data characteristics influence them.

Key phases and how to optimize them

computing document changesand extracting documents

extracting facets and merging facet caches

extracting words and merging word caches

extracting word proximity and merging word proximity

waiting for database writes

waiting for extractors

post processing facets > strings bulk / numbers bulk

post processing facets > facet search

Embeddings

post processing words > word prefix *

post processing words > word fst

Example analysis

If you see:
Facet searching is taking significant indexing time. If your application doesn’t use facets, disable the feature:

Learn more