Skip to main content

MVStoreClusterConnectorConfig

Storage tuning for the MVStore cluster connector.

Notesโ€‹

Controls how the embedded MVStore database writes crawl state to disk. Every setting has a working default, and a crawl runs correctly without touching any of them โ€” reach for these only when profiling points at the store itself, on crawls large enough for the difference to be measurable.

The trade-offs pull against each other: larger buffers and caches spend memory to reduce I/O, compression spends CPU to reduce disk, and more aggressive compaction spends both to keep the file small. Change one at a time.

Examplesโ€‹

clusterConnector:
class: MVStoreClusterConnector
configuration:
cacheSize: 64
compress: 1

Usageโ€‹

Full configuration skeleton, with every option and its default
autoCommitBufferSize: 0
autoCommitDelay: 0
autoCompactFillRate: 0
cacheSize: 0
compress: 0
pageSplitSize: 0

Propertiesโ€‹

PropertyTypeRequiredDefault
autoCommitBufferSizeintegerNo1024
autoCommitDelayintegerNo1000
autoCompactFillRateintegerNo40
cacheSizeintegerNo16
compressintegerNo0
pageSplitSizeintegerNo4096

Property Detailsโ€‹

autoCommitBufferSizeโ€‹

Size in KB of the write buffer before changes are committed automatically. Default is 1024 (1 MB). A larger buffer means fewer, bigger writes.

autoCommitDelayโ€‹

How long in milliseconds before buffered changes are committed regardless of buffer size. Default is 1000 (1 second). Set to 0 to commit on buffer size alone.

autoCompactFillRateโ€‹

Fill rate percentage (0โ€“100) below which the store compacts itself. Default is 40. A lower value compacts less often, leaving a larger file; a higher value compacts more often, spending I/O to keep it small.

cacheSizeโ€‹

Read cache size in MB. Default is 16. Worth raising on crawls whose state no longer fits comfortably in the default cache.

compressโ€‹

Compression level: 0 for none (the default), 1 for fast (LZF), 2 for high (Deflate). Compression trades CPU for disk space, and mostly pays off when document metadata is large and repetitive.

pageSplitSizeโ€‹

Page split size in bytes. Default is 4096. Larger pages can read long values faster in sequence, at the cost of wasted space for small entries.